YAC 3.17.0
Yet Another Coupler
Loading...
Searching...
No Matches
interp_method_conserv.h File Reference
Include dependency graph for interp_method_conserv.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  yac_interp_method_conserv_config
 

Macros

#define YAC_INTERP_CONSERV_ORDER_DEFAULT   (1)
 
#define YAC_INTERP_CONSERV_ENFORCED_CONSERV_DEFAULT   (0)
 
#define YAC_INTERP_CONSERV_PARTIAL_COVERAGE_DEFAULT   (0)
 
#define YAC_INTERP_CONSERV_NORMALISATION_DEFAULT   (YAC_INTERP_CONSERV_DESTAREA)
 

Enumerations

enum  yac_interp_method_conserv_normalisation { YAC_INTERP_CONSERV_DESTAREA = 0 , YAC_INTERP_CONSERV_FRACAREA = 1 }
 

Functions

struct interp_methodyac_interp_method_conserv_new (int order, int enforced_conserv, int partial_coverage, enum yac_interp_method_conserv_normalisation normalisation)
 
struct yac_interp_method_configyac_interp_method_config_conserv_unpack (void *buffer, int buffer_size, int *position, MPI_Comm comm)
 Unpacks a conservative interpolation method configuration from a buffer.
 
struct yac_interp_method_configyac_interp_method_config_default_conserv_new (void)
 Creates a conservative interpolation method configuration with default parameters.
 

Macro Definition Documentation

◆ YAC_INTERP_CONSERV_ENFORCED_CONSERV_DEFAULT

#define YAC_INTERP_CONSERV_ENFORCED_CONSERV_DEFAULT   (0)

Definition at line 26 of file interp_method_conserv.h.

◆ YAC_INTERP_CONSERV_NORMALISATION_DEFAULT

#define YAC_INTERP_CONSERV_NORMALISATION_DEFAULT   (YAC_INTERP_CONSERV_DESTAREA)

Definition at line 28 of file interp_method_conserv.h.

◆ YAC_INTERP_CONSERV_ORDER_DEFAULT

#define YAC_INTERP_CONSERV_ORDER_DEFAULT   (1)

Definition at line 25 of file interp_method_conserv.h.

◆ YAC_INTERP_CONSERV_PARTIAL_COVERAGE_DEFAULT

#define YAC_INTERP_CONSERV_PARTIAL_COVERAGE_DEFAULT   (0)

Definition at line 27 of file interp_method_conserv.h.

Enumeration Type Documentation

◆ yac_interp_method_conserv_normalisation

normalisation options for conservative interpolation
(see SCRIP user manual for a more detailed description of the options)

Enumerator
YAC_INTERP_CONSERV_DESTAREA 

interpolation values are normalised by the area of the respective target cell (this is the default option)

YAC_INTERP_CONSERV_FRACAREA 

interpolation values will be normalised by the area of the respective target cell that is covered by non-masked target cells

Definition at line 16 of file interp_method_conserv.h.

Function Documentation

◆ yac_interp_method_config_conserv_unpack()

struct yac_interp_method_config * yac_interp_method_config_conserv_unpack ( void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )

Unpacks a conservative interpolation method configuration from a buffer.

Parameters
[in]bufferBuffer containing the packed configuration data
[in]buffer_sizeSize of the buffer
[in,out]positionCurrent position in the buffer (will be updated)
[in]commMPI communicator for parallel unpacking
Returns
Pointer to the unpacked yac_interp_method_config structure

Definition at line 1457 of file interp_method_conserv.c.

◆ yac_interp_method_config_default_conserv_new()

struct yac_interp_method_config * yac_interp_method_config_default_conserv_new ( void )

Creates a conservative interpolation method configuration with default parameters.

Returns
Pointer to the created yac_interp_method_config structure

Definition at line 1443 of file interp_method_conserv.c.

◆ yac_interp_method_conserv_new()

struct interp_method * yac_interp_method_conserv_new ( int order,
int enforced_conserv,
int partial_coverage,
enum yac_interp_method_conserv_normalisation normalisation )

constructor for an interpolation method of type interp_method_conserv

Parameters
[in]order1st or 2nd order remapping
[in]enforced_conservenforce conservation by correcting truncation errors
[in]partial_coverageif == 0, target cells that are not completely covered by non-masked source cells will not be interpolated (this is the default option)
if != 0, for target cells that are only partially covered by non-mask source cells the interpolation value will be determined by the contributions of the respective source cells
[in]normalisationspecifies how to do the normalisation

Definition at line 1232 of file interp_method_conserv.c.

Here is the caller graph for this function: