libMesh
Loading...
Searching...
No Matches
rb_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_THETA_H
21#define LIBMESH_RB_THETA_H
22
23// Local includes
24#include "libmesh/libmesh_common.h"
25#include "libmesh/reference_counted_object.h"
26
27// C++ includes
28#include <vector>
29
30namespace libMesh
31{
32
33class RBParameters;
34
46class RBTheta : public ReferenceCountedObject<RBTheta>
47{
48public:
49
54 RBTheta () = default;
55 RBTheta (RBTheta &&) = default;
56 RBTheta (const RBTheta &) = default;
57 RBTheta & operator= (const RBTheta &) = default;
58 RBTheta & operator= (RBTheta &&) = default;
59 virtual ~RBTheta () = default;
60
66 virtual Number evaluate(const RBParameters &);
67
68 /*
69 * Evaluate the functor object for multiple given parameters simultaneously.
70 * Override to obtain problem-dependent behavior.
71 */
72 virtual std::vector<Number> evaluate_vec(const std::vector<RBParameters> & mus);
73};
74
75}
76
77#endif // LIBMESH_RB_THETA_H
This class is part of the rbOOmit framework.
This class is part of the rbOOmit framework.
Definition rb_theta.h:47
RBTheta(const RBTheta &)=default
RBTheta(RBTheta &&)=default
virtual Number evaluate(const RBParameters &)
Evaluate the functor object for the given parameter.
Definition rb_theta.C:28
RBTheta & operator=(const RBTheta &)=default
virtual std::vector< Number > evaluate_vec(const std::vector< RBParameters > &mus)
Definition rb_theta.C:40
virtual ~RBTheta()=default
RBTheta()=default
Special functions.
This class implements reference counting.
The libMesh namespace provides an interface to certain functionality in the library.