|
| RTNPkPkPk (const Mesh &mesh, size_t degree, const BoundaryConditions &bc, const HYPREParameters ¶meters) |
| Constructor.
|
|
Eigen::VectorXd | interpolate (const VelocityType &u, const PressureType &p) const |
| Interpolate both velocity and pressure.
|
|
const CellDofsMapType & | cellDofsMap () const |
| Return cell DOFs map.
|
|
Eigen::VectorXd | extendCellDofs (const Eigen::VectorXd &vh) const |
| Extend cell DOFs from \(\mathcal{RTN}^{k+1}(T)\) to \(\mathcal{P}^{k+1}(T)^d\).
|
|
const DiscreteSpace & | extendedDofsSpace () const |
| Return the discrete space corresponding to the extended DOFs.
|
|
double | convective_stabilization_parameter (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const size_t cell_degree, const double viscosity, const Eigen::VectorXd uT_old, const double current_time=0.) const |
| Evaluates convective stabilisation parameter.
|
|
| RTNPkPkPk (const Mesh &mesh, size_t degree, const BoundaryConditions &bc, const HYPREParameters ¶meters) |
| Constructor.
|
|
Eigen::VectorXd | interpolate (const VelocityType &u, const PressureType &p) const |
| Interpolate both velocity and pressure.
|
|
const CellDofsMapType & | cellDofsMap () const |
| Return cell DOFs map.
|
|
Eigen::VectorXd | extendCellDofs (const Eigen::VectorXd &vh) const |
| Extend cell DOFs from \(\mathcal{RTN}^{k+1}(T)\) to \(\mathcal{P}^{k+1}(T)^d\).
|
|
const DiscreteSpace & | extendedDofsSpace () const |
| Return the discrete space corresponding to the extended DOFs.
|
|
double | convective_stabilization_parameter (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const size_t cell_degree, const double viscosity, const Eigen::VectorXd uT_old, const double current_time=0.) const |
| Evaluates convective stabilisation parameter.
|
|
| RTNPkPkPk (const Mesh &mesh, size_t degree, const BoundaryConditions &bc, const HYPREParameters ¶meters) |
| Constructor.
|
|
Eigen::VectorXd | interpolate (const VelocityType &u, const PressureType &p) const |
| Interpolate both velocity and pressure.
|
|
const CellDofsMapType & | cellDofsMap () const |
| Return cell DOFs map.
|
|
Eigen::VectorXd | extendCellDofs (const Eigen::VectorXd &vh) const |
| Extend cell DOFs from \(\mathcal{RTN}^{k+1}(T)\) to \(\mathcal{P}^{k+1}(T)^d\).
|
|
const DiscreteSpace & | extendedDofsSpace () const |
| Return the discrete space corresponding to the extended DOFs.
|
|
| HYPRE (const Mesh &mesh, size_t degree, const BoundaryConditions &bc, const HYPREParameters ¶meters={}) |
|
virtual | ~HYPRE () |
|
template<typename F > |
Eigen::VectorXd | pkpoPkPkPkInterpolate (const F &v, const InterpolateParameters ¶meters={}) const |
| Compute the interpolate for the Pk+1-Pk-Pk-Pk method.
|
|
size_t | degree () const |
| Returns the degree.
|
|
double | stabilizationParameter () const |
| Returns the stabilization parameter.
|
|
const std::vector< Eigen::MatrixXd > | potential () const |
| Returns the vector of potential reconstructions.
|
|
const std::vector< Eigen::MatrixXd > | stabilization () const |
| Returns the vector of stabilization matrices.
|
|
const Eigen::MatrixXd & | potential (size_t iT) const |
| Returns the potential reconstruction.
|
|
size_t | numLocalStaticallyCondensedDofsVelocity () const |
| Returns the local number of velocity statically condensed DOFs.
|
|
size_t | numLocalStaticallyCondensedDofsPressure () const |
| Returns the local number of pressure statically condensed DOFs.
|
|
size_t | numStaticallyCondensedDofsVelocity () const |
| Returns the number of statically condensed DOFs for the velocity.
|
|
size_t | numStaticallyCondensedDofsPressure () const |
| Returns the number of statically condensed DOFs for the pressure.
|
|
size_t | numStaticallyCondensedDofs () const |
| Returns the number of statically condensed DOFs.
|
|
size_t | numDirichletDofs () const |
| Returns the number of Dirichlet DOFs.
|
|
size_t | dimVelocity () const |
| Returns the dimension of velocity space.
|
|
size_t | dimPressure () const |
| Returns the dimension of pressure space.
|
|
size_t | numNonStaticallyCondensedDofs () const |
| Returns the number of DOFs after SC and with Lagrange multiplier, but before eliminating Dirichlet DOFs.
|
|
size_t | sizeSystem () const |
| Returns the size of the final system with Lagrange multiplier, after application of SC and removal of Dirichlet BCs.
|
|
const DiscreteSpace & | velocitySpace () const |
| Returns the velocity space.
|
|
const DiscreteSpace & | pressureSpace () const |
| Returns the pressure space.
|
|
const Mesh & | mesh () const |
| Returns the mesh.
|
|
const SystemMatrixType & | systemMatrix () const |
| Returns the linear system matrix.
|
|
SystemMatrixType & | systemMatrix () |
| Returns the linear system matrix.
|
|
const Eigen::VectorXd & | systemVector () const |
| Returns the linear system right-hand side vector.
|
|
Eigen::VectorXd & | systemVector () |
| Returns the linear system right-hand side vector.
|
|
const SystemMatrixType & | staticallyCondensedMatrix () const |
| Returns the static condensation recovery operator.
|
|
const Eigen::VectorXd & | staticallyCondensedVector () const |
| Returns the static condensation rhs.
|
|
const BoundaryConditions & | boundaryConditions () const |
| Returns the boundary condition handler.
|
|
void | assembleResidualSystem (const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &uph_prev, const double time_step, const double current_time) |
| Assemble the global system.
|
|
void | assembleResidualSystem (const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old) |
|
Eigen::VectorXd | reconstructSolution (const Eigen::VectorXd &uhp_solsystem) const |
| Reconstruct the solution from the vector of non-statically-condensed DOFs.
|
|
| HYPRE (const Mesh &mesh, size_t degree, const BoundaryConditions &bc, const HYPREParameters ¶meters={}) |
|
virtual | ~HYPRE () |
|
template<typename F > |
Eigen::VectorXd | pkpoPkPkPkInterpolate (const F &v, const InterpolateParameters ¶meters={}) const |
| Compute the interpolate for the Pk+1-Pk-Pk-Pk method.
|
|
size_t | degree () const |
| Returns the degree.
|
|
double | stabilizationParameter () const |
| Returns the stabilization parameter.
|
|
const std::vector< Eigen::MatrixXd > | potential () const |
| Returns the vector of potential reconstructions.
|
|
const std::vector< Eigen::MatrixXd > | stabilization () const |
| Returns the vector of stabilization matrices.
|
|
const Eigen::MatrixXd & | potential (size_t iT) const |
| Returns the potential reconstruction.
|
|
size_t | numLocalStaticallyCondensedDofsVelocity () const |
| Returns the local number of velocity statically condensed DOFs.
|
|
size_t | numLocalStaticallyCondensedDofsPressure () const |
| Returns the local number of pressure statically condensed DOFs.
|
|
size_t | numStaticallyCondensedDofsVelocity () const |
| Returns the number of statically condensed DOFs for the velocity.
|
|
size_t | numStaticallyCondensedDofsPressure () const |
| Returns the number of statically condensed DOFs for the pressure.
|
|
size_t | numStaticallyCondensedDofs () const |
| Returns the number of statically condensed DOFs.
|
|
size_t | numDirichletDofs () const |
| Returns the number of Dirichlet DOFs.
|
|
size_t | dimVelocity () const |
| Returns the dimension of velocity space.
|
|
size_t | dimPressure () const |
| Returns the dimension of pressure space.
|
|
size_t | numNonStaticallyCondensedDofs () const |
| Returns the number of DOFs after SC and with Lagrange multiplier, but before eliminating Dirichlet DOFs.
|
|
size_t | sizeSystem () const |
| Returns the size of the final system with Lagrange multiplier, after application of SC and removal of Dirichlet BCs.
|
|
const DiscreteSpace & | velocitySpace () const |
| Returns the velocity space.
|
|
const DiscreteSpace & | pressureSpace () const |
| Returns the pressure space.
|
|
const Mesh & | mesh () const |
| Returns the mesh.
|
|
const SystemMatrixType & | systemMatrix () const |
| Returns the linear system matrix.
|
|
SystemMatrixType & | systemMatrix () |
| Returns the linear system matrix.
|
|
const Eigen::VectorXd & | systemVector () const |
| Returns the linear system right-hand side vector.
|
|
Eigen::VectorXd & | systemVector () |
| Returns the linear system right-hand side vector.
|
|
const SystemMatrixType & | staticallyCondensedMatrix () const |
| Returns the static condensation recovery operator.
|
|
const Eigen::VectorXd & | staticallyCondensedVector () const |
| Returns the static condensation rhs.
|
|
const BoundaryConditions & | boundaryConditions () const |
| Returns the boundary condition handler.
|
|
void | assembleResidualSystem (const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &uph_prev, const double time_step, const double current_time) |
| Assemble the global system.
|
|
void | assembleResidualSystem (const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old) |
|
Eigen::VectorXd | reconstructSolution (const Eigen::VectorXd &uhp_solsystem) const |
| Reconstruct the solution from the vector of non-statically-condensed DOFs.
|
|
| HYPRE (const Mesh &mesh, size_t degree, const BoundaryConditions &bc, const HYPREParameters ¶meters={}) |
|
virtual | ~HYPRE () |
|
template<typename F > |
Eigen::VectorXd | pkpoPkPkPkInterpolate (const F &v, const InterpolateParameters ¶meters={}) const |
| Compute the interpolate for the Pk+1-Pk-Pk-Pk method.
|
|
size_t | degree () const |
| Returns the degree.
|
|
double | stabilizationParameter () const |
| Returns the stabilization parameter.
|
|
const std::vector< Eigen::MatrixXd > | potential () const |
| Returns the vector of potential reconstructions.
|
|
const std::vector< Eigen::MatrixXd > | stabilization () const |
| Returns the vector of stabilization matrices.
|
|
const Eigen::MatrixXd & | potential (size_t iT) const |
| Returns the potential reconstruction.
|
|
size_t | numLocalStaticallyCondensedDofsVelocity () const |
| Returns the local number of velocity statically condensed DOFs.
|
|
size_t | numLocalStaticallyCondensedDofsPressure () const |
| Returns the local number of pressure statically condensed DOFs.
|
|
size_t | numStaticallyCondensedDofsVelocity () const |
| Returns the number of statically condensed DOFs for the velocity.
|
|
size_t | numStaticallyCondensedDofsPressure () const |
| Returns the number of statically condensed DOFs for the pressure.
|
|
size_t | numStaticallyCondensedDofs () const |
| Returns the number of statically condensed DOFs.
|
|
size_t | numDirichletDofs () const |
| Returns the number of Dirichlet DOFs.
|
|
size_t | dimVelocity () const |
| Returns the dimension of velocity space.
|
|
size_t | dimPressure () const |
| Returns the dimension of pressure space.
|
|
size_t | numNonStaticallyCondensedDofs () const |
| Returns the number of DOFs after SC and with Lagrange multiplier, but before eliminating Dirichlet DOFs.
|
|
size_t | sizeSystem () const |
| Returns the size of the final system with Lagrange multiplier, after application of SC and removal of Dirichlet BCs.
|
|
size_t | numNonStaticallyCondensedDofsVelocity () const |
| Returns the number of non statically condensed DOFs for the velocity.
|
|
size_t | numNonStaticallyCondensedDofsPressure () const |
| Returns the number of non statically condensed DOFs for the pressure.
|
|
const DiscreteSpace & | velocitySpace () const |
| Returns the velocity space.
|
|
const DiscreteSpace & | pressureSpace () const |
| Returns the pressure space.
|
|
const Mesh & | mesh () const |
| Returns the mesh.
|
|
const SystemMatrixType & | systemMatrix () const |
| Returns the linear system matrix.
|
|
SystemMatrixType & | systemMatrix () |
| Returns the linear system matrix.
|
|
const Eigen::VectorXd & | systemVector () const |
| Returns the linear system right-hand side vector.
|
|
Eigen::VectorXd & | systemVector () |
| Returns the linear system right-hand side vector.
|
|
const SystemMatrixType & | staticallyCondensedMatrix () const |
| Returns the static condensation recovery operator.
|
|
const Eigen::VectorXd & | staticallyCondensedVector () const |
| Returns the static condensation rhs.
|
|
const BoundaryConditions & | boundaryConditions () const |
| Returns the boundary condition handler.
|
|
void | assembleResidualSystem (const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &uph_prev, const Eigen::VectorXd &brh_old, const Eigen::VectorXd &brh_prev, const double time_step, const double current_time) |
| Assemble the global system.
|
|
void | assembleResidualSystem (const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &brh_old) |
|
Eigen::VectorXd | reconstructSolution (const Eigen::VectorXd &uhp_solsystem) const |
| Reconstruct the solution from the vector of non-statically-condensed DOFs.
|
|
double | convective_stabilization_parameter (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const size_t cell_degree, const double viscosity, const double current_time=0.) const |
|
double | magnetic_convective_stabilization_parameter (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const size_t cell_degree, const double magnetic_diffusivity, const double current_time=0.) const |
|
|
void | _construct_local_operators (size_t iT) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _time_deriv_term (size_t iT, const Eigen::VectorXd &uT_old, const Eigen::VectorXd &uT_prev, const double time_step) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _viscous_term (size_t iT, const Eigen::VectorXd &uT_old) |
|
virtual std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _nonlinear_viscous_term (size_t iT, const Eigen::VectorXd &uT_old) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _compute_local_contribution (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &uph_prev, const double time_step, const double current_time) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _compute_local_contribution (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old) |
|
LocalStaticCondensation | _compute_static_condensation (const size_t &iT) |
|
void | _assemble_local_contribution (size_t iT, const std::pair< Eigen::MatrixXd, Eigen::VectorXd > &lsT, std::list< Eigen::Triplet< double > > &A1, Eigen::VectorXd &b1, std::list< Eigen::Triplet< double > > &A2, Eigen::VectorXd &b2) |
|
void | _construct_local_operators (size_t iT) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _time_deriv_term (size_t iT, const Eigen::VectorXd &uT_old, const Eigen::VectorXd &uT_prev, const double time_step) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _viscous_term (size_t iT, const Eigen::VectorXd &uT_old) |
|
virtual std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _darcy_term (size_t iT, const Eigen::VectorXd &uT_old) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _compute_local_contribution (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &uph_prev, const double time_step, const double current_time) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _compute_local_contribution (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old) |
|
LocalStaticCondensation | _compute_static_condensation (const size_t &iT) |
|
void | _assemble_local_contribution (size_t iT, const std::pair< Eigen::MatrixXd, Eigen::VectorXd > &lsT, std::list< Eigen::Triplet< double > > &A1, Eigen::VectorXd &b1, std::list< Eigen::Triplet< double > > &A2, Eigen::VectorXd &b2) |
|
void | _construct_local_operators (size_t iT) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _time_deriv_term (size_t iT, const Eigen::VectorXd &uT_old, const Eigen::VectorXd &uT_prev, const double time_step) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _viscous_term (size_t iT, const Eigen::VectorXd &uT_old) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _magnetic_diffusive_term (size_t iT, const Eigen::VectorXd &bT_old) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _compute_local_contribution (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &uph_prev, const Eigen::VectorXd &brh_old, const Eigen::VectorXd &brh_prev, const double time_step, const double current_time) |
|
std::pair< Eigen::MatrixXd, Eigen::VectorXd > | _compute_local_contribution (size_t iT, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph_old, const Eigen::VectorXd &brh_old) |
|
LocalStaticCondensation | _compute_static_condensation (const size_t &iT) |
|
void | _assemble_local_contribution (size_t iT, const std::pair< Eigen::MatrixXd, Eigen::VectorXd > &lsT, std::list< Eigen::Triplet< double > > &A1, Eigen::VectorXd &b1, std::list< Eigen::Triplet< double > > &A2, Eigen::VectorXd &b2) |
|
size_t | m_degree |
|
const BoundaryConditions & | m_bc |
|
bool | m_static_condensation |
|
bool | m_use_threads |
|
double | m_stabilization_parameter |
|
double | m_viscosity |
|
double | m_flow_index |
|
double | m_degen_param |
|
std::ostream & | m_output |
|
size_t | m_nloc_sc_u |
|
size_t | m_nloc_sc_p |
|
std::vector< Eigen::MatrixXd > | m_discrete_l2 |
|
std::vector< Eigen::MatrixXd > | m_gradient |
|
std::vector< Eigen::MatrixXd > | m_gradient_rhs |
|
std::vector< Eigen::MatrixXd > | m_symgradient |
|
std::vector< Eigen::MatrixXd > | m_symgradient_rhs |
|
std::vector< Eigen::MatrixXd > | m_potential |
|
std::vector< Eigen::MatrixXd > | m_stabilization |
|
std::unique_ptr< DiscreteSpace > | m_velocity_space |
|
std::unique_ptr< DiscreteSpace > | m_pressure_space |
|
SystemMatrixType | m_A |
|
Eigen::VectorXd | m_b |
|
SystemMatrixType | m_sc_A |
|
Eigen::VectorXd | m_sc_b |
|
std::vector< int > | m_nsc_to_dof_map |
|
std::vector< int > | m_sc_to_dof_map |
|
double | m_permeability |
|
bool | m_VitoParameter |
|
double | m_magnetic_diffusivity |
|