メインページ   クラス階層   構成   ファイル一覧   構成メンバ   ファイルメンバ  

DASPK-opts.h

解説を見る。
00001 // DO NOT EDIT!
00002 // Generated automatically from DASPK-opts.in.
00003 
00004 #if !defined (octave_DASPK_options_h)
00005 #define octave_DASPK_options_h 1
00006 
00007 #include <cfloat>
00008 #include <cmath>
00009 
00010 #include <DAE.h>
00011 
00012 
00013 class
00014 DASPK_options
00015 {
00016 public:
00017 
00018   DASPK_options (void) { init (); }
00019 
00020   DASPK_options (const DASPK_options& opt) { copy (opt); }
00021 
00022   DASPK_options& operator = (const DASPK_options& opt)
00023     {
00024       if (this != &opt)
00025         copy (opt);
00026 
00027       return *this;
00028     }
00029 
00030   ~DASPK_options (void) { }
00031 
00032   void init (void)
00033     {
00034       x_absolute_tolerance.resize (1);
00035       x_absolute_tolerance(0) = ::sqrt (DBL_EPSILON);
00036       x_relative_tolerance.resize (1);
00037       x_relative_tolerance(0) = ::sqrt (DBL_EPSILON);
00038       x_initial_condition_heuristics.resize (6);
00039       x_initial_condition_heuristics(0) = 5.0;
00040       x_initial_condition_heuristics(1) = 6.0;
00041       x_initial_condition_heuristics(2) = 5.0;
00042       x_initial_condition_heuristics(3) = 0.0;
00043       x_initial_condition_heuristics(4) = ::pow (DBL_EPSILON, 2.0/3.0);
00044       x_initial_condition_heuristics(5) = 0.01;
00045       x_algebraic_variables.resize (1);
00046       x_algebraic_variables(0) = 0;
00047       x_inequality_constraint_types.resize (1);
00048       x_inequality_constraint_types(0) = 0;
00049       x_initial_step_size = -1.0;
00050       x_maximum_order = 5;
00051       x_maximum_step_size = -1.0;
00052       reset = true;
00053     }
00054 
00055   void copy (const DASPK_options& opt)
00056     {
00057       x_absolute_tolerance = opt.x_absolute_tolerance;
00058       x_relative_tolerance = opt.x_relative_tolerance;
00059       x_compute_consistent_initial_condition = opt.x_compute_consistent_initial_condition;
00060       x_use_initial_condition_heuristics = opt.x_use_initial_condition_heuristics;
00061       x_initial_condition_heuristics = opt.x_initial_condition_heuristics;
00062       x_print_initial_condition_info = opt.x_print_initial_condition_info;
00063       x_exclude_algebraic_variables_from_error_test = opt.x_exclude_algebraic_variables_from_error_test;
00064       x_algebraic_variables = opt.x_algebraic_variables;
00065       x_enforce_inequality_constraints = opt.x_enforce_inequality_constraints;
00066       x_inequality_constraint_types = opt.x_inequality_constraint_types;
00067       x_initial_step_size = opt.x_initial_step_size;
00068       x_maximum_order = opt.x_maximum_order;
00069       x_maximum_step_size = opt.x_maximum_step_size;
00070       reset = opt.reset;
00071     }
00072 
00073   void set_options (const DASPK_options& opt) { copy (opt); }
00074 
00075   void set_default_options (void) { init (); }
00076 
00077   void set_absolute_tolerance (double val)
00078     {
00079       x_absolute_tolerance.resize (1);
00080       x_absolute_tolerance(0) = (val > 0.0) ? val : ::sqrt (DBL_EPSILON);
00081       reset = true;
00082     }
00083 
00084   void set_absolute_tolerance (const Array<double>& val)
00085     { x_absolute_tolerance = val; reset = true; }
00086 
00087   void set_relative_tolerance (double val)
00088     {
00089       x_relative_tolerance.resize (1);
00090       x_relative_tolerance(0) = (val > 0.0) ? val : ::sqrt (DBL_EPSILON);
00091       reset = true;
00092     }
00093 
00094   void set_relative_tolerance (const Array<double>& val)
00095     { x_relative_tolerance = val; reset = true; }
00096 
00097   void set_compute_consistent_initial_condition (int val)
00098     { x_compute_consistent_initial_condition = val; reset = true; }
00099 
00100   void set_use_initial_condition_heuristics (int val)
00101     { x_use_initial_condition_heuristics = val; reset = true; }
00102 
00103   void set_initial_condition_heuristics (const Array<double>& val)
00104     { x_initial_condition_heuristics = val; reset = true; }
00105 
00106   void set_print_initial_condition_info (int val)
00107     { x_print_initial_condition_info = val; reset = true; }
00108 
00109   void set_exclude_algebraic_variables_from_error_test (int val)
00110     { x_exclude_algebraic_variables_from_error_test = val; reset = true; }
00111 
00112   void set_algebraic_variables (int val)
00113     {
00114       x_algebraic_variables.resize (1);
00115       x_algebraic_variables(0) = val;
00116       reset = true;
00117     }
00118 
00119   void set_algebraic_variables (const Array<int>& val)
00120     { x_algebraic_variables = val; reset = true; }
00121 
00122   void set_enforce_inequality_constraints (int val)
00123     { x_enforce_inequality_constraints = val; reset = true; }
00124 
00125   void set_inequality_constraint_types (int val)
00126     {
00127       x_inequality_constraint_types.resize (1);
00128       x_inequality_constraint_types(0) = val;
00129       reset = true;
00130     }
00131 
00132   void set_inequality_constraint_types (const Array<int>& val)
00133     { x_inequality_constraint_types = val; reset = true; }
00134 
00135   void set_initial_step_size (double val)
00136     { x_initial_step_size = (val >= 0.0) ? val : -1.0; reset = true; }
00137 
00138   void set_maximum_order (int val)
00139     { x_maximum_order = val; reset = true; }
00140 
00141   void set_maximum_step_size (double val)
00142     { x_maximum_step_size = (val >= 0.0) ? val : -1.0; reset = true; }
00143   Array<double> absolute_tolerance (void) const
00144     { return x_absolute_tolerance; }
00145 
00146   Array<double> relative_tolerance (void) const
00147     { return x_relative_tolerance; }
00148 
00149   int compute_consistent_initial_condition (void) const
00150     { return x_compute_consistent_initial_condition; }
00151 
00152   int use_initial_condition_heuristics (void) const
00153     { return x_use_initial_condition_heuristics; }
00154 
00155   Array<double> initial_condition_heuristics (void) const
00156     { return x_initial_condition_heuristics; }
00157 
00158   int print_initial_condition_info (void) const
00159     { return x_print_initial_condition_info; }
00160 
00161   int exclude_algebraic_variables_from_error_test (void) const
00162     { return x_exclude_algebraic_variables_from_error_test; }
00163 
00164   Array<int> algebraic_variables (void) const
00165     { return x_algebraic_variables; }
00166 
00167   int enforce_inequality_constraints (void) const
00168     { return x_enforce_inequality_constraints; }
00169 
00170   Array<int> inequality_constraint_types (void) const
00171     { return x_inequality_constraint_types; }
00172 
00173   double initial_step_size (void) const
00174     { return x_initial_step_size; }
00175 
00176   int maximum_order (void) const
00177     { return x_maximum_order; }
00178 
00179   double maximum_step_size (void) const
00180     { return x_maximum_step_size; }
00181 
00182 private:
00183 
00184   Array<double> x_absolute_tolerance;
00185   Array<double> x_relative_tolerance;
00186   int x_compute_consistent_initial_condition;
00187   int x_use_initial_condition_heuristics;
00188   Array<double> x_initial_condition_heuristics;
00189   int x_print_initial_condition_info;
00190   int x_exclude_algebraic_variables_from_error_test;
00191   Array<int> x_algebraic_variables;
00192   int x_enforce_inequality_constraints;
00193   Array<int> x_inequality_constraint_types;
00194   double x_initial_step_size;
00195   int x_maximum_order;
00196   double x_maximum_step_size;
00197 
00198 protected:
00199 
00200   bool reset;
00201 };
00202 
00203 #endif

Wed Dec 29 11:51:07 2004に生成されました。 doxygen1.2.18
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送