73 params.set<
ExecFlagEnum>(
"execute_on") = execute_options;
96 const auto & elem_data = this->elemMOOSEData();
98 _buffer.push_back(elem_data[i]);
101 template <
typename T>
107 _buffer.insert(_buffer.end(), m2n._buffer.begin(), m2n._buffer.end());
110 template <
typename T>
A MultiMooseEnum object to hold "execute_on" flags.
std::vector< T > _buffer
Intermediate data buffer, filled during the element loop.
static InputParameters validParams()
void execute() override
Execute method.
Generic gatherer for collecting "batched" MOOSE data for NEML2.
neml2::Tensor gatheredData() const override
Convert data gathered from MOOSE into neml2::Tensor.
ExecFlagEnum getDefaultExecFlagEnum()
Return the default ExecFlagEnum for MOOSE.
virtual const MooseArray< T > & elemMOOSEData() const =0
MOOSE data for the current element.
static InputParameters validParams()
void threadJoin(const UserObject &) override
Must override.
MOOSEToNEML2Batched(const InputParameters ¶ms)
const ExecFlagType EXEC_LINEAR
void initialize() override
Called before execute() is ever called so that data can be cleared.
const ExecFlagType EXEC_NONLINEAR
Common interface for inserting gathered MOOSE data into the NEML2 material model. ...
static InputParameters validParams()
auto index_range(const T &sizable)
Base class for user-specific data.
neml2::Tensor fromBlob(const std::vector< T > &data)
Map from std::vector<T> to neml2::Tensor without copying the data.
void finalize() override
Finalize.
const ExecFlagType EXEC_INITIAL