31#include "../../../Common/include/parallelization/mpi_structure.hpp"
32#include "../../../Common/include/containers/C2DContainer.hpp"
33#include "../../../Common/include/option_structure.hpp"
92 CInterface(
unsigned short val_nVar,
unsigned short val_nConst);
130 const CConfig *donor_config,
unsigned long Marker_Donor,
131 unsigned long Vertex_Donor,
unsigned long Point_Donor) = 0;
151 unsigned long Vertex_Target,
unsigned short nDonorPoints){
161 for (
auto iVar = 0u; iVar <
nVar; iVar++)
Target_Variable[iVar] += donorCoeff * bcastVariable[iVar];
189 const CConfig *target_config,
unsigned long Marker_Target,
190 unsigned long Vertex_Target,
unsigned long Point_Target) = 0;
199 unsigned short donorZone) { }
A templated matrix/vector-like object.
Definition C2DContainer.hpp:374
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Parent class for defining the geometry of the problem (complete geometry, multigrid agglomerated geom...
Definition CGeometry.hpp:75
Main class for defining the physical transfer of information.
Definition CInterface.hpp:60
static constexpr size_t MAXNDIM
Max number of space dimensions, used in some static arrays.
Definition CInterface.hpp:79
CInterface * NextInterface
Definition CInterface.hpp:247
unsigned short GetInterfaceType(void) const
Get the type of an interface.
Definition CInterface.hpp:240
CInterface()
Constructor of the class.
Definition CInterface.cpp:34
const int rank
MPI Rank.
Definition CInterface.hpp:63
virtual void SetContactResistance(su2double val_contact_resistance)
Set the contact resistance value for the solid-to-solid heat transfer interface.
Definition CInterface.hpp:229
virtual void InitializeTarget_Variable(CSolver *target_solution, unsigned long Marker_Target, unsigned long Vertex_Target, unsigned short nDonorPoints)
Initializes the target variable.
Definition CInterface.hpp:150
virtual ~CInterface()
Destructor of the class.
Definition CInterface.cpp:52
virtual void RecoverTarget_Span(const su2activevector &bcastVariable, unsigned long idx, su2double donorCoeff)
Recovers the target variable at the span from the buffer of su2doubles that was broadcast for mixing ...
Definition CInterface.hpp:177
unsigned short nVar
Definition CInterface.hpp:78
virtual void GetDonor_Velocity_RotatingFrame(const CConfig *donor_config, CGeometry *donor_geometry, const CConfig *target_config, CGeometry *target_geometry)
A virtual member.
Definition CInterface.hpp:140
su2double * Physical_Constants
Definition CInterface.hpp:66
su2double * Donor_Variable
Definition CInterface.hpp:67
unsigned short InterfaceType
The type of interface.
Definition CInterface.hpp:71
virtual void GetPhysical_Constants(CSolver *donor_solution, CSolver *target_solution, CGeometry *donor_geometry, CGeometry *target_geometry, const CConfig *donor_config, const CConfig *target_config)
A virtual member.
Definition CInterface.hpp:118
virtual void SetAverageTurboGeoValues(CGeometry *donor_geometry, CGeometry *target_geometry, unsigned short donorZone)
A virtual member.
Definition CInterface.hpp:198
unsigned short * SpanLevelDonor
Definition CInterface.hpp:75
ENUM_TRANSFER NextInterfaceType
These can be used to chain interfaces between the same zones but for other variables,...
Definition CInterface.hpp:246
su2double * SpanValueCoeffTarget
Definition CInterface.hpp:74
su2double * Target_Variable
Definition CInterface.hpp:68
virtual void RecoverTarget_SpanEndwall(const su2activevector &bcastVariable, unsigned long idx)
Recovers the target variable at the endwall from the buffer of su2doubles that was broadcast for mixi...
Definition CInterface.hpp:169
virtual void SetTarget_Variable(CSolver *target_solution, CGeometry *target_geometry, const CConfig *target_config, unsigned long Marker_Target, unsigned long Vertex_Target, unsigned long Point_Target)=0
A virtual member.
virtual void GetDonor_Variable(CSolver *donor_solution, CGeometry *donor_geometry, const CConfig *donor_config, unsigned long Marker_Donor, unsigned long Vertex_Donor, unsigned long Point_Donor)=0
A virtual member.
virtual void BroadcastData_MixingPlane(const CInterpolator &interpolator, CSolver *donor_solution, CSolver *target_solution, CGeometry *donor_geometry, CGeometry *target_geometry, const CConfig *donor_config, const CConfig *target_config)
Interpolate data and broadcast it into all processors, for nonmatching meshes.
Definition CInterface.hpp:219
const int size
MPI Size.
Definition CInterface.hpp:64
unsigned short nSpanMaxAllZones
Definition CInterface.hpp:76
void BroadcastData(const CInterpolator &interpolator, CSolver *donor_solution, CSolver *target_solution, CGeometry *donor_geometry, CGeometry *target_geometry, const CConfig *donor_config, const CConfig *target_config)
Interpolate data and broadcast it into all processors, for nonmatching meshes.
Definition CInterface.cpp:64
virtual void RecoverTarget_Variable(const su2double *bcastVariable, su2double donorCoeff)
Recovers the target variable from the buffer of su2doubles that was broadcast.
Definition CInterface.hpp:160
bool valAggregated
Definition CInterface.hpp:69
void SetInterfaceType(unsigned short interface_type)
Set the type of an interface.
Definition CInterface.hpp:235
virtual void SetSpanWiseLevels(const CConfig *donor_config, const CConfig *target_config)
A virtual member.
Definition CInterface.hpp:207
Main class for defining the interpolator, it requires a child class for each particular interpolation...
Definition CInterpolator.hpp:47
Definition CSolver.hpp:71
passivedouble su2double
Definition code_config.hpp:181
ENUM_TRANSFER
types of (coupling) transfers between distinct physical zones
Definition option_structure.hpp:498
@ NO_TRANSFER
Zones may share a boundary, but still no coupling desired.
Definition option_structure.hpp:501