LifeV
|
MultiscaleCouplingBoundaryCondition - Coupling condition for standard boundary conditions. More...
#include <MultiscaleCouplingBoundaryCondition.hpp>
Private Attributes | |
std::string | M_fileName |
std::vector< bcName_Type > | M_list |
UInt | M_listSize |
Constructors & Destructor | |
MultiscaleCouplingBoundaryCondition () | |
Constructor. More... | |
virtual | ~MultiscaleCouplingBoundaryCondition () |
Destructor. More... | |
Multiscale PhysicalCoupling Implementation | |
void | setupData (const std::string &fileName) |
Setup the data of the coupling. More... | |
void | setupCouplingVariablesNumber () |
Setup the coupling variables number. More... | |
void | setupCoupling () |
Setup the coupling. More... | |
void | initializeCouplingVariables () |
Initialize the values of the coupling variables (DO NOTHING) More... | |
void | updateCoupling () |
Update the coupling. More... | |
void | computeCouplingResiduals () |
Compute the local coupling residuals vector. More... | |
Private Multiscale PhysicalCoupling Implementation | |
void | exportListOfPerturbedModels (const UInt &, multiscaleModelsContainer_Type &) |
Build the list of models affected by the perturbation of a local coupling variable (DO NOTHING) More... | |
void | insertJacobianConstantCoefficients (multiscaleMatrix_Type &) |
Insert constant coefficients into the Jacobian matrix (DO NOTHING) More... | |
void | insertJacobianDeltaCoefficients (multiscaleMatrix_Type &, const UInt &, const UInt &, bool &) |
Insert the Jacobian coefficient(s) depending on a perturbation of the model, due to a specific variable (the column) (DO NOTHING) More... | |
Unimplemented Methods | |
MultiscaleCouplingBoundaryCondition (const MultiscaleCouplingBoundaryCondition &coupling) | |
MultiscaleCouplingBoundaryCondition & | operator= (const MultiscaleCouplingBoundaryCondition &coupling) |
Additional Inherited Members | |
Public Types inherited from MultiscaleCoupling | |
typedef MultiscaleCouplingFunction | couplingFunction_Type |
typedef std::shared_ptr< couplingFunction_Type > | couplingFunctionPtr_Type |
typedef std::vector< couplingFunction_Type > | couplingFunctionsContainer_Type |
typedef std::vector< multiscaleVectorPtr_Type > | couplingVariablesContainer_Type |
typedef std::vector< Real > | timeContainer_Type |
typedef multiscaleVector_Type::combineMode_Type | combineMode_Type |
Public Member Functions inherited from MultiscaleCoupling | |
MultiscaleCoupling () | |
Constructor. More... | |
virtual | ~MultiscaleCoupling () |
Destructor. More... | |
virtual bool | topologyChange () |
Check if the topology is changed. More... | |
UInt | myModelsNumber () const |
Determine the number of models owned by this coupling. More... | |
bool | myModel (const UInt &localModelID) const |
Determine if the model is owned by this coupling. More... | |
bool | isModelLeaderProcess (const UInt &localModelID) const |
Determine if this is the model leader process. More... | |
void | createCouplingMap (MapEpetra &couplingMap) |
Build the global map for the coupling vectors. More... | |
void | importCouplingVariables (const multiscaleVector_Type &couplingVariables) |
Import the values of the coupling variables. More... | |
void | exportCouplingVariables (multiscaleVector_Type &couplingVariables) |
Export the values of the coupling variables. More... | |
void | exportCouplingResiduals (multiscaleVector_Type &couplingResiduals) |
Export the values of the coupling variables. More... | |
void | extrapolateCouplingVariables () |
Extrapolate the values of the coupling variables for the next time step. More... | |
void | interpolateCouplingVariables (const Real &t, multiscaleVector_Type &interpolatedCouplingVariables) const |
Lagrange interpolation/extrapolation of the coupling variables at selected time. More... | |
bool | isPerturbed () const |
Find if a perturbation is imposed on the coupling. More... | |
void | exportJacobian (multiscaleMatrix_Type &jacobian) |
Export the Jacobian matrix. More... | |
void | saveSolution () |
save the coupling variables information on a file More... | |
void | showMe () |
Display some information about the coupling. More... | |
void | showMeResiduals () const |
Display the local residuals vector. More... | |
void | showMeCouplingVariables () const |
Display the local coupling variables. More... | |
void | clearModelsList () |
Clear the list of pointers to the models. More... | |
void | setID (const UInt &ID) |
Set the global ID of the coupling condition. More... | |
void | setModelsNumber (const UInt &modelsNumber) |
Set the number of models coupled by this coupling condition. More... | |
void | setModel (const UInt &localModelID, const multiscaleModelPtr_Type &model) |
Add a pointer to one of the models to be coupled. More... | |
void | setBoundaryID (const UInt &modelLocalID, const multiscaleID_Type &boundaryLocalID) |
Set the boundary ID of one of the coupled models. More... | |
void | setGlobalData (const multiscaleDataPtr_Type &globalData) |
Setup the global data of the coupling. More... | |
void | setCommunicator (const multiscaleCommPtr_Type &comm) |
Set the epetra communicator for the coupling. More... | |
const UInt & | ID () const |
Get the global ID of the coupling. More... | |
const couplings_Type & | type () const |
Get the type of the coupling. More... | |
const std::string & | couplingName () const |
Get the name of the coupling. More... | |
UInt | modelsNumber () const |
Get the number of models connected by the coupling. More... | |
UInt | modelGlobalToLocalID (const UInt &ID) const |
Get the model local ID through global ID. More... | |
multiscaleModelPtr_Type | model (const UInt &localModelID) const |
Get the model connected by the coupling through local ID. More... | |
const multiscaleID_Type & | boundaryID (const UInt &localModelID) const |
Get the model connected by the coupling through local ID. More... | |
const UInt & | couplingVariablesNumber () const |
Get the number of the coupling variables. More... | |
const couplingVariablesContainer_Type & | couplingVariables () const |
Get the container of the local coupling variables. More... | |
const Int & | perturbedCoupling () const |
Get the perturbed coupling. More... | |
const multiscaleVector_Type & | residual () const |
Get the local residual. More... | |
const UInt & | timeInterpolationOrder () const |
Get the time interpolation order. More... | |
Protected Member Functions inherited from MultiscaleCoupling | |
const multiscaleVector_Type & | localCouplingVariables (const UInt &id) const |
Access by reference to a specific local coupling variable. More... | |
multiscaleVector_Type & | localCouplingVariables (const UInt &id) |
void | createLocalVectors () |
Create the local vectors of the coupling. More... | |
void | resetCouplingHistory () |
Reset the history of the couplings. More... | |
void | importCouplingVector (multiscaleVector_Type &repeatedLocalVector, const multiscaleVector_Type &uniqueGlobalVector, const combineMode_Type &combineMode=Add) |
Import the content of the unique global vector into the repeated local vector. More... | |
void | exportCouplingVector (multiscaleVector_Type &uniqueGlobalVector, const multiscaleVector_Type &repeatedLocalVector, const combineMode_Type &combineMode=Add) |
Export the content of the repeated local vector into the unique global vector. More... | |
void | switchErrorMessage (const multiscaleModelPtr_Type &model) |
Display and error message for the specific model. More... | |
Protected Attributes inherited from MultiscaleCoupling | |
UInt | M_ID |
couplings_Type | M_type |
multiscaleModelsContainer_Type | M_models |
std::string | M_couplingName |
multiscaleIDContainer_Type | M_boundaryIDs |
multiscaleDataPtr_Type | M_globalData |
UInt | M_couplingVariablesNumber |
UInt | M_couplingVariablesOffset |
couplingFunctionsContainer_Type | M_localCouplingFunctions |
couplingVariablesContainer_Type | M_localCouplingVariables |
multiscaleVectorPtr_Type | M_localCouplingResiduals |
UInt | M_timeInterpolationOrder |
Int | M_flowRateInterfaces |
Int | M_perturbedCoupling |
multiscaleCommPtr_Type | M_comm |
MultiscaleCouplingBoundaryCondition - Coupling condition for standard boundary conditions.
The MultiscaleCouplingBoundaryCondition class is an implementation of the multiscaleCoupling_Type for applying standard boundary conditions on the models.
Definition at line 85 of file MultiscaleCouplingBoundaryCondition.hpp.
|
explicit |
Constructor.
Definition at line 47 of file MultiscaleCouplingBoundaryCondition.cpp.
|
inlinevirtual |
Destructor.
Definition at line 96 of file MultiscaleCouplingBoundaryCondition.hpp.
|
private |
|
virtual |
Setup the data of the coupling.
fileName | Name of data file |
Reimplemented from MultiscaleCoupling.
Definition at line 65 of file MultiscaleCouplingBoundaryCondition.cpp.
|
virtual |
Setup the coupling variables number.
Implements MultiscaleCoupling.
Definition at line 91 of file MultiscaleCouplingBoundaryCondition.cpp.
|
virtual |
Setup the coupling.
Implements MultiscaleCoupling.
Definition at line 102 of file MultiscaleCouplingBoundaryCondition.cpp.
|
inlinevirtual |
Initialize the values of the coupling variables (DO NOTHING)
Implements MultiscaleCoupling.
Definition at line 117 of file MultiscaleCouplingBoundaryCondition.hpp.
|
inlinevirtual |
Update the coupling.
Nothing to do for boundary conditions
Implements MultiscaleCoupling.
Definition at line 123 of file MultiscaleCouplingBoundaryCondition.hpp.
|
inlinevirtual |
Compute the local coupling residuals vector.
Implements MultiscaleCoupling.
Definition at line 126 of file MultiscaleCouplingBoundaryCondition.hpp.
|
inlineprivatevirtual |
Build the list of models affected by the perturbation of a local coupling variable (DO NOTHING)
localCouplingVariableID | id of the perturbed local coupling variable |
perturbedModelsList | list of models affected by the perturbation |
Implements MultiscaleCoupling.
Definition at line 140 of file MultiscaleCouplingBoundaryCondition.hpp.
|
inlineprivatevirtual |
Insert constant coefficients into the Jacobian matrix (DO NOTHING)
jacobian | the Jacobian matrix |
Implements MultiscaleCoupling.
Definition at line 146 of file MultiscaleCouplingBoundaryCondition.hpp.
|
inlineprivatevirtual |
Insert the Jacobian coefficient(s) depending on a perturbation of the model, due to a specific variable (the column) (DO NOTHING)
jacobian | the Jacobian matrix |
column | the column related to the perturbed variable |
ID | the global ID of the model which is perturbed by the variable |
solveLinearSystem | a flag to which determine if the linear system has to be solved |
Implements MultiscaleCoupling.
Definition at line 155 of file MultiscaleCouplingBoundaryCondition.hpp.
|
private |
|
private |
Definition at line 192 of file MultiscaleCouplingBoundaryCondition.hpp.
|
private |
Definition at line 194 of file MultiscaleCouplingBoundaryCondition.hpp.
|
private |
Definition at line 195 of file MultiscaleCouplingBoundaryCondition.hpp.