46 char const * mask_name);
55 int const * mask,
size_t count,
char const * mask_name);
58 int const * mask,
char const * mask_name);
62 char const *
name,
size_t nbr_vertices[2],
int cyclic[2],
63 double *lon_vertices,
double *lat_vertices);
66 char const *
name,
size_t nbr_vertices[2],
int cyclic[2],
67 double *lon_vertices,
double *lat_vertices);
70 char const *
name,
size_t nbr_vertices[2],
int cyclic[2],
71 double *lon_vertices,
double *lat_vertices);
74 char const *
name,
size_t nbr_vertices[2],
int cyclic[2],
75 double *lon_vertices,
double *lat_vertices);
78 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
79 int *num_vertices_per_cell,
double *x_vertices,
double *y_vertices,
83 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
84 int *num_vertices_per_cell,
double *x_vertices,
double *y_vertices,
88 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
89 int *num_vertices_per_cell,
double *x_vertices,
double *y_vertices,
93 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
94 int *num_vertices_per_cell,
double *x_vertices,
double *y_vertices,
98 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
size_t nbr_edges,
99 int *num_edges_per_cell,
double *x_vertices,
double *y_vertices,
100 int *cell_to_edge,
int *edge_to_vertex);
103 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
size_t nbr_edges,
104 int *num_edges_per_cell,
double *x_vertices,
double *y_vertices,
105 int *cell_to_edge,
int *edge_to_vertex);
108 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
size_t nbr_edges,
109 int *num_edges_per_cell,
double *x_vertices,
double *y_vertices,
110 int *cell_to_edge,
int *edge_to_vertex);
113 char const *
name,
size_t nbr_vertices,
size_t nbr_cells,
size_t nbr_edges,
114 int *num_edges_per_cell,
double *x_vertices,
double *y_vertices,
115 int *cell_to_edge,
int *edge_to_vertex);
118 char const *
name,
size_t nbr_points,
double *x_points,
double *y_points);
121 char const *
name,
size_t nbr_points,
double *x_points,
double *y_points);
124 char const *
name,
size_t nbr_vertices[2],
int cyclic[2],
125 double *lon_vertices,
double *lat_vertices,
126 double north_pole_lon,
double north_pole_lat);
129 char const *
name,
size_t nbr_vertices[2],
int cyclic[2],
130 double *lon_vertices,
double *lat_vertices,
131 double north_pole_lon,
double north_pole_lat);
134 struct yac_basic_grid * grid,
char const * filename, MPI_Comm comm);
141 double north_pole[3]);
struct yac_basic_grid * yac_basic_grid_unstruct_edge_new(char const *name, size_t nbr_vertices, size_t nbr_cells, size_t nbr_edges, int *num_edges_per_cell, double *x_vertices, double *y_vertices, int *cell_to_edge, int *edge_to_vertex)
struct yac_basic_grid * yac_basic_grid_unstruct_edge_ll_new(char const *name, size_t nbr_vertices, size_t nbr_cells, size_t nbr_edges, int *num_edges_per_cell, double *x_vertices, double *y_vertices, int *cell_to_edge, int *edge_to_vertex)
struct yac_field_data * yac_basic_grid_get_field_data(struct yac_basic_grid *grid, enum yac_location location)
size_t yac_basic_grid_get_named_mask_idx(struct yac_basic_grid *grid, enum yac_location location, char const *mask_name)
int const * yac_basic_grid_get_field_mask(struct yac_basic_grid *grid, struct yac_interp_field field)
struct yac_basic_grid * yac_basic_grid_new(char const *name, struct yac_basic_grid_data grid_data)
struct yac_basic_grid * yac_basic_grid_reg_2d_deg_new(char const *name, size_t nbr_vertices[2], int cyclic[2], double *lon_vertices, double *lat_vertices)
void yac_basic_grid_to_file_parallel(struct yac_basic_grid *grid, char const *filename, MPI_Comm comm)
struct yac_basic_grid * yac_basic_grid_reg_2d_rot_deg_new(char const *name, size_t nbr_vertices[2], int cyclic[2], double *lon_vertices, double *lat_vertices, double north_pole_lon, double north_pole_lat)
struct yac_basic_grid * yac_basic_grid_cloud_new(char const *name, size_t nbr_points, double *x_points, double *y_points)
struct yac_basic_grid * yac_basic_grid_unstruct_deg_new(char const *name, size_t nbr_vertices, size_t nbr_cells, int *num_vertices_per_cell, double *x_vertices, double *y_vertices, int *cell_to_vertex)
struct yac_basic_grid * yac_basic_grid_unstruct_new(char const *name, size_t nbr_vertices, size_t nbr_cells, int *num_vertices_per_cell, double *x_vertices, double *y_vertices, int *cell_to_vertex)
void yac_rotate_coordinates(yac_coordinate_pointer coordinates, size_t num_coordinates, double north_pole[3])
yac_const_coordinate_pointer yac_basic_grid_get_field_coordinates(struct yac_basic_grid *grid, struct yac_interp_field field)
struct yac_basic_grid_data * yac_basic_grid_get_data(struct yac_basic_grid *grid)
struct yac_basic_grid * yac_basic_grid_cloud_deg_new(char const *name, size_t nbr_points, double *x_points, double *y_points)
struct yac_basic_grid * yac_basic_grid_unstruct_edge_deg_new(char const *name, size_t nbr_vertices, size_t nbr_cells, size_t nbr_edges, int *num_edges_per_cell, double *x_vertices, double *y_vertices, int *cell_to_edge, int *edge_to_vertex)
size_t yac_basic_grid_add_mask(struct yac_basic_grid *grid, enum yac_location location, int const *mask, size_t count, char const *mask_name)
struct yac_basic_grid * yac_basic_grid_reg_2d_new(char const *name, size_t nbr_vertices[2], int cyclic[2], double *lon_vertices, double *lat_vertices)
struct yac_basic_grid * yac_basic_grid_unstruct_ll_new(char const *name, size_t nbr_vertices, size_t nbr_cells, int *num_vertices_per_cell, double *x_vertices, double *y_vertices, int *cell_to_vertex)
size_t yac_basic_grid_add_coordinates_nocpy(struct yac_basic_grid *grid, enum yac_location location, yac_coordinate_pointer coordinates)
char const * yac_basic_grid_get_name(struct yac_basic_grid *grid)
void yac_basic_grid_compute_cell_areas(struct yac_basic_grid *grid, double *cell_areas)
struct yac_basic_grid * yac_basic_grid_reg_2d_rot_new(char const *name, size_t nbr_vertices[2], int cyclic[2], double *lon_vertices, double *lat_vertices, double north_pole_lon, double north_pole_lat)
size_t yac_basic_grid_add_coordinates(struct yac_basic_grid *grid, enum yac_location location, yac_coordinate_pointer coordinates, size_t count)
size_t yac_basic_grid_get_data_size(struct yac_basic_grid *grid, enum yac_location location)
struct yac_basic_grid * yac_basic_grid_unstruct_ll_deg_new(char const *name, size_t nbr_vertices, size_t nbr_cells, int *num_vertices_per_cell, double *x_vertices, double *y_vertices, int *cell_to_vertex)
int const * yac_basic_grid_get_core_mask(struct yac_basic_grid *grid, enum yac_location location)
struct yac_basic_grid * yac_basic_grid_empty_new(char const *name)
void yac_basic_grid_delete(struct yac_basic_grid *grid)
struct yac_basic_grid * yac_basic_grid_curve_2d_new(char const *name, size_t nbr_vertices[2], int cyclic[2], double *lon_vertices, double *lat_vertices)
struct yac_basic_grid * yac_basic_grid_curve_2d_deg_new(char const *name, size_t nbr_vertices[2], int cyclic[2], double *lon_vertices, double *lat_vertices)
struct yac_basic_grid * yac_basic_grid_unstruct_edge_ll_deg_new(char const *name, size_t nbr_vertices, size_t nbr_cells, size_t nbr_edges, int *num_edges_per_cell, double *x_vertices, double *y_vertices, int *cell_to_edge, int *edge_to_vertex)
size_t yac_basic_grid_add_mask_nocpy(struct yac_basic_grid *grid, enum yac_location location, int const *mask, char const *mask_name)
yac_coordinate_pointer * coordinates
enum yac_location location
double const (* yac_const_coordinate_pointer)[3]
double(* yac_coordinate_pointer)[3]