Classes | |
| struct | Feel::vf::SymbolicDependencyReport |
| Report symbolic dependencies against an explicit candidate set. More... | |
| struct | Feel::vf::SymbolicDiagnosticSourceLocation |
| Stored source-location information for symbolic diagnostics. More... | |
| struct | Feel::vf::SymbolicDifferentiabilityReport |
| Report whether an expression can be differentiated with respect to a symbol. More... | |
| class | Feel::vf::SymbolicDifferentiationError |
| Exception used when symbolic differentiation is known to be unsupported. More... | |
Namespaces | |
| namespace | Feel |
| -*- mode: c++; coding: utf-8; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; show-trailing-whitespace: t -*- | |
Enumerations | |
| enum class | Feel::vf::SymbolicDifferentiationDiagnosticKind { None , MissingDependencyQuery , MissingDiffOperation , UnsupportedNativeFunctor , UnsupportedPiecewiseFunction , MissingDomainAssumption , Exception } |
| Symbolic differentiation diagnostic category. | |
Functions | |
| template<Feel::VfExpr ExprT> | |
| SymbolicDifferentiabilityReport | Feel::vf::describeDifferentiability (ExprT const &expr, std::string const &symbol) |
| Describe whether an expression differentiates with respect to a symbol. More... | |
| template<Feel::VfExpr ExprT> | |
| SymbolicDependencyReport | Feel::vf::describeSymbolicDependencies (ExprT const &expr, std::initializer_list< std::string > symbols) |
| Describe symbolic dependencies against an explicit candidate list. | |
| template<Feel::VfExpr ExprT> | |
| SymbolicDependencyReport | Feel::vf::describeSymbolicDependencies (ExprT const &expr, std::vector< std::string > const &symbols) |
| Describe symbolic dependencies against an explicit candidate list. | |
| SymbolicDifferentiationError | Feel::vf::details::missingDomainAssumptionForPower (std::string const &message, std::source_location const &location=std::source_location::current()) |
| Build a missing domain-assumption differentiation error. | |
| std::string | Feel::vf::toString (SymbolicDifferentiationDiagnosticKind kind) |
| Convert a symbolic differentiation diagnostic category to text. | |
| SymbolicDifferentiationError | Feel::vf::details::unsupportedPiecewiseDifferentiation (std::string const &functionKind, std::string const &functionName, std::source_location const &location=std::source_location::current()) |
| Build an unsupported piecewise or non-smooth function differentiation error. | |
| SymbolicDifferentiationError | Feel::vf::details::unsupportedSymbolicDifferentiation (std::string const &functorKind, std::string const &functorName, std::source_location const &location=std::source_location::current()) |
| Build an unsupported native functor symbolic differentiation error. | |
| SymbolicDifferentiabilityReport Feel::vf::describeDifferentiability | ( | ExprT const & | expr, |
| std::string const & | symbol | ||
| ) |
Describe whether an expression differentiates with respect to a symbol.
The function intentionally attempts the derivative when the public diff<1>(symbol) API is available. This makes runtime unsupported paths, such as native math functors without chain rules, visible to users and tests.