|
Panzer Version of the Day
|
Abstract interface for scattering a functional response's derivative back into global sensitivity vectors. More...
#include <Panzer_ResponseScatterEvaluator_Functional.hpp>

Public Member Functions | |
| virtual | ~FunctionalScatterBase () |
| virtual void | scatterDerivative (const PHX::MDField< const panzer::Traits::Jacobian::ScalarT, panzer::Cell > &cellIntegral, panzer::Traits::EvalData workset, WorksetDetailsAccessor &wda, const std::vector< Teuchos::ArrayRCP< double > > &dgdx) const =0 |
| Accumulates dg/dx contributions from one workset's cell integrals into the global gradient vector(s). | |
| virtual void | scatterHessian (const PHX::MDField< const panzer::Traits::Hessian::ScalarT, panzer::Cell > &cellIntegral, panzer::Traits::EvalData workset, WorksetDetailsAccessor &wda, const std::vector< Teuchos::ArrayRCP< double > > &d2gdx2) const =0 |
| Accumulates d2g/dx2 contributions from one workset's cell integrals into the global Hessian-vector product(s). Only defined when built with Hessian support. | |
Abstract interface for scattering a functional response's derivative back into global sensitivity vectors.
ResponseScatterEvaluator_Functional computes a scalar functional integral per cell; a FunctionalScatterBase implementation is responsible for taking that per-cell integral's derivative (with respect to local solution unknowns) and accumulating it into the appropriate entries of the response's global gradient (dgdx) or, if enabled, Hessian-vector product (d2gdx2).
Definition at line 41 of file Panzer_ResponseScatterEvaluator_Functional.hpp.
|
inlinevirtual |
Definition at line 43 of file Panzer_ResponseScatterEvaluator_Functional.hpp.
|
pure virtual |
Accumulates dg/dx contributions from one workset's cell integrals into the global gradient vector(s).
| cellIntegral | per-cell functional integral for this workset, carrying Jacobian (first-derivative) sensitivities. |
| workset | the workset being processed. |
| wda | accessor used to pull cell/block details out of workset. |
| dgdx | one global gradient vector per global indexer (block), to be accumulated into. |
Implemented in panzer::FunctionalScatter< LO, GO >.
|
pure virtual |
Accumulates d2g/dx2 contributions from one workset's cell integrals into the global Hessian-vector product(s). Only defined when built with Hessian support.
| cellIntegral | per-cell functional integral for this workset, carrying Hessian (second-derivative) sensitivities. |
| workset | the workset being processed. |
| wda | accessor used to pull cell/block details out of workset. |
| d2gdx2 | one global Hessian-vector product vector per global indexer (block), to be accumulated into. |
Implemented in panzer::FunctionalScatter< LO, GO >.