https://mooseframework.inl.gov
MOOSEToNEML2.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "NEML2Utils.h"
13 #include "InputParameters.h"
14 
15 #ifdef NEML2_ENABLED
16 #include "neml2/models/Model.h"
17 #endif
18 
29 {
30 public:
32 
33  MOOSEToNEML2(const InputParameters & params);
34 
35 #ifdef NEML2_ENABLED
36  const std::string & NEML2Name() const { return _neml2_name; }
38 
40  virtual neml2::Tensor gatheredData() const = 0;
41 
43  void insertInto(std::map<std::string, neml2::Tensor> &) const;
44 
45 private:
47  const std::string _neml2_name;
48 #endif
49 };
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
const std::string _neml2_name
Name of the input variable or model parameter.
Definition: MOOSEToNEML2.h:47
void insertInto(std::map< std::string, neml2::Tensor > &) const
Insert the gathered data into the NEML2 material model.
Definition: MOOSEToNEML2.C:34
MOOSEToNEML2(const InputParameters &params)
Definition: MOOSEToNEML2.C:23
virtual neml2::Tensor gatheredData() const =0
Convert data gathered from MOOSE into neml2::Tensor.
Common interface for inserting gathered MOOSE data into the NEML2 material model. ...
Definition: MOOSEToNEML2.h:28
const std::string & NEML2Name() const
Name of the NEML2 variable/parameter.
Definition: MOOSEToNEML2.h:37
static InputParameters validParams()
Definition: MOOSEToNEML2.C:13