/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/FV/assembler/flux_jacobian_hessian.hh File Reference#

DiFfRG: /home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/FV/assembler/flux_jacobian_hessian.hh File Reference
DiFfRG
Discretization Framework for functional Renormalization Group flows
flux_jacobian_hessian.hh File Reference
#include <array>
#include <autodiff/forward/real/real.hpp>
#include <cstddef>
#include <deal.II/base/point.h>
#include <deal.II/base/tensor.h>
#include <tuple>
#include <DiFfRG/discretization/FV/assembler/flux_ties.hh>

Go to the source code of this file.

Classes

struct  DiFfRG::FV::KurganovTadmor::internal::FluxDerivativeData< NumberType, dim, n_components >
 

Namespaces

namespace  DiFfRG
 
namespace  DiFfRG::FV
 
namespace  DiFfRG::FV::KurganovTadmor
 
namespace  DiFfRG::FV::KurganovTadmor::internal
 

Typedefs

template<typename NumberType , size_t n_components>
using DiFfRG::FV::KurganovTadmor::internal::JacobianMatrix = std::array<std::array<NumberType, n_components>, n_components>
 
template<typename NumberType , int dim, size_t n_components>
using DiFfRG::FV::KurganovTadmor::internal::HessianTensor
 
template<typename NumberType , int dim, size_t n_components>
using DiFfRG::FV::KurganovTadmor::internal::FluxGradientJacobian
 Derivative of every flux component/direction with respect to every component/direction of grad(u).
 
template<typename NumberType , int dim, size_t n_components>
using DiFfRG::FV::KurganovTadmor::internal::MixedHessianTensor = std::array<HessianTensor<NumberType, dim, n_components>, dim>
 

Functions

template<typename Model , typename NumberType , int dim, size_t n_components, typename ExtractorArray , typename VariableVector >
FluxDerivativeData< NumberType, dim, n_components > DiFfRG::FV::KurganovTadmor::internal::compute_flux_derivatives_ad (const std::array< NumberType, n_components > &u, const std::array< dealii::Tensor< 1, dim, NumberType >, n_components > &grad_u, const dealii::Point< dim > &x_q, const double cell_width, const ExtractorArray &extractors, const VariableVector &variables, const Model &model)
 Compute F, dF/du, d2F/du2, dF/dgrad(u), and d2F/(du dgrad(u)) with second-order forward AD.
 
template<typename Model , typename NumberType , int dim, size_t n_components, typename ExtractorArray , typename VariableVector >
auto DiFfRG::FV::KurganovTadmor::internal::compute_flux_jacobian_and_hessian (const std::array< NumberType, n_components > &u, const dealii::Point< dim > &x_q, const double cell_width, const ExtractorArray &extractors, const VariableVector &variables, const Model &model)
 Backward-compatible state-only view of the full AD derivative extraction.