rb_parametrized.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_PARAMETRIZED_H
21 #define LIBMESH_RB_PARAMETRIZED_H
22 
23 // rbOOmit includes
24 #include "libmesh/rb_parameters.h"
25 
26 // libMesh includes
28 
29 // C++ includes
30 #include <vector>
31 
32 namespace libMesh
33 {
34 
43 // ------------------------------------------------------------
44 // RBParametrized class definition
45 class RBParametrized : public ReferenceCountedObject<RBParametrized>
46 {
47 public:
48 
52  RBParametrized ();
53 
57  virtual ~RBParametrized ();
58 
63  virtual void clear ();
64 
68  void initialize_parameters(const RBParameters& mu_min_in,
69  const RBParameters& mu_max_in,
70  const RBParameters& mu_in);
71 
75  void initialize_parameters(const RBParametrized& rb_parametrized);
76 
80  unsigned int get_n_params() const;
81 
85  const RBParameters& get_parameters() const;
86 
90  void set_parameters(const RBParameters& params);
91 
96  const RBParameters& get_parameters_min() const;
97 
102  const RBParameters& get_parameters_max() const;
103 
107  Real get_parameter_min(const std::string& param_name) const;
108 
112  Real get_parameter_max(const std::string& param_name) const;
113 
117  void print_parameters() const;
118 
122  void write_parameter_ranges_to_file(const std::string& file_name,
123  const bool write_binary);
124 
129  void read_parameter_ranges_from_file(const std::string& file_name,
130  const bool read_binary);
131 
136 
137 private:
138 
142  bool valid_params(const RBParameters& params);
143 
144  //--------------- PRIVATE DATA MEMBERS ---------------//
145 
150 
155 
161 
162 };
163 
164 } // namespace libMesh
165 
166 
167 #endif // LIBMESH_RB_PARAMETRIZED_H

Site Created By: libMesh Developers
Last modified: February 07 2014 16:57:07 UTC

Hosted By:
SourceForge.net Logo