/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/FV/assembler/KurganovTadmor.hh File Reference#
|
DiFfRG
Discretization Framework for functional Renormalization Group flows
|
KurganovTadmor.hh File Reference
#include "DiFfRG/common/math.hh"#include <array>#include <autodiff/forward/real/real.hpp>#include <cstddef>#include <deal.II/base/multithread_info.h>#include <deal.II/base/point.h>#include <deal.II/base/quadrature_lib.h>#include <deal.II/base/timer.h>#include <deal.II/base/types.h>#include <deal.II/dofs/dof_handler.h>#include <deal.II/dofs/dof_tools.h>#include <deal.II/fe/fe_values.h>#include <deal.II/grid/grid_tools.h>#include <deal.II/grid/tria_iterator_base.h>#include <deal.II/lac/full_matrix.h>#include <deal.II/lac/sparse_matrix.h>#include <deal.II/lac/vector.h>#include <deal.II/meshworker/assemble_flags.h>#include <deal.II/meshworker/mesh_loop.h>#include <deal.II/numerics/matrix_tools.h>#include <deal.II/numerics/vector_tools.h>#include <iomanip>#include <iostream>#include <limits>#include <optional>#include <spdlog/spdlog.h>#include <sstream>#include <tbb/tbb.h>#include <DiFfRG/common/utils.hh>#include <DiFfRG/discretization/FV/reconstructor/advection/first_order_reconstructor.hh>#include <DiFfRG/discretization/FV/reconstructor/advection/tvd_reconstructor.hh>#include <DiFfRG/discretization/common/abstract_assembler.hh>#include <DiFfRG/discretization/common/affine_constraint_metadata.hh>#include <DiFfRG/discretization/common/assembly_schedule.hh>#include <DiFfRG/discretization/common/eom.hh>#include <DiFfRG/discretization/common/la_policy.hh>#include <DiFfRG/discretization/common/solution_sample.hh>#include <DiFfRG/physics/integration/map_scheduler.hh>#include <DiFfRG/common/linear_algebra.hh>#include <DiFfRG/discretization/FV/assembler/assembly_context.hh>#include <DiFfRG/discretization/FV/assembler/flux_jacobian_hessian.hh>#include <DiFfRG/discretization/FV/assembler/flux_ties.hh>#include <DiFfRG/discretization/FV/assembler/reconstruction_cache.hh>#include <DiFfRG/discretization/FV/wave_speed/abstract_wave_speed.hh>#include <DiFfRG/discretization/FV/wave_speed/max_eigenvalue_wave_speed.hh>#include <DiFfRG/discretization/common/types.hh>#include <tuple>#include <utility>#include <vector>Go to the source code of this file.
Namespaces | |
| namespace | DiFfRG |
| namespace | DiFfRG::FV |
| namespace | DiFfRG::FV::KurganovTadmor |
| namespace | DiFfRG::FV::KurganovTadmor::internal |
Functions | |
| template<typename T > | |
| int | DiFfRG::FV::KurganovTadmor::internal::sgn (T val) |
| template<typename NumberType , int dim, size_t n_components> | |
| std::array< JacobianMatrix< NumberType, n_components >, dim > | DiFfRG::FV::KurganovTadmor::internal::restrict_jacobian_to_block (const std::array< JacobianMatrix< NumberType, n_components >, dim > &J, const std::array< int, n_components > &blocks, const int block) |
Copy of J with every row and column outside block zeroed. | |
| template<typename NumberType , int dim, size_t n_components> | |
| HessianTensor< NumberType, dim, n_components > | DiFfRG::FV::KurganovTadmor::internal::restrict_hessian_to_block (const HessianTensor< NumberType, dim, n_components > &H, const std::array< int, n_components > &blocks, const int block) |
Copy of H with the two jacobian indices restricted to block. | |
| template<size_t n_components, typename Result , typename ComputeFUN > | |
| std::array< Result, n_components > | DiFfRG::FV::KurganovTadmor::internal::per_block (const std::array< int, n_components > &blocks, const ComputeFUN &compute) |
Run compute once per distinct block and hand each component its block's result. | |
| template<typename WaveSpeedStrategy , typename Model , typename NumberType , int dim, size_t n_components, typename ExtractorArray , typename VariableVector > | |
| KTFluxData< dim, NumberType, n_components > | DiFfRG::FV::KurganovTadmor::internal::compute_kt_flux_and_speeds (const std::array< NumberType, n_components > &u_plus, const std::array< NumberType, n_components > &u_minus, const GradientType< dim, NumberType, n_components > &grad_u_plus, const GradientType< dim, NumberType, n_components > &grad_u_minus, const dealii::Point< dim > &x_q, const double cell_width_plus, const double cell_width_minus, const ExtractorArray &extractors, const VariableVector &variables, const Model &model) |
| template<typename WaveSpeedStrategy , typename Model , typename NumberType , int dim, size_t n_components, typename ExtractorArray , typename VariableVector > | |
| KTFluxData< dim, NumberType, n_components > | DiFfRG::FV::KurganovTadmor::internal::compute_kt_flux_and_speeds (const std::array< NumberType, n_components > &u_plus, const std::array< NumberType, n_components > &u_minus, const dealii::Point< dim > &x_q, const double cell_width_plus, const double cell_width_minus, const ExtractorArray &extractors, const VariableVector &variables, const Model &model) |
| template<int dim, typename NumberType , size_t n_components> | |
| std::array< dealii::Tensor< 1, dim, NumberType >, n_components > | DiFfRG::FV::KurganovTadmor::internal::compute_numerical_flux (const std::array< dealii::Tensor< 1, dim, NumberType >, n_components > &F_plus, const std::array< dealii::Tensor< 1, dim, NumberType >, n_components > &F_minus, const std::array< dealii::Tensor< 1, dim, NumberType >, n_components > &a_half, const std::array< NumberType, n_components > &u_plus, const std::array< NumberType, n_components > &u_minus) |
| template<typename WaveSpeedStrategy , typename Model , typename NumberType , int dim, size_t n_components, typename ExtractorArray , typename VariableVector > | |
| KTNumFluxJacobianData< dim, NumberType, n_components > | DiFfRG::FV::KurganovTadmor::internal::compute_kt_numflux_jacobian (const std::array< NumberType, n_components > &u_plus, const std::array< NumberType, n_components > &u_minus, const GradientType< dim, NumberType, n_components > &grad_u_plus, const GradientType< dim, NumberType, n_components > &grad_u_minus, const dealii::Point< dim > &x_q, const double cell_width_plus, const double cell_width_minus, const ExtractorArray &extractors, const VariableVector &variables, const Model &model) |
| template<typename Model , typename NumberType , int dim, size_t n_components, typename ExtractorArray , typename VariableVector > | |
| std::array< dealii::Tensor< 1, dim, NumberType >, n_components > | DiFfRG::FV::KurganovTadmor::internal::compute_diffusion_flux (const std::array< NumberType, n_components > &u_minus, const std::array< NumberType, n_components > &u_plus, const GradientType< dim, NumberType, n_components > &grad_u_minus, const GradientType< dim, NumberType, n_components > &grad_u_plus, const ThirdDerivativeType< dim, NumberType, n_components > &third_derivatives_minus, const ThirdDerivativeType< dim, NumberType, n_components > &third_derivatives_plus, const dealii::Point< dim > &x_q, const double cell_width_minus, const double cell_width_plus, const ExtractorArray &extractors, const VariableVector &variables, const Model &model) |
| template<typename Model , typename NumberType , int dim, size_t n_components, typename ExtractorArray , typename VariableVector > | |
| DiffusionFluxJacobianData< dim, NumberType, n_components > | DiFfRG::FV::KurganovTadmor::internal::compute_diffusion_flux_jacobian (const std::array< NumberType, n_components > &u_minus, const std::array< NumberType, n_components > &u_plus, const GradientType< dim, NumberType, n_components > &grad_u_minus, const GradientType< dim, NumberType, n_components > &grad_u_plus, const ThirdDerivativeType< dim, NumberType, n_components > &third_derivatives_minus, const ThirdDerivativeType< dim, NumberType, n_components > &third_derivatives_plus, const dealii::Point< dim > &x_q, const double cell_width_minus, const double cell_width_plus, const ExtractorArray &extractors, const VariableVector &variables, const Model &model) |
Generated by