|
| class | HArDCore2D::HMM_StefanPME_Transient |
| | The vector Xh manipulated in the resolution has mixed components, corresponding either to the unknown u or to \(\zeta(u)\), depending on the choice of weight of mass-lumping for the cell/edge unknowns. If no weight is put on the edges (resp. the cells), then the edge (resp. cell) unknowns represent \(\zeta(u)\). Otherwise, they represent u. More...
|
| |
| class | HArDCore2D::StochStefanPME |
| | The vector Xh manipulated in the resolution has mixed components, corresponding either to the unknown \(u\) or to \(\zeta(e^W u)\), depending on the choice of weight of mass-lumping for the cell/edge unknowns. If no weight is put on the edges (resp. the cells), then the edge (resp. cell) unknowns represent \(\zeta(e^W u)\). Otherwise, they represent u. More...
|
| |
|
| using | HArDCore2D::HMM_StefanPME_Transient::solution_function_type = std::function< double(const double &, const VectorRd &)> |
| | type for solution
|
| |
| using | HArDCore2D::HMM_StefanPME_Transient::source_function_type = std::function< double(const double &, const VectorRd &, const Cell *)> |
| | type for source
|
| |
| using | HArDCore2D::HMM_StefanPME_Transient::grad_function_type = std::function< VectorRd(const double &, const VectorRd &, const Cell *)> |
| | type for gradient
|
| |
| using | HArDCore2D::HMM_StefanPME_Transient::tensor_function_type = std::function< Eigen::Matrix2d(const double, const double, const Cell *)> |
| | type for diffusion tensor (does not depend on time)
|
| |
| template<typename T > |
| using | HArDCore2D::SpatialFunctionType = std::function< T(const VectorRd &)> |
| | Generic type for function that only depends on spatial coordinate.
|
| |
| template<typename T > |
| using | HArDCore2D::PiecewiseSpatialFunctionType = std::function< T(const VectorRd &, const Cell *)> |
| | Generic type for function that depends on space, with formula changing from one cell to the next.
|
| |
| template<typename T > |
| using | HArDCore2D::TemporalSpatialFunctionType = std::function< T(const double &, const VectorRd &)> |
| | Generic type for function that depends on space and time.
|
| |
| template<typename T > |
| using | HArDCore2D::PiecewiseTemporalSpatialFunctionType = std::function< T(const double &, const VectorRd &, const Cell *)> |
| | Generic type for function that depends on space and time, with formula changing from one cell to the next.
|
| |
| template<typename T > |
| using | HArDCore2D::EigFunctionType = std::function< T(const size_t &, const size_t &, const VectorRd &)> |
| | Type for "eigenfunctions" e_i, depending on two indices k,l.
|
| |
| template<typename T > |
| using | HArDCore2D::DoubleVector = std::vector< std::vector< T > > |
| |
| using | HArDCore2D::StochStefanPME::solution_function_type = TemporalSpatialFunctionType< double > |
| | type for solution
|
| |
| using | HArDCore2D::StochStefanPME::source_function_type = PiecewiseSpatialFunctionType< double > |
| | type for source (at a given fixed time)
|
| |
| using | HArDCore2D::StochStefanPME::grad_function_type = PiecewiseTemporalSpatialFunctionType< VectorRd > |
| | type for gradient
|
| |
| using | HArDCore2D::StochStefanPME::lapl_function_type = PiecewiseTemporalSpatialFunctionType< double > |
| | type for laplacian
|
| |
| using | HArDCore2D::StochStefanPME::tensor_function_type = PiecewiseSpatialFunctionType< Eigen::Matrix2d > |
| | type for diffusion tensor (does not depend on time)
|
| |
| using | HArDCore2D::StochStefanPME::WienerType = SpatialFunctionType< double > |
| | type for the Wiener process at a fixed time (only variation in space)
|
| |
| using | HArDCore2D::StochStefanPME::GradWienerType = SpatialFunctionType< VectorRd > |
| | type for gradient of Wiener process
|
| |
| using | HArDCore2D::StochStefanPME::ReactionType = SpatialFunctionType< double > |
| | Type for reaction term mu^2.
|
| |
|
| | HArDCore2D::HMM_StefanPME_Transient::HMM_StefanPME_Transient (HybridCore &hmm, tensor_function_type kappa, source_function_type source, BoundaryConditions BC, solution_function_type exact_solution, grad_function_type grad_exact_solution, TestCaseNonLinearity::nonlinearity_function_type zeta, double weight, std::string solver_type, std::ostream &output=std::cout) |
| | Constructor of the class.
|
| |
| UVector | HArDCore2D::HMM_StefanPME_Transient::iterate (const double tps, const double dt, const UVector &Xn) |
| | Execute one time iteration.
|
| |
| Eigen::VectorXd | HArDCore2D::HMM_StefanPME_Transient::apply_nonlinearity (const Eigen::VectorXd &Y, const std::string type) const |
| | Compute non-linearity on vector (depends if weight=0, weight=1 or weight\in (0,1) )
|
| |
| UVector | HArDCore2D::HMM_StefanPME_Transient::apply_nonlinearity (const UVector &Y, const std::string type) const |
| |
| double | HArDCore2D::HMM_StefanPME_Transient::L2_MassLumped (const UVector &Xh) const |
| | Mass-lumped L2 norm of a function given by a vector.
|
| |
| double | HArDCore2D::HMM_StefanPME_Transient::Lp_MassLumped (const UVector &Xh, double p) const |
| | Mass-lumped Lp norm of a function given by a vector.
|
| |
| double | HArDCore2D::HMM_StefanPME_Transient::EnergyNorm (const UVector &Xh) const |
| | Discrete energy norm (associated to the diffusion operator)
|
| |
| double | HArDCore2D::HMM_StefanPME_Transient::get_assembly_time () const |
| | cpu time to assemble the scheme
|
| |
| double | HArDCore2D::HMM_StefanPME_Transient::get_solving_time () const |
| | cpu time to solve the scheme
|
| |
| double | HArDCore2D::HMM_StefanPME_Transient::get_itime (size_t idx) const |
| | various intermediate assembly times
|
| |
| double | HArDCore2D::HMM_StefanPME_Transient::get_solving_error () const |
| | residual after solving the scheme
|
| |
| size_t | HArDCore2D::HMM_StefanPME_Transient::get_nb_newton () const |
| | number of Newton iterations
|
| |
| Eigen::MatrixXd | HArDCore2D::HMM_StefanPME_Transient::get_MassT (size_t iT) const |
| | Mass matrix in cell iT.
|
| |
| static double | HArDCore2D::StDev (const Eigen::VectorXd &v) |
| |
| | HArDCore2D::StochStefanPME::StochStefanPME (HybridCore &hmm, tensor_function_type kappa, TestCaseNonLinearity::nonlinearity_function_type zeta, BoundaryConditions BC, solution_function_type exact_solution, grad_function_type grad_exact_solution, solution_function_type time_der_exact_solution, lapl_function_type minus_Lapl_exact_solution, double weight, std::string solver_type, std::ostream &output=std::cout) |
| | Constructor of the class.
|
| |
| StochStefanPME::source_function_type | HArDCore2D::StochStefanPME::compute_source (const bool &use_exact_source, const double &t, const WienerType &W, const GradWienerType &grad_W, const WienerType &Delta_exp_W, const ReactionType &mu_squared) |
| | Compute the source to zero or the exact one based on the selected solution and Wiener process.
|
| |
| std::pair< UVector, size_t > | HArDCore2D::StochStefanPME::iterate (const double tps, const double dt, const UVector &Xn, const UVector &Ih_W, const WienerType &W, const ReactionType &mu_squared, const source_function_type &source) |
| | Execute one time iteration: return the calculated vector, and the number of Newton iterations.
|
| |
| void | HArDCore2D::StochStefanPME::SetWienerProcess (const int &caseW, const double &t, WienerType &W, UVector &I_W, GradWienerType &grad_W, WienerType &Delta_exp_W, ReactionType &mu_squared, bool verbose=false) |
| | Set the Wiener process, deterministic case.
|
| |
| void | HArDCore2D::StochStefanPME::SimulateWienerProcess (const double &dt, DoubleVector< double > &Wtime, WienerType &W, const DoubleVector< Eigen::VectorXd > &Ih_eigs, UVector &I_W, GradWienerType &grad_W, WienerType &Delta_exp_W, ReactionType &mu_squared) |
| | Set the Wiener process, random case.
|
| |
| Eigen::VectorXd | HArDCore2D::StochStefanPME::apply_nonlinearity_eW (const std::string type, const Eigen::VectorXd &Y, const Eigen::VectorXd &I_W) const |
| | Compute non-linearity and e^W on vector Y (depends if weight=0, weight=1 or weight\in (0,1) )
|
| |
| UVector | HArDCore2D::StochStefanPME::apply_nonlinearity_eW (const std::string type, const UVector &Y, const Eigen::VectorXd &I_W) const |
| |
| double | HArDCore2D::StochStefanPME::L2_MassLumped (const UVector &Xh) const |
| | Mass-lumped L2 norm of a function given by a vector.
|
| |
| double | HArDCore2D::StochStefanPME::Lp_MassLumped (const UVector &Xh, double p) const |
| | Mass-lumped Lp norm of a function given by a vector.
|
| |
| double | HArDCore2D::StochStefanPME::EnergyNorm (const UVector &Xh) const |
| | Discrete energy norm (associated to the diffusion operator)
|
| |
| double | HArDCore2D::StochStefanPME::Integral (const UVector &Xh) const |
| | Integral of a function given by a vector.
|
| |
| double | HArDCore2D::StochStefanPME::get_assembly_time () const |
| | cpu time to assemble the scheme
|
| |
| double | HArDCore2D::StochStefanPME::get_solution_time () const |
| | cpu time to solve the linear systems
|
| |
| double | HArDCore2D::StochStefanPME::get_itime (size_t idx) const |
| | various intermediate assembly times
|
| |
| double | HArDCore2D::StochStefanPME::get_solving_error () const |
| | residual after solving the scheme
|
| |
| Eigen::MatrixXd | HArDCore2D::StochStefanPME::get_MassT (size_t iT) const |
| | Mass matrix in cell iT.
|
| |
Hybrid Mimetic Mixed method.