OpenPisco.PhysicalSolvers.AMInherentStrainSolver module#
- class OpenPisco.PhysicalSolvers.AMInherentStrainSolver.AMInherentStrainSolver[source]#
Bases:
AMProcessBase
Class to simulate a AM process with the inherent strain method
- Parameters
inherentStrainsCoefficients (3 np.ndarray) – _description_
- GetAuxiliaryField(name, on, index)[source]#
Retrieve an auxiliary field on the computational support specified by the keyword “on”
- Parameters
name (name of the field to be retrieved) – _description_
on (FN, optional) – computational support of the field, by default FN.Nodes
index (Optional[int], optional) – index of the field to be retrieved (if needed), by default None
- Raises
NotImplementedError – To be redefined in derived class if needed
- GetAuxiliaryScalar(name)[source]#
Retrieve an auxiliary scalar quantity
- Parameters
name (str) – name of the scalar to be retrieved
- Raises
NotImplementedError – To be redefined in the derived class
- OpenPisco.PhysicalSolvers.AMInherentStrainSolver.CreateStructuredAMProcess(ops)[source]#
- Parameters
ops (dict) –
'APProcess'. (Parameters to setup a) –
Notes
‘ops’ can be populated via a string of the form:
<AMProcess id=”1” type=”IStrains” IStrains=”-0.01 -0.01 -0.01” useSupport=”False” filename=”testAMProcess” > for the moment only constant properties are available 0.*<Material NotImplemented(ef=”*everyElement|EFExpression”) young=”1” poisson=”0.3” density=”1” /> by default we block U0, 0 1 2 0.*<Block on=”U0 Y0 Z0 U1 Y1 Z1” block=”0 1 2” /> </AMProcess>
by default we block U0, 0 1 2 0.*<Block on=”U0 Y0 Z0 U1 Y1 Z1” block=”0 1 2” /> </AMProcess>
- class OpenPisco.PhysicalSolvers.AMInherentStrainSolver.MecaInherentStrain[source]#
Bases:
MechPhysics
- DeviatoricStress(stress, bulkAlpha)[source]#
Return a deviatoric stress FE field
- Parameters
stress (FE field) –
- Returns
the deviatoric stress tensor
- Return type
FE field
- GetStressVoigt(utGlobal, HookeLocalOperator=None, deltaTemperature=None, XLi=None, factor=None)[source]#
Function to compute the stress using the Inherent Strain, the XLi is the field where the inherent Strain is Active
- GetVonMisesData(stress: Union[_SupportsArray[dtype[Any]], _NestedSequence[_SupportsArray[dtype[Any]]], bool, int, float, complex, str, bytes, _NestedSequence[Union[bool, int, float, complex, str, bytes]]])[source]#
Computes the VonMises for stress tensor S
- Parameters
s (ArrayLike) – a 3x3 symmetric tensor
- Returns
the von Mises for the stress tensor
- Return type
scalar