|
OOFEM 3.0
|
#include <prescribeddispslipbcneumannrc.h>
Public Member Functions | |
| PrescribedDispSlipBCNeumannRC (int n, Domain *d) | |
| virtual | ~PrescribedDispSlipBCNeumannRC () |
| int | giveNumberOfInternalDofManagers () override |
| Gives the number of internal dof managers. | |
| DofManager * | giveInternalDofManager (int i) override |
| Gives an internal dof manager from receiver. | |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| bcType | giveType () const override |
| void | scale (double s) override |
| void | assembleVector (FloatArray &answer, TimeStep *tStep, CharType type, ValueModeType mode, const UnknownNumberingScheme &s, FloatArray *eNorm=nullptr, void *lock=nullptr) override |
| void | assemble (SparseMtrx &answer, TimeStep *tStep, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s, double scale=1.0, void *lock=nullptr) override |
| void | giveLocationArrays (std ::vector< IntArray > &rows, std ::vector< IntArray > &cols, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s) override |
| const char * | giveClassName () const override |
| const char * | giveInputRecordName () const override |
| void | computeStress (FloatArray &sigma, TimeStep *tStep) override |
| void | computeTransferStress (FloatArray &bStress, TimeStep *tStep) override |
| void | computeReinfStress (FloatArray &rStress, TimeStep *tStep) override |
| void | computeTangent (FloatMatrix &tangent, TimeStep *tStep) override |
| Public Member Functions inherited from oofem::ActiveBoundaryCondition | |
| ActiveBoundaryCondition (int n, Domain *d) | |
| virtual | ~ActiveBoundaryCondition () |
| Destructor. | |
| virtual void | addElementSide (int elem, int side) |
| virtual bool | requiresActiveDofs () |
| virtual bool | isPrimaryDof (ActiveDof *dof) |
| virtual double | giveBcValue (Dof *dof, ValueModeType mode, TimeStep *tStep) |
| virtual bool | hasBc (Dof *dof, TimeStep *tStep) |
| virtual int | giveNumberOfMasterDofs (ActiveDof *dof) |
| virtual Dof * | giveMasterDof (ActiveDof *dof, int mdof) |
| virtual void | computeDofTransformation (ActiveDof *dof, FloatArray &masterContribs) |
| virtual double | giveUnknown (PrimaryField &field, ValueModeType mode, TimeStep *tStep, ActiveDof *dof) |
| virtual double | giveUnknown (ValueModeType mode, TimeStep *tStep, ActiveDof *dof) |
| Public Member Functions inherited from oofem::GeneralBoundaryCondition | |
| GeneralBoundaryCondition (int n, Domain *d) | |
| virtual | ~GeneralBoundaryCondition () |
| Destructor. | |
| int | giveSetNumber () const |
| Function * | giveTimeFunction () |
| int | getIsImposedTimeFunctionNumber () const |
| void | setIsImposedTimeFunctionNumber (int funcIndx) |
| virtual bcValType | giveBCValType () const |
| virtual bool | isImposed (TimeStep *tStep) |
| virtual const IntArray & | giveDofIDs () const |
| virtual bcGeomType | giveBCGeoType () const |
| virtual double | giveProperty (int aProperty, TimeStep *tStep) const |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| virtual void | updateYourself (TimeStep *tStep) |
| 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 int | checkConsistency () |
| virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
| virtual void | printYourself () |
| Prints receiver state on stdout. Useful for debugging. | |
| virtual Interface * | giveInterface (InterfaceType t) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
| Public Member Functions inherited from oofem::PrescribedDispSlipHomogenization | |
| PrescribedDispSlipHomogenization () | |
| virtual | ~PrescribedDispSlipHomogenization () |
| virtual void | setDispField (const FloatArray &t) |
| virtual void | setSlipField (const FloatArray &t) |
| virtual void | setDispGradient (const FloatArray &t) |
| virtual void | setSlipGradient (const FloatArray &t) |
| void | giveDispField (FloatArray &oField) const |
| void | giveSlipField (FloatArray &oField) const |
| void | giveDispGradient (FloatArray &oGradient) const |
| void | giveSlipGradient (FloatArray &oGradient) const |
| virtual void | setCenterCoordinate (FloatArray &x) |
| FloatArray & | giveCenterCoordinate () |
Protected Attributes | |
| bool | dispGradON = false |
| bool | slipON = false |
| on/off flag specifying whether the displacement gradient should be applied via Neumann BCs | |
| bool | slipGradON = false |
| on/off flag specifying whether the slip field should be applied via Neumann BCs | |
| std ::unique_ptr< Node > | mpSigmaHom |
| on/off flag specifying whether the slip gradient should be applied via Neumann BCs | |
| IntArray | mSigmaIds |
| std ::unique_ptr< Node > | lmTauHom |
| DofManager for effective transfer stress. | |
| IntArray | lmTauIds |
| std ::unique_ptr< Node > | lmSigmaSHom |
| DofManager for effective reinforcement membrane stress. | |
| IntArray | lmSigmaSIds |
| int | concreteVolSet =0 |
| Element set containing concrete elements (in the volume of RVE). | |
| IntArray | rebarSets |
| IntArray containing sets of individual reinforcement bars. | |
| Protected Attributes inherited from oofem::GeneralBoundaryCondition | |
| int | timeFunction |
| Associated load time function. | |
| bcValType | valType |
| Physical meaning of BC value. | |
| IntArray | dofs |
| Dofs that b.c. is applied to (relevant for Dirichlet type b.c.s). | |
| int | isImposedTimeFunction |
| int | set |
| Set number for boundary condition to be applied to. | |
| Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
| Protected Attributes inherited from oofem::PrescribedDispSlipHomogenization | |
| FloatMatrix | dispGradient |
| Prescribed gradients. | |
| FloatMatrix | slipGradient |
| FloatArray | dispField |
| Prescribed fields. | |
| FloatArray | slipField |
| FloatArray | mCenterCoord |
| Center coordinates. | |
Prescribes macroscopic displacement gradient, reinforcement slip field and slip gradient on the reinforced concrete RVE using Neumann boundary conditions, cf. Sciegaj, A., Larsson, F., Lundgren, K., Nilenius, F., & Runesson, K. (2019). A multiscale model for reinforced concrete with macroscopic variation of reinforcement slip. Computational Mechanics, 63(2), 139–158. https://doi.org/10.1007/s00466-018-1588-3 Macroscopic slip and slip gradient fields are optional (see PrescribedDispSlipHomogenization). If not specified, this BC will prescribe only the displacement gradient, i.e., it will work the same was as a PrescribedGradient bc. Works with 2D RVEs comprising solid elements (concrete), reinforcement (beam/truss elements) and interface elements in between. Used in multiscale analyses of reinforced concrete structures. Currently, only orthogonal reinforcement in X and Y direction is supported.
For the optional slip and slip gradient, input fields concretevolset and rebarsets must be specified. concretevolset is the element set containing all concrete elements. rebarsets is an array of sets, each containing all reinforcement bars in one direction.
Definition at line 67 of file prescribeddispslipbcneumannrc.h.
| oofem::PrescribedDispSlipBCNeumannRC::PrescribedDispSlipBCNeumannRC | ( | int | n, |
| Domain * | d ) |
Definition at line 57 of file prescribeddispslipbcneumannrc.C.
References oofem::ActiveBoundaryCondition::ActiveBoundaryCondition(), oofem::Domain::giveNextFreeDofID(), oofem::Domain::giveNumberOfSpatialDimensions(), lmSigmaSHom, lmSigmaSIds, lmTauHom, lmTauIds, mpSigmaHom, mSigmaIds, and oofem::PrescribedDispSlipHomogenization::PrescribedDispSlipHomogenization().
|
virtual |
Definition at line 87 of file prescribeddispslipbcneumannrc.C.
|
overridevirtual |
Assembles B.C. contributions to specified matrix.
| [in,out] | answer | Matrix to assemble to. |
| tStep | Active time step. | |
| tStep | Active time step. | |
| type | Type of matrix to assemble. | |
| r_s | Row numbering scheme. | |
| c_s | Column numbering scheme. | |
| scale | Scaling factor. | |
| omp_lock | optional OMP lock to ensure correct update of answer |
Reimplemented from oofem::ActiveBoundaryCondition.
Definition at line 450 of file prescribeddispslipbcneumannrc.C.
References assembleOnReinfStress(), assembleOnStress(), assembleOnTransferStress(), dispGradON, OOFEM_LOG_DEBUG, scale(), slipGradON, and slipON.
|
protected |
Definition at line 999 of file prescribeddispslipbcneumannrc.C.
References oofem::SparseMtrx::assemble(), oofem::IntArray::at(), oofem::FloatMatrix::beTProductOf(), oofem::FloatMatrix::beTranspositionOf(), oofem::FloatMatrix::clear(), computeInterfaceLength(), computeWeightMatrix(), oofem::PrescribedDispSlipHomogenization::domainSize(), oofem::Set::giveBoundaryList(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Set::giveElementList(), oofem::Element::giveLocationArray(), oofem::Domain::giveSet(), oofem::GeneralBoundaryCondition::giveSetNumber(), oofem::IntArray::giveSize(), integrateTangentRStressConcrete(), integrateTangentRStressSteel(), lmSigmaSHom, lmSigmaSIds, oofem::FloatMatrix::negated(), rebarSets, scale(), oofem::GeneralBoundaryCondition::set, and oofem::FloatMatrix::times().
Referenced by assemble().
|
protected |
Definition at line 909 of file prescribeddispslipbcneumannrc.C.
References oofem::SparseMtrx::assemble(), oofem::IntArray::at(), oofem::FloatMatrix::beTranspositionOf(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Element::giveLocationArray(), oofem::Domain::giveSet(), oofem::IntArray::giveSize(), integrateTangentStress(), mpSigmaHom, mSigmaIds, oofem::FloatMatrix::negated(), scale(), oofem::GeneralBoundaryCondition::set, and oofem::FloatMatrix::times().
Referenced by assemble().
|
protected |
Definition at line 940 of file prescribeddispslipbcneumannrc.C.
References oofem::SparseMtrx::assemble(), oofem::IntArray::at(), oofem::FloatMatrix::beTProductOf(), oofem::FloatMatrix::beTranspositionOf(), oofem::FloatMatrix::clear(), computeInterfaceLength(), computeWeightMatrix(), concreteVolSet, oofem::PrescribedDispSlipHomogenization::domainSize(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Set::giveElementList(), oofem::Element::giveLocationArray(), oofem::Domain::giveSet(), oofem::GeneralBoundaryCondition::giveSetNumber(), integrateTangentBStressConcrete(), integrateTangentBStressSteel(), lmTauHom, lmTauIds, oofem::FloatMatrix::negated(), rebarSets, scale(), and oofem::FloatMatrix::times().
Referenced by assemble().
|
overridevirtual |
Assembles B.C. contributions to specified vector.
| [in,out] | answer | Vector to assemble to. |
| tStep | Active time step. | |
| type | Type of matrix to assemble. | |
| mode | Mode of value. | |
| s | Numbering scheme. | |
| eNorms | Norms for each dofid. | |
| omp_lock | optional OMP lock to ensure correct update of answer |
Reimplemented from oofem::ActiveBoundaryCondition.
Definition at line 168 of file prescribeddispslipbcneumannrc.C.
References assembleVectorBStress(), assembleVectorRStress(), assembleVectorStress(), dispGradON, slipGradON, and slipON.
|
protected |
Definition at line 246 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatArray::assemble(), oofem::IntArray::at(), oofem::FloatArray::beProductOf(), oofem::FloatArray::beScaled(), oofem::FloatArray::beTProductOf(), oofem::FloatMatrix::beTProductOf(), oofem::FloatArray::clear(), oofem::FloatMatrix::clear(), oofem::Element::computeGtoLRotationMatrix(), computeInterfaceLength(), oofem::Element::computeVectorOf(), computeWeightMatrix(), concreteVolSet, oofem::PrescribedDispSlipHomogenization::domainSize(), oofem::Function::evaluateAtTime(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Set::giveElementList(), oofem::Element::giveLocationArray(), oofem::Domain::giveSet(), oofem::GeneralBoundaryCondition::giveSetNumber(), oofem::PrescribedDispSlipHomogenization::giveSlipField(), oofem::TimeStep::giveTargetTime(), oofem::GeneralBoundaryCondition::giveTimeFunction(), integrateTangentBStressConcrete(), integrateTangentBStressSteel(), lmTauHom, lmTauIds, oofem::FloatArray::negated(), rebarSets, oofem::FloatArray::rotatedWith(), and oofem::FloatMatrix::times().
Referenced by assembleVector().
|
protected |
Definition at line 346 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatArray::assemble(), oofem::IntArray::at(), oofem::FloatArray::beProductOf(), oofem::FloatArray::beScaled(), oofem::FloatArray::beTProductOf(), oofem::FloatMatrix::beTProductOf(), oofem::FloatArray::clear(), oofem::FloatMatrix::clear(), oofem::Element::computeGtoLRotationMatrix(), computeInterfaceLength(), oofem::Element::computeVectorOf(), computeWeightMatrix(), oofem::PrescribedDispSlipHomogenization::domainSize(), oofem::Function::evaluateAtTime(), oofem::Set::giveBoundaryList(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Set::giveElementList(), oofem::Element::giveLocationArray(), oofem::Domain::giveSet(), oofem::GeneralBoundaryCondition::giveSetNumber(), oofem::IntArray::giveSize(), oofem::PrescribedDispSlipHomogenization::giveSlipGradient(), oofem::TimeStep::giveTargetTime(), oofem::GeneralBoundaryCondition::giveTimeFunction(), integrateTangentRStressConcrete(), integrateTangentRStressSteel(), lmSigmaSHom, lmSigmaSIds, oofem::FloatArray::negated(), rebarSets, oofem::FloatArray::resizeWithValues(), oofem::FloatArray::rotatedWith(), oofem::GeneralBoundaryCondition::set, and oofem::FloatMatrix::times().
Referenced by assembleVector().
|
protected |
Definition at line 188 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatArray::assemble(), oofem::FloatArray::assembleSquared(), oofem::IntArray::at(), oofem::FloatArray::beProductOf(), oofem::FloatArray::beScaled(), oofem::FloatArray::beTProductOf(), oofem::Element::computeVectorOf(), oofem::PrescribedDispSlipHomogenization::domainSize(), oofem::Function::evaluateAtTime(), oofem::Set::giveBoundaryList(), oofem::PrescribedDispSlipHomogenization::giveDispGradient(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Element::giveLocationArray(), oofem::Domain::giveSet(), oofem::GeneralBoundaryCondition::giveSetNumber(), oofem::IntArray::giveSize(), oofem::TimeStep::giveTargetTime(), oofem::GeneralBoundaryCondition::giveTimeFunction(), integrateTangentStress(), mpSigmaHom, mSigmaIds, oofem::FloatArray::negated(), and oofem::GeneralBoundaryCondition::set.
Referenced by assembleVector().
|
protected |
Definition at line 1119 of file prescribeddispslipbcneumannrc.C.
References oofem::IntArray::at(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Set::giveElementList(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::Domain::giveSet(), oofem::IntArray::giveSize(), oofem::FEInterpolation::giveTransformationJacobian(), and oofem::GeneralBoundaryCondition::set.
Referenced by assembleOnReinfStress(), assembleOnTransferStress(), assembleVectorBStress(), assembleVectorRStress(), and computeWeightMatrix().
|
protected |
Assuming that the reinforcement bar remains straight throughout the RVE it is then enough to compute the tangent vector for the first element
Definition at line 1099 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatArray::at(), oofem::IntArray::at(), oofem::dyad(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Domain::giveSet(), oofem::FEIElementGeometryWrapper::giveVertexCoordinates(), oofem::FloatArray::normalize(), oofem::FloatArray::resize(), and oofem::GeneralBoundaryCondition::set.
Referenced by computeWeightMatrix(), integrateTangentBStressSteel(), and integrateTangentRStressSteel().
|
overridevirtual |
Implements oofem::PrescribedDispSlipHomogenization.
Definition at line 641 of file prescribeddispslipbcneumannrc.C.
References domainSize(), oofem::FEMComponent::giveDomain(), oofem::GeneralBoundaryCondition::giveSetNumber(), lmSigmaSHom, lmSigmaSIds, oofem::FloatArray::resizeWithValues(), slipGradON, and oofem::FloatArray::times().
Referenced by oofem::MatlabExportModule::doOutputSpecials().
|
overridevirtual |
Implements oofem::PrescribedDispSlipHomogenization.
Definition at line 619 of file prescribeddispslipbcneumannrc.C.
References dispGradON, domainSize(), oofem::PrescribedDispSlipHomogenization::domainSize(), oofem::FEMComponent::giveDomain(), oofem::GeneralBoundaryCondition::giveSetNumber(), mpSigmaHom, mSigmaIds, and oofem::FloatArray::times().
Referenced by oofem::MatlabExportModule::doOutputSpecials().
|
overridevirtual |
Implements oofem::PrescribedDispSlipHomogenization.
Definition at line 652 of file prescribeddispslipbcneumannrc.C.
References OOFEM_ERROR.
|
overridevirtual |
Implements oofem::PrescribedDispSlipHomogenization.
Definition at line 631 of file prescribeddispslipbcneumannrc.C.
References domainSize(), oofem::FEMComponent::giveDomain(), oofem::GeneralBoundaryCondition::giveSetNumber(), lmTauHom, lmTauIds, slipON, and oofem::FloatArray::times().
Referenced by oofem::MatlabExportModule::doOutputSpecials().
|
protected |
Assumption: the rebars cross the entire RVE, i.e. they do not end within the RVE
Definition at line 1062 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatMatrix::add(), oofem::IntArray::at(), oofem::FloatMatrix::beInverseOf(), computeInterfaceLength(), computeRebarDyad(), oofem::CS_Area, oofem::CrossSection::give(), oofem::Element::giveCrossSection(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Set::giveElementList(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::Domain::giveSet(), oofem::IntArray::giveSize(), oofem::FEInterpolation::giveTransformationJacobian(), M_PI, oofem::GeneralBoundaryCondition::set, and oofem::FloatMatrix::times().
Referenced by assembleOnReinfStress(), assembleOnTransferStress(), assembleVectorBStress(), and assembleVectorRStress().
|
overrideprotectedvirtual |
Reimplemented from oofem::PrescribedDispSlipHomogenization.
Definition at line 1144 of file prescribeddispslipbcneumannrc.C.
References oofem::CS_Thickness, oofem::PrescribedDispSlipHomogenization::domainSize(), oofem::CrossSection::give(), oofem::Element::giveCrossSection(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveElement(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::GeneralBoundaryCondition::giveSetNumber(), and oofem::GeneralBoundaryCondition::set.
Referenced by computeReinfStress(), computeStress(), and computeTransferStress().
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 94 of file prescribeddispslipbcneumannrc.h.
|
overridevirtual |
Setups the input record string of receiver.
| input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 116 of file prescribeddispslipbcneumannrc.C.
References _IFT_PrescribedDispSlipBCNeumannRC_ConcreteVolSet, _IFT_PrescribedDispSlipBCNeumannRC_RebarSets, concreteVolSet, rebarSets, oofem::DynamicInputRecord::setField(), slipGradON, and slipON.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 95 of file prescribeddispslipbcneumannrc.h.
References _IFT_PrescribedDispSlipBCNeumannRC_Name.
|
overridevirtual |
Gives an internal dof manager from receiver.
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 134 of file prescribeddispslipbcneumannrc.C.
References dispGradON, giveNumberOfInternalDofManagers(), lmSigmaSHom, lmTauHom, mpSigmaHom, slipGradON, and slipON.
|
overridevirtual |
Gives a list of location arrays that will be assembled. This should only be used to construct zero structure in sparse matrices. The rows and columns location arrays returned in tuples (stored in vector), allowing to efficiently assemble and allocate off-diagonal blocks. The nonzero entries are assembled and allocated for entries at (rows[i], cols[i]) positions.
| rows | List of location arrays for r_s. |
| cols | List of location arrays for c_s. |
| type | Type of matrix to assemble. |
| r_s | Row numbering scheme. |
| c_s | Column numbering scheme. |
Reimplemented from oofem::ActiveBoundaryCondition.
Definition at line 476 of file prescribeddispslipbcneumannrc.C.
References oofem::IntArray::at(), concreteVolSet, dispGradON, oofem::IntArray::followedBy(), oofem::Set::giveBoundaryList(), oofem::FEMComponent::giveDomain(), oofem::Set::giveElementList(), oofem::Element::giveLocationArray(), oofem::IntArray::giveSize(), lmSigmaSHom, lmSigmaSIds, lmTauHom, lmTauIds, mpSigmaHom, mSigmaIds, rebarSets, oofem::IntArray::resize(), oofem::GeneralBoundaryCondition::set, slipGradON, and slipON.
|
overridevirtual |
Gives the number of internal dof managers.
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 128 of file prescribeddispslipbcneumannrc.C.
References dispGradON, slipGradON, and slipON.
Referenced by giveInternalDofManager().
|
inlineoverridevirtual |
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 79 of file prescribeddispslipbcneumannrc.h.
References oofem::UnknownBT.
|
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::ActiveBoundaryCondition.
Definition at line 92 of file prescribeddispslipbcneumannrc.C.
References _IFT_PrescribedDispSlipBCNeumannRC_ConcreteVolSet, _IFT_PrescribedDispSlipBCNeumannRC_RebarSets, concreteVolSet, oofem::PrescribedDispSlipHomogenization::dispGradient, dispGradON, IR_GIVE_OPTIONAL_FIELD, rebarSets, oofem::PrescribedDispSlipHomogenization::slipField, oofem::PrescribedDispSlipHomogenization::slipGradient, slipGradON, and slipON.
|
protected |
Definition at line 767 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatMatrix::add(), oofem::FloatMatrix::beNMatrixOf(), oofem::FloatMatrix::beTProductOf(), oofem::FloatMatrix::beUnitMatrix(), oofem::FloatMatrix::clear(), oofem::FEInterpolation::evalN(), oofem::Element::giveDofManDofIDMask(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::IntArray::giveSize(), oofem::FEInterpolation::giveTransformationJacobian(), and oofem::FloatMatrix::resize().
Referenced by assembleOnTransferStress(), and assembleVectorBStress().
|
protected |
Definition at line 724 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatMatrix::add(), oofem::FloatMatrix::beNMatrixOf(), oofem::FloatMatrix::beTProductOf(), oofem::FloatMatrix::clear(), computeRebarDyad(), oofem::CS_Area, oofem::FEInterpolation::evalN(), oofem::CrossSection::give(), oofem::Element::giveCrossSection(), oofem::Element::giveDofManDofIDMask(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::IntArray::giveSize(), oofem::FEInterpolation::giveTransformationJacobian(), M_PI, oofem::FloatMatrix::resizeWithData(), and oofem::FloatMatrix::times().
Referenced by assembleOnTransferStress(), and assembleVectorBStress().
|
protected |
Definition at line 853 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatMatrix::add(), oofem::FloatArray::at(), oofem::FloatMatrix::at(), oofem::FloatMatrix::beNMatrixOf(), oofem::FloatMatrix::beProductOf(), oofem::FEInterpolation::boundaryEvalNormal(), oofem::FEInterpolation::boundaryLocal2Global(), oofem::FloatMatrix::clear(), oofem::Element::computeLocalCoordinates(), oofem::FEInterpolation::evalN(), oofem::FEInterpolation::giveBoundaryEdgeIntegrationRule(), oofem::FEMComponent::giveDomain(), oofem::Element::giveGeometryType(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::Domain::giveNumberOfSpatialDimensions(), oofem::FloatMatrix::resize(), and oofem::FloatMatrix::zero().
Referenced by assembleOnReinfStress(), and assembleVectorRStress().
|
protected |
Definition at line 804 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatMatrix::add(), oofem::FloatMatrix::at(), oofem::FloatMatrix::beTProductOf(), oofem::FloatMatrix::clear(), oofem::StructuralElement::computeBmatrixAt(), computeRebarDyad(), oofem::CS_Area, oofem::CrossSection::give(), oofem::Element::giveCrossSection(), oofem::Element::giveDofManDofIDMask(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::FEInterpolation::giveTransformationJacobian(), M_PI, oofem::FloatMatrix::resize(), and oofem::FloatMatrix::times().
Referenced by assembleOnReinfStress(), and assembleVectorRStress().
|
protected |
Definition at line 658 of file prescribeddispslipbcneumannrc.C.
References oofem::FloatMatrix::add(), oofem::FloatArray::at(), oofem::FloatMatrix::at(), oofem::FloatMatrix::beNMatrixOf(), oofem::FloatMatrix::beProductOf(), oofem::FEInterpolation::boundaryEvalNormal(), oofem::FEInterpolation::boundaryLocal2Global(), oofem::FloatMatrix::clear(), oofem::Element::computeLocalCoordinates(), oofem::FEInterpolation::evalN(), oofem::FEInterpolation::giveBoundaryIntegrationRule(), oofem::FEMComponent::giveDomain(), oofem::Element::giveGeometryType(), oofem::Element::giveInterpolation(), oofem::FEInterpolation::giveInterpolationOrder(), oofem::Domain::giveNumberOfSpatialDimensions(), oofem::FloatMatrix::resize(), and oofem::FloatMatrix::zero().
Referenced by assembleOnStress(), and assembleVectorStress().
|
overridevirtual |
Scales the receiver according to given value. Typically used in nondimensional analysis to scale down BCs and ICs.
| s | Scale factor. |
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 160 of file prescribeddispslipbcneumannrc.C.
References oofem::PrescribedDispSlipHomogenization::dispGradient, oofem::PrescribedDispSlipHomogenization::slipField, and oofem::PrescribedDispSlipHomogenization::slipGradient.
Referenced by assemble(), assembleOnReinfStress(), assembleOnStress(), and assembleOnTransferStress().
|
protected |
Element set containing concrete elements (in the volume of RVE).
Definition at line 121 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnTransferStress(), assembleVectorBStress(), giveInputRecord(), giveLocationArrays(), and initializeFrom().
|
protected |
Definition at line 104 of file prescribeddispslipbcneumannrc.h.
Referenced by assemble(), assembleVector(), computeStress(), giveInternalDofManager(), giveLocationArrays(), giveNumberOfInternalDofManagers(), and initializeFrom().
|
protected |
DofManager for effective reinforcement membrane stress.
Definition at line 117 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnReinfStress(), assembleVectorRStress(), computeReinfStress(), giveInternalDofManager(), giveLocationArrays(), and PrescribedDispSlipBCNeumannRC().
|
protected |
Definition at line 118 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnReinfStress(), assembleVectorRStress(), computeReinfStress(), giveLocationArrays(), and PrescribedDispSlipBCNeumannRC().
|
protected |
DofManager for effective transfer stress.
Definition at line 113 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnTransferStress(), assembleVectorBStress(), computeTransferStress(), giveInternalDofManager(), giveLocationArrays(), and PrescribedDispSlipBCNeumannRC().
|
protected |
Definition at line 114 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnTransferStress(), assembleVectorBStress(), computeTransferStress(), giveLocationArrays(), and PrescribedDispSlipBCNeumannRC().
|
protected |
on/off flag specifying whether the slip gradient should be applied via Neumann BCs
DofManager for effective stress
Definition at line 109 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnStress(), assembleVectorStress(), computeStress(), giveInternalDofManager(), giveLocationArrays(), and PrescribedDispSlipBCNeumannRC().
|
protected |
Definition at line 110 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnStress(), assembleVectorStress(), computeStress(), giveLocationArrays(), and PrescribedDispSlipBCNeumannRC().
|
protected |
IntArray containing sets of individual reinforcement bars.
Definition at line 123 of file prescribeddispslipbcneumannrc.h.
Referenced by assembleOnReinfStress(), assembleOnTransferStress(), assembleVectorBStress(), assembleVectorRStress(), giveInputRecord(), giveLocationArrays(), and initializeFrom().
|
protected |
on/off flag specifying whether the slip field should be applied via Neumann BCs
Definition at line 106 of file prescribeddispslipbcneumannrc.h.
Referenced by assemble(), assembleVector(), computeReinfStress(), giveInputRecord(), giveInternalDofManager(), giveLocationArrays(), giveNumberOfInternalDofManagers(), and initializeFrom().
|
protected |
on/off flag specifying whether the displacement gradient should be applied via Neumann BCs
Definition at line 105 of file prescribeddispslipbcneumannrc.h.
Referenced by assemble(), assembleVector(), computeTransferStress(), giveInputRecord(), giveInternalDofManager(), giveLocationArrays(), giveNumberOfInternalDofManagers(), and initializeFrom().