IGLFEAStep

Module: cae

Container class representing a single finite element analysis step with support for multiple increments and modal result data. This class stores: - Increment-based simulation fields - Time-dependent result states - Modal analysis metadata - Mode shapes and frequencies - Buckling factors - Global modal tables It acts as the primary storage structure for static , nonlinear, modal, and buckling analysis result data. Notes ----- Increment data structure: self.increments = { increment_id : { "time": float, "fields": { field_name : field } } } Modal data structure: self.modal_data = { "modes": { mode_number : { "frequency" : float, "MODE_SHAPE" : IGLVectorField, "buckling_factor" : float } }, "mode_data" : { "eigenvalues" : ndarray, "participation_factors" : ndarray, "effective_modal_mass" : ndarray, } }

__init__

method
__init__(self)
Initialize an empty finite element analysis step container.

create_increment

method
create_increment(self, increment_id: int, time_value: float)
Create an increment entry if it does not already exist.

Parameters

Name Type Description
increment_id int Increment or substep identifier.
time_value float, optional Simulation time associated with the increment.

add_increment_field

method
add_increment_field(self, increment_id: int, field)
Add a result field to a specific increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.
field object Result field object. The field is expected to expose a `name` attribute.

get_increment_field

method
get_increment_field(self, increment_id: int, field_name: str)
Retrieve a field from a specific increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.
field_name str Name of the result field.

Returns

object | None Field object if found, otherwise None.

get_increment_time

method
get_increment_time(self, increment_id: int)
Get the simulation time associated with an increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.

Returns

float | None Simulation time value if the increment exists, otherwise None.

get_increment_ids

method
get_increment_ids(self)
Get all available increment identifiers. Returns ------- list[int] Sorted list of increment IDs.

add_field

method
add_field(self, increment_id: int, field)
Add a result field to an increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.
field object Result field object.

has_field

method
has_field(self, increment_id: int, name: str)
Check whether a field exists for an increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.
name str Field name.

Returns

bool True if the field exists, otherwise False.

get_field

method
get_field(self, increment_id: int, name: str)
Retrieve a field from an increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.
name str Field name.

Returns

object | None Field object if found, otherwise None.

field_names

method
field_names(self, increment_id: int)
Get all field names available for an increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.

Returns

list[str] List of field names.

get_value

method
get_value(self, increment_id: int, field_name: str, entity_id: int)
Retrieve a field value for a mesh entity from a specific increment.

Parameters

Name Type Description
increment_id int Increment or substep identifier.
field_name str Name of the result field.
entity_id int Mesh entity ID such as a node or element ID.

Returns

object | None Field value associated with the entity, or None if the field or increment does not exist.

create_mode

method
create_mode(self, mode_number: int)
Create a modal result entry if it does not already exist.

Parameters

Name Type Description
mode_number int Modal or buckling mode number.

add_mode_data

method
add_mode_data(self, mode_number: int, frequency: float, modeshape)
Add modal frequency and mode shape data.

Parameters

Name Type Description
mode_number int Modal or buckling mode number.
frequency float Natural frequency associated with the mode.
modeshape object Mode shape vector field.

set_mode_frequency

method
set_mode_frequency(self, mode_number: int, frequency: float)
Set the natural frequency for a mode.

Parameters

Name Type Description
mode_number int Modal or buckling mode number.
frequency float Natural frequency value.

set_mode_shape

method
set_mode_shape(self, mode_number: int, field)
Set the mode shape field for a mode.

Parameters

Name Type Description
mode_number int Modal or buckling mode number.
field object Mode shape vector field.

set_mode_buckling_factor

method
set_mode_buckling_factor(self, mode_number: int, value: float)
Set the buckling load factor for a mode.

Parameters

Name Type Description
mode_number int Buckling mode number.
value float Buckling load factor or eigenvalue.

get_mode_shape

method
get_mode_shape(self, mode_number: int)
Retrieve the mode shape field for a mode.

Parameters

Name Type Description
mode_number int Modal or buckling mode number.

Returns

object | None Mode shape field (IGLVectorField) if available, otherwise None.

get_mode_frequency

method
get_mode_frequency(self, mode_number: int)
Retrieve the natural frequency for a mode.

Parameters

Name Type Description
mode_number int Modal or buckling mode number.

Returns

float | None Natural frequency if available, otherwise None.

get_mode_buckling_factor

method
get_mode_buckling_factor(self, mode_number: int)
Retrieve the buckling factor for a mode.

Parameters

Name Type Description
mode_number int Buckling mode number.

Returns

float | None Buckling factor if available, otherwise None.

get_mode_numbers

method
get_mode_numbers(self)
Get all available modal or buckling mode numbers. Returns ------- list[int] Sorted list of mode numbers.

set_eigenvalues

method
set_eigenvalues(self, values)
Store modal eigenvalues.

Parameters

Name Type Description
values array-like Modal eigenvalue array.

set_participation_factors

method
set_participation_factors(self, values)
Store modal participation factors.

Parameters

Name Type Description
values array-like Modal participation factor table.

set_effective_modal_mass

method
set_effective_modal_mass(self, values)
Store effective modal mass data.

Parameters

Name Type Description
values array-like Effective modal mass table.