MAST
Multidisciplinary-design Adaptation and Sensitivity Toolkit (MAST)
MAST::StructuralModalEigenproblemAssemblyElemOperations Class Reference

Detailed Description

Definition at line 32 of file structural_modal_eigenproblem_assembly.h.

#include <structural_modal_eigenproblem_assembly.h>

Inheritance diagram for MAST::StructuralModalEigenproblemAssemblyElemOperations:
Collaboration diagram for MAST::StructuralModalEigenproblemAssemblyElemOperations:

Public Member Functions

 StructuralModalEigenproblemAssemblyElemOperations ()
 constructor associates the eigen system with this assembly object More...
 
virtual ~StructuralModalEigenproblemAssemblyElemOperations ()
 destructor resets the association with the eigen system from this assembly object More...
 
void attach_incompatible_solution_object (MAST::StructuralAssembly &str_assembly)
 attached the incompatible solution object More...
 
void clear_incompatible_solution_object ()
 clear the incompatible solution object More...
 
virtual void elem_calculations (RealMatrixX &mat_A, RealMatrixX &mat_B)
 performs the element calculations over elem, and returns the element matrices for the eigenproblem $ A x = \lambda B x $. More...
 
virtual void elem_sensitivity_calculations (const MAST::FunctionBase &f, bool base_sol, RealMatrixX &mat_A, RealMatrixX &mat_B)
 performs the element sensitivity calculations over elem, and returns the element matrices for the eigenproblem $ A x = \lambda B x $. More...
 
virtual void elem_topology_sensitivity_calculations (const MAST::FunctionBase &f, bool base_sol, RealMatrixX &mat_A, RealMatrixX &mat_B)
 performs the element topology sensitivity calculations over elem. More...
 
virtual void elem_topology_sensitivity_calculations (const MAST::FunctionBase &f, bool base_sol, const MAST::FieldFunction< RealVectorX > &vel, RealMatrixX &mat_A, RealMatrixX &mat_B)
 performs the element topology sensitivity calculations over elem. More...
 
virtual void init (const MAST::GeomElem &elem)
 initializes the object for the geometric element elem. More...
 
virtual void set_elem_data (unsigned int dim, const libMesh::Elem &ref_elem, MAST::GeomElem &elem) const
 sets the structural element y-vector if 1D element is used. More...
 
virtual void set_elem_solution (const RealVectorX &sol)
 sets the element solution(s) before calculations More...
 
virtual void set_elem_solution_sensitivity (const RealVectorX &sol)
 sets the element solution sensitivity before calculations More...
 
- Public Member Functions inherited from MAST::EigenproblemAssemblyElemOperations
 EigenproblemAssemblyElemOperations ()
 
virtual ~EigenproblemAssemblyElemOperations ()
 
- Public Member Functions inherited from MAST::AssemblyElemOperations
 AssemblyElemOperations ()
 
virtual ~AssemblyElemOperations ()
 
virtual void clear_assembly ()
 clears the assembly object More...
 
virtual void clear_discipline_and_system ()
 clears association with a system to this discipline More...
 
virtual void clear_elem ()
 clears the element initialization More...
 
virtual MAST::AssemblyBaseget_assembly ()
 
MAST::PhysicsDisciplineBaseget_discipline ()
 
virtual std::pair< const MAST::FieldFunction< RealVectorX > *, unsigned int > get_elem_boundary_velocity_data ()
 searches through the side load data and populates the data with the boundary id and velocity function on the boundary. More...
 
MAST::ElementBaseget_physics_elem ()
 
MAST::SystemInitializationget_system_initialization ()
 
virtual void set_assembly (MAST::AssemblyBase &assembly)
 sets the assembly object More...
 
virtual void set_discipline_and_system (MAST::PhysicsDisciplineBase &discipline, MAST::SystemInitialization &system)
 attaches a system to this discipline More...
 
virtual void set_elem_acceleration (const RealVectorX &accel)
 sets the element acceleration More...
 
virtual void set_elem_acceleration_sensitivity (const RealVectorX &accel)
 sets the element acceleration More...
 
virtual void set_elem_perturbed_acceleration (const RealVectorX &accel)
 sets the element perturbed acceleration More...
 
virtual void set_elem_perturbed_solution (const RealVectorX &sol)
 sets the element perturbed solution More...
 
virtual void set_elem_perturbed_velocity (const RealVectorX &vel)
 sets the element perturbed velocity More...
 
virtual void set_elem_velocity (const RealVectorX &vel)
 sets the element velocity More...
 
virtual void set_elem_velocity_sensitivity (const RealVectorX &vel)
 sets the element velocity sensitivity More...
 
void set_skip_comm_sum (bool skip)
 If an output has contrinutions only from local processor then the user can request that the global comm().sum() calls be skipped to avoid blocking MPI calls. More...
 

Protected Attributes

MAST::StructuralAssembly_incompatible_sol_assembly
 
- Protected Attributes inherited from MAST::AssemblyElemOperations
MAST::AssemblyBase_assembly
 
MAST::PhysicsDisciplineBase_discipline
 
MAST::ElementBase_physics_elem
 
bool _skip_comm_sum
 If an output has contrinutions only from local processor then the user can request that the global comm().sum() calls be skipped to avoid blocking MPI calls. More...
 
MAST::SystemInitialization_system
 

Constructor & Destructor Documentation

◆ StructuralModalEigenproblemAssemblyElemOperations()

MAST::StructuralModalEigenproblemAssemblyElemOperations::StructuralModalEigenproblemAssemblyElemOperations ( )

constructor associates the eigen system with this assembly object

Definition at line 34 of file structural_modal_eigenproblem_assembly.cpp.

◆ ~StructuralModalEigenproblemAssemblyElemOperations()

MAST::StructuralModalEigenproblemAssemblyElemOperations::~StructuralModalEigenproblemAssemblyElemOperations ( )
virtual

destructor resets the association with the eigen system from this assembly object

Definition at line 42 of file structural_modal_eigenproblem_assembly.cpp.

Member Function Documentation

◆ attach_incompatible_solution_object()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::attach_incompatible_solution_object ( MAST::StructuralAssembly str_assembly)

attached the incompatible solution object

◆ clear_incompatible_solution_object()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::clear_incompatible_solution_object ( )

clear the incompatible solution object

◆ elem_calculations()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::elem_calculations ( RealMatrixX mat_A,
RealMatrixX mat_B 
)
virtual

performs the element calculations over elem, and returns the element matrices for the eigenproblem $ A x = \lambda B x $.

Implements MAST::EigenproblemAssemblyElemOperations.

Definition at line 96 of file structural_modal_eigenproblem_assembly.cpp.

◆ elem_sensitivity_calculations()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::elem_sensitivity_calculations ( const MAST::FunctionBase f,
bool  base_sol,
RealMatrixX mat_A,
RealMatrixX mat_B 
)
virtual

performs the element sensitivity calculations over elem, and returns the element matrices for the eigenproblem $ A x = \lambda B x $.

Implements MAST::EigenproblemAssemblyElemOperations.

Definition at line 123 of file structural_modal_eigenproblem_assembly.cpp.

◆ elem_topology_sensitivity_calculations() [1/2]

void MAST::StructuralModalEigenproblemAssemblyElemOperations::elem_topology_sensitivity_calculations ( const MAST::FunctionBase f,
bool  base_sol,
RealMatrixX mat_A,
RealMatrixX mat_B 
)
virtual

performs the element topology sensitivity calculations over elem.

Implements MAST::EigenproblemAssemblyElemOperations.

Definition at line 157 of file structural_modal_eigenproblem_assembly.cpp.

◆ elem_topology_sensitivity_calculations() [2/2]

void MAST::StructuralModalEigenproblemAssemblyElemOperations::elem_topology_sensitivity_calculations ( const MAST::FunctionBase f,
bool  base_sol,
const MAST::FieldFunction< RealVectorX > &  vel,
RealMatrixX mat_A,
RealMatrixX mat_B 
)
virtual

performs the element topology sensitivity calculations over elem.

Implements MAST::EigenproblemAssemblyElemOperations.

Definition at line 213 of file structural_modal_eigenproblem_assembly.cpp.

◆ init()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::init ( const MAST::GeomElem elem)
virtual

initializes the object for the geometric element elem.

This expects the object to be in a cleared state, so the user should call clear_elem() between successive initializations.

Implements MAST::AssemblyElemOperations.

Definition at line 291 of file structural_modal_eigenproblem_assembly.cpp.

◆ set_elem_data()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::set_elem_data ( unsigned int  dim,
const libMesh::Elem &  ref_elem,
MAST::GeomElem elem 
) const
virtual

sets the structural element y-vector if 1D element is used.

Implements MAST::AssemblyElemOperations.

Definition at line 273 of file structural_modal_eigenproblem_assembly.cpp.

◆ set_elem_solution()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::set_elem_solution ( const RealVectorX sol)
virtual

sets the element solution(s) before calculations

Reimplemented from MAST::AssemblyElemOperations.

Definition at line 50 of file structural_modal_eigenproblem_assembly.cpp.

◆ set_elem_solution_sensitivity()

void MAST::StructuralModalEigenproblemAssemblyElemOperations::set_elem_solution_sensitivity ( const RealVectorX sol)
virtual

sets the element solution sensitivity before calculations

Reimplemented from MAST::AssemblyElemOperations.

Definition at line 81 of file structural_modal_eigenproblem_assembly.cpp.

Member Data Documentation

◆ _incompatible_sol_assembly

MAST::StructuralAssembly* MAST::StructuralModalEigenproblemAssemblyElemOperations::_incompatible_sol_assembly
protected

Definition at line 130 of file structural_modal_eigenproblem_assembly.h.


The documentation for this class was generated from the following files: