FMS 2025.01-dev
Flexible Modeling System
Loading...
Searching...
No Matches
horiz_interp_conserve_xgrid.c File Reference

(9c24e8bf1b1e155b757115d031fe5e4dabb6d6a9)

Grid creation and calculation functions for use in mosaic_mod /. More...

#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include "grid_utils.h"
#include "tree_utils.h"
#include "horiz_interp_conserve_xgrid.h"
#include "constant.h"
Include dependency graph for horiz_interp_conserve_xgrid.c:

Go to the source code of this file.

Functions

int create_xgrid_1dx2d_order1 (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area)
 
int create_xgrid_1dx2d_order1_ (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area)
 
int create_xgrid_1dx2d_order1_ug (const int *nlon_in, const int *nlat_in, const int *npts_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *l_out, double *xgrid_area)
 
int create_xgrid_1dx2d_order1_ug_ (const int *nlon_in, const int *nlat_in, const int *npts_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *l_out, double *xgrid_area)
 
int create_xgrid_1dx2d_order2 (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_1dx2d_order2_ (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_2dx1d_order1 (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area)
 
int create_xgrid_2dx1d_order1_ (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area)
 
int create_xgrid_2dx1d_order2 (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_2dx1d_order2_ (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_2dx2d_order1 (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area)
 
int create_xgrid_2dx2d_order1_ (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area)
 
int create_xgrid_2dx2d_order2 (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_2dx2d_order2_ (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_great_circle (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_great_circle_ (const int *nlon_in, const int *nlat_in, const int *nlon_out, const int *nlat_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *i_out, int *j_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_great_circle_ug (const int *nlon_in, const int *nlat_in, const int *npts_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *l_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int create_xgrid_great_circle_ug_ (const int *nlon_in, const int *nlat_in, const int *npts_out, const double *lon_in, const double *lat_in, const double *lon_out, const double *lat_out, const double *mask_in, int *i_in, int *j_in, int *l_out, double *xgrid_area, double *xgrid_clon, double *xgrid_clat)
 
int get_maxxgrid (void)
 
int get_maxxgrid_ (void)
 

Detailed Description

Grid creation and calculation functions for use in mosaic_mod /.

/******************************************************************************* void create_xgrid_1dx2d_order1 This routine generate exchange grids between two grids for the first order conservative interpolation. nlon_in,nlat_in,nlon_out,nlat_out are the size of the grid cell and lon_in,lat_in are 1-D grid bounds, lon_out,lat_out are geographic grid location of grid cell bounds.

Definition in file horiz_interp_conserve_xgrid.c.

Function Documentation

◆ create_xgrid_1dx2d_order1()

int create_xgrid_1dx2d_order1 ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area 
)

Definition at line 54 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_1dx2d_order1_()

int create_xgrid_1dx2d_order1_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area 
)

Definition at line 42 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_1dx2d_order1_ug()

int create_xgrid_1dx2d_order1_ug ( const int *  nlon_in,
const int *  nlat_in,
const int *  npts_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  l_out,
double *  xgrid_area 
)

Definition at line 158 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_1dx2d_order1_ug_()

int create_xgrid_1dx2d_order1_ug_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  npts_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  l_out,
double *  xgrid_area 
)

Definition at line 146 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_1dx2d_order2()

int create_xgrid_1dx2d_order2 ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 257 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_1dx2d_order2_()

int create_xgrid_1dx2d_order2_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 246 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx1d_order1()

int create_xgrid_2dx1d_order1 ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area 
)

Definition at line 358 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx1d_order1_()

int create_xgrid_2dx1d_order1_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area 
)

Definition at line 346 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx1d_order2()

int create_xgrid_2dx1d_order2 ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 460 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx1d_order2_()

int create_xgrid_2dx1d_order2_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 448 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx2d_order1()

int create_xgrid_2dx2d_order1 ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area 
)

Definition at line 566 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx2d_order1_()

int create_xgrid_2dx2d_order1_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area 
)

Definition at line 554 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx2d_order2()

int create_xgrid_2dx2d_order2 ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 833 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_2dx2d_order2_()

int create_xgrid_2dx2d_order2_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 822 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_great_circle()

int create_xgrid_great_circle ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 1104 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_great_circle_()

int create_xgrid_great_circle_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  nlon_out,
const int *  nlat_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  i_out,
int *  j_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 1092 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_great_circle_ug()

int create_xgrid_great_circle_ug ( const int *  nlon_in,
const int *  nlat_in,
const int *  npts_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  l_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 1214 of file horiz_interp_conserve_xgrid.c.

◆ create_xgrid_great_circle_ug_()

int create_xgrid_great_circle_ug_ ( const int *  nlon_in,
const int *  nlat_in,
const int *  npts_out,
const double *  lon_in,
const double *  lat_in,
const double *  lon_out,
const double *  lat_out,
const double *  mask_in,
int *  i_in,
int *  j_in,
int *  l_out,
double *  xgrid_area,
double *  xgrid_clon,
double *  xgrid_clat 
)

Definition at line 1202 of file horiz_interp_conserve_xgrid.c.

◆ get_maxxgrid()

int get_maxxgrid ( void  )

Definition at line 1313 of file horiz_interp_conserve_xgrid.c.

◆ get_maxxgrid_()

int get_maxxgrid_ ( void  )

Definition at line 1318 of file horiz_interp_conserve_xgrid.c.