20 #ifndef __mast__fsi_generalized_aerodynamic_force_matrix_driver_h__ 21 #define __mast__fsi_generalized_aerodynamic_force_matrix_driver_h__ 32 class ComplexSolverBase;
33 class ComplexAssemblyBase;
34 class ComplexAssemblyElemOperations;
35 class PressureFunction;
36 class FrequencyDomainPressureFunction;
37 class ComplexMeshFieldFunction;
38 class StructuralFluidInteractionAssembly;
39 class FluidStructureAssemblyElemOperations;
92 (std::vector<libMesh::NumericVector<Real>*>& basis,
126 #endif // __mast__fsi_generalized_aerodynamic_force_matrix_driver_h__ MAST::FrequencyDomainPressureFunction * _freq_domain_pressure_function
small disturbance pressure function boundary condition for structures
MAST::PressureFunction * _pressure_function
pressure function boundary condition for structures
MAST::ComplexAssemblyBase * _fluid_complex_assembly
FSIGeneralizedAeroForceAssembly()
default constructor
void init(MAST::FluidStructureAssemblyElemOperations &fsi_elem_ops, MAST::ComplexSolverBase &complex_solver, MAST::ComplexAssemblyBase &complex_assembly, MAST::ComplexAssemblyElemOperations &fluid_elem_ops, MAST::PressureFunction &pressure_func, MAST::FrequencyDomainPressureFunction &freq_pressure_func, MAST::ComplexMeshFieldFunction &displ_func)
initializes for the given fluid and structural components.
uses a Gauss-Siedel method to solve the complex system of equations for a system. ...
This is a scalar function whose value can be changed and one that can be used as a design variable in...
MAST::ComplexMeshFieldFunction * _complex_displ
flexible surface motion for fluid and structure
Matrix< Complex, Dynamic, Dynamic > ComplexMatrixX
virtual void assemble_generalized_aerodynamic_force_matrix(std::vector< libMesh::NumericVector< Real > * > &basis, ComplexMatrixX &mat, MAST::Parameter *p=nullptr)
calculates the reduced order matrix given the basis provided in basis.
This provides a wrapper FieldFunction compatible class that interpolates the solution using libMesh's...
~FSIGeneralizedAeroForceAssembly()
destructor
virtual void clear_discipline_and_system()
clears association with a system to this discipline, and vice-a-versa
MAST::ComplexSolverBase * _fluid_complex_solver
complex solver