IFEM  90A354
Classes | Public Member Functions | Protected Attributes | Private Member Functions | List of all members
SIMmultiCpl Class Reference

Class for monolithic coupled simulators. More...

#include <SIMmultiCpl.h>

Inheritance diagram for SIMmultiCpl:
Inheritance graph
[legend]
Collaboration diagram for SIMmultiCpl:
Collaboration graph
[legend]

Classes

struct  SIMcoupling
 Struct defining an inter-simulator coupling. More...
 

Public Member Functions

 SIMmultiCpl (const std::vector< SIMoutput * > &sims)
 The constructor initializes the array of base SIM objects.
 
virtual ~SIMmultiCpl ()
 The destructor deletes the base SIM objects.
 
virtual bool parse (const tinyxml2::XMLElement *elem)
 Parses a data section from an XML document.
 
virtual bool preprocessC (const IntVec &ignored, bool fixDup, double time0)
 Performs some pre-processing tasks on the FE model. More...
 
virtual bool parse (char *keyWord, std::istream &is)
 Parses a data section from an input stream.
 
virtual bool parse (const tinyxml2::XMLElement *elem)
 Parses a data section from an XML document.
 
- Public Member Functions inherited from SIMadmin
virtual ~SIMadmin ()
 Empty destructor.
 
virtual bool read (const char *fileName)
 Reads model data from the specified input file *fileName.
 
virtual bool parse (char *keyWord, std::istream &is)
 Parses a data section from an input stream.
 
virtual bool preprocess (const IntVec &ignored={}, bool fixDup=false)
 Performs some pre-processing tasks on the FE model.
 
const ProcessAdmgetProcessAdm () const
 Returns the parallel process administrator.
 
int getGlobalProcessID () const
 Returns the global process ID. More...
 
const std::string & getHeading () const
 Returns the simulator heading.
 
void setHeading (const std::string &heading)
 Defines the simulator heading.
 
void printHeading (int &supStep) const
 Prints the heading of this simulator, if any, to IFEM::cout.
 
- Public Member Functions inherited from XMLInputBase
bool readXML (const char *fileName, bool verbose=true)
 Reads an XML input file. More...
 
bool loadXML (const char *xml)
 Loads data from an XML-formatted text string. More...
 

Protected Attributes

std::vector< SIMcouplingmyCpl
 Inter-sim coupling definition container.
 
std::vector< SIMoutput * > mySims
 Dimension-specific simulator container.
 
- Protected Attributes inherited from SIMadmin
ProcessAdm adm
 Parallel administrator.
 
int myPid
 Processor ID in parallel simulations.
 
int nProc
 Number of processors in parallel simulations.
 
std::string myHeading
 Heading written before reading the input file.
 

Private Member Functions

bool parseConnection (const tinyxml2::XMLElement *elem)
 Parses a connection definition from an XML element.
 

Additional Inherited Members

- Public Attributes inherited from SIMadmin
SIMoptionsopt
 Simulation control parameters.
 
- Static Public Attributes inherited from SIMadmin
static int msgLevel = 2
 Controls the console output amount during solving.
 
- Protected Types inherited from SIMadmin
using IntVec = std::vector< int >
 Convenience alias.
 
- Protected Member Functions inherited from SIMadmin
 SIMadmin (const char *heading=nullptr)
 The default constructor initializes the process administrator.
 
 SIMadmin (SIMadmin &anotherSIM)
 Copy constructor.
 
- Protected Member Functions inherited from XMLInputBase
const tinyxml2::XMLElement * loadFile (tinyxml2::XMLDocument &doc, const char *fileName, bool verbose=false)
 Loads an XML input file into a tinyxml2::XMLDocument object. More...
 
virtual const char ** getPrioritizedTags () const
 Returns a list of prioritized XML-tags.
 

Detailed Description

Class for monolithic coupled simulators.

Member Function Documentation

◆ preprocessC()

bool SIMmultiCpl::preprocessC ( const IntVec ignored,
bool  fixDup,
double  time0 
)
virtual

Performs some pre-processing tasks on the FE model.

Parameters
[in]ignoredIndices of patches to be ignored in the analysis
[in]fixDupMerge duplicated FE nodes on patch interfaces?
[in]time0Initial time for time-dependent dirichlet conditions

Reimplemented from SIMadmin.

References IFEM::cout, Vec3::equal(), myCpl, mySims, and SIMadmin::printHeading().


The documentation for this class was generated from the following files: