PolyFEM
Loading...
Searching...
No Matches
polyfem::assembler::NavierStokesFSIAssemblerData Class Reference

#include <NavierStokesFSI.hpp>

Inheritance diagram for polyfem::assembler::NavierStokesFSIAssemblerData:
[legend]
Collaboration diagram for polyfem::assembler::NavierStokesFSIAssemblerData:
[legend]

Public Types

enum  Space : int { Velocity = 0 , Pressure = 1 , MeshDisplacement = 2 , NumberOfSpaces = 3 }
 
using BodyForceEvaluator = std::function< void(int element_id, const Eigen::MatrixXd &physical_points, double time, Eigen::MatrixXd &values)>
 
- Public Types inherited from polyfem::assembler::MultiSpacesNLAssemblerData
using Values = std::vector< std::reference_wrapper< const ElementAssemblyValues > >
 
using Coefficients = std::vector< std::reference_wrapper< const Eigen::VectorXd > >
 

Public Member Functions

 NavierStokesFSIAssemblerData (Values vals, Coefficients x, Coefficients x_prev, const double t, const double dt, const QuadratureVector &da, const Eigen::VectorXd &velocity_tilde, const Eigen::VectorXd &mesh_velocity, const double dmesh_velocity_dmesh_displacement, const double spatial_weight, const bool include_inertia, const bool picard, BodyForceEvaluator body_force_evaluator={})
 
const Eigen::VectorXd & velocity () const
 
const Eigen::VectorXd & pressure () const
 
const Eigen::VectorXd & mesh_displacement () const
 
- Public Member Functions inherited from polyfem::assembler::MultiSpacesNLAssemblerData
 MultiSpacesNLAssemblerData (Values vals, Coefficients x, Coefficients x_prev, const double t, const double dt, const QuadratureVector &da)
 
virtual ~MultiSpacesNLAssemblerData ()=default
 
int n_spaces () const
 
const ElementAssemblyValuesvals (const int space) const
 
const Eigen::VectorXd & x (const int space) const
 
const Eigen::VectorXd & x_prev (const int space) const
 

Public Attributes

const Eigen::VectorXd & velocity_tilde
 
const Eigen::VectorXd & mesh_velocity
 
const double dmesh_velocity_dmesh_displacement
 
const double spatial_weight
 
const bool include_inertia
 
const bool picard
 
const BodyForceEvaluator body_force_evaluator
 
- Public Attributes inherited from polyfem::assembler::MultiSpacesNLAssemblerData
const double t
 
const double dt
 
const QuadratureVectorda
 

Detailed Description

Definition at line 10 of file NavierStokesFSI.hpp.

Member Typedef Documentation

◆ BodyForceEvaluator

using polyfem::assembler::NavierStokesFSIAssemblerData::BodyForceEvaluator = std::function<void( int element_id, const Eigen::MatrixXd &physical_points, double time, Eigen::MatrixXd &values)>

Definition at line 21 of file NavierStokesFSI.hpp.

Member Enumeration Documentation

◆ Space

Enumerator
Velocity 
Pressure 
MeshDisplacement 
NumberOfSpaces 

Definition at line 13 of file NavierStokesFSI.hpp.

Constructor & Destructor Documentation

◆ NavierStokesFSIAssemblerData()

polyfem::assembler::NavierStokesFSIAssemblerData::NavierStokesFSIAssemblerData ( Values  vals,
Coefficients  x,
Coefficients  x_prev,
const double  t,
const double  dt,
const QuadratureVector da,
const Eigen::VectorXd &  velocity_tilde,
const Eigen::VectorXd &  mesh_velocity,
const double  dmesh_velocity_dmesh_displacement,
const double  spatial_weight,
const bool  include_inertia,
const bool  picard,
BodyForceEvaluator  body_force_evaluator = {} 
)
inline

Definition at line 27 of file NavierStokesFSI.hpp.

Member Function Documentation

◆ mesh_displacement()

const Eigen::VectorXd & polyfem::assembler::NavierStokesFSIAssemblerData::mesh_displacement ( ) const
inline

Definition at line 55 of file NavierStokesFSI.hpp.

References MeshDisplacement, and x.

◆ pressure()

const Eigen::VectorXd & polyfem::assembler::NavierStokesFSIAssemblerData::pressure ( ) const
inline

Definition at line 54 of file NavierStokesFSI.hpp.

References Pressure, and x.

◆ velocity()

const Eigen::VectorXd & polyfem::assembler::NavierStokesFSIAssemblerData::velocity ( ) const
inline

Definition at line 53 of file NavierStokesFSI.hpp.

References Velocity, and x.

Member Data Documentation

◆ body_force_evaluator

const BodyForceEvaluator polyfem::assembler::NavierStokesFSIAssemblerData::body_force_evaluator

Definition at line 63 of file NavierStokesFSI.hpp.

◆ dmesh_velocity_dmesh_displacement

const double polyfem::assembler::NavierStokesFSIAssemblerData::dmesh_velocity_dmesh_displacement

Definition at line 59 of file NavierStokesFSI.hpp.

◆ include_inertia

const bool polyfem::assembler::NavierStokesFSIAssemblerData::include_inertia

Definition at line 61 of file NavierStokesFSI.hpp.

◆ mesh_velocity

const Eigen::VectorXd& polyfem::assembler::NavierStokesFSIAssemblerData::mesh_velocity

Definition at line 58 of file NavierStokesFSI.hpp.

◆ picard

const bool polyfem::assembler::NavierStokesFSIAssemblerData::picard

Definition at line 62 of file NavierStokesFSI.hpp.

◆ spatial_weight

const double polyfem::assembler::NavierStokesFSIAssemblerData::spatial_weight

Definition at line 60 of file NavierStokesFSI.hpp.

◆ velocity_tilde

const Eigen::VectorXd& polyfem::assembler::NavierStokesFSIAssemblerData::velocity_tilde

Definition at line 57 of file NavierStokesFSI.hpp.


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