YAC 3.15.0
Yet Another Coupler
Loading...
Searching...
No Matches
OASIS3_MCT_example.c File Reference
#include <mpi.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include "yac.h"
#include "yac_utils.h"
Include dependency graph for OASIS3_MCT_example.c:

Go to the source code of this file.

Macros

#define EXACT
 
#define STR_USAGE   "Usage: %s -c configFilename -g gridDirectory\n"
 
#define YAC_ASSERT(exp, msg)
 

Functions

static void setup_process_config ()
 
static void parse_arguments (int argc, char **argv, char const **configFilename, char const **gridDirname)
 

Variables

struct { 
 
   unsigned   component_idx [3] 
 
   unsigned   num_components 
 
   unsigned   grid_idx [3] 
 
config_per_global_rank [38] 
 
char const * component_names []
 
char const * grid_names [] = {"grid1", "grid2", "grid3", "grid4", "grid5"}
 
struct { 
 
   char const *   field_names [8] 
 
   unsigned   num_fields 
 
   char const *   file_name 
 
grid_config [] 
 

Macro Definition Documentation

◆ EXACT

#define EXACT

Definition at line 5 of file OASIS3_MCT_example.c.

◆ STR_USAGE

#define STR_USAGE   "Usage: %s -c configFilename -g gridDirectory\n"

Definition at line 62 of file OASIS3_MCT_example.c.

◆ YAC_ASSERT

#define YAC_ASSERT ( exp,
msg )
Value:
{ \
if(!((exp))) { \
fprintf(stderr, "ERROR: %s\n" STR_USAGE, msg, argv[0]); \
exit(EXIT_FAILURE); \
} \
}
#define STR_USAGE

Definition at line 63 of file OASIS3_MCT_example.c.

Function Documentation

◆ parse_arguments()

static void parse_arguments ( int argc,
char ** argv,
char const ** configFilename,
char const ** gridDirname )
static

Definition at line 318 of file OASIS3_MCT_example.c.

◆ setup_process_config()

static void setup_process_config ( )
static

Definition at line 267 of file OASIS3_MCT_example.c.

Variable Documentation

◆ component_idx

unsigned component_idx[3]

Definition at line 19 of file OASIS3_MCT_example.c.

◆ component_names

char const* component_names[]
Initial value:
= {"comp1-grid1", "comp2-grid2", "comp3",
"comp3-grid3", "comp3-grid4", "comp3-grid5",
"comp4"}

Definition at line 26 of file OASIS3_MCT_example.c.

◆ [struct]

struct { ... } config_per_global_rank[38]

◆ field_names

char const* field_names[8]

Definition at line 33 of file OASIS3_MCT_example.c.

◆ file_name

char const* file_name

Definition at line 35 of file OASIS3_MCT_example.c.

◆ [struct]

struct { ... } grid_config[]
Initial value:
= {{.field_names = {"A_1", "D_1", "E_1", "J_1",
"A_2", "D_2", "E_2", "J_2"},
.num_fields = 8,
.file_name = "icon_grid_R02B01.nc"},
{.field_names = {"A_1", "B_1", "F_1", "I_1",
"A_2", "B_2", "F_2", "I_2"},
.num_fields = 8,
.file_name = "icon_grid_R02B01.nc"},
{.field_names = {"B_1", "C_1", "D_1", "G_1",
"B_2", "C_2", "D_2", "G_2"},
.num_fields = 8,
.file_name = "icon_grid_R03B01.nc"},
{.field_names = {"C_1", "E_1", "F_1", "H_1",
"C_2", "E_2", "F_2", "H_2"},
.num_fields = 8,
.file_name = "icon_grid_R02B01.nc"},
{.field_names = {"G_1", "H_1", "I_1", "J_1",
"G_2", "H_2", "I_2", "J_2"},
.num_fields = 8,
.file_name = "icon_grid_R02B01.nc"}}

◆ grid_idx

unsigned grid_idx[3]

Definition at line 22 of file OASIS3_MCT_example.c.

◆ grid_names

char const* grid_names[] = {"grid1", "grid2", "grid3", "grid4", "grid5"}

Definition at line 29 of file OASIS3_MCT_example.c.

◆ num_components

unsigned num_components

Definition at line 20 of file OASIS3_MCT_example.c.

◆ num_fields

unsigned num_fields

Definition at line 34 of file OASIS3_MCT_example.c.