KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
A base class for packaging response functions that agglomerate the nodal violations into a single response function. More...
Public Member Functions | |
def | __init__ (self, identifier, response_settings, model) |
def | GetDefaultParameters (cls) |
def | Initialize (self) |
def | InitializeSolutionStep (self) |
def | CalculateValue (self) |
def | CalculateGradient (self) |
def | GetValue (self) |
def | GetNodalGradient (self, variable) |
Public Attributes | |
identifier | |
response_settings | |
model | |
model_part | |
signed_distances | |
directions | |
value | |
gradient | |
feasible_in_normal_direction | |
exponent | |
A base class for packaging response functions that agglomerate the nodal violations into a single response function.
The agglomeration happens by summing up the square of each nodal violation. Nodes that are feasible do NOT contribute to the response value/gradient. This is why a prediction of the violation using the gradients is not possible, only correction of violations (e.g. from the last step) will happen.
Derived classes need to implement the calculation of the nodal violations
Important settings: feasible_in_normal_direction : boolean flag that indicates if the normal of bounding instance points to the feasible side. True by default
def response_functions.packaging_response_base.PackagingResponseBase.__init__ | ( | self, | |
identifier, | |||
response_settings, | |||
model | |||
) |
def response_functions.packaging_response_base.PackagingResponseBase.CalculateGradient | ( | self | ) |
def response_functions.packaging_response_base.PackagingResponseBase.CalculateValue | ( | self | ) |
def response_functions.packaging_response_base.PackagingResponseBase.GetDefaultParameters | ( | cls | ) |
def response_functions.packaging_response_base.PackagingResponseBase.GetNodalGradient | ( | self, | |
variable | |||
) |
def response_functions.packaging_response_base.PackagingResponseBase.GetValue | ( | self | ) |
def response_functions.packaging_response_base.PackagingResponseBase.Initialize | ( | self | ) |
Reimplemented in response_functions.mesh_based_packaging.MeshBasedPackaging.
def response_functions.packaging_response_base.PackagingResponseBase.InitializeSolutionStep | ( | self | ) |
response_functions.packaging_response_base.PackagingResponseBase.directions |
response_functions.packaging_response_base.PackagingResponseBase.exponent |
response_functions.packaging_response_base.PackagingResponseBase.feasible_in_normal_direction |
response_functions.packaging_response_base.PackagingResponseBase.gradient |
response_functions.packaging_response_base.PackagingResponseBase.identifier |
response_functions.packaging_response_base.PackagingResponseBase.model |
response_functions.packaging_response_base.PackagingResponseBase.model_part |
response_functions.packaging_response_base.PackagingResponseBase.response_settings |
response_functions.packaging_response_base.PackagingResponseBase.signed_distances |
response_functions.packaging_response_base.PackagingResponseBase.value |