16#ifndef Coarsen_Operator_base_included
17#define Coarsen_Operator_base_included
19#include <Grid_Level_Data_template.h>
20#include <TRUST_Vector.h>
29 int additional_k_layers) = 0;
31 virtual void coarsen(
const IJK_Field_double& fine, IJK_Field_double& coarse,
int compute_weighted_average = 0)
const = 0;
33 virtual void interpolate_sub_shiftk(
const IJK_Field_double& coarse, IJK_Field_double& fine,
const int kshift)
const = 0;
35 int additional_k_layers) = 0;
37 virtual void coarsen(
const IJK_Field_float& fine, IJK_Field_float& coarse,
int compute_weighted_average = 0)
const = 0;
39 virtual void interpolate_sub_shiftk(
const IJK_Field_float& coarse, IJK_Field_float& fine,
const int kshift)
const = 0;
virtual void coarsen(const IJK_Field_double &fine, IJK_Field_double &coarse, int compute_weighted_average=0) const =0
virtual void initialize_grid_data(const Grid_Level_Data_double &fine, Grid_Level_Data_double &coarse, int additional_k_layers)=0
virtual void initialize_grid_data(const Grid_Level_Data_float &fine, Grid_Level_Data_float &coarse, int additional_k_layers)=0
virtual void ajouter_param(Param ¶m)
virtual void interpolate_sub_shiftk(const IJK_Field_double &coarse, IJK_Field_double &fine, const int kshift) const =0
virtual void coarsen(const IJK_Field_float &fine, IJK_Field_float &coarse, int compute_weighted_average=0) const =0
virtual void interpolate_sub_shiftk(const IJK_Field_float &coarse, IJK_Field_float &fine, const int kshift) const =0
Objet_U()
Constructeur par defaut : attribue un numero d'identifiant unique a l'objet (object_id_),...
Helper class to factorize the readOn method of Objet_U classes.