3D Beam Finite Element Code  1.0
options.h
Go to the documentation of this file.
1 // Copyright 2015. All rights reserved.
2 //
3 // Redistribution and use in source and binary forms, with or without
4 // modification, are permitted provided that the following conditions are met:
5 //
6 // * Redistributions of source code must retain the above copyright notice,
7 // this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above copyright notice,
9 // this list of conditions and the following disclaimer in the documentation
10 // and/or other materials provided with the distribution.
11 //
12 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
13 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
14 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15 // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
16 // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
17 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
18 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
19 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
20 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
21 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
22 // POSSIBILITY OF SUCH DAMAGE.
23 //
24 // Author: ryan.latture@gmail.com (Ryan Latture)
25 
26 #ifndef THREEDBEAMFEA_OPTIONS_H
27 #define THREEDBEAMFEA_OPTIONS_H
28 
29 #include <string>
30 
31 namespace fea {
35  struct Options {
42  Options() {
43  epsilon = 1e-14;
44 
45  csv_precision = 14;
46  csv_delimiter = ",";
47 
49  save_nodal_forces = false;
50  save_tie_forces = false;
51  verbose = false;
52  save_report = false;
53 
54  nodal_displacements_filename = "nodal_displacements.csv";
55  nodal_forces_filename = "nodal_forces.csv";
56  tie_forces_filename = "tie_forces.csv";
57  report_filename = "report.txt";
58  }
59 
64  double epsilon;
65 
70  unsigned int csv_precision;
71 
76  std::string csv_delimiter;
77 
83 
89 
95 
100  bool verbose;
101 
107 
112 
117 
121  std::string tie_forces_filename;
122 
126  std::string report_filename;
127 
128  };
129 
130 } // namespace fea
131 
132 #endif //THREEDBEAMFEA_OPTIONS_H
bool save_nodal_displacements
Definition: options.h:82
bool save_nodal_forces
Definition: options.h:88
std::string report_filename
Definition: options.h:126
std::string tie_forces_filename
Definition: options.h:121
bool verbose
Definition: options.h:100
unsigned int csv_precision
Definition: options.h:70
Provides a method for customizing the finite element analysis.
Definition: options.h:35
std::string nodal_forces_filename
Definition: options.h:116
double epsilon
Definition: options.h:64
bool save_tie_forces
Definition: options.h:94
bool save_report
Definition: options.h:106
std::string nodal_displacements_filename
Definition: options.h:111
std::string csv_delimiter
Definition: options.h:76
Options()
Default constructor.
Definition: options.h:42
Definition: containers.h:41