IFEM  90A354
Public Member Functions | Public Attributes | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
SIMadmin Class Reference

Administration base class for FEM simulators. More...

#include <SIMadmin.h>

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

Public Member Functions

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 parse (const tinyxml2::XMLElement *elem)
 Parses a data section from an XML document.
 
virtual bool preprocess (const IntVec &ignored={}, bool fixDup=false)
 Performs some pre-processing tasks on the FE model.
 
virtual bool preprocessC (const IntVec &, bool, double=0.0)
 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...
 

Public Attributes

SIMoptionsopt
 Simulation control parameters.
 

Static Public Attributes

static int msgLevel = 2
 Controls the console output amount during solving.
 

Protected Types

using IntVec = std::vector< int >
 Convenience alias.
 

Protected Member Functions

 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.
 

Protected Attributes

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 readFlat (const char *fileName)
 Reads a flat text input file (the old file format).
 

Private Attributes

SIMoptions myOpts
 Actual control parameters owned by this simulator.
 

Detailed Description

Administration base class for FEM simulators.

This class serves as a common base for all types of simulator drivers in IFEM and contains the general top-level methods for reading the model input file, as well as data for administration of parallel executions.

Member Function Documentation

◆ getGlobalProcessID()

int SIMadmin::getGlobalProcessID ( ) const
inline

Returns the global process ID.

Note
May be different from the process ID used in the equation solver.

References myPid.


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