IFEM  90A354
SIMdummy.h
Go to the documentation of this file.
1 // $Id$
2 //==============================================================================
12 //==============================================================================
13 
14 #ifndef _SIM_DUMMY_H_
15 #define _SIM_DUMMY_H_
16 
17 #include <vector>
18 #include <iostream>
19 
20 class ASMbase;
21 class IntegrandBase;
22 class ModelGenerator;
23 namespace tinyxml2 { class XMLElement; }
24 namespace ASM { struct Interface; }
25 
26 
34 template<class Base> class SIMdummy : public Base
35 {
36 protected:
38  explicit SIMdummy(IntegrandBase* p = nullptr) : Base(p) {}
40  virtual ~SIMdummy() {}
41 public:
43  virtual unsigned short int getNoParamDim() const { return 0; }
45  virtual bool createFEMmodel(char) { return false; }
47  virtual std::vector<std::vector<int>> getElmConnectivities() const
48  { return std::vector<std::vector<int>>(); }
49 protected:
51  virtual bool parseGeometryDimTag(const tinyxml2::XMLElement*)
52  { return false; }
54  virtual void preprocessResultPoints() {}
56  virtual ModelGenerator* getModelGenerator(const tinyxml2::XMLElement*) const
57  { return nullptr; }
59  virtual ASMbase* readPatch(std::istream&,int,
60  const std::vector<unsigned char>&,
61  const char*) const { return nullptr; }
63  virtual bool connectPatches(const ASM::Interface&,bool) { return false; }
64 };
65 
66 #endif
Base class for spline-based finite element (FE) assembly drivers.
Definition: ASMbase.h:70
Base class representing a system level integrated quantity.
Definition: IntegrandBase.h:42
Base class for model generators for FEM simulators.
Definition: ModelGenerator.h:29
Template SIM class with some dummy implementations.
Definition: SIMdummy.h:35
virtual ASMbase * readPatch(std::istream &, int, const std::vector< unsigned char > &, const char *) const
Reads a patch from given input stream.
Definition: SIMdummy.h:59
virtual bool parseGeometryDimTag(const tinyxml2::XMLElement *)
Parses a dimension-specific subelement of the geometry XML-tag.
Definition: SIMdummy.h:51
virtual unsigned short int getNoParamDim() const
Returns the number of parameter dimensions in the model.
Definition: SIMdummy.h:43
virtual ~SIMdummy()
Empty destructor.
Definition: SIMdummy.h:40
virtual void preprocessResultPoints()
Preprocesses the result sampling points.
Definition: SIMdummy.h:54
virtual bool createFEMmodel(char)
Creates the computational FEM model from the spline patches.
Definition: SIMdummy.h:45
virtual bool connectPatches(const ASM::Interface &, bool)
Connects two patches.
Definition: SIMdummy.h:63
virtual std::vector< std::vector< int > > getElmConnectivities() const
Element-element connectivities.
Definition: SIMdummy.h:47
virtual ModelGenerator * getModelGenerator(const tinyxml2::XMLElement *) const
Creates a model generator.
Definition: SIMdummy.h:56
SIMdummy(IntegrandBase *p=nullptr)
Default constructor.
Definition: SIMdummy.h:38
Assembly scope.
Definition: SIMdummy.h:24
Struct for representing a domain interface.
Definition: Interface.h:24