Mordicus.Modules.Safran.Containers.Loadings.PressureBC module

class Mordicus.Modules.Safran.Containers.Loadings.PressureBC.PressureBC(solutionName, set)[source]

Bases: LoadingBase

Class containing a Loading of type pressure boundary condition for mechanical problems. A pressure vector over the elements of set at time t is given by : coefficients[ t ] * fields[ fieldsMap[ t ] ]

coefficientsTimes

time values on which coefficient values are provided

Type

np.ndarray or list of floats

coefficientsValues

coefficient values at the corresponding time values

Type

np.ndarray or list of floats

fieldsMapTimes

time values on which filed maps values are provided

Type

np.ndarray or list of floats

fieldsMapValues

filed maps values at the corresponding time values

Type

np.ndarray or list of str

fields

dictionary with pressure vectors tags (str) keys and pressure vectors (np.ndarray of size (numberOfElementsInSet,)) as values

Type

dict

assembledReducedFields

dictionary with pressure vectors tags (str) keys and compressed pressure vectors (np.ndarray of size (numberOfModes,)) as values. The pressure reduced external forces contribution is in the form: h*Text*red, where red is obtained by time interpolation over values of assembledReducedFields

Type

dict

ComputeContributionToReducedExternalForces(time)[source]

Computes and returns the reduced external forces contribution of the loading

Parameters

time (float) –

Returns

of size (numberOfModes,)

Return type

np.ndarray

GetAssembledReducedFieldAtTime(time)[source]

Computes and returns the pressure vector at time, using PieceWiseLinearInterpolation

Parameters

time (float) –

Returns

of size (numberOfElementsInSet,), pressure vector at time

Return type

np.ndarray

GetFields()[source]

Returns the complete field dictionary

Returns

dictionary with pressure vectors tags (str) keys and pressure vectors (np.ndarray of size (numberOfElementsInSet,)) as values

Return type

dict

ReduceLoading(mesh, problemData, reducedOrderBases, operatorCompressionData)[source]

Computes and sets the reduced representation of the loading

Parameters
  • mesh (BasicTools.Containers.UnstructuredMesh) – mesh of the high-fidelity model

  • problemData (ProblemData) – problemData containing the loading

  • reducedOrderBases (dict(str: np.ndarray)) – dictionary with solutionNames (str) as keys and reducedOrderBases (np.ndarray of size (numberOfModes, numberOfDOFs)) as values

  • operatorCompressionData (dict(str: custom_data_structure)) – not used in this loading dictionary with solutionNames (str) as keys and data structure generated by the operator compression step as values

SetCoefficients(coefficients)[source]

Sets coefficientsTimes and coefficientsValues

Parameters

coefficients (dict) – dictionary with time steps (float) as keys and the values of the coefficient (float)

SetFields(fields)[source]

Sets fields

Parameters

fields (dict) – dictionary with pressure vectors tags (str) keys and pressure vectors (np.ndarray of size (numberOfElementsInSet,)) as values

SetFieldsMap(fieldsMap)[source]

Sets fieldsMapTimes and fieldsMapValues

Parameters

fieldsMap (dict) – dictionary with time steps (float) as keys and the filed maps values (str)