Classes
PartialDerivatives.hpp File Reference

Defines functions computing partial derivatives. More...

#include <array>
#include <cstddef>
#include <string>
#include "DataStructures/DataBox/DataBoxTag.hpp"
#include "DataStructures/Variables.hpp"
#include "Utilities/Requires.hpp"
#include "Utilities/TMPL.hpp"
#include "Utilities/TypeTraits.hpp"

Go to the source code of this file.

Classes

struct  deriv< Tag, Dim, Frame, typename >
 Prefix indicating spatial derivatives. More...
 
struct  deriv< Tag, Dim, Frame, Requires< tt::is_a_v< Tensor, db::item_type< Tag > > > >
 
struct  deriv< Tag, Dim, Frame, Requires< tt::is_a_v<::Variables, db::item_type< Tag > > > >
 
struct  Tags::DerivCompute< VariablesTag, InverseJacobianTag, DerivTags >
 Compute the spatial derivatives of tags in a Variables. More...
 

Functions

template<typename DerivativeTags , typename VariableTags , size_t Dim>
void logical_partial_derivatives (gsl::not_null< std::array< Variables< DerivativeTags >, Dim > *> logical_partial_derivatives_of_u, const Variables< VariableTags > &u, const Mesh< Dim > &mesh) noexcept
 Compute the partial derivatives of each variable with respect to the logical coordinate. More...
 
template<typename DerivativeTags , typename VariableTags , size_t Dim>
auto logical_partial_derivatives (const Variables< VariableTags > &u, const Mesh< Dim > &mesh) noexcept -> std::array< Variables< DerivativeTags >, Dim >
 Compute the partial derivatives of each variable with respect to the logical coordinate. More...
 
template<typename DerivativeTags , size_t Dim, typename DerivativeFrame >
void partial_derivatives (gsl::not_null< Variables< db::wrap_tags_in< Tags::deriv, DerivativeTags, tmpl::size_t< Dim >, DerivativeFrame >> *> du, const std::array< Variables< DerivativeTags >, Dim > &logical_partial_derivatives_of_u, const InverseJacobian< DataVector, Dim, Frame::Logical, DerivativeFrame > &inverse_jacobian) noexcept
 Compute the partial derivatives of each variable with respect to the coordinates of DerivativeFrame. More...
 
template<typename DerivativeTags , typename VariableTags , size_t Dim, typename DerivativeFrame >
void partial_derivatives (gsl::not_null< Variables< db::wrap_tags_in< Tags::deriv, DerivativeTags, tmpl::size_t< Dim >, DerivativeFrame >> *> du, const Variables< VariableTags > &u, const Mesh< Dim > &mesh, const InverseJacobian< DataVector, Dim, Frame::Logical, DerivativeFrame > &inverse_jacobian) noexcept
 Compute the partial derivatives of each variable with respect to the coordinates of DerivativeFrame. More...
 
template<typename DerivativeTags , typename VariableTags , size_t Dim, typename DerivativeFrame >
auto partial_derivatives (const Variables< VariableTags > &u, const Mesh< Dim > &mesh, const InverseJacobian< DataVector, Dim, Frame::Logical, DerivativeFrame > &inverse_jacobian) noexcept -> Variables< db::wrap_tags_in< Tags::deriv, DerivativeTags, tmpl::size_t< Dim >, DerivativeFrame >>
 Compute the partial derivatives of each variable with respect to the coordinates of DerivativeFrame. More...
 

Detailed Description

Defines functions computing partial derivatives.