suanPan
suanpan Namespace Reference

Namespaces

 damping
 
 mass
 

Typedefs

template<typename T >
using vector = std::vector< T >
 
template<typename T >
using set = std::set< T >
 
template<typename T >
using unordered_set = std::unordered_set< T >
 
template<typename T , typename D >
using map = std::map< T, D >
 
template<typename T , typename D >
using unordered_map = std::unordered_map< T, D >
 
template<typename T >
using graph = vector< set< T > >
 

Functions

unique_ptr< Materialmake_copy (const shared_ptr< Material > &)
 
unique_ptr< Materialmake_copy (const unique_ptr< Material > &)
 
unique_ptr< Materialinitialized_material_copy (const shared_ptr< DomainBase > &, uword)
 This function checks if the corresponding material model exists, if yes make a copy and ensure all initialisations succeed, in case of any errors, it returns nullptr. More...
 
unique_ptr< Sectionmake_copy (const shared_ptr< Section > &)
 
unique_ptr< Sectionmake_copy (const unique_ptr< Section > &)
 
unique_ptr< Sectioninitialized_section_copy (const shared_ptr< DomainBase > &, uword)
 
unique_ptr< SectionShellmake_copy (const shared_ptr< SectionShell > &)
 
unique_ptr< SectionShellmake_copy (const unique_ptr< SectionShell > &)
 
template<class IN , class FN >
void for_all (IN &from, FN &&func)
 
template<typename T >
ramp (const T in)
 
template<typename T >
const std::vector< T > & unique (std::vector< T > &container)
 
template<typename T >
constexpr T & hacker (const T &I)
 
template<typename T >
constexpr T *& hacker (const T *const &I)
 
template<typename T >
sign (const T &I)
 
template<typename T >
std::enable_if_t<!std::numeric_limits< T >::is_integer, bool > approx_equal (T x, T y, int ulp=2)
 
unsigned long long binomial (unsigned long long, unsigned long long)
 
char to_upper (char)
 
char to_lower (char)
 
void to_upper (string &)
 
void to_lower (string &)
 
string to_upper (const string &)
 
string to_lower (const string &)
 
string to_upper (string &&)
 
string to_lower (string &&)
 

Variables

std::mutex print_mutex
 

Typedef Documentation

◆ graph

template<typename T >
using suanpan::graph = typedef vector<set<T> >

◆ map

template<typename T , typename D >
using suanpan::map = typedef std::map<T, D>

◆ set

template<typename T >
using suanpan::set = typedef std::set<T>

◆ unordered_map

template<typename T , typename D >
using suanpan::unordered_map = typedef std::unordered_map<T, D>

◆ unordered_set

template<typename T >
using suanpan::unordered_set = typedef std::unordered_set<T>

◆ vector

template<typename T >
using suanpan::vector = typedef std::vector<T>

Function Documentation

◆ approx_equal()

template<typename T >
std::enable_if_t<!std::numeric_limits<T>::is_integer, bool> suanpan::approx_equal ( x,
y,
int  ulp = 2 
)
Here is the caller graph for this function:

◆ binomial()

unsigned long long suanpan::binomial ( unsigned long long  n,
unsigned long long  k 
)
Here is the caller graph for this function:

◆ for_all()

template<class IN , class FN >
void suanpan::for_all ( IN &  from,
FN &&  func 
)
Here is the caller graph for this function:

◆ hacker() [1/2]

template<typename T >
constexpr T& suanpan::hacker ( const T &  I)
constexpr
Here is the caller graph for this function:

◆ hacker() [2/2]

template<typename T >
constexpr T*& suanpan::hacker ( const T *const &  I)
constexpr

◆ initialized_material_copy()

unique_ptr< Material > suanpan::initialized_material_copy ( const shared_ptr< DomainBase > &  D,
uword  T 
)

This function checks if the corresponding material model exists, if yes make a copy and ensure all initialisations succeed, in case of any errors, it returns nullptr.

Parameters
Dglobal storage domain
Tmaterial tag
Returns
local copy of material object
Here is the caller graph for this function:

◆ initialized_section_copy()

unique_ptr< Section > suanpan::initialized_section_copy ( const shared_ptr< DomainBase > &  D,
uword  T 
)
Here is the caller graph for this function:

◆ make_copy() [1/6]

unique_ptr< Material > suanpan::make_copy ( const shared_ptr< Material > &  P)
Here is the caller graph for this function:

◆ make_copy() [2/6]

unique_ptr< Section > suanpan::make_copy ( const shared_ptr< Section > &  S)

◆ make_copy() [3/6]

unique_ptr< SectionShell > suanpan::make_copy ( const shared_ptr< SectionShell > &  S)

◆ make_copy() [4/6]

unique_ptr< Material > suanpan::make_copy ( const unique_ptr< Material > &  P)

◆ make_copy() [5/6]

unique_ptr< Section > suanpan::make_copy ( const unique_ptr< Section > &  S)

◆ make_copy() [6/6]

unique_ptr< SectionShell > suanpan::make_copy ( const unique_ptr< SectionShell > &  S)

◆ ramp()

template<typename T >
T suanpan::ramp ( const T  in)
Here is the caller graph for this function:

◆ sign()

template<typename T >
T suanpan::sign ( const T &  I)
Here is the caller graph for this function:

◆ to_lower() [1/4]

char suanpan::to_lower ( char  L)
Here is the caller graph for this function:

◆ to_lower() [2/4]

string suanpan::to_lower ( const string &  U)
Here is the call graph for this function:

◆ to_lower() [3/4]

string suanpan::to_lower ( string &&  U)
Here is the call graph for this function:

◆ to_lower() [4/4]

void suanpan::to_lower ( string &  U)

◆ to_upper() [1/4]

char suanpan::to_upper ( char  U)
Here is the caller graph for this function:

◆ to_upper() [2/4]

string suanpan::to_upper ( const string &  U)
Here is the call graph for this function:

◆ to_upper() [3/4]

string suanpan::to_upper ( string &&  U)
Here is the call graph for this function:

◆ to_upper() [4/4]

void suanpan::to_upper ( string &  U)

◆ unique()

template<typename T >
const std::vector<T>& suanpan::unique ( std::vector< T > &  container)
Here is the caller graph for this function:

Variable Documentation

◆ print_mutex

std::mutex suanpan::print_mutex