Common class#
-
template<class T>
struct add_pointer# - #include <variant_lite.hpp>
Public Types
-
typedef remove_reference<T>::type *type#
-
typedef remove_reference<T>::type *type#
-
struct aligned_storage_t#
- #include <optional_lite.hpp>
Public Members
-
align_as_type data[1 + (sizeof(value_type) - 1) / sizeof(align_as_type)]#
-
align_as_type data[1 + (sizeof(value_type) - 1) / sizeof(align_as_type)]#
-
union aligned_storage_t#
Public Members
-
align_as_type data[1 + (data_size - 1) / sizeof(align_as_type)]#
-
align_as_type data[1 + (data_size - 1) / sizeof(align_as_type)]#
-
template<size_t A, size_t S>
struct alignment_logic# - #include <optional_lite.hpp>
Public Types
Values:
-
template<size_t A, size_t S>
struct alignment_logic# - #include <variant_lite.hpp>
Public Types
-
enum V#
Values:
-
enum V#
-
template<typename T>
struct alignment_of# - #include <optional_lite.hpp>
Public Types
Values:
-
enumerator value#
-
enumerator value#
-
template<typename T>
struct alignment_of# - #include <variant_lite.hpp>
-
template<typename T>
struct alignment_of_hack# - #include <optional_lite.hpp>
Public Functions
-
alignment_of_hack()#
-
alignment_of_hack()#
-
template<typename T>
struct alignment_of_hack# - #include <variant_lite.hpp>
Public Functions
-
alignment_of_hack()#
-
alignment_of_hack()#
-
class AsciiDocExporter : public tabulate::Exporter#
- #include <asciidoc_exporter.hpp>
Public Functions
-
inline virtual ~AsciiDocExporter()#
Private Functions
Private Static Attributes
-
static const char new_line = '\n'#
-
inline virtual ~AsciiDocExporter()#
-
class CellIterator#
- #include <column.hpp>
Public Functions
-
inline CellIterator operator++()#
-
inline bool operator!=(const CellIterator &other) const#
-
inline CellIterator operator++()#
-
class CellIterator#
- #include <row.hpp>
Public Functions
-
inline CellIterator operator++()#
-
inline bool operator!=(const CellIterator &other) const#
-
inline CellIterator operator++()#
-
class Column#
- #include <column.hpp>
Public Functions
-
inline size_t size() const#
-
inline ColumnFormat format()#
-
inline auto begin() -> CellIterator#
-
inline auto end() -> CellIterator#
Private Functions
-
inline size_t get_configured_width()#
-
inline size_t get_computed_width()#
-
inline size_t get_cell_width(size_t cell_index)#
Private Members
-
std::weak_ptr<class TableInternal> parent_#
Friends
- friend class ColumnFormat
- friend class Printer
-
inline size_t size() const#
-
class ColumnFormat : public tabulate::Format#
- #include <column_format.hpp>
Public Functions
-
inline ColumnFormat &width(size_t value)#
-
inline ColumnFormat &height(size_t value)#
-
inline ColumnFormat &padding(size_t value)#
-
inline ColumnFormat &padding_left(size_t value)#
-
inline ColumnFormat &padding_right(size_t value)#
-
inline ColumnFormat &padding_top(size_t value)#
-
inline ColumnFormat &padding_bottom(size_t value)#
-
inline ColumnFormat &border(const std::string &value)#
-
inline ColumnFormat &border_color(Color value)#
-
inline ColumnFormat &border_background_color(Color value)#
-
inline ColumnFormat &border_left(const std::string &value)#
-
inline ColumnFormat &border_left_color(Color value)#
-
inline ColumnFormat &border_left_background_color(Color value)#
-
inline ColumnFormat &border_right(const std::string &value)#
-
inline ColumnFormat &border_right_color(Color value)#
-
inline ColumnFormat &border_right_background_color(Color value)#
-
inline ColumnFormat &border_top(const std::string &value)#
-
inline ColumnFormat &border_top_color(Color value)#
-
inline ColumnFormat &border_top_background_color(Color value)#
-
inline ColumnFormat &border_bottom(const std::string &value)#
-
inline ColumnFormat &border_bottom_color(Color value)#
-
inline ColumnFormat &border_bottom_background_color(Color value)#
-
inline ColumnFormat &corner(const std::string &value)#
-
inline ColumnFormat &corner_color(Color value)#
-
inline ColumnFormat &corner_background_color(Color value)#
-
inline ColumnFormat &column_separator(const std::string &value)#
-
inline ColumnFormat &column_separator_color(Color value)#
-
inline ColumnFormat &column_separator_background_color(Color value)#
-
inline ColumnFormat &font_align(FontAlign value)#
-
inline ColumnFormat &font_style(const std::vector<FontStyle> &style)#
-
inline ColumnFormat &font_color(Color value)#
-
inline ColumnFormat &font_background_color(Color value)#
-
inline ColumnFormat &color(Color value)#
-
inline ColumnFormat &background_color(Color value)#
-
inline ColumnFormat &multi_byte_characters(bool value)#
-
inline ColumnFormat &locale(const std::string &value)#
-
inline ColumnFormat &width(size_t value)#
-
template<class Variant>
struct Comparator# - #include <variant_lite.hpp>
-
template<bool B, typename T, typename F>
struct conditional# - #include <optional_lite.hpp>
-
template<bool Cond, class Then, class Else>
struct conditional#
-
template<typename T, typename F>
struct conditional<false, T, F># - #include <optional_lite.hpp>
-
template<class Then, class Else>
struct conditional<false, Then, Else># - #include <variant_lite.hpp>
-
template<class Then, class Else>
struct conditional<true, Then, Else># - #include <variant_lite.hpp>
-
struct energy_type#
- #include <openfdem_general.h>
Public Functions
-
inline energy_type()#
Public Members
-
inline energy_type()#
-
class Exporter#
- #include <exporter.hpp>
Subclassed by tabulate::AsciiDocExporter, tabulate::LatexExporter, tabulate::MarkdownExporter
-
class ExportOptions#
- #include <latex_exporter.hpp>
Public Functions
-
inline ExportOptions &indentation(std::size_t value)#
Private Members
-
optional<size_t> indentation_#
Friends
- friend class LatexExporter
-
inline ExportOptions &indentation(std::size_t value)#
-
class Format#
- #include <format.hpp>
Subclassed by tabulate::ColumnFormat
Public Functions
Public Static Functions
-
static inline std::string word_wrap(const std::string &str, size_t width, const std::string &locale, bool is_multi_byte_character_support_enabled)#
Private Functions
-
inline void set_defaults()#
Private Members
-
optional<size_t> width_ = {}#
-
optional<size_t> height_ = {}#
-
optional<size_t> padding_left_ = {}#
-
optional<size_t> padding_top_ = {}#
-
optional<size_t> padding_right_ = {}#
-
optional<size_t> padding_bottom_ = {}#
-
optional<bool> show_border_top_ = {}#
-
optional<bool> show_border_bottom_ = {}#
-
optional<bool> show_border_left_ = {}#
-
optional<bool> show_border_right_ = {}#
-
optional<bool> multi_byte_characters_ = {}#
Private Static Functions
Friends
- friend class Cell
- friend class Row
- friend class Column
- friend class TableInternal
- friend class Printer
- friend class MarkdownExporter
- friend class LatexExporter
- friend class AsciiDocExporter
-
static inline std::string word_wrap(const std::string &str, size_t width, const std::string &locale, bool is_multi_byte_character_support_enabled)#
-
struct General_structure#
- #include <openfdem_general.h>
Public Members
-
char RunTime[Openfdem_ARGC_LENGTH] = "\0"#
-
char InputFileName[Openfdem_ARGC_LENGTH] = "\0"#
-
char save_path[Openfdem_ARGC_LENGTH] = "\0"#
-
char save_filename[Openfdem_ARGC_LENGTH] = "\0"#
-
FILE *inputfile = nullptr#
-
FILE *logfile = nullptr#
-
FILE *FilePointer[Openfdem_FILE_LIMIT]#
-
short FileID = 0#
-
bool useSolveMode = false#
-
bool debug = true#
-
bool is_save_results = false#
-
bool save_flag = false#
-
bool update_dt = false#
-
bool fixeddt = false#
-
bool check_dt = false#
-
bool useFastMode = false#
-
bool usrdefined_dt = false#
-
energy_type energy#
-
solver_base solver#
-
config config_type = config::PLANESTRESS#
-
char RunTime[Openfdem_ARGC_LENGTH] = "\0"#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
struct helper# - #include <variant_lite.hpp>
Public Types
-
typedef signed char type_index_t#
Public Functions
- typedef variant_TL16 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) variant_types
Public Static Functions
-
static inline type_index_t to_index_t(std::size_t index)#
-
static inline void destroy(type_index_t index, void *data)#
-
static inline type_index_t copy_construct(type_index_t const from_index, const void *from_value, void *to_value)#
-
static inline type_index_t copy_assign(type_index_t const from_index, const void *from_value, void *to_value)#
-
typedef signed char type_index_t#
-
template<std::size_t K>
struct in_place_index_tag# - #include <optional_lite.hpp>
-
struct in_place_t#
- #include <optional_lite.hpp>
-
template<class T>
struct in_place_type_tag# - #include <optional_lite.hpp>
-
struct init#
- #include <optional_lite.hpp>
-
struct Keywords#
- #include <openfdem_struct.h>
-
class LatexExporter : public tabulate::Exporter#
- #include <latex_exporter.hpp>
Private Members
-
ExportOptions options_#
Private Static Attributes
-
static const char new_line = '\n'#
-
ExportOptions options_#
-
class Logger#
- #include <logger.h>
Logger class used by OOFEM to print information during analysis. Prints warnings and errors into a separate stream from normal output.
Public Types
Public Functions
-
Logger(logLevelType level)#
-
~Logger()#
-
void appendErrorTo(const std::string &fname)#
Redirects error output to given file name (with path).
-
void appendLogTo(FILE *stream)#
Redirects log output to given stream.
-
void appendErrorTo(FILE *stream)#
Redirects error output to given stream.
-
void writeLogMsg(logLevelType level, const char *format, ...)#
Writes the normal log message.
-
void writeELogMsg(logLevelType level, const char *_func, const char *_file, int _line, const char *format, ...)#
Writes extended log message with file and line info.
-
void writeExitMsg(const char *_func, const char *_file, int _line)#
Writes exit information.
-
void writeImplementLogMsg(const char *_func, const char *_file, int _line)#
write information to be implemented
-
inline void flush()#
Flushes the log stream.
-
inline void setLogLevel(logLevelType level)#
Sets log level to given one. Only log messages with level less or equal given threshold will be printed.
-
void setLogLevel(int level)#
Sets log level to given one. Only log messages with level less or equal given threshold will be printed.
-
inline void incrementErrorCounter()#
Increment error count by one.
-
void printStatistics()#
Prints number of errors and warning logged.
Protected Functions
-
const char *giveLevelName(logLevelType l) const#
Protected Attributes
-
FILE *logStream#
Stream used for logging.
-
FILE *errStream#
-
bool closeFlag#
flag indicating whether to close mylogStream.
-
bool errCloseFlag#
-
logLevelType logLevel#
Current log level, messages with higher level are not reported.
-
int numberOfWrn#
Counter of all warning and error messages.
-
int numberOfErr#
-
Logger(logLevelType level)#
-
class MarkdownExporter : public tabulate::Exporter#
- #include <markdown_exporter.hpp>
Public Functions
-
inline virtual ~MarkdownExporter()#
Private Functions
-
inline virtual ~MarkdownExporter()#
-
class Matrix#
- #include <openfdem_matrix.h>
Class : dynamic Matrix (Real), it is used to create dynamic matrix assigned by the user according to the row and coloumn of the matrix
Used to manage Matrix The matrix is a dynamic matrix composed by _rows x _cols, 2 x 2 matrix should use the specific type: Matrix2.
Public Functions
-
Matrix(const Int = 2, const Int = 2, const Real = 0.0)#
Constructor to create a 2x2 matrix with initial value 0.0.
- Attention
The matrix class will generate dynamic memory
-
Matrix(Int rows, Int cols, Real firstValue, Real secondValue, ...)#
constructor by several arguments input.
- Parameters:
rows –
cols –
firstValue –
secondValue –
- Param :
-
~Matrix()#
deconstructor.
-
void desallocate()#
freeup the dynamic memory.
-
inline Real &operator()(Int row, Int coloumn)#
return the matrix compoment. matrix(0,2)
- Parameters:
row –
coloumn –
- Returns:
-
Matrix &operator=(const Real &val)#
set the matrix equals to a double value. M = a;
- Parameters:
val –
- Returns:
-
Matrix &operator=(const Matrix&)#
set the matrix equals to another matrix. two matrixs should have the same dimension, otherwise resize
M = N;
return
- Param :
-
void operator*=(const Real&)#
element-wise multiply and store the new value in this matrix.
M = M * a;
- Param :
-
bool operator!=(const Matrix&) const#
identify the bool between two matrixs. return true when M != N; otherwise false
return
- Param :
-
Real doubleProduct() const#
This method defines a Real contracted product of two second order tensors. The result of this operation is a scalar defined by:
\[ s = A : B \]s = T : U = T.ij * U.ji Example :Tensor tensor1,tensor2; Real s; s = tensor1.doubleProduct(tensor2); // Real contracted product
tensor2 Second second order tensor to use for the operation
- Returns:
-
Real getAverageTrace() const#
This method calculates the average of the trace of a square matrix Return: value of the average of the trace of the matrix. s = M.trace / row
- Returns:
-
inline Real operator()(Int row, Int coloumn) const#
return the compoment of the matrix.
param
- Param :
- Returns:
-
Matrix getSkewSymetricPart() const#
This method extracts the anti-symmetric part of a matrix and returns it
Warning
This method is only available for matrices of size 2 and 3. Return: anti-symmetric part of the matrix.
- Returns:
-
Matrix getSymetricPart() const#
This method extracts the symmetric part of a matrix and returns it
Warning
This method is only available for matrices of size 2 and 3. Return: symmetric part of the matrix.
- Returns:
-
Matrix operator*(const Real&) const#
multiply a value and return a new matrix. A = M * c
return
- Param :
-
void computeInverse2x2(Real det, Matrix &inverse) const#
return the inverse matrix of 2x2 matrix.
- Parameters:
det –
inverse –
-
void computeInverse3x3(Real det, Matrix &inverse) const#
return the inverse matrix of a 3x3 matrix and out the reuslt in a dynamic matrix
- Parameters:
det –
inverse –
-
void computeInverse2x2(Real det, Matrix2 &inverse) const#
return the inverse matrix of a 3x3 matrix and ouput the result in a 3x3 matrix.
- Parameters:
det –
inverse –
-
void setToUnity()#
set the matrix to unit matrix.
-
Matrix(const Int = 2, const Int = 2, const Real = 0.0)#
-
class Matrix2#
- #include <openfdem_matrix2x2.h>
Class : Matrix2 (Real) Used to manage Matrix2 The matrix is a fixed matrix composed by _rows x _cols, 2 x 2 matrix should use the specific type .
Public Functions
-
~Matrix2()#
-
inline Real &operator()(Int row, Int coloumn)#
return the compoment of M(i,j).
- Parameters:
row –
coloumn –
- Returns:
-
Matrix2 &operator=(const Real &val)#
set the matrix equals to a double value. M = a;
- Parameters:
val –
- Returns:
-
Matrix2 &operator=(const Matrix2&)#
set the matrix equals to another matrix. two matrixs should have the same dimension, otherwise resize
M = N;
return
- Param :
-
Matrix2 &operator=(const Real array[2][2])#
set the matrix equals to another matrix. two matrixs should have the same dimension, otherwise resize
M = N;
return
- Param :
-
void operator*=(const Real&)#
element-wise multiply and store the new value in this matrix.
M = M * a;
- Param :
-
inline void addby(const Matrix2&, const Matrix2&)#
get the matrix from two matrixs. this = A + B
param
- Param :
-
inline bool indexCheck(Int row, Int coloumn) const#
check the index of the matrix.
param
- Param :
- Returns:
-
bool operator!=(const Matrix2&) const#
identify the bool between two matrixs. return true when M != N; otherwise false
return
- Param :
-
Real doubleProduct() const#
This method defines a Real contracted product of two second order tensors. The result of this operation is a scalar defined by:
\[ s = A : B \]s = T : U = T.ij * U.ji Example :Tensor tensor1,tensor2; Real s; s = tensor1.doubleProduct(tensor2); // Real contracted product
tensor2 Second second order tensor to use for the operation
- Returns:
-
Real getAverageTrace() const#
This method calculates the average of the trace of a square matrix Return: value of the average of the trace of the matrix. s = M.trace / row
- Returns:
-
void getTransposefrom(const Matrix2 &matrix)#
compute the transpose of existed matrix and store the result in current matrix.
- Parameters:
matrix –
-
Matrix2 operator*(const Real&) const#
multiply a value and return a new matrix. A = M * c
return
- Param :
-
Matrix2 operator*(const Matrix2&) const#
multiply a matrix and return a new 2x2 matrix.
return
- Param :
-
Vector2 operator*(const Vector2&) const#
multiply a vector and return a vector. v = M * vc
return
- Param :
-
Matrix2 operator/(const Real&) const#
divid a value and return a new matrix. A = M /c
return
- Param :
-
void computeInverse(Real det, Matrix2 &inverse) const#
return the inverse matrix of a 3x3 matrix and out the reuslt in a matrix
- Parameters:
det –
inverse –
-
void setToUnity()#
set the matrix to unit matrix.
-
void setToZero()#
set the matrix an assigned value.
- Param :
-
void addI()#
Private Members
- friend Matrix
-
~Matrix2()#
-
class model : public OpenFdemAbstract#
- #include <openfdem_base.h>
Public Functions
-
inline model()#
-
inline ~model()#
-
void initialize(Openfdem openfdem)#
model initialization to set memory of the main structres. the classes will be constructered automatically and double-checked at this step.
- Parameters:
openfdem –
-
void setenvironment(Openfdem openfdem, int argc, char **argv)#
set a new environment for the model.
- Parameters:
openfdem –
argc –
argv –
-
inline model()#
-
struct model_t#
- #include <openfdem_general.h>
Public Functions
-
inline model_t()#
Public Members
-
bool has_mazars = false#
-
bool has_JH2 = false#
-
bool has_Yang = false#
-
bool has_TCK = false#
-
bool has_dfb = false#
-
bool has_plastic = false#
-
bool has_viscous = false#
-
bool has_JWL = false#
-
bool has_nonlocal = false#
-
bool has_cohesive = false#
-
bool has_phasefield = false#
-
bool use_largedeformation = false#
-
bool has_contact = true#
-
bool has_blast = false#
-
bool has_dynamic = false#
-
bool has_thermal = false#
-
bool has_hydro = false#
-
bool has_remesh = false#
-
bool has_AMR = false#
-
bool has_AMRdynamic = false#
-
bool has_GBM = false#
-
bool has_mmg = false#
-
bool has_quadratic = false#
-
bool has_extrinsic = false#
-
bool has_rigid = false#
-
bool has_deformable = false#
-
bool has_particle = false#
-
bool has_mpm = false#
-
bool usedu = false#
-
bool gravityzero = true#
-
bool has_dynamicCZM = false#
-
bool useConnect = false#
-
bool has_hetCZM = false#
-
inline model_t()#
-
class monostate#
- #include <variant_lite.hpp>
-
struct nullopt_t#
- #include <optional_lite.hpp>
disengaged state tag
Public Functions
- inline explicit optional_constexpr nullopt_t (init) optional_noexcept
-
struct nulltype#
- #include <optional_lite.hpp>
-
struct nulltype#
- #include <variant_lite.hpp>
-
class OpenFdemAbstract#
- #include <openfdem_abstract.h>
Subclassed by ns_common::OpenFDEMTools
-
class OpenFDEMchrono#
- #include <openfdem_chrono.h>
-
class OpenFDEMmanager#
- #include <openfdem_manager.h>
Public Static Functions
-
static inline void usehelp(char *prog)#
Print help for common options of the 3 codes (first section).
- Parameters:
*prog – pointer toward the program name.
-
static inline bool checkLicense()#
-
static inline void foldercfg(int argc, char **argv, char *inputFileFullPath, char *inputFileWithSuffix, char *inputFileName, General general)#
-
static inline void printversion()#
-
static inline void printCopyrightPage()#
-
static inline void writepage(FILE *fileptr)#
-
static inline void usehelp(char *prog)#
-
class OpenFDEMmessage#
- #include <openfdem_message.h>
Public Static Functions
-
static inline void Runtime_message(const char *c1)#
print a string to screen.
Runtime_message("exit with error."); => exit with error.\n
- Parameters:
c1 –
-
static inline void RuntimeInfo(const char *c1)#
print a string to screen.
Runtime_message("exit with error."); =>Info :exit with error.\n
- Parameters:
c1 –
-
static inline void Runtime_strformat(const char *c1)#
print a formated string to screen.
Runtime_strformat("exit with error."); =>Info :exit with error.\n
- Parameters:
c1 –
-
static inline void RuntimeKeywordError(const char *s1, int i1)#
print error message for keword parsing.
RuntimeKeywordError("geometry",12) =>Info :Error: unknow keyword [geometry] at line [12]. \n
- Parameters:
s1 –
i1 –
-
static inline void RuntimeStringIntStringInt(const char *s1, int i1, const char *s2, int i2)#
-
static inline void RuntimeStringtoFile(FILE *fileptr, const char *c1)#
print a string to file.
Runtime_message("exit with error."); =< exit with error.\n
- Parameters:
c1 –
-
static inline void RuntimebackStringString(const char *c1, const char *c2)#
print a sentence composed by two strings.
RuntimebackStringString("geometry group is","rock.") =>Info : geometry group is [rock]. \n
- Parameters:
c1 –
c2 –
-
static inline void RuntimeIntStringString(int n1, const char *c1, const char *c2)#
print a sentence composed by two strings.
RuntimebackStringString("mesh.msh"," file is imported.") =>Info : [mesh.msh] file is imported. \n \param c1 \param c2 / static void RuntimefrontStringString(const char* c1, const char* c2) // print message out to screen { printf("Info :"); writeCharValue(stdout, "["); writeCharValue(stdout, c1); writeCharValue(stdout, "] "); writeCharValue(stdout, c2); writeCharValue(stdout, "\n"); }
- Parameters:
n1 –
c1 –
c2 –
-
static inline void RuntimeStringInt(const char *c1, int c2)#
print a sentence composed by a string and integer.
RuntimeStringInt("The count of node in the model is ","2300") =>Info : The count of node in the model is [2300]. \n
- Parameters:
c1 –
c2 –
-
static inline void RuntimeStringReal(const char *c1, double c2)#
print a sentence composed by a string and double value.
RuntimeStringReal("The stiffness of the rock is ","1.2e9") =>Info : The stiffness of the rock is [1.2e9]. \n
- Parameters:
c1 –
c2 –
-
static inline void RuntimeIntString(int c2, const char *c1)#
print a sentence composed by a integer and a string.
RuntimeStringReal("20","nodes are added in the model.") =>Info : [20] nodes are added in the model. \n
- Parameters:
c1 –
c2 –
-
static inline void RuntimeStringIntString(const char *s1, int c2, const char *s2)#
print a sentence composed by a string, integer and a string.
RuntimeStringReal("Congratulation,","20","nodes are added in the model.") =>Info :Congratulation, [20] nodes are added in the model. \n
- Parameters:
s1 –
c2 –
s2 –
-
static inline void RuntimeStringStringString(const char *s1, const char *c2, const char *s2)#
print a sentence composed by a string, integer and a string.
RuntimeStringReal("Congratulation,","20","nodes are added in the model.") =>Info :Congratulation, [20] nodes are added in the model. \n
- Parameters:
s1 –
c2 –
s2 –
-
static inline void Runtime_writelogs(FILE *checkfile, const char *keyword)#
write parsing log to log file.
- Parameters:
checkfile –
keyword –
-
static inline void Runtime_message(const char *c1)#
-
class OpenFDEMTools : public ns_common::OpenFdemAbstract#
- #include <openfdem_tools.h>
-
template<typename T>
class optional# - #include <optional_lite.hpp>
class optional
optional access error
optional
Public Functions
- inline optional_constexpr optional () optional_noexcept
- inline optional_constexpr optional (nullopt_t) optional_noexcept
-
inline optional(value_type const &value)#
-
inline ~optional()#
- inline optional & operator= (nullopt_t) optional_noexcept
- inline optional_constexpr value_type const * operator-> () const
- inline optional_constexpr14 value_type * operator-> ()
- inline optional_constexpr value_type const & operator* () const optional_ref_qual
- inline optional_constexpr14 value_type & operator* () optional_ref_qual
- inline optional_constexpr operator safe_bool () const optional_noexcept
- inline optional_constexpr bool has_value () const optional_noexcept
- inline optional_constexpr14 value_type const & value () const optional_ref_qual
- inline optional_constexpr14 value_type & value () optional_ref_qual
- template<typename U> inline optional_constexpr value_type value_or (U const &v) const
- inline void reset () optional_noexcept
Private Functions
-
inline void this_type_does_not_support_comparisons() const#
Friends
- friend class optional
-
class Printer#
- #include <printer.hpp>
Public Static Functions
-
static inline std::pair<std::vector<size_t>, std::vector<size_t>> compute_cell_dimensions(TableInternal &table)#
-
static inline void print_table(std::ostream &stream, TableInternal &table)#
-
static inline void print_row_in_cell(std::ostream &stream, TableInternal &table, const std::pair<size_t, size_t> &index, const std::pair<size_t, size_t> &dimension, size_t num_columns, size_t row_index)#
-
static inline bool print_cell_border_top(std::ostream &stream, TableInternal &table, const std::pair<size_t, size_t> &index, const std::pair<size_t, size_t> &dimension, size_t num_columns)#
-
static inline bool print_cell_border_bottom(std::ostream &stream, TableInternal &table, const std::pair<size_t, size_t> &index, const std::pair<size_t, size_t> &dimension, size_t num_columns)#
Private Static Functions
-
static inline void print_content_left_aligned(std::ostream &stream, const std::string &cell_content, const Format &format, size_t text_with_padding_size, size_t column_width)#
-
static inline void print_content_center_aligned(std::ostream &stream, const std::string &cell_content, const Format &format, size_t text_with_padding_size, size_t column_width)#
-
static inline std::pair<std::vector<size_t>, std::vector<size_t>> compute_cell_dimensions(TableInternal &table)#
-
template<class T>
struct remove_const# - #include <variant_lite.hpp>
-
template<class T>
struct remove_const<const T># - #include <variant_lite.hpp>
-
template<class T>
struct remove_cv# - #include <variant_lite.hpp>
Public Types
-
typedef remove_volatile<typenameremove_const<T>::type>::type type#
-
typedef remove_volatile<typenameremove_const<T>::type>::type type#
-
template<class T>
struct remove_reference# - #include <variant_lite.hpp>
-
template<class T>
struct remove_reference<T&># - #include <variant_lite.hpp>
-
template<class T>
struct remove_volatile# - #include <variant_lite.hpp>
-
template<class T>
struct remove_volatile<volatile T># - #include <variant_lite.hpp>
-
class Row#
- #include <row.hpp>
Public Functions
-
inline size_t size() const#
-
inline auto begin() -> CellIterator#
-
inline auto end() -> CellIterator#
Private Functions
-
inline size_t get_configured_height()#
-
inline size_t get_cell_height(size_t cell_index, size_t column_width)#
Private Members
-
std::weak_ptr<class TableInternal> parent_#
Friends
- friend class Printer
-
inline size_t size() const#
-
class RowIterator#
- #include <table.hpp>
Public Functions
-
inline RowIterator operator++()#
-
inline bool operator!=(const RowIterator &other) const#
-
inline RowIterator operator++()#
-
class RuntimeException : public std::exception#
- #include <openfdem_error.h>
-
struct S0#
- #include <variant_lite.hpp>
-
struct S1#
- #include <variant_lite.hpp>
-
struct S10#
- #include <variant_lite.hpp>
-
struct S11#
- #include <variant_lite.hpp>
-
struct S12#
- #include <variant_lite.hpp>
-
struct S13#
- #include <variant_lite.hpp>
-
struct S14#
- #include <variant_lite.hpp>
-
struct S15#
- #include <variant_lite.hpp>
-
struct S2#
- #include <variant_lite.hpp>
-
struct S3#
- #include <variant_lite.hpp>
-
struct S4#
- #include <variant_lite.hpp>
-
struct S5#
- #include <variant_lite.hpp>
-
struct S6#
- #include <variant_lite.hpp>
-
struct S7#
- #include <variant_lite.hpp>
-
struct S8#
- #include <variant_lite.hpp>
-
struct S9#
- #include <variant_lite.hpp>
-
struct solver_base#
- #include <openfdem_general.h>
Public Functions
-
inline solver_base()#
-
inline solver_base()#
-
union storage_t#
- #include <optional_lite.hpp>
C++03 constructed union to hold value.
Public Types
-
typedef T value_type#
Public Functions
- inline storage_t () optional_is_default explicit storage_t(value_type const &v)
-
inline void construct_value(value_type const &v)#
-
inline void destruct_value()#
- inline optional_nodiscard value_type const * value_ptr () const
-
inline value_type *value_ptr()#
- inline optional_nodiscard value_type const & value () const optional_ref_qual
- inline value_type & value () optional_ref_qual
- typedef optional_ALIGN_AS (value_type) align_as_type
- inline optional_nodiscard void * ptr () optional_noexcept
- inline optional_nodiscard void const * ptr () const optional_noexcept
- template<typename U> inline optional_nodiscard U * as ()
- template<typename U> inline optional_nodiscard U const * as () const
Public Members
-
aligned_storage_t data#
-
typedef T value_type#
-
class String : public std::string#
- #include <openfdem_string.h>
Public Functions
-
String()#
-
String(const char*)#
-
~String()#
-
bool contains(char c, int = 0) const#
-
bool empty() const#
-
bool ok() const#
-
bool scanFileLine(FILE*)#
-
char firstchar() const#
-
char lastchar() const#
-
const char *chars() const#
-
double getReal() const#
-
int search(char c, int = 0) const#
-
long getInt() const#
-
void remove(char, int = 0)#
-
void remove(int, int)#
-
void fromFile(FILE*)#
-
void lowerCase()#
-
void strip()#
-
void toFile(FILE*)#
-
void upperCase()#
-
String()#
-
template<typename T>
struct struct_t# - #include <optional_lite.hpp>
-
template<typename T>
struct struct_t# - #include <variant_lite.hpp>
-
class Table#
- #include <table.hpp>
Public Functions
-
inline Table()#
-
inline auto begin() -> RowIterator#
-
inline auto end() -> RowIterator#
-
inline Table()#
-
class TableInternal : public std::enable_shared_from_this<TableInternal>#
- #include <table_internal.hpp>
Public Static Functions
-
static inline std::shared_ptr<TableInternal> create()#
Private Functions
-
inline TableInternal()#
-
TableInternal &operator=(const TableInternal&)#
-
TableInternal(const TableInternal&)#
Friends
- friend class Table
- friend class MarkdownExporter
-
static inline std::shared_ptr<TableInternal> create()#
-
class Tensor#
- #include <openfdem_tensor.h>
Class : Tensor (Real) Used to manage Tensor The second order tensor is constructured as xx, xy, null yx, yy, null null, null, zz
Public Functions
-
Tensor()#
constructor.
-
Tensor(Real, Real, Real, Real, Real)#
constructor by input compoments.
param
param
param- Param :
- Param :
- Param :
-
~Tensor()#
-
inline Real &operator()(Int, Int)#
return the compoment of T(i,j).
- Parameters:
row –
coloumn –
- Returns:
-
inline Real &operator[](Int)#
operator to directly get the compoment using [].
- Parameters:
i –
- Returns:
-
Tensor &operator=(const Matrix2 &matrix)#
build a tensor from 2x2 matrix, whereas zz is 0.0.
- Parameters:
matrix –
- Returns:
-
inline void operator=(const Real tensor[2][2])#
build a tensor from 2x2 array, zz is initialized to 0.0.
- Parameters:
tensor –
- Returns:
-
Real doubleProduct() const#
-
:Double contracted product of a second order tensor by itself.
This method defines a Real contracted product of a second order tensor by itself. The result of this operation is a scalar defined by: \begin{equation*} s = \A : \A = \sum_{i=1}^{3} \sum_{j=1}^{3} A_{ij}\times A_{ij} \end{equation*} where $\A$ is a second order tensor.
- Returns:
-
Real doubleProduct(const Tensor&) const#
:Tensor::doubleProduct(Tensor)
:Double contracted product of 2 second order tensors.
This method defines a Real contracted product of two second order tensors. The result of this operation is a scalar defined by: \begin{equation*} s = \A : \B = \sum_{i=1}^{3} \sum_{j=1}^{3} A_{ij}\times B_{ij} \end{equation*} where $\A$ and $\B$ are two second order tensors.
return
- Param :
-
inline Real getDeterminant() const#
get the determinant of the tensor, the zz compoment is ignored.
- Returns:
-
inline Real getJ2() const#
get the J2 equvalient stress. J2 = 1/2 s.ij x s.ij = 1/6 [(sig.x - sig.y)^2 + (sig.y - sig.z)^2 + (sig.z-sig.x)^2 + 6(tau.xy^2 + tau.yz^2 + tau.zx^2)]
- Returns:
-
Tensor getDeviator() const#
-
:Deviatoric part of a second order tensor.
This method defines the deviatoric part of a second second order tensor. The result of this operation is a second order tensor defined by the following equation: \begin{equation*} \Sig^d=\Sig-\frac{1}{3}\tr[\Sig].\Id \end{equation*} where $\Sig^d$ is the deviatoric part of the tensor, $\Sig$ is the tensor and $\Id$ is the unit tensor.
- Returns:
-
inline Real getEnergy(Tensor &strain) const#
get the inverse of the tensor, ignore the zz compoment.
- Returns:
-
Vector2 operator*(const Vector2&) const#
-
:Multiplication of a second order tensor by a vector. ignore the zz compoment
return
- Param :
-
void addI()#
-
void setToUnity()#
-
void setToZero()#
-
Tensor()#
-
struct TensorIndex#
- #include <openfdem_struct.h>
Public Members
-
short index[3][3]#
-
short index[3][3]#
-
class Timer#
- #include <timer.h>
Class implementing single timer, providing wall clock and user time capabilities.
Public Functions
-
Timer()#
-
void startTimer()#
-
void stopTimer()#
-
void pauseTimer()#
-
void resumeTimer()#
-
void initTimer()#
-
inline bool isRunning()#
-
double getUtime()#
Returns total user time elapsed in seconds.
-
double getWtime()#
Returns total elapsed wall clock time in seconds.
-
void toString(char *buff)#
Prints receiver state into a string.
-
void updateElapsedTime()#
Public Static Functions
-
static void convert2HMS(int &nhrs, int &nmin, int &nsec, double tsec)#
Converts total seconds into hours, minutes and remaining seconds
- Parameters:
nhrs – [out] Number of hours.
nmin – [out] Number of minutes.
nsec – [out] Number of seconds.
tsec – [in] Total time in seconds.
Private Functions
-
Timer()#
-
template<class T>
struct TX : public T# - #include <variant_lite.hpp>
Public Functions
-
template<typename List, size_t N>
struct type_of_size# - #include <optional_lite.hpp>
Public Types
-
typedef std11::conditional<N == sizeof(typenameList::head), typenameList::head, typenametype_of_size<typenameList::tail, N>::type>::type type#
-
typedef std11::conditional<N == sizeof(typenameList::head), typenameList::head, typenametype_of_size<typenameList::tail, N>::type>::type type#
-
template<typename List, size_t N>
struct type_of_size# - #include <variant_lite.hpp>
Public Types
-
typedef std11::conditional<N == sizeof(typenameList::head), typenameList::head, typenametype_of_size<typenameList::tail, N>::type>::type type#
-
typedef std11::conditional<N == sizeof(typenameList::head), typenameList::head, typenametype_of_size<typenameList::tail, N>::type>::type type#
-
template<size_t N>
struct type_of_size<nulltype, N># - #include <optional_lite.hpp>
Public Types
-
typedef optional_CONFIG_ALIGN_AS_FALLBACK type#
-
typedef optional_CONFIG_ALIGN_AS_FALLBACK type#
-
template<size_t N>
struct type_of_size<nulltype, N># - #include <variant_lite.hpp>
Public Types
-
typedef variant_CONFIG_ALIGN_AS_FALLBACK type#
-
typedef variant_CONFIG_ALIGN_AS_FALLBACK type#
-
template<size_t NumVars, typename R, typename Visitor, typename T1, typename T2 = S0, typename T3 = S0, typename T4 = S0, typename T5 = S0>
struct TypedVisitorUnwrapper#
-
template<typename R, typename Visitor, typename T2>
struct TypedVisitorUnwrapper<2, R, Visitor, T2># - #include <variant_lite.hpp>
Public Functions
-
template<typename R, typename Visitor, typename T2, typename T3>
struct TypedVisitorUnwrapper<3, R, Visitor, T2, T3># - #include <variant_lite.hpp>
Public Functions
-
template<typename R, typename Visitor, typename T2, typename T3, typename T4>
struct TypedVisitorUnwrapper<4, R, Visitor, T2, T3, T4># - #include <variant_lite.hpp>
-
template<typename R, typename Visitor, typename T2, typename T3, typename T4, typename T5>
struct TypedVisitorUnwrapper<5, R, Visitor, T2, T3, T4, T5># - #include <variant_lite.hpp>
-
template<typename Head, typename Tail>
struct typelist# - #include <optional_lite.hpp>
-
template<class Head, class Tail>
struct typelist# - #include <variant_lite.hpp>
-
template<class List, class T>
struct typelist_index_of#
-
template<class T>
struct typelist_index_of<nulltype, T># - #include <variant_lite.hpp>
-
template<class Head, class Tail, class T>
struct typelist_index_of<typelist<Head, Tail>, T># - #include <variant_lite.hpp>
-
template<class Tail, class T>
struct typelist_index_of<typelist<T, Tail>, T># - #include <variant_lite.hpp>
-
template<class List>
struct typelist_max#
-
template<>
struct typelist_max<nulltype># - #include <variant_lite.hpp>
-
template<class Head, class Tail>
struct typelist_max<typelist<Head, Tail>># - #include <variant_lite.hpp>
Public Types
-
typedef std11::conditional<(sizeof(Head) > tail_value), Head, tail_type>::type type#
-
typedef std11::conditional<(sizeof(Head) > tail_value), Head, tail_type>::type type#
-
template<class List>
struct typelist_size# - #include <variant_lite.hpp>
-
template<>
struct typelist_size<nulltype># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T0># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T1># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T10># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T11># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T12># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T13># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T14># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T15># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T2># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T3># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T4># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T5># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T6># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T7># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T8># - #include <variant_lite.hpp>
-
template<>
struct typelist_size<T9># - #include <variant_lite.hpp>
-
template<class Head, class Tail>
struct typelist_size<typelist<Head, Tail>># - #include <variant_lite.hpp>
-
template<class Head, class Tail>
struct typelist_type_at<typelist<Head, Tail>, 0># - #include <variant_lite.hpp>
-
template<class Head, class Tail, std::size_t i>
struct typelist_type_at<typelist<Head, Tail>, i># - #include <variant_lite.hpp>
-
template<class T0, class T1 = detail::T1, class T2 = detail::T2, class T3 = detail::T3, class T4 = detail::T4, class T5 = detail::T5, class T6 = detail::T6, class T7 = detail::T7, class T8 = detail::T8, class T9 = detail::T9, class T10 = detail::T10, class T11 = detail::T11, class T12 = detail::T12, class T13 = detail::T13, class T14 = detail::T14, class T15 = detail::T15>
class variant# - #include <variant_lite.hpp>
Public Functions
-
inline variant()#
-
inline ~variant()#
-
inline bool valueless_by_exception() const#
-
template<std::size_t K>
inline variant_alternative<K, variant>::type &get()#
-
template<std::size_t K>
inline variant_alternative<K, variant>::type const &get() const#
Public Static Functions
- template<class T> static inline variant_constexpr std::size_t index_of () variant_noexcept
Private Types
Values:
-
enumerator data_size#
-
enumerator data_size#
-
typedef detail::helper<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> helper_type#
-
typedef helper_type::type_index_t type_index_t#
-
typedef detail::typelist_max<variant_types>::type max_type#
Private Functions
- typedef variant_TL16 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) variant_types
- inline void * ptr () variant_noexcept
- inline void const * ptr () const variant_noexcept
- inline variant_constexpr type_index_t variant_npos_internal () const variant_noexcept
-
inline void swap_value(type_index_t index, variant &other)#
- typedef variant_ALIGN_AS (max_type) align_as_type
Private Static Functions
- template<class U> static inline variant_constexpr std::size_t to_size_t (U index)
-
inline variant()#
-
template<std::size_t K, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
struct variant_alternative<K, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>># - #include <variant_lite.hpp>
-
template<class T>
struct variant_size#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
struct variant_size<variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>># - #include <variant_lite.hpp>
-
class Vector#
- #include <openfdem_vector.h>
Class : Arbitary Vector
Used to manage Vector used in FDEM project, the vector is dynamic memory, which can be transfered from Vector3, matrix, tensor and symtensor
Public Functions
-
Vector(Int = 2, Real = 0.0)#
constructor the fixed length of the vector and set initial value.
param
- Param :
-
~Vector()#
deconstructor.
-
Real distance(const Vector&) const#
return the distance of two vector. the norm of the sub vector
return
- Param :
-
Real dotProduct(const Vector&) const#
dot of two vectors and return a real value. s = Va * Vb
return
- Param :
-
void normalize()#
-
Vector(Int = 2, Real = 0.0)#
-
struct Vector2#
- #include <openfdem_vector2.h>
The base vector2 class.
Public Functions
-
inline void create()#
initialize.
-
inline void multiplyby(const Real scale, Vector2 &vector)#
compute the vector multiplied by a scalar, and save to current vector.
- Parameters:
scale –
vector –
-
inline void subby(const Vector2 &vectorA, const Vector2 &vectorB)#
this = A -B .
- Parameters:
vectorA –
vectorB –
-
inline void addby(const Vector2 &vectorA, const Vector2 &vectorB)#
this = A + B.
- Parameters:
vectorA –
vectorB –
-
inline void averageby(const Vector2 &vectorA, const Vector2 &vectorB)#
this = 0.5 *( A + B).
- Parameters:
vectorA –
vectorB –
-
inline void triaverageby(const Vector2 &vectorA, const Vector2 &vectorB, const Vector2 &vectorC)#
this = 1/3 * (A + B + C).
- Parameters:
vectorA –
vectorB –
vectorC –
-
inline void normalized()#
normalize this vector.
-
inline Real getDistancefrom(const Vector2 &n)#
compute distance of two vectors.
- Parameters:
n –
- Returns:
-
inline Real getSquaredDistancefrom(const Vector2 &n)#
compute squared distance of two vectors.
- Parameters:
n –
- Returns:
-
inline void normalizedby(const Vector2&)#
get the normalize from another vector.
- Parameters:
vector –
-
inline void operator*=(const Vector2 &b)#
operator *= with another vector, by elementwise.
- Parameters:
b –
-
inline void operator/=(const Vector2 &b)#
operator /= with another vector, by elementwise. v.x = v.x / b.x
- Parameters:
b –
-
inline Vector2 getNormalVectorInward(const Vector2 &b)#
compute inward normal of current and another vectors, right-hand rule, z x (b - this) return the normal vector
- Parameters:
b –
- Returns:
-
inline void getNormalVectorInwardfrom(const Vector2 &a, const Vector2 &b)#
compute inward normal of two vectors, right-hand rule, z x (b - a).
- Parameters:
a –
b –
-
inline Vector2 getNormalVectorOutward(const Vector2 &b)#
compute outward normal of current and another vectors, right-hand rule, -z x (b - this) return the normal vector
- Parameters:
b –
- Returns:
-
inline void getNormalVectorOutwardfrom(const Vector2 &a, const Vector2 &b)#
compute outward normal of two vectors, right-hand rule, -z x (b - a).
- Parameters:
a –
b –
-
inline Real getdot(const Vector2 &vector)#
return the vector dot. return = this * A return = this.x * A.x + this.y * A.y
- Parameters:
vector –
- Returns:
-
inline Real getcross(const Vector2 &vector)#
return the cross of this vector with A. return = this x A
- Parameters:
vector –
- Returns:
-
inline void Zero()#
zero the vector.
-
inline void create()#
-
struct Vector3#
- #include <openfdem_vector3.h>
The base vector3 class. This vector is special for rigid 2D body if 3 dofs are considered. for example, the velocity can be [x, y, rotation] and the movement can be [translation.x translation.y angle]
-
template<typename R>
struct VisitorApplicator# - #include <variant_lite.hpp>
Public Static Functions
-
template<size_t Idx, typename Visitor, typename V1>
static inline R apply_visitor(const Visitor &v, const V1 &arg)#
-
template<typename Visitor, typename V1, typename V2>
static inline R apply(const Visitor &v, V1 const &arg1, V2 const &arg2)#
-
template<typename Visitor, typename V1, typename V2, typename V3>
static inline R apply(const Visitor &v, V1 const &arg1, V2 const &arg2, V3 const &arg3)#
-
template<size_t Idx, typename Visitor, typename V1>
-
template<typename R, typename VT>
struct VisitorApplicatorImpl# - #include <variant_lite.hpp>
-
template<typename R, typename VT>
struct VisitorApplicatorImpl<R, TX<VT>># - #include <variant_lite.hpp>
-
template<typename R, typename Visitor, typename V2>
struct VisitorUnwrapper# - #include <variant_lite.hpp>
-
namespace nonstd#
Functions
-
template<class T>
inline in_place_t in_place(detail::in_place_type_tag<T> = detail::in_place_type_tag<T>())#
-
template<std::size_t K>
inline in_place_t in_place(detail::in_place_index_tag<K> = detail::in_place_index_tag<K>())#
-
template<class T>
inline in_place_t in_place_type(detail::in_place_type_tag<T> = detail::in_place_type_tag<T>())#
-
template<std::size_t K>
inline in_place_t in_place_index(detail::in_place_index_tag<K> = detail::in_place_index_tag<K>())#
-
template<class T>
-
namespace detail#
-
namespace optional_lite#
Functions
- template<typename T, typename U> inline optional_constexpr bool operator== (optional< T > const &x, optional< U > const &y)
- template<typename T, typename U> inline optional_constexpr bool operator!= (optional< T > const &x, optional< U > const &y)
- template<typename T, typename U> inline optional_constexpr bool operator< (optional< T > const &x, optional< U > const &y)
- template<typename T, typename U> inline optional_constexpr bool operator> (optional< T > const &x, optional< U > const &y)
- template<typename T, typename U> inline optional_constexpr bool operator<= (optional< T > const &x, optional< U > const &y)
- template<typename T, typename U> inline optional_constexpr bool operator>= (optional< T > const &x, optional< U > const &y)
- template<typename T> inline optional_constexpr bool operator== (optional< T > const &x, nullopt_t) optional_noexcept
- template<typename T> inline optional_constexpr bool operator== (nullopt_t, optional< T > const &x) optional_noexcept
- template<typename T> inline optional_constexpr bool operator!= (optional< T > const &x, nullopt_t) optional_noexcept
- template<typename T> inline optional_constexpr bool operator!= (nullopt_t, optional< T > const &x) optional_noexcept
- template<typename T> inline optional_constexpr bool operator< (optional< T > const &, nullopt_t) optional_noexcept
- template<typename T> inline optional_constexpr bool operator< (nullopt_t, optional< T > const &x) optional_noexcept
- template<typename T> inline optional_constexpr bool operator<= (optional< T > const &x, nullopt_t) optional_noexcept
- template<typename T> inline optional_constexpr bool operator<= (nullopt_t, optional< T > const &) optional_noexcept
- template<typename T> inline optional_constexpr bool operator> (optional< T > const &x, nullopt_t) optional_noexcept
- template<typename T> inline optional_constexpr bool operator> (nullopt_t, optional< T > const &) optional_noexcept
- template<typename T> inline optional_constexpr bool operator>= (optional< T > const &, nullopt_t) optional_noexcept
- template<typename T> inline optional_constexpr bool operator>= (nullopt_t, optional< T > const &x) optional_noexcept
- template<typename T, typename U> inline optional_constexpr bool operator== (optional< T > const &x, U const &v)
- template<typename T, typename U> inline optional_constexpr bool operator== (U const &v, optional< T > const &x)
- template<typename T, typename U> inline optional_constexpr bool operator!= (optional< T > const &x, U const &v)
- template<typename T, typename U> inline optional_constexpr bool operator!= (U const &v, optional< T > const &x)
- template<typename T, typename U> inline optional_constexpr bool operator< (optional< T > const &x, U const &v)
- template<typename T, typename U> inline optional_constexpr bool operator< (U const &v, optional< T > const &x)
- template<typename T, typename U> inline optional_constexpr bool operator<= (optional< T > const &x, U const &v)
- template<typename T, typename U> inline optional_constexpr bool operator<= (U const &v, optional< T > const &x)
- template<typename T, typename U> inline optional_constexpr bool operator> (optional< T > const &x, U const &v)
- template<typename T, typename U> inline optional_constexpr bool operator> (U const &v, optional< T > const &x)
- template<typename T, typename U> inline optional_constexpr bool operator>= (optional< T > const &x, U const &v)
- template<typename T, typename U> inline optional_constexpr bool operator>= (U const &v, optional< T > const &x)
Variables
- const nullopt_t nullopt ((nullopt_t::init()))
-
namespace detail#
-
Functions
- typedef optional_ALIGN_TYPE (char)
- typedef optional_ALIGN_TYPE (short)
- typedef optional_ALIGN_TYPE (int)
- typedef optional_ALIGN_TYPE (long)
- typedef optional_ALIGN_TYPE (float)
- typedef optional_ALIGN_TYPE (double)
- typedef optional_ALIGN_TYPE (long double)
- typedef optional_ALIGN_TYPE (char *)
- typedef optional_ALIGN_TYPE (short *)
- typedef optional_ALIGN_TYPE (int *)
- typedef optional_ALIGN_TYPE (long *)
- typedef optional_ALIGN_TYPE (float *)
- typedef optional_ALIGN_TYPE (double *)
- typedef optional_ALIGN_TYPE (long double *)
- typedef optional_ALIGN_TYPE (Unknown(*)(Unknown))
- typedef optional_ALIGN_TYPE (Unknown *Unknown::*)
- typedef optional_ALIGN_TYPE (Unknown(Unknown::*)(Unknown))
-
namespace std11#
-
namespace sv_lite#
-
namespace variants#
Functions
- inline variant_constexpr bool operator< (monostate, monostate) variant_noexcept
- inline variant_constexpr bool operator> (monostate, monostate) variant_noexcept
- inline variant_constexpr bool operator<= (monostate, monostate) variant_noexcept
- inline variant_constexpr bool operator>= (monostate, monostate) variant_noexcept
- inline variant_constexpr bool operator== (monostate, monostate) variant_noexcept
- inline variant_constexpr bool operator!= (monostate, monostate) variant_noexcept
- template<class T, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15> inline bool holds_alternative (variant< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15 > const &v) variant_noexcept
-
template<class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline R &get(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> &v, nonstd_lite_in_place_type_t(R) = nonstd_lite_in_place_type(R))#
-
template<class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline R const &get(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, nonstd_lite_in_place_type_t(R) = nonstd_lite_in_place_type(R))#
-
template<std::size_t K, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline variant_alternative<K, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>>::type &get(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> &v, nonstd_lite_in_place_index_t(K) = nonstd_lite_in_place_index(K))#
-
template<std::size_t K, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline variant_alternative<K, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>>::type const &get(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, nonstd_lite_in_place_index_t(K) = nonstd_lite_in_place_index(K))#
-
template<class T, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline std11::add_pointer<T>::type get_if(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> *pv, nonstd_lite_in_place_type_t(T) = nonstd_lite_in_place_type(T))#
-
template<class T, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline std11::add_pointer<constT>::type get_if(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const *pv, nonstd_lite_in_place_type_t(T) = nonstd_lite_in_place_type(T))#
-
template<std::size_t K, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline std11::add_pointer<typenamevariant_alternative<K, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>>::type>::type get_if(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> *pv, nonstd_lite_in_place_index_t(K) = nonstd_lite_in_place_index(K))#
-
template<std::size_t K, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline std11::add_pointer<consttypenamevariant_alternative<K, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>>::type>::type get_if(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const *pv, nonstd_lite_in_place_index_t(K) = nonstd_lite_in_place_index(K))#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline void swap(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> &a, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> &b)#
-
template<typename R, typename Visitor, typename V1>
inline R visit(const Visitor &v, V1 const &arg1)#
-
template<typename R, typename Visitor, typename V1, typename V2>
inline R visit(const Visitor &v, V1 const &arg1, V2 const &arg2)#
-
template<typename R, typename Visitor, typename V1, typename V2, typename V3>
inline R visit(const Visitor &v, V1 const &arg1, V2 const &arg2, V3 const &arg3)#
-
template<typename R, typename Visitor, typename V1, typename V2, typename V3, typename V4>
inline R visit(const Visitor &v, V1 const &arg1, V2 const &arg2, V3 const &arg3, V4 const &arg4)#
-
template<typename R, typename Visitor, typename V1, typename V2, typename V3, typename V4, typename V5>
inline R visit(const Visitor &v, V1 const &arg1, V2 const &arg2, V3 const &arg3, V4 const &arg4, V5 const &arg5)#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline bool operator==(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &w)#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline bool operator!=(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &w)#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline bool operator<(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &w)#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline bool operator>(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &w)#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline bool operator<=(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &w)#
-
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15>
inline bool operator>=(variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &v, variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> const &w)#
-
namespace detail#
Typedefs
Functions
- typedef variant_ALIGN_TYPE (char)
- typedef variant_ALIGN_TYPE (short)
- typedef variant_ALIGN_TYPE (int)
- typedef variant_ALIGN_TYPE (long)
- typedef variant_ALIGN_TYPE (float)
- typedef variant_ALIGN_TYPE (double)
- typedef variant_ALIGN_TYPE (long double)
- typedef variant_ALIGN_TYPE (char *)
- typedef variant_ALIGN_TYPE (short *)
- typedef variant_ALIGN_TYPE (int *)
- typedef variant_ALIGN_TYPE (long *)
- typedef variant_ALIGN_TYPE (float *)
- typedef variant_ALIGN_TYPE (double *)
- typedef variant_ALIGN_TYPE (long double *)
- typedef variant_ALIGN_TYPE (Unknown(*)(Unknown))
- typedef variant_ALIGN_TYPE (Unknown *Unknown::*)
- typedef variant_ALIGN_TYPE (Unknown(Unknown::*)(Unknown))
-
namespace std11#
-
namespace std17#
type traits C++17:
-
namespace ns_common
Functions
-
void freememory(char *targetContainer)#
-
void freememory(bool *targetContainer)#
-
void freememory(short *targetContainer)#
-
void freememory(int *targetContainer)#
-
void buildmemory(element_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(damage_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(cohelement_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(fracture_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(contact_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(entity_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(particle_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(pContact_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(wContact_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(group_node_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(group_element_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(group_edge_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(group_particle_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(group_mpmpoints_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(group_gbm_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(group_cohelement_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(geo_node_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(geo_line_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(geo_curve_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(geo_surface_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(geo_group_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(geo_EmbededlineGroups_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(geo_particles_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(history_nodal_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(history_element_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(history_cohelement_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(history_contact_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(history_general_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_element_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_cohelement_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_contact_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_fluid_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_fluid_element_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_fluid_cohesive_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_mpmfluid_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mat_thermal_element_t **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_node_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_particle_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_ele_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_inletflow_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_outletflow_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_point_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_edge_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(table_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_flow_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_thermal_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(boudary_blast_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(mesh_insert_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(cohelement_enum **containerlist, const Int size1, Int size0)#
-
void buildmemory(blast_type **targetContainer, const Int size1, Int size0 = 0)#
-
void buildmemory(caivity_type **targetContainer, const Int size1, Int size0 = 0)#
-
void get_filename_no_path(char *return_string, const char *input_string)#
copy no extension and path
- Parameters:
return_string – to copy to
input_string – to copy from
-
void get_filename_with_extension(char *return_string, const char *input_string)#
copy no extension and path
- Parameters:
return_string – to copy to
input_string – to copy from
-
void get_path(char *return_string, const char *input_string)#
copy path
- Parameters:
return_string –
input_string –
-
void parseStringinQuotation(FILE *inputfile, char *string)#
parse string within quotoes and space “keyword” -> keword ‘keyword’ -> keyword keyword -> keyword
- Parameters:
inputfile –
string –
-
void parse_string(FILE *inputfile, char *string)#
parse string with quotoes and space
- Parameters:
inputfile –
string –
-
void parseStringinLine(FILE *inputfile, Keywords &keyword)#
parse strings in one line the line-string will splitted to several kewords by space the quotations will be removed “string1” ‘string2’ string3 -> string1 string2 string3
- Parameters:
inputfile –
string –
-
void parseStringinLinetoChar(FILE *inputfile, char *keyword)#
-
char *chartoname(char *in)#
add [ ] for the string. ‘string’ -> [string]
-
void get_filename_no_suffix(char *return_string, char *input_string)#
Get filename without suffix.
input C:/usr/files/example.fdem, returen => C:/usr/files/example
- Parameters:
return_string –
input_string –
-
void get_suffix(char *return_string, char *input_string)#
Get the suffix of the imported file.
input C:/usr/files/example.fdem, returen => fdem
- Parameters:
return_string –
input_string –
-
void strip_ext(char *fname)#
Get the file name without path and suffix.
input C:/usr/files/example.fdem, return => example
- Parameters:
return_string –
input_string –
-
int openfdem_run_usr_break(double dctime, long ncstep, long mcstep)#
terminate the calculation by user break.
-
long get_line_current_position(FILE *fileptr)#
return the line where the error comes.
-
void create_result_store_folder(char *Result_store_folder)#
create the path for the results.
-
void removeCharsBeforeSubstring(char *str, const char *substring)#
-
void solveEigen2(Real A, Real B, Real C, Real *rt1, Real *rt2, Real *cs, Real *sn)#
Calculates the eigensystem of a real symmetric 2x2 matrix [ A B ] [ B C ] in the form [ A B ] = [ cs -sn ] [ rt1 0 ] [ cs sn ] [ B C ] [ sn cs ] [ 0 rt2 ] [ -sn cs ] where rt1 >= rt2. Note that this convention is different from the one used in the LAPACK routine DLAEV2, where |rt1| >= |rt2|..
-
Int solveEigenusingQL(Real A[3][3], Real Q[3][3], Real w[3])#
Solve eigen values of a symmetric tensor by using QL.
\detail Calculates the eigenvalues and normalized eigenvectors of a symmetric 3x3 matrix A using the QL algorithm with implicit shifts, preceded by a Householder reduction to tridiagonal form.
\dependence HouseholderTransform()
Note
The function accesses only the diagonal and upper triangular parts of A.
- Parameters:
A – input symmetric matrix
Q – return matrix for eigenvectors
w – return buffer for eigenvalues
- Returns:
0: Success
-1: Error (no convergence)
-
Int solveEigenusingJacobi(Real A[3][3], Real Q[3][3], Real w[3])#
Solve eigen values of a symmetric tensor by using Jacobi.
\detail Calculates the eigenvalues and normalized eigenvectors of a symmetric 3x3 matrix A using the Jacobi algorithm,The upper triangular part of A is destroyed during the calculation, the diagonal elements are read but not destroyed, and the lower triangular elements are not referenced at all.
\dependence HouseholderTransform()
Note
The function accesses only the diagonal and upper triangular parts of A.
- Parameters:
A – input symmetric matrix
Q – return matrix for eigenvectors
w – return buffer for eigenvalues
- Returns:
0: Success
-1: Error (no convergence)
-
Int solveEigenusingCuppen(Real A[3][3], Real Q[3][3], Real w[3])#
Solve eigen values of a symmetric tensor by using Jacobi.
\detail Calculates the eigenvalues and normalized eigenvectors of a symmetric 3x3 matrix A using the Cuppen’s Divide & Conquer algorithm,The upper triangular part of A is destroyed during the calculation, the diagonal elements are read but not destroyed, and the lower triangular elements are not referenced at all.
\dependence dsyev2(), solveSecularquation(), HouseholderTransform()
Note
The function accesses only the diagonal and upper triangular parts of A.
- Parameters:
A – input symmetric matrix
Q – return matrix for eigenvectors
w – return buffer for eigenvalues
- Returns:
0: Success
-1: Error (no convergence)
-
void freememory(char *targetContainer)#
-
namespace openfdem#
-
namespace std#
-
namespace tabulate#
- file csvfile.h
- #include <fstream>#include <iostream>#include <sstream>#include <string>
- file logger.h
- #include <cstdio>#include <string>
Defines
-
OPENFDEM_DIVIDING_HEAD#
-
LOG_ERR_HEADER#
-
LOG_ERR_TAIL#
-
PRINT_HEADER(stream)#
-
PRINT_TAIL(stream)#
-
OPENFDEM_LOG_FATAL(...)#
Log reporting macros
-
OPENFDEM_LOG_ERROR(...)#
-
OPENFDEM_LOG_WARNING(...)#
-
OPENFDEM_TO_IMPLEMENT#
-
OPENFDEM_LOG_FORCED(...)#
-
OPENFDEM_LOG_RELEVANT(...)#
-
OPENFDEM_LOG_INFO(...)#
-
OPENFDEM_LOG_DEBUG(...)#
-
OPENFDEM_DIVIDING_HEAD#
- file memory_manager.h
- #include <limits.h>#include <signal.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <iostream>#include <contact/contact_utils/openfdem_cell.h>#include “common/openfdem_matrix.h”#include “common/openfdem_matrix2x2.h”#include “common/openfdem_tensor.h”#include “common/openfdem_vector.h”#include “common/openfdem_vector2Utils.h”#include “solver/openfdem.h”
- file openfdem_abstract.h
Defines
-
_OPENFDEM_DEBUG_MODE_OFF#
-
_OPENFDEM_DEBUG_MODE_OFF#
- file openfdem_base.h
- #include “common/openfdem_chrono.h”#include “common/openfdem_common.h”#include “common/openfdem_config.h”#include “common/openfdem_manager.h”#include “common/openfdem_tools.h”#include “openfdem.h”#include “contact/solid_mechanics_contact_module.h”#include “geometry/openfdem_geometry_module.h”#include “initialize/solver_initialize_module.h”#include “iohelper/dumper.h”#include “iohelper/openfdem_io_module.h”#include “mesh/globalAMR/mmgProcessmodule.h”#include “mesh/group/group_module.h”#include “mesh/openfdem_mesh_module.h”#include “particles/openfdem_particle_module.h”#include “solid/integration/solid_mechanics_update_kinematics.h”#include “solid/solid_mechanics.h”#include “solver/openfdem_solve_module.h”#include “blast/openfdem_blast_module.h”#include “hydro/openfdem_hydro_module.h”#include “mpm/openfdem_MPM_module.h”#include “phasefield/phase_field_model_module.h”#include “thermal/openfdem_thermal_module.h”
- file openfdem_chrono.h
- #include <common/openfdem_macros.h>#include <iomanip>
- file openfdem_classfactories.h
Defines
-
REGISTER_GENERAL#
-
REGISTER_ELEMENT#
-
REGISTER_INTERGRATION#
-
REGISTER_COHELEMENT#
-
REGISTER_CONTACT#
-
REGISTER_NODAL#
-
REGISTER_GROUP#
-
REGISTER_GEOMETRY#
-
REGISTER_MESH#
-
REGISTER_DFN#
-
REGISTER_HISTORY#
-
REGISTER_PARTICLE#
-
REGISTER_MPM#
-
REGISTER_EDGE#
-
REGISTER_BOUNDARY#
-
REGISTER_PARTICLECONTACT#
-
REGISTER_ENTITY#
-
REGISTER_SOLIDMATE#
-
REGISTER_HYDRO#
-
REGISTER_THERMAL#
-
REGISTER_BLAST#
-
REGISTER_SESMICITY#
-
REGISTER_FULL_CLASS#
-
REGISTER_GENERAL#
- file openfdem_common.h
- #include <vector>#include “common/openfdem_matrix.h”#include “common/openfdem_matrix2x2.h”#include “common/openfdem_tensor.h”#include “common/openfdem_vector.h”#include “common/openfdem_vector2.h”#include “common/openfdem_vector2Utils.h”#include “common/openfdem_vector3.h”#include “openfdem_enum.h”#include “openfdem_error.h”#include “openfdem_math.h”#include “openfdem_struct.h”#include “timer.h”
- file openfdem_config.h
- file openfdem_defines.h
- #include <stdexcept>#include <sstream>
Defines
-
OPENFDEM_ENV32#
-
OPENFDEM_ENV32#
- file openfdem_enum.h
Enums
-
enum class elem_type#
Enum for element types will be used in OpenFDEM.
Values:
-
enumerator NONE#
-
enumerator LINE2#
-
enumerator TRIANGLE3#
-
enumerator QUADRANGLE4#
-
enumerator LINE3#
-
enumerator TRIANGLE6#
-
enumerator QUADRANGLE9#
-
enumerator QUADRANGLE8#
-
enumerator POLYGON#
-
enumerator NONE#
-
enum class mesh_enum#
Enum for mesh processing treatment.
Values:
-
enumerator INSERT#
-
enumerator SPLIT#
-
enumerator REMESH3#
-
enumerator REMESH4#
-
enumerator REMESH6#
-
enumerator IMPLICIT#
-
enumerator REFINEMENT#
-
enumerator INSERT#
-
enum class meshtype#
Enum of the remesh type.
Values:
-
enumerator DEFAULT#
-
enumerator BARYCENTRIC#
-
enumerator TREFINE_R#
-
enumerator TREFINE_G#
-
enumerator TREFINE_G2#
-
enumerator TREFINE_B#
-
enumerator TREFINENVB#
-
enumerator BARYGB#
-
enumerator DEFAULT#
-
enum class nodalgrouptype#
Enum of method to find node. The default is from element by mesh importing More complex range can be defined using bool operator
Values:
-
enumerator SQUAREIN#
-
enumerator SQUAREOUT#
-
enumerator SQUAREON#
-
enumerator CIRCLEIN#
-
enumerator CIRCLEOUT#
-
enumerator CIRCLE#
-
enumerator PLANELEFT#
-
enumerator PLANERIGHT#
-
enumerator PLANE#
-
enumerator FROMELEMENT#
-
enumerator BOOL#
-
enumerator POLYGONIN#
-
enumerator POLYGONON#
-
enumerator POLYGONOUT#
-
enumerator DEFAULT#
-
enumerator SQUAREIN#
-
enum class elementgrouptype#
Enum of method to find element groups.
Note
Element topology is defined by its barcentric point.
Values:
-
enumerator FROMMESH#
-
enumerator SQUAREIN#
-
enumerator SQUAREOUT#
-
enumerator SQUAREON#
-
enumerator CIRCLEIN#
-
enumerator CIRCLEON#
-
enumerator CIRCLEOUT#
-
enumerator PLANELEFT#
-
enumerator PLANEON#
-
enumerator PLANERIGHT#
-
enumerator BOOL#
-
enumerator POLYGONIN#
-
enumerator POLYGONON#
-
enumerator POLYGONOUT#
-
enumerator FROMMESH#
-
enum class rangeMethod#
Enum of Range method.
Values:
-
enumerator SQUAREIN#
-
enumerator SQUAREOUT#
-
enumerator SQUAREON#
-
enumerator CIRCLEIN#
-
enumerator CIRCLEON#
-
enumerator CIRCLEOUT#
-
enumerator PLANELEFT#
-
enumerator PLANEON#
-
enumerator PLANERIGHT#
-
enumerator POLYGONIN#
-
enumerator POLYGONON#
-
enumerator POLYGONOUT#
-
enumerator SQUAREIN#
-
enum class edgegrouptype#
Enum of method to find face groups.
Values:
-
enumerator FROMMESH#
-
enumerator SQUAREIN#
-
enumerator SQUAREOUT#
-
enumerator SQUAREON#
-
enumerator CIRCLEIN#
-
enumerator CIRCLEON#
-
enumerator CIRCLEOUT#
-
enumerator PLANELEFT#
-
enumerator PLANEON#
-
enumerator PLANERIGHT#
-
enumerator BOOL#
-
enumerator FROMELEMENT#
-
enumerator FROCZM#
-
enumerator FRODFN#
-
enumerator POLYGONIN#
-
enumerator POLYGONON#
-
enumerator POLYGONOUT#
-
enumerator FROMMESH#
-
enum class metrictypetype#
Enum to compute remesh metrics.
Values:
-
enumerator VONMISESSTRESS#
-
enumerator PHASEFIELD#
-
enumerator DAMAGE#
-
enumerator COHESIVE#
-
enumerator VONMISESSTRESS#
-
enum class strategytype#
Remesh strategy.
Values:
-
enumerator DEFAULT#
-
enumerator BARYGB#
-
enumerator RGB#
-
enumerator RG#
-
enumerator NVB#
-
enumerator DEFAULT#
-
enum class meshpathtype#
Method to find the fractures in history.
Values:
-
enumerator NODE#
-
enumerator ELEMENT#
-
enumerator PATH#
-
enumerator NODE#
-
enum class boundary_fluid_enum#
Boundary types for fluid module.
Values:
-
enumerator POREPRESSURE#
-
enumerator WATER_LEVEL#
-
enumerator PRESSURE#
-
enumerator INIPRESSURE#
-
enumerator FLOWRATE#
-
enumerator IMPERMABLE#
-
enumerator SATURATION#
-
enumerator POREPRESSURE#
-
enum class boundary_thermal_enum#
Boundary types for thermal module.
Values:
-
enumerator INI_TEMPERATURE#
-
enumerator TEMPERATURE#
-
enumerator CONVECTION#
-
enumerator FLUX#
-
enumerator RADIATION#
-
enumerator SOURCE#
-
enumerator INI_TEMPERATURE#
-
enum class boundary_mechanical_enum#
Mechnical boundary types. Dirchlet boundary Neumann boundary
Values:
-
enumerator FORCE#
-
enumerator VEL#
-
enumerator INIVEL#
-
enumerator VISCOUS#
-
enumerator ACCEL_0#
-
enumerator FORCE_LOCAL#
-
enumerator VEL_LOCAL#
-
enumerator INIVEL_LOCAL#
-
enumerator ACCEL_LOCAL#
-
enumerator PRESSURE#
-
enumerator STRESS#
Element boundary types.
STRESS = 0, force in x direction GRADIENT_X = 1, force in y direction GRADIENT_Y= 2, velocity in x direction
-
enumerator GRADIENT_X#
-
enumerator GRADIENT_Y#
-
enumerator FORCE#
-
enum class cohelement_enum#
Failure type of the cohesive elements.
Values:
-
enumerator INTACT#
-
enumerator DAMAGE#
-
enumerator BROKEN#
-
enumerator BOUDARY#
-
enumerator INTACT#
-
enum class nonlocal_method#
method to compute nonlocal indicator.
Values:
-
enumerator WFT_BELL#
-
enumerator WFT_GAUSS#
-
enumerator WFT_EXP#
-
enumerator WFT_AVERAGE#
-
enumerator WFT_BELL#
-
enum class DFN_enum#
DFN state.
Values:
-
enumerator NDFN#
-
enumerator DFN_COHESIVE#
-
enumerator DFN_BROKEN#
-
enumerator NDFN#
-
enum class module#
solver module types. MECHANICAL = 0, mechanical module HYDRO = 1, hydro module THERMAL = 2, thermal module BLAST = 3, blast module
Values:
-
enumerator MECHANICAL#
-
enumerator HYDRO#
-
enumerator THERMAL#
-
enumerator BLAST#
-
enumerator BLAST_HYDRO#
-
enumerator DYNAMIC#
-
enumerator MECHANICAL#
-
enum class element_cons#
Values:
-
enumerator EXCAVATION#
-
enumerator ELASTIC#
-
enumerator NEO#
-
enumerator RIGID#
-
enumerator TRANSVERSE#
-
enumerator MC#
-
enumerator DP#
-
enumerator Hoek#
-
enumerator BURGERS#
-
enumerator VIS_POWER#
-
enumerator MAZARS#
-
enumerator JWL#
-
enumerator JH2#
-
enumerator TCK#
-
enumerator YANG#
-
enumerator DFB#
-
enumerator SNOW#
-
enumerator SAND#
-
enumerator OTHERS#
-
enumerator EXCAVATION#
-
enum class cohelement_cons#
Values:
-
enumerator COH_EM#
-
enumerator COH_EM_FRIC#
-
enumerator COH_LINEAR#
-
enumerator COH_OP#
-
enumerator COH_BB#
-
enumerator COH_EM_HET#
-
enumerator COH_EM_ANI#
-
enumerator COH_EM_DYNAMIC#
-
enumerator COH_OTHERS#
-
enumerator COH_EM#
-
enum class contact_cons#
enum of contact model types both for elements or particles. The default for element contact is dynamic friction model and the default for particle contact is standard
CON_MC = 0, Mohr-coulomb friction CON_ResidualMC = 1, dynamic friction consider residual friction CON_DYNAMIC_MC = 2, dynamic firction CON_HERTZ = 3, hertz contact model, which is nonliear in normal direction CON_BB = 4, Barton-bandies contact model CON_FRICTION = 5, RSF law for fault CON_GG_SHEAR = 6, Grasselli dilation shear model CON_STANDARD = 8, standard Mohr-coumlomb slide for particles CON_BOND = 9, bonded particle contact CON_RROTATION = 10, rontation resistance model for particle contact
Values:
-
enumerator CON_MC#
-
enumerator CON_ResidualMC#
-
enumerator CON_DYNAMIC_MC#
-
enumerator CON_HERTZ#
-
enumerator CON_BB#
-
enumerator CON_FRICTION#
-
enumerator CON_GG_SHEAR#
-
enumerator CON_OTHERS#
-
enumerator CON_STANDARD#
-
enumerator CON_BOND#
-
enumerator CON_RROTATION#
-
enumerator CON_MC#
-
enum class contact_detection#
enum for contact rough search approach. The default is Li-Grasselli’s method, which is a time-dependent method
NBS = 1, default Munjiza’s method without CPU parallerization mNBS = 2, modifed Munjiza’s NBS method combining with time-dependent potentional element list and CPU parallerization CELL = 3, cell based method which is appicable for contact seceniro that the enetityes size are much different
Values:
-
enumerator LIG#
-
enumerator NBS#
-
enumerator mNBS#
-
enumerator CELL#
-
enumerator LIG#
-
enum class contact_force#
enum for contact force potentinal method. the defualt is new potentional and can be extended to friction, RSF, residual friction, dilation law
DEFAULT_MUNJIZA = 0, Munjiza’s model, fails to be parallerized and is not applicable for shear sliding. LIF_F =1, new contact potential model can be applicable for arbitary-arbitary contact type
Values:
-
enumerator DEFAULT_MUNJIZA#
-
enumerator SHAPE_FUNCTION#
-
enumerator DEFAULT_MUNJIZA#
-
enum class random_method#
Values:
-
enumerator RANDOM_NULL#
-
enumerator RANDOM_CONSTANT#
-
enumerator RANDOM_GAUSSE#
-
enumerator RANDOM_UNIFORM#
-
enumerator RANDOM_EXPONENTINAL#
-
enumerator RANDOM_LOG_NORMAL#
-
enumerator RANDOM_POWER#
-
enumerator RANDOM_FISHER#
-
enumerator RANDOM_NULL#
-
enum class his_nodal_t#
enum of history variable type for nodals.
Values:
-
enumerator HIS_DIS#
-
enumerator HIS_VEL#
-
enumerator HIS_FOR#
-
enumerator HIS_FLUID_P#
-
enumerator HIS_FRAC_P#
-
enumerator HIS_MATRIX_P#
-
enumerator HIS_TEMP#
-
enumerator HIS_DIS#
-
enum class his_ele_t#
enum of history variable types for elements.
Values:
-
enumerator HIS_STRESS#
-
enumerator HIS_STRAIN#
-
enumerator HIS_STRAIN_R#
-
enumerator HIS_PLASTIC#
-
enumerator HIS_STRESS#
-
enum class his_cohele_t#
enum of history variable types for interface elements.
Values:
-
enumerator HIS_COH_DIS#
-
enumerator HIS_COH_FOR#
-
enumerator HIS_COH_VEL#
-
enumerator HIS_COH_SHEAR#
-
enumerator HIS_COH_DIS#
-
enum class his_contact_t#
Values:
-
enumerator HIS_CON_DIS#
-
enumerator HIS_CON_FOR#
-
enumerator HIS_CON_VEL#
-
enumerator HIS_CON_DIS#
-
enum class his_general_t#
Values:
-
enumerator HIS_TIME#
-
enumerator HIS_CYCLE#
-
enumerator HIS_N_FRACTURE#
-
enumerator HIS_N_DAMAGE#
-
enumerator HIS_N_AE#
-
enumerator HIS_ENERGY_KINETIC#
-
enumerator HIS_ENERGY_ELEMENT_STRAIN#
-
enumerator HIS_ENERGY_FRACTURE#
-
enumerator HIS_ENERGY_AE#
-
enumerator HIS_ENERGY_DAMP#
-
enumerator HIS_ENERGY_SLIP#
-
enumerator HIS_ENERGY_PLASTIC#
-
enumerator HIS_UNBALANCE_FORCE#
-
enumerator HIST_ENERGY_RATIO#
-
enumerator HIS_TIME#
-
enum class elem_type#
- file openfdem_error.h
- #include “logger.h”#include <cstdio>#include <cstdlib>#include <set>#include <sstream>#include <stdexcept>#include <string>#include <typeinfo>#include <utility>
Defines
-
OPENFDEM_DEBUG#
-
OPENFDEM_EXIT(code)#
Cause openfdem program termination by calling exit.
-
OPENFDEM_FATAL(...)#
Macros for printing errors. This macro can be used only within classes that implement errorInfo function.
-
OPENFDEM_ERROR(...)#
-
OPENFDEM_WARNING(...)#
-
OPENFDEM_SERROR(...)#
-
OPENFDEM_SWARNING(...)#
-
OPENFDEM_LOCATION#
Macros for debugging in function.
-
OPENFDEM_STRINGSTREAM_IN(_str, _sstr)#
-
OPENFDEM_DEBUG_(pref, info)#
-
OPENFDEM_DEBUG_IN()#
-
OPENFDEM_DEBUG_OUT()#
-
OPENFDEM_DEBUG_IN()
-
OPENFDEM_DEBUG_OUT()
-
OPENFDEM_DEBUG#
- file openfdem_general.h
- #include “common/openfdem_common.h”
Typedefs
-
typedef struct General_structure *General#
-
typedef struct General_structure *General#
- file openfdem_macros.h
- #include <cmath>#include <string>#include “openfdem_struct.h”
Defines
-
STRINGIZE_(x)#
-
STRINGIZE(x)#
-
FileNull#
-
Char2DNull#
-
Double1DNull#
-
Double2DNull#
-
Double3DNull#
-
Int1DNull#
-
Int2DNull#
-
NULL#
-
_USE_POLYGON_#
-
POLYGON_NODE_SIZE#
-
POLYFACE#
-
OPENFDEM_EXIT_SUCCESS#
-
OPENFDEM_EXIT_FAILURE#
-
_for(i, a, b)#
-
Ind(i, j, __rows, __cols)#
-
copyRawArray(from, destination, size)#
-
copyArray(from, destination, size)#
-
freeArray(list)#
-
copyVector(from, destination, size)#
-
freeVector(list, type)#
-
StringCompare(sting1, string2)#
-
StringCompareN(sting1, string2, n)#
-
copyChars(destination, from)#
-
isSameString(TestChar, TargetChar)#
-
isSamePrefix(TestChar, TargetChar, size)#
-
MAXARGC#
-
Openfdem_ARGC_LENGTH#
-
Openfdem_FILE_LIMIT#
-
OPENFDEM_DIMENSION#
-
CZM_NODE_SIZE#
-
CZM_EDGE_SIZE#
-
CZM_ELEMENT_SIZE#
-
RANGE_SIZE#
-
ID_RANGE_SIZE#
-
EDGE_NODE_SIZE#
-
NHALFCZMNODE#
-
NCZMGAUSS#
-
NMATRIXNODE#
-
NMATRIXGAUSS#
-
MAX_GROUP_SIZE#
-
MAX_MATERIAL_SIZE#
-
MAT_MATRIX_TYPE_ID#
-
MAT_CZM_TYPE_ID#
-
MAT_CONTACT_TYPE_ID#
-
MAT_HYDRO_TYPE_ID#
-
MAT_HYDRO_MATRIX_TYPE_ID#
-
MAT_HYDRO_FRACTURE_TYPE_ID#
-
MAT_HYDRO_FLUID_TYPE_ID#
-
MAT_HYDRO_GAS_TYPE_ID#
-
MAT_THERMAL_TYPE_ID#
-
MAX_BOUNDARY_SIZE#
-
BOU_ON_NODE_TYPE_ID#
-
BOU_ON_EDGE_TYPE_ID#
-
BOU_ON_ELEMENT_TYPE_ID#
-
BOU_ON_HYDRO_TYPE_ID#
-
BOU_ON_THERMAL_TYPE_ID#
-
precisionPolarDecompose#
-
Evans_Marathe_a#
-
Evans_Marathe_b#
-
Evans_Marathe_a
-
getIntValue(file, x)#
-
getRealValue(file, x)#
-
getCharValue(file, x)#
-
writeCharValue(file, x)#
-
writeIntValue(file, x, ndigit)#
-
writeRealValue(file, x, ndigit)#
-
writeStringValue(file, x, ndigit)#
Variables
-
const TensorIndex _internalIndexes = {0, 1, -1, 2, 3, -1, -1, -1, 4}#
-
static const char *DoubleString[20] = {"%le", "%+1.0le", "%+2.0le", "%+3.0le", "%+4.0le", "%+5.0le", "%+6.0le", "%+7.0le", "%+8.1le", "%+9.2le", "%+10.3le", "%+11.4le", "%+12.5le", "%+13.6le", "%+14.7le", "%+15.8le", "%+16.9le", "%+17.10le", "%+18.11le", "%+19.12le"}#
-
static const char *IntString[20] = {"%ld", "%1ld", "%2ld", "%3ld", "%4ld", "%5ld", "%6ld", "%7ld", "%8ld", "%9ld", "%10ld", "%11ld", "%12ld", "%13ld", "%14ld", "%15ld", "%16ld", "%17ld", "%18ld", "%19ld"}#
-
static const char *CharString[30] = {"%s", "%1s", "%2s", "%3s", "%4s", "%5s", "%6s", "%7s", "%8s", "%9s", "%10s", "%11s", "%12s", "%13s", "%14s", "%15s", "%16s", "%17s", "%18s", "%19s", "%20s", "%21s", "%22s", "%23s", "%24s", "%25s", "%26s", "%27s", "%28s", "%29s"}#
-
STRINGIZE_(x)#
- file openfdem_manager.h
- #include <ctime>#include <cmath>#include <cstring>#include <stdio.h>#include <sys/stat.h>#include “common/openfdem_message.h”#include “common/openfdem_config.h”#include “common/openfdem_general.h”
- file openfdem_math.h
- #include <math.h>#include “openfdem_classfactories.h”#include “openfdem_macros.h”#include “openfdem_error.h”
Defines
-
Openfdem_pos_epsilon#
-
Openfdem_neg_epsilon#
-
Openfdem_max_value#
-
Openfdem_PI#
-
d4d3#
-
d2d3#
-
d1d3#
-
Openfdem_e#
-
MMG2D_ALPHAD#
-
Openfdem_sqrt32#
-
Openfdem_2PI#
-
Openfdem_Deg2Rad#
-
Openfdem_InvSqrt2#
-
Openfdem_InvSqrt3#
-
Openfdem_RadToDeg#
-
Openfdem_Sqrt2#
-
Openfdem_Sqrt23#
-
Openfdem_Sqrt3#
-
Openfdem_Sqrt32#
-
Openfdem_Sqrt3m1#
-
Openfdem_Sqrt3m2#
-
Openfdem_Sqrt3m3#
-
Openfdem_Sqrt3p1#
-
Openfdem_Sqrt3p2#
-
Openfdem_Sqrt3p3#
-
Openfdem_double_abs(x)#
-
openfdem_square(a)#
-
Openfdem_max(x, y)#
-
Openfdem_max3(a, b, c)#
-
Openfdem_max4(a, b, c, d)#
-
Openfdem_min(x, y)#
-
Openfdem_min3(a, b, c)#
-
Openfdem_sign(x)#
-
Openfdem_bracket(x)#
-
Openfdem_MacAuley(x)#
-
Openfdem_SurfTriangle(a, b, c)#
-
Openfdem_SurfTrianglePts(xa, ya, xb, yb, xc, yc)#
-
Openfdem_LinearInterp(x1, x2, dx)#
-
Openfdem_BetweenValues(a, b, c)#
-
Openfdem_BetweenValuesExclude(a, b, c)#
-
Openfdem_Kronecker(i, j)#
-
Matrix2Inverse(m, minv, det)#
-
Vector2DotProduct(s, x1, y1, x2, y2)#
-
Vector2Normalize(s, x1, y1)#
-
Vector2Cro(s, x1, y1, x2, y2)#
-
VectorPointDistance(l, x1, y1, x2, y2)#
-
VectorLength(x1, y1)#
-
NextVertex(i, nNodes)#
-
LastVertex(i, nNodes)#
-
Openfdem_LineNode(x)#
-
V2Darea(s, l1, l2, l3)#
-
Openfdem_pos_epsilon#
- file openfdem_matrix.h
- #include <iostream>#include <ostream>#include “common/openfdem_math.h”#include “common/openfdem_vector2.h”#include “openfdem_struct.h”
- file openfdem_matrix2x2.h
- #include <iostream>#include <ostream>#include “common/openfdem_math.h”#include “common/openfdem_vector2.h”
- file openfdem_message.h
- #include <common/openfdem_macros.h>
- file openfdem_string.h
- #include <string>
- file openfdem_struct.h
- #include <math.h>#include <openfdem_defines.h>#include <stdint.h>#include <stdlib.h>#include <omp.h>
- file openfdem_tensor.h
- #include <array>#include <string.h>#include <string>#include <vector>#include “common/openfdem_math.h”#include “common/openfdem_vector2.h”
Defines
-
MAX_TENSOR_SIZE#
-
MAX_TENSOR_SIZE#
- file openfdem_tools.h
- #include “common/openfdem_abstract.h”#include “solver/openfdem.h”
- file openfdem_vector.h
- #include <string.h>#include <string>#include “openfdem_struct.h”#include “common/openfdem_vector2.h”
- file openfdem_vector2.h
- #include <math.h>#include “openfdem_math.h”
- file openfdem_vector2Utils.h
- #include <math.h>#include <stdlib.h>#include “common/openfdem_math.h”#include “common/openfdem_vector2.h”
- file openfdem_vector3.h
- #include <math.h>#include “openfdem_math.h”
- file spdlog_common.h
- #include “spdlog/cfg/env.h”#include “spdlog/sinks/basic_file_sink.h”#include “spdlog/sinks/rotating_file_sink.h”#include “spdlog/spdlog.h”
- file asciidoc_exporter.hpp
- #include <algorithm>#include <optional>#include <sstream>#include <string>#include <tabulate/exporter.hpp>
- file cell.hpp
- #include <iostream>#include <memory>#include <string>#include <tabulate/format.hpp>#include <tabulate/utf8.hpp>#include <tabulate/optional_lite.hpp>#include <vector>
- file color.hpp
- #include <tabulate/termcolor.hpp>
- file column.hpp
- #include <algorithm>#include <functional>#include <iostream>#include <memory>#include <tabulate/optional_lite.hpp>#include <string>#include <tabulate/cell.hpp>#include <tabulate/column_format.hpp>#include <vector>
- file column_format.hpp
- file exporter.hpp
- #include <string>#include <tabulate/table.hpp>
- file font_align.hpp
- file font_style.hpp
- file format.hpp
- #include <algorithm>#include <cctype>#include <cstddef>#include <sstream>#include <string>#include <tabulate/color.hpp>#include <tabulate/font_align.hpp>#include <tabulate/font_style.hpp>#include <tabulate/utf8.hpp>#include <tabulate/optional_lite.hpp>#include <vector>
- file latex_exporter.hpp
- #include <tabulate/exporter.hpp>#include <tabulate/optional_lite.hpp>
- file markdown_exporter.hpp
- #include <tabulate/exporter.hpp>
- file optional_lite.hpp
- #include <cstddef>#include <cassert>#include <utility>
Defines
-
NONSTD_OPTIONAL_LITE_HPP#
-
optional_lite_MAJOR#
-
optional_lite_MINOR#
-
optional_lite_PATCH#
-
optional_lite_VERSION#
-
optional_STRINGIFY(x)#
-
optional_STRINGIFY_(x)#
-
optional_OPTIONAL_DEFAULT#
-
optional_OPTIONAL_NONSTD#
-
optional_OPTIONAL_STD#
-
optional_CONFIG_SELECT_OPTIONAL#
-
optional_CONFIG_NO_EXCEPTIONS#
-
optional_CPLUSPLUS#
-
optional_CPP98_OR_GREATER#
-
optional_CPP11_OR_GREATER#
-
optional_CPP11_OR_GREATER_#
-
optional_CPP14_OR_GREATER#
-
optional_CPP17_OR_GREATER#
-
optional_CPP20_OR_GREATER#
-
optional_CPLUSPLUS_V#
-
optional_HAVE_STD_OPTIONAL#
-
optional_USES_STD_OPTIONAL#
-
nonstd_lite_HAVE_IN_PLACE_TYPES#
-
nonstd_lite_in_place_t(T)#
-
nonstd_lite_in_place_type_t(T)#
-
nonstd_lite_in_place_index_t(K)#
-
nonstd_lite_in_place(T)#
-
nonstd_lite_in_place_type(T)#
-
nonstd_lite_in_place_index(K)#
-
optional_CONFIG_MAX_ALIGN_HACK#
-
optional_CONFIG_ALIGN_AS_FALLBACK#
-
optional_BETWEEN(v, lo, hi)#
-
optional_COMPILER_MSVC_VER#
-
optional_COMPILER_MSVC_VERSION#
-
optional_COMPILER_VERSION(major, minor, patch)#
-
optional_COMPILER_GNUC_VERSION#
-
optional_COMPILER_CLANG_VERSION#
-
optional_HAVE(FEATURE)#
-
optional_HAS_CPP0X#
-
optional_CPP11_90#
-
optional_CPP11_100#
-
optional_CPP11_110#
-
optional_CPP11_120#
-
optional_CPP11_140#
-
optional_CPP11_141#
-
optional_CPP11_140_490#
-
optional_CPP14_000#
-
optional_CPP17_000#
-
optional_HAVE_CONSTEXPR_11#
-
optional_HAVE_IS_DEFAULT#
-
optional_HAVE_NOEXCEPT#
-
optional_HAVE_NULLPTR#
-
optional_HAVE_REF_QUALIFIER#
-
optional_HAVE_INITIALIZER_LIST#
-
optional_HAVE_CONSTEXPR_14#
-
optional_HAVE_NODISCARD#
-
optional_HAVE_CONDITIONAL#
-
optional_HAVE_REMOVE_CV#
-
optional_HAVE_TYPE_TRAITS#
-
optional_HAVE_TR1_TYPE_TRAITS#
-
optional_HAVE_TR1_ADD_POINTER#
-
optional_constexpr#
-
optional_is_default#
-
optional_constexpr14#
-
optional_nodiscard#
-
optional_noexcept#
-
optional_nullptr#
-
optional_ref_qual#
-
optional_refref_qual#
-
optional_ALIGN_AS(to_align)#
-
optional_ALIGN_TYPE(type)#
-
NONSTD_OPTIONAL_LITE_HPP#
- file printer.hpp
- #include <tabulate/color.hpp>#include <tabulate/font_style.hpp>#include <utility>#include <vector>
- file row.hpp
- #include <iostream>#include <memory>#include <string>#include <tabulate/cell.hpp>#include <tabulate/optional_lite.hpp>#include <vector>
- file string_view_lite.hpp
- #include <algorithm>#include <cassert>#include <iterator>#include <limits>#include <string>#include <ostream>
Defines
-
NONSTD_SV_LITE_H_INCLUDED#
-
string_view_lite_MAJOR#
-
string_view_lite_MINOR#
-
string_view_lite_PATCH#
-
string_view_lite_VERSION#
-
nssv_STRINGIFY(x)#
-
nssv_STRINGIFY_(x)#
-
nssv_STRING_VIEW_DEFAULT#
-
nssv_STRING_VIEW_NONSTD#
-
nssv_STRING_VIEW_STD#
-
nssv_HAVE_TWEAK_HEADER#
-
nssv_CONFIG_SELECT_STRING_VIEW#
-
nssv_CONFIG_STD_SV_OPERATOR#
-
nssv_CONFIG_USR_SV_OPERATOR#
-
nssv_CONFIG_CONVERSION_STD_STRING_CLASS_METHODS#
-
nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS#
-
nssv_CONFIG_NO_STREAM_INSERTION#
-
nssv_CONFIG_NO_EXCEPTIONS#
-
nssv_CPLUSPLUS#
-
nssv_CPP98_OR_GREATER#
-
nssv_CPP11_OR_GREATER#
-
nssv_CPP11_OR_GREATER_#
-
nssv_CPP14_OR_GREATER#
-
nssv_CPP17_OR_GREATER#
-
nssv_CPP20_OR_GREATER#
-
nssv_HAVE_STD_STRING_VIEW#
-
nssv_USES_STD_STRING_VIEW#
-
nssv_HAVE_STARTS_WITH#
-
nssv_HAVE_ENDS_WITH#
-
nssv_COMPILER_MSVC_VER#
-
nssv_COMPILER_MSVC_VERSION#
-
nssv_COMPILER_VERSION(major, minor, patch)#
-
nssv_COMPILER_APPLECLANG_VERSION#
-
nssv_COMPILER_CLANG_VERSION#
-
nssv_COMPILER_GNUC_VERSION#
-
nssv_BETWEEN(v, lo, hi)#
-
nssv_HAS_CPP0X#
-
nssv_CPP11_90#
-
nssv_CPP11_100#
-
nssv_CPP11_110#
-
nssv_CPP11_120#
-
nssv_CPP11_140#
-
nssv_CPP11_141#
-
nssv_CPP14_000#
-
nssv_CPP17_000#
-
nssv_HAVE_CONSTEXPR_11#
-
nssv_HAVE_EXPLICIT_CONVERSION#
-
nssv_HAVE_INLINE_NAMESPACE#
-
nssv_HAVE_NOEXCEPT#
-
nssv_HAVE_NULLPTR#
-
nssv_HAVE_REF_QUALIFIER#
-
nssv_HAVE_UNICODE_LITERALS#
-
nssv_HAVE_USER_DEFINED_LITERALS#
-
nssv_HAVE_WCHAR16_T#
-
nssv_HAVE_WCHAR32_T#
-
nssv_HAVE_STD_DEFINED_LITERALS#
-
nssv_HAVE_CONSTEXPR_14#
-
nssv_HAVE_NODISCARD#
-
nssv_HAVE_STD_HASH#
-
nssv_HAVE_BUILTIN_VER#
-
nssv_HAVE_BUILTIN_CE#
-
nssv_HAVE_BUILTIN_MEMCMP#
-
nssv_HAVE_BUILTIN_STRLEN#
-
nssv_HAVE_BUILTIN(x)#
-
nssv_BUILTIN_MEMCMP#
-
nssv_BUILTIN_STRLEN#
-
nssv_constexpr#
-
nssv_constexpr14#
-
nssv_explicit#
-
nssv_inline_ns#
-
nssv_noexcept#
-
nssv_nullptr#
-
nssv_nodiscard#
-
nssv_SUPPRESS_MSGSL_WARNING(expr)#
-
nssv_SUPPRESS_MSVC_WARNING(code, descr)#
-
nssv_DISABLE_MSVC_WARNINGS(codes)#
-
nssv_RESTORE_WARNINGS()#
Functions
- nssv_DISABLE_MSVC_WARNINGS (4455 26481 26472) namespace nonstd
-
NONSTD_SV_LITE_H_INCLUDED#
- file table.hpp
- #include <tabulate/table_internal.hpp>#include <tabulate/string_view_lite.hpp>#include <tabulate/variant_lite.hpp>#include <utility>
- file table_internal.hpp
- #include <algorithm>#include <iostream>#include <string>#include <tabulate/column.hpp>#include <tabulate/font_style.hpp>#include <tabulate/printer.hpp>#include <tabulate/row.hpp>#include <tabulate/termcolor.hpp>#include <vector>
- file tabulate.hpp
- file termcolor.hpp
- #include <cstdio>#include <iostream>
- file utf8.hpp
- #include <algorithm>#include <cstdint>#include <string>#include <clocale>#include <locale>#include <cstdlib>#include <tabulate/termcolor.hpp>#include <wchar.h>
- file variant_lite.hpp
- #include <cstddef>#include <limits>#include <new>#include <utility>#include <cassert>
Defines
-
NONSTD_VARIANT_LITE_HPP#
-
variant_lite_MAJOR#
-
variant_lite_MINOR#
-
variant_lite_PATCH#
-
variant_lite_VERSION#
-
variant_STRINGIFY(x)#
-
variant_STRINGIFY_(x)#
-
variant_VARIANT_DEFAULT#
-
variant_VARIANT_NONSTD#
-
variant_VARIANT_STD#
-
variant_CONFIG_SELECT_VARIANT#
-
variant_CONFIG_OMIT_VARIANT_SIZE_V_MACRO#
-
variant_CONFIG_OMIT_VARIANT_ALTERNATIVE_T_MACRO#
-
variant_CONFIG_NO_EXCEPTIONS#
-
variant_CPLUSPLUS#
-
variant_CPP98_OR_GREATER#
-
variant_CPP11_OR_GREATER#
-
variant_CPP11_OR_GREATER_#
-
variant_CPP14_OR_GREATER#
-
variant_CPP17_OR_GREATER#
-
variant_CPP20_OR_GREATER#
-
variant_HAVE_STD_VARIANT#
-
variant_USES_STD_VARIANT#
-
nonstd_lite_HAVE_IN_PLACE_TYPES
-
nonstd_lite_in_place_t(T)
-
nonstd_lite_in_place_type_t(T)
-
nonstd_lite_in_place_index_t(K)
-
nonstd_lite_in_place(T)
-
nonstd_lite_in_place_type(T)
-
nonstd_lite_in_place_index(K)
-
variant_CONFIG_MAX_TYPE_COUNT#
-
variant_CONFIG_MAX_VISITOR_ARG_COUNT#
-
variant_CONFIG_MAX_ALIGN_HACK#
-
variant_CONFIG_ALIGN_AS_FALLBACK#
-
variant_BETWEEN(v, lo, hi)#
-
variant_COMPILER_MSVC_VER#
-
variant_COMPILER_MSVC_VERSION#
-
variant_COMPILER_VERSION(major, minor, patch)#
-
variant_COMPILER_CLANG_VERSION#
-
variant_COMPILER_GNUC_VERSION#
-
variant_HAVE(feature)#
-
variant_HAS_CPP0X#
-
variant_CPP11_90#
-
variant_CPP11_100#
-
variant_CPP11_110#
-
variant_CPP11_120#
-
variant_CPP11_140#
-
variant_CPP11_141#
-
variant_CPP14_000#
-
variant_CPP17_000#
-
variant_HAVE_CONSTEXPR_11#
-
variant_HAVE_INITIALIZER_LIST#
-
variant_HAVE_NOEXCEPT#
-
variant_HAVE_NULLPTR#
-
variant_HAVE_OVERRIDE#
-
variant_HAVE_CONSTEXPR_14#
-
variant_HAVE_CONDITIONAL#
-
variant_HAVE_REMOVE_CV#
-
variant_HAVE_STD_ADD_POINTER#
-
variant_HAVE_TYPE_TRAITS#
-
variant_HAVE_TR1_TYPE_TRAITS#
-
variant_HAVE_TR1_ADD_POINTER#
-
variant_constexpr#
-
variant_constexpr14#
-
variant_noexcept#
-
variant_nullptr#
-
variant_override#
-
variant_TL1(T1)#
-
variant_TL2(T1, T2)#
-
variant_TL3(T1, T2, T3)#
-
variant_TL4(T1, T2, T3, T4)#
-
variant_TL5(T1, T2, T3, T4, T5)#
-
variant_TL6(T1, T2, T3, T4, T5, T6)#
-
variant_TL7(T1, T2, T3, T4, T5, T6, T7)#
-
variant_TL8(T1, T2, T3, T4, T5, T6, T7, T8)#
-
variant_TL9(T1, T2, T3, T4, T5, T6, T7, T8, T9)#
-
variant_TL10(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)#
-
variant_TL11(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)#
-
variant_TL12(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)#
-
variant_TL13(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)#
-
variant_TL14(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)#
-
variant_TL15(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)#
-
variant_TL16(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)#
-
variant_ALIGN_AS(to_align)#
-
variant_ALIGN_TYPE(type)#
-
variant_size_V(T)#
-
variant_alternative_T(K, T)#
-
NONSTD_VARIANT_LITE_HPP#
- file timer.h
- #include <chrono>
- dir common
- dir src
- dir tabulate