YAC 3.18.0
Yet Another Coupler
Loading...
Searching...
No Matches
interp_method_conserv.h
Go to the documentation of this file.
1// Copyright (c) 2024 The YAC Authors
2//
3// SPDX-License-Identifier: BSD-3-Clause
4
5#ifndef INTERP_METHOD_CONSERV_H
6#define INTERP_METHOD_CONSERV_H
7
9
10// YAC PUBLIC HEADER START
11
24
25#define YAC_INTERP_CONSERV_ORDER_DEFAULT (1)
26#define YAC_INTERP_CONSERV_ENFORCED_CONSERV_DEFAULT (0)
27#define YAC_INTERP_CONSERV_PARTIAL_COVERAGE_DEFAULT (0)
28#define YAC_INTERP_CONSERV_NORMALISATION_DEFAULT (YAC_INTERP_CONSERV_DESTAREA)
29
44 int order, int enforced_conserv, int partial_coverage,
46
47// YAC PUBLIC HEADER STOP
48
49// Modular config constructor for vtable-based config system
50
60
71 void *buffer, int buffer_size, int *position, MPI_Comm comm);
72
79
80#endif // INTERP_METHOD_CONSERV_H
Defines the interface of the interpolation method "base class" in YAC.
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.
struct interp_method * yac_interp_method_conserv_new(int order, int enforced_conserv, int partial_coverage, enum yac_interp_method_conserv_normalisation normalisation)
struct yac_interp_method_config * yac_interp_method_config_default_conserv_new(void)
Creates a conservative interpolation method configuration with default parameters.
yac_interp_method_conserv_normalisation
@ YAC_INTERP_CONSERV_DESTAREA
@ YAC_INTERP_CONSERV_FRACAREA
enum yac_interp_method_conserv_normalisation normalisation
double * buffer