https://mooseframework.inl.gov
ADFParser.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 "MooseError.h"
13 #include "MooseTypes.h"
14 #include "ADReal.h"
15 #include "libmesh/fparser_ad.hh"
16 
17 class ADFParser : public FunctionParserAD
18 {
19 public:
20  ADFParser();
21  ADFParser(const ADFParser & cpy);
22 
23  bool JITCompile();
24 
25  Real Eval(const Real *) { mooseError("Not implemented."); }
26  ADReal Eval(const ADReal * Vars);
27 
28 protected:
29  const Real _epsilon;
30 };
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
ADFParser()
Definition: ADFParser.C:14
const Real _epsilon
Definition: ADFParser.h:29
DualNumber< Real, DNDerivativeType, true > ADReal
Definition: ADRealForward.h:47
bool JITCompile()
Definition: ADFParser.C:27
Real Eval(const Real *)
Definition: ADFParser.h:25
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real