SpECTRE  v2024.09.29
imex::protocols::ImplicitSourceJacobian Struct Reference

Protocol for the Jacobian of implicit source terms. More...

#include <ImplicitSourceJacobian.hpp>

Classes

struct  test
 

Detailed Description

Protocol for the Jacobian of implicit source terms.

A struct conforming to this protocol must also conform to protocols::StaticReturnApplyable. The return_tags of this struct must be a list of Tags::Jacobian tags for the dependence of the sector's Tags::Sources on the sector's tensors. Portions of the Jacobian that are zero may be omitted from the list.

The argument_tags must not include compute items depending on tensors in the implicit sector.

struct Jacobian : tt::ConformsTo<imex::protocols::ImplicitSourceJacobian>,
tt::ConformsTo<::protocols::StaticReturnApplyable> {
using return_tags =
tmpl::list<imex::Tags::Jacobian<Var2, ::Tags::Source<Var2>>,
using argument_tags =
tmpl::list<Var1, Var3, NonTensor, RecordPreparersForTest>;
static void apply(const gsl::not_null<tnsr::iiJJ<DataVector, 2>*> dvar2_dvar2,
const Scalar<DataVector>& var1,
const tnsr::I<DataVector, 2>& var3, const double non_tensor,
const RecordPreparersForTest::type& prep_run_values) {
Definition: ContractFirstNIndices.hpp:16
Require a pointer to not be a nullptr
Definition: Gsl.hpp:198
auto apply(F &&f, const ObservationBox< ComputeTagsList, DataBoxType > &observation_box, Args &&... args)
Apply the function object f using its nested argument_tags list of tags.
Definition: ObservationBox.hpp:238
Definition: Jacobian.hpp:23
Indicate a class conforms to the Protocol.
Definition: ProtocolHelpers.hpp:22

The documentation for this struct was generated from the following file: