libMesh
Loading...
Searching...
No Matches
rb_eim_theta.h
Go to the documentation of this file.
1// rbOOmit: An implementation of the Certified Reduced Basis method.
2// Copyright (C) 2009, 2010 David J. Knezevic
3
4// This file is part of rbOOmit.
5
6// rbOOmit is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 2.1 of the License, or (at your option) any later version.
10
11// rbOOmit is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15
16// You should have received a copy of the GNU Lesser General Public
17// License along with this library; if not, write to the Free Software
18// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
20#ifndef LIBMESH_RB_EIM_THETA_H
21#define LIBMESH_RB_EIM_THETA_H
22
23// rbOOmit includes
24#include "libmesh/rb_theta.h"
25
26// C++ includes
27
28namespace libMesh
29{
30
31class RBParameters;
32class RBEIMEvaluation;
33
42class RBEIMTheta : public RBTheta
43{
44public:
45
49 RBEIMTheta(RBEIMEvaluation & rb_eim_eval_in, unsigned int index_in);
50
56 RBEIMTheta (RBEIMTheta &&) = default;
57 RBEIMTheta (const RBEIMTheta &) = default;
58 RBEIMTheta & operator= (const RBEIMTheta &) = delete;
60 ~RBEIMTheta() = default;
61
67 virtual Number evaluate(const RBParameters & mu) override;
68
72 virtual std::vector<Number> evaluate_vec(const std::vector<RBParameters> & mus) override;
73
78
83 unsigned int index;
84};
85
86}
87
88#endif // LIBMESH_RB_EIM_THETA_H
This class enables evaluation of an Empirical Interpolation Method (EIM) approximation.
This class provides functionality required to define an RBTheta object that arises from an "Empirical...
RBEIMEvaluation & rb_eim_eval
The RBEIMEvaluation object that this RBEIMTheta is based on.
virtual Number evaluate(const RBParameters &mu) override
Evaluate this RBEIMTheta object at the parameter mu.
RBEIMTheta(const RBEIMTheta &)=default
RBEIMTheta & operator=(const RBEIMTheta &)=delete
virtual std::vector< Number > evaluate_vec(const std::vector< RBParameters > &mus) override
Evaluate this RBEIMTheta at all parameters in mus.
RBEIMTheta(RBEIMTheta &&)=default
Special functions.
unsigned int index
The index of the RB_solution vector that we pick out from rb_eim_eval to provide the value of the eva...
This class is part of the rbOOmit framework.
This class is part of the rbOOmit framework.
Definition rb_theta.h:47
The libMesh namespace provides an interface to certain functionality in the library.