|
OOFEM 3.0
|
#include <simpletransportcrosssection.h>
Public Member Functions | |
| SimpleTransportCrossSection (int n, Domain *d) | |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| TransportMaterial * | giveMaterial () const override |
| Temporary function that hands out the material. Must be removed for future layered support, but input files will still look the same. | |
| Material * | giveMaterial (IntegrationPoint *ip) const override |
| hidden by virtual oofem::Material* TransportCrossSection::giveMaterial() const | |
| bool | isCharacteristicMtrxSymmetric (MatResponseMode rMode) const override |
| int | giveIPValue (FloatArray &answer, GaussPoint *ip, InternalStateType type, TimeStep *tStep) override |
| int | checkConsistency () override |
| int | packUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *gp) override |
| int | unpackAndUpdateUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *gp) override |
| int | estimatePackSize (DataStream &buff, GaussPoint *gp) override |
| const char * | giveClassName () const override |
| const char * | giveInputRecordName () const override |
| Public Member Functions inherited from oofem::TransportCrossSection | |
| TransportCrossSection (int n, Domain *d) | |
| Public Member Functions inherited from oofem::CrossSection | |
| CrossSection (int n, Domain *d) | |
| virtual | ~CrossSection () |
| Destructor. | |
| int | giveSetNumber () const |
| virtual bool | hasProperty (CrossSectionProperty a) |
| virtual double | give (CrossSectionProperty a, GaussPoint *gp) const |
| virtual double | give (CrossSectionProperty a, const FloatArray &coords, Element *elem, bool local=true) const |
| virtual double | give (int aProperty, GaussPoint *gp) const |
| void | printYourself () override |
| Prints receiver state on stdout. Useful for debugging. | |
| virtual int | setupIntegrationPoints (IntegrationRule &irule, int npoints, Element *element) |
| virtual int | setupIntegrationPoints (IntegrationRule &irule, int npointsXY, int npointsZ, Element *element) |
| virtual int | testCrossSectionExtension (CrossSectExtension ext) |
| virtual double | predictRelativeComputationalCost (GaussPoint *ip) |
| virtual double | giveRelativeSelfComputationalCost () |
| virtual double | predictRelativeRedistributionCost (GaussPoint *gp) |
| virtual void | saveIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
| virtual void | restoreIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| Public Member Functions inherited from oofem::FEMComponent | |
| FEMComponent (int n, Domain *d) | |
| virtual | ~FEMComponent ()=default |
| Virtual destructor. | |
| Domain * | giveDomain () const |
| virtual void | setDomain (Domain *d) |
| int | giveNumber () const |
| void | setNumber (int num) |
| virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
| virtual void | initializeFrom (InputRecord &ir, int priority) |
| virtual void | initializeFinish () |
| virtual void | postInitialize () |
| Performs post initialization steps. Called after all components are created and initialized. | |
| virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
| virtual Interface * | giveInterface (InterfaceType t) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
Protected Attributes | |
| int | matNumber = 0 |
| double | thickness = 0. |
| Protected Attributes inherited from oofem::CrossSection | |
| Dictionary | propertyDictionary |
| int | setNumber |
| Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
Transort cross-section. It's functionality is to be a wrapper around the material behavior.
Definition at line 56 of file simpletransportcrosssection.h.
| oofem::SimpleTransportCrossSection::SimpleTransportCrossSection | ( | int | n, |
| Domain * | d ) |
Constructor. Creates cross section with number n belonging to domain d.
| n | Cross section number. |
| d | Domain for cross section. |
Definition at line 43 of file simpletransportcrosssection.C.
References oofem::TransportCrossSection::TransportCrossSection().
|
overridevirtual |
Allows programmer to test some internal data, before computation begins. For example, one may use this function, to ensure that element has material with required capabilities is assigned to element. This must be done after all mesh components are instanciated.
Reimplemented from oofem::FEMComponent.
Definition at line 76 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
overridevirtual |
Estimates the necessary pack size to hold all packed data of receiver. The corresponding material model service is invoked. The nature of packed data is typically material model dependent.
| buff | Communication buffer. |
| ip | Integration point. |
Implements oofem::CrossSection.
Definition at line 126 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 86 of file simpletransportcrosssection.h.
|
overridevirtual |
Setups the input record string of receiver.
| input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::CrossSection.
Definition at line 67 of file simpletransportcrosssection.C.
References _IFT_SimpleTransportCrossSection_material, matNumber, and oofem::DynamicInputRecord::setField().
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 87 of file simpletransportcrosssection.h.
References _IFT_SimpleTransportCrossSection_Name.
|
overridevirtual |
Returns the integration point corresponding value in Reduced form.
| answer | contain corresponding ip value, zero sized if not available |
| ip | Integration point. |
| type | Determines the type of internal variable. |
| tStep | Time step. |
Reimplemented from oofem::CrossSection.
Definition at line 100 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
overridevirtual |
Temporary function that hands out the material. Must be removed for future layered support, but input files will still look the same.
Implements oofem::TransportCrossSection.
Definition at line 87 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
overridevirtual |
hidden by virtual oofem::Material* TransportCrossSection::giveMaterial() const
Returns the material associated with the GP. Default implementation uses gp->giveMaterial() for backwards compatibility, but it should be overloaded in each specialized cross-section.
Implements oofem::CrossSection.
Definition at line 93 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
overridevirtual |
Initializes receiver according to object description stored in input record. This function is called immediately after creating object using constructor. Input record can be imagined as data record in component database belonging to receiver. Receiver may use value-name extracting functions to extract particular field from record. Note that initializeFrom may be called mutiple times.
| ir | Input record to initialize from. |
| priority | Priority of the input record. This is used to determine the order of initialization |
Reimplemented from oofem::CrossSection.
Definition at line 47 of file simpletransportcrosssection.C.
References _IFT_SimpleTransportCrossSection_area, _IFT_SimpleTransportCrossSection_material, _IFT_SimpleTransportCrossSection_thickness, oofem::CS_Area, oofem::CS_Thickness, oofem::InputRecord::hasField(), IR_GIVE_FIELD, matNumber, oofem::CrossSection::propertyDictionary, and thickness.
|
overridevirtual |
Check for symmetry of stiffness matrix. Default implementation returns true. It can be moved to base Cross section class in the future.
| rMode | Response mode of material. |
Reimplemented from oofem::CrossSection.
Definition at line 107 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
overridevirtual |
Pack all necessary data of integration point (according to element parallel_mode) into given communication buffer. The corresponding material model service for particular integration point is invoked. The nature of packed data is material model dependent. Typically, for material of "local" response (response depends only on integration point local state) no data are exchanged. For "nonlocal" constitutive models the send/receive of local values which undergo averaging is performed between local and corresponding remote elements.
| buff | Communication buffer. |
| tStep | Solution step. |
| ip | Integration point. |
Implements oofem::CrossSection.
Definition at line 114 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
overridevirtual |
Unpack and updates all necessary data of given integration point (according to element parallel_mode) into given communication buffer.
| buff | Communication buffer. |
| tStep | Solution step. |
| ip | Integration point. |
Implements oofem::CrossSection.
Definition at line 120 of file simpletransportcrosssection.C.
References oofem::FEMComponent::domain, and matNumber.
|
protected |
Definition at line 59 of file simpletransportcrosssection.h.
Referenced by checkConsistency(), estimatePackSize(), giveInputRecord(), giveIPValue(), giveMaterial(), giveMaterial(), initializeFrom(), isCharacteristicMtrxSymmetric(), packUnknowns(), and unpackAndUpdateUnknowns().
|
protected |
Definition at line 60 of file simpletransportcrosssection.h.
Referenced by initializeFrom().