KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
Namespaces | Macros
define.h File Reference
#include <stdexcept>
#include <sstream>
#include "includes/kratos_export_api.h"
#include "includes/smart_pointers.h"
#include "includes/exception.h"
Include dependency graph for define.h:

Go to the source code of this file.

Namespaces

 Kratos
 REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
 

Macros

#define KRATOS_ENV32BIT
 
#define KRATOS_CATCH_AND_THROW(ExceptionType, MoreInfo, Block)
 
#define KRATOS_THROW_ERROR(ExceptionType, ErrorMessage, MoreInfo)
 
#define KRATOS_CATCH_WITH_BLOCK(MoreInfo, Block)
 
#define KRATOS_CATCH_BLOCK_BEGIN   class ExceptionBlock{public: void operator()(void){
 
#define KRATOS_CATCH_BLOCK_END   }} exception_block; exception_block();
 
#define KRATOS_TRY_IMPL   try {
 
#define KRATOS_CATCH_IMPL(MoreInfo)   KRATOS_CATCH_WITH_BLOCK(MoreInfo,{})
 
#define KRATOS_TRY   KRATOS_TRY_IMPL
 
#define KRATOS_CATCH(MoreInfo)   KRATOS_CATCH_IMPL(MoreInfo)
 
#define KRATOS_EXPORT_MACRO   KRATOS_NO_EXPORT
 
#define KRATOS_DEFINE_VARIABLE_IMPLEMENTATION(module, type, name)    KRATOS_EXPORT_MACRO(module) extern Variable<type > name;
 
#define KRATOS_DEFINE_VARIABLE(type, name)    KRATOS_DEFINE_VARIABLE_IMPLEMENTATION(KRATOS_CORE, type, name)
 
#define KRATOS_DEFINE_APPLICATION_VARIABLE(application, type, name)    KRATOS_API(application) extern Variable<type > name;
 
#define KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(module, name)
 
#define KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS(name)    KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)
 
#define KRATOS_DEFINE_3D_APPLICATION_VARIABLE_WITH_COMPONENTS(application, name)
 
#define KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(module, name)
 
#define KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)
 
#define KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS(application, name)
 
#define KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(module, name)
 
#define KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)
 
#define KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS(application, name)
 
#define KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(module, name)
 
#define KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)
 
#define KRATOS_DEFINE_2D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS(application, name)
 
#define KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(module, name)
 
#define KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)
 
#define KRATOS_DEFINE_3D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS(application, name)
 
#define KRATOS_CREATE_VARIABLE(type, name)    /*const*/ Kratos::Variable<type > name(#name);
 
#define KRATOS_CREATE_VARIABLE_WITH_ZERO(type, name, zero)    /*const*/ Kratos::Variable<type> name(#name, zero);
 
#define KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS(name, component1, component2, component3)
 
#define KRATOS_CREATE_3D_VARIABLE_WITH_COMPONENTS(name)    KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS(name, name##_X, name##_Y, name##_Z)
 
#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, component1, component2, component3)
 
#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_YY, name##_XY)
 
#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, component1, component2, component3, component4, component5, component6)
 
#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_YY, name##_ZZ, name##_XY, name##_YZ, name##_XZ)
 
#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, component1, component2, component3, component4)
 
#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_XY, name##_YX, name##_YY)
 
#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, component1, component2, component3, component4, component5, component6, component7, component8, component9)
 
#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_COMPONENTS(name)    KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_XY, name##_XZ, name##_YX, name##_YY, name##_YZ, name##_ZX, name##_ZY, name##_ZZ)
 
#define KRATOS_REGISTER_VARIABLE(name)
 
#define KRATOS_REGISTER_3D_VARIABLE_WITH_COMPONENTS(name)
 
#define KRATOS_REGISTER_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS(name)
 
#define KRATOS_REGISTER_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS(name)
 
#define KRATOS_REGISTER_2D_TENSOR_VARIABLE_WITH_COMPONENTS(name)
 
#define KRATOS_REGISTER_3D_TENSOR_VARIABLE_WITH_COMPONENTS(name)
 
#define KRATOS_CREATE_VARIABLE_WITH_TIME_DERIVATIVE(type, name, variable_derivative)    /*const*/ Kratos::Variable<type > name(#name, &variable_derivative);
 
#define KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, component1, component2, component3, variable_derivative)
 
#define KRATOS_CREATE_3D_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE(name, variable_derivative)    KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_X, name##_Y, name##_Z, variable_derivative)
 
#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, component1, component2, component3, variable_derivative)
 
#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE(name, variable_derivative)    KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_YY, name##_XY, variable_derivative)
 
#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, component1, component2, component3, component4, component5, component6, variable_derivative)
 
#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE(name, variable_derivative)    KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_YY, name##_ZZ, name##_XY, name##_YZ, name##_XZ, variable_derivative)
 
#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, component1, component2, component3, component4, variable_derivative)
 
#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE(name, variable_derivative)    KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_XY, name##_YX, name##_YY, variable_derivative)
 
#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, component1, component2, component3, component4, component5, component6, component7, component8, component9, variable_derivative)
 
#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE(name, variable_derivative)    KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_XY, name##_XZ, name##_YX, name##_YY, name##_YZ, name##_ZX, name##_ZY, name##_ZZ, variable_derivative)
 
#define KRATOS_DEFINE_FLAG(name)    extern const Kratos::Flags name;
 
#define KRATOS_ADD_FLAG_TO_KRATOS_COMPONENTS(name)    Kratos::KratosComponents<Kratos::Flags>::Add(#name, name)
 
#define KRATOS_CREATE_FLAG(name, position)    const Kratos::Flags name(Kratos::Flags::Create(position));
 
#define KRATOS_REGISTER_FLAG(name)    KRATOS_ADD_FLAG_TO_KRATOS_COMPONENTS(name);
 
#define KRATOS_DEFINE_LOCAL_FLAG(name)    static const Kratos::Flags name;
 
#define KRATOS_DEFINE_LOCAL_APPLICATION_FLAG(application, name)    static KRATOS_API(application) const Kratos::Flags name;
 
#define KRATOS_CREATE_LOCAL_FLAG(class_name, name, position)    const Kratos::Flags class_name::name(Kratos::Flags::Create(position));
 
#define KRATOS_REGISTER_GEOMETRY(name, reference)
 
#define KRATOS_REGISTER_ELEMENT(name, reference)
 
#define KRATOS_REGISTER_CONDITION(name, reference)
 
#define KRATOS_REGISTER_CONSTRAINT(name, reference)
 
#define KRATOS_REGISTER_MODELER(name, reference)
 
#define KRATOS_REGISTER_CONSTITUTIVE_LAW(name, reference)
 
#define KRATOS_DEPRECATED   [[deprecated]]
 
#define KRATOS_DEPRECATED_MESSAGE(deprecated_message)   [[deprecated(deprecated_message)]]
 
#define KRATOS_START_IGNORING_DEPRECATED_FUNCTION_WARNING
 
#define KRATOS_STOP_IGNORING_DEPRECATED_FUNCTION_WARNING
 
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)    Serializer.save_base("BaseClass",*static_cast<const BaseType *>(this));
 
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)    Serializer.load_base("BaseClass",*static_cast<BaseType *>(this));
 
Type Definitions
#define KRATOS_TYPE_NAME_OF(name)   name##Type
 
#define KRATOS_NOT_EXCLUDED(filename)   !defined(KRATOS_##filename##_EXCLUDED)
 
#define KRATOS_DECLEAR_TYPE   namespace KratosComponents{ typedef
 
#define KRATOS_FOR_COMPONENT_NAMED(name)   KRATOS_TYPE_NAME_OF(name);}
 
#define KRATOS_WATCH(variable)   std::cout << #variable << " : " << variable << std::endl;
 
#define KRATOS_WATCH_CERR(variable)   std::cerr << #variable << " : " << variable << std::endl;
 
#define KRATOS_WATCH_MPI(variable, mpi_data_comm)   std::cout << "RANK " << mpi_data_comm.Rank() << "/" << mpi_data_comm.Size() << " "; KRATOS_WATCH(variable);
 

Macro Definition Documentation

◆ KRATOS_ADD_FLAG_TO_KRATOS_COMPONENTS

#define KRATOS_ADD_FLAG_TO_KRATOS_COMPONENTS (   name)     Kratos::KratosComponents<Kratos::Flags>::Add(#name, name)

◆ KRATOS_CATCH

#define KRATOS_CATCH (   MoreInfo)    KRATOS_CATCH_IMPL(MoreInfo)

◆ KRATOS_CATCH_AND_THROW

#define KRATOS_CATCH_AND_THROW (   ExceptionType,
  MoreInfo,
  Block 
)
Value:
catch(ExceptionType& e) \
{ \
Block \
KRATOS_ERROR << e.what(); \
}
e
Definition: run_cpp_mpi_tests.py:31

◆ KRATOS_CATCH_BLOCK_BEGIN

#define KRATOS_CATCH_BLOCK_BEGIN   class ExceptionBlock{public: void operator()(void){

◆ KRATOS_CATCH_BLOCK_END

#define KRATOS_CATCH_BLOCK_END   }} exception_block; exception_block();

◆ KRATOS_CATCH_IMPL

#define KRATOS_CATCH_IMPL (   MoreInfo)    KRATOS_CATCH_WITH_BLOCK(MoreInfo,{})

◆ KRATOS_CATCH_WITH_BLOCK

#define KRATOS_CATCH_WITH_BLOCK (   MoreInfo,
  Block 
)
Value:
} \
KRATOS_CATCH_AND_THROW(std::overflow_error,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::underflow_error,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::range_error,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::out_of_range,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::length_error,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::invalid_argument,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::domain_error,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::logic_error,MoreInfo,Block) \
KRATOS_CATCH_AND_THROW(std::runtime_error,MoreInfo,Block) \
catch(Exception& e) { Block throw Exception(e) << KRATOS_CODE_LOCATION << MoreInfo << std::endl; } \
catch(std::exception& e) { Block KRATOS_THROW_ERROR(std::runtime_error, e.what(), MoreInfo) } \
catch(...) { Block KRATOS_THROW_ERROR(std::runtime_error, "Unknown error", MoreInfo) }
#define KRATOS_CODE_LOCATION
Definition: code_location.h:133
#define KRATOS_THROW_ERROR(ExceptionType, ErrorMessage, MoreInfo)
Definition: define.h:77

◆ KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_XY, name##_YX, name##_YY)

◆ KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  variable_derivative 
)     KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_XY, name##_YX, name##_YY, variable_derivative)

◆ KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS

#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS (   name,
  component1,
  component2,
  component3,
  component4 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 4> > name(#name, Kratos::zero_vector<double>(4)); \
\
component1(#component1, &name, 0); \
\
component2(#component2, &name, 1); \
\
component3(#component3, &name, 2); \
\
component4(#component4, &name, 3);
Variable class contains all information needed to store and retrive data from a data container.
Definition: variable.h:63

◆ KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  component1,
  component2,
  component3,
  component4,
  variable_derivative 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 4> > name(#name, Kratos::zero_vector<double>(4), &variable_derivative); \
\
component1(#component1, &name, 0, &variable_derivative##_XX); \
\
component2(#component2, &name, 1, &variable_derivative##_XY); \
\
component3(#component3, &name, 2, &variable_derivative##_YX); \
\
component4(#component4, &name, 3, &variable_derivative##_YY);

◆ KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_XY, name##_XZ, name##_YX, name##_YY, name##_YZ, name##_ZX, name##_ZY, name##_ZZ)

◆ KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  variable_derivative 
)     KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_XY, name##_XZ, name##_YX, name##_YY, name##_YZ, name##_ZX, name##_ZY, name##_ZZ, variable_derivative)

◆ KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS

#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS (   name,
  component1,
  component2,
  component3,
  component4,
  component5,
  component6,
  component7,
  component8,
  component9 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 9> > name(#name, Kratos::zero_vector<double>(9)); \
\
component1(#component1, &name, 0); \
\
component2(#component2, &name, 1); \
\
component3(#component3, &name, 2); \
\
component4(#component4, &name, 3); \
\
component5(#component5, &name, 4); \
\
component6(#component6, &name, 5); \
\
component7(#component7, &name, 6); \
\
component8(#component8, &name, 7); \
\
component9(#component9, &name, 8);

◆ KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  component1,
  component2,
  component3,
  component4,
  component5,
  component6,
  component7,
  component8,
  component9,
  variable_derivative 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 9> > name(#name, Kratos::zero_vector<double>(9), &variable_derivative); \
\
component1(#component1, &name, 0, &variable_derivative##_XX); \
\
component2(#component2, &name, 1, &variable_derivative##_XY); \
\
component3(#component3, &name, 2, &variable_derivative##_XZ); \
\
component4(#component4, &name, 3, &variable_derivative##_YX); \
\
component5(#component5, &name, 4, &variable_derivative##_YY); \
\
component6(#component6, &name, 5, &variable_derivative##_YZ); \
\
component7(#component7, &name, 6, &variable_derivative##_ZX); \
\
component8(#component8, &name, 7, &variable_derivative##_ZY); \
\
component9(#component9, &name, 8, &variable_derivative##_ZZ);

◆ KRATOS_CREATE_3D_VARIABLE_WITH_COMPONENTS

#define KRATOS_CREATE_3D_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS(name, name##_X, name##_Y, name##_Z)

◆ KRATOS_CREATE_3D_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_3D_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  variable_derivative 
)     KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_X, name##_Y, name##_Z, variable_derivative)

◆ KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS

#define KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS (   name,
  component1,
  component2,
  component3 
)
Value:
\
component1(#component1, &name, 0); \
\
component2(#component2, &name, 1); \
\
component3(#component3, &name, 2);
Definition: amatrix_interface.h:530

◆ KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_3D_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  component1,
  component2,
  component3,
  variable_derivative 
)
Value:
\
component1(#component1, &name, 0, &variable_derivative##_X); \
\
component2(#component2, &name, 1, &variable_derivative##_Y); \
\
component3(#component3, &name, 2, &variable_derivative##_Z);

◆ KRATOS_CREATE_FLAG

#define KRATOS_CREATE_FLAG (   name,
  position 
)     const Kratos::Flags name(Kratos::Flags::Create(position));

◆ KRATOS_CREATE_LOCAL_FLAG

#define KRATOS_CREATE_LOCAL_FLAG (   class_name,
  name,
  position 
)     const Kratos::Flags class_name::name(Kratos::Flags::Create(position));

◆ KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_YY, name##_XY)

◆ KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  variable_derivative 
)     KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_YY, name##_XY, variable_derivative)

◆ KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS

#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS (   name,
  component1,
  component2,
  component3 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 3> > name(#name, Kratos::zero_vector<double>(3)); \
\
component1(#component1, &name, 0); \
\
component2(#component2, &name, 1); \
\
component3(#component3, &name, 2);

◆ KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  component1,
  component2,
  component3,
  variable_derivative 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 3> > name(#name, Kratos::zero_vector<double>(3), &variable_derivative); \
\
component1(#component1, &name, 0, &variable_derivative##_XX); \
\
component2(#component2, &name, 1, &variable_derivative##_YY); \
\
component3(#component3, &name, 2, &variable_derivative##_XY);

◆ KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS(name, name##_XX, name##_YY, name##_ZZ, name##_XY, name##_YZ, name##_XZ)

◆ KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  variable_derivative 
)     KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE(name, name##_XX, name##_YY, name##_ZZ, name##_XY, name##_YZ, name##_XZ, variable_derivative)

◆ KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS

#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS (   name,
  component1,
  component2,
  component3,
  component4,
  component5,
  component6 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 6> > name(#name, Kratos::zero_vector<double>(6)); \
\
component1(#component1, &name, 0); \
\
component2(#component2, &name, 1); \
\
component3(#component3, &name, 2); \
\
component4(#component4, &name, 3); \
\
component5(#component5, &name, 4); \
\
component6(#component6, &name, 5);

◆ KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_THIS_COMPONENTS_WITH_TIME_DERIVATIVE (   name,
  component1,
  component2,
  component3,
  component4,
  component5,
  component6,
  variable_derivative 
)
Value:
/*const*/ Kratos::Variable<Kratos::array_1d<double, 6> > name(#name, Kratos::zero_vector<double>(6), &variable_derivative); \
\
component1(#component1, &name, 0, &variable_derivative##_XX); \
\
component2(#component2, &name, 1, &variable_derivative##_YY); \
\
component3(#component3, &name, 2, &variable_derivative##_ZZ); \
\
component4(#component4, &name, 3, &variable_derivative##_XY); \
\
component5(#component5, &name, 4, &variable_derivative##_YZ); \
\
component6(#component6, &name, 5, &variable_derivative##_XZ);

◆ KRATOS_CREATE_VARIABLE

#define KRATOS_CREATE_VARIABLE (   type,
  name 
)     /*const*/ Kratos::Variable<type > name(#name);

◆ KRATOS_CREATE_VARIABLE_WITH_TIME_DERIVATIVE

#define KRATOS_CREATE_VARIABLE_WITH_TIME_DERIVATIVE (   type,
  name,
  variable_derivative 
)     /*const*/ Kratos::Variable<type > name(#name, &variable_derivative);

◆ KRATOS_CREATE_VARIABLE_WITH_ZERO

#define KRATOS_CREATE_VARIABLE_WITH_ZERO (   type,
  name,
  zero 
)     /*const*/ Kratos::Variable<type> name(#name, zero);

◆ KRATOS_DECLEAR_TYPE

#define KRATOS_DECLEAR_TYPE   namespace KratosComponents{ typedef

◆ KRATOS_DEFINE_2D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_2D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS (   application,
  name 
)
Value:
KRATOS_API(application) extern Kratos::Variable<double> name##_XX;\
KRATOS_API(application) extern Kratos::Variable<double> name##_XY;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YX;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YY;
#define KRATOS_API(...)
Definition: kratos_export_api.h:40
application
Definition: CableNetApplication.py:6

◆ KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)

◆ KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION

#define KRATOS_DEFINE_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION (   module,
  name 
)
Value:
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XX;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XY;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YX;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YY;
#define KRATOS_EXPORT_MACRO
Definition: define.h:122
static void module(const array_1d< double, 3 > &Vector, double &distance)
Definition: GeometryFunctions.h:127

◆ KRATOS_DEFINE_3D_APPLICATION_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_3D_APPLICATION_VARIABLE_WITH_COMPONENTS (   application,
  name 
)
Value:
KRATOS_API(application) extern Kratos::Variable<double> name##_X;\
KRATOS_API(application) extern Kratos::Variable<double> name##_Y;\
KRATOS_API(application) extern Kratos::Variable<double> name##_Z;

◆ KRATOS_DEFINE_3D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_3D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS (   application,
  name 
)
Value:
KRATOS_API(application) extern Kratos::Variable<double> name##_XX;\
KRATOS_API(application) extern Kratos::Variable<double> name##_XY;\
KRATOS_API(application) extern Kratos::Variable<double> name##_XZ;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YX;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YY;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YZ;\
KRATOS_API(application) extern Kratos::Variable<double> name##_ZX;\
KRATOS_API(application) extern Kratos::Variable<double> name##_ZY;\
KRATOS_API(application) extern Kratos::Variable<double> name##_ZZ;

◆ KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)

◆ KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION

#define KRATOS_DEFINE_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION (   module,
  name 
)
Value:
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XX;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XY;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XZ;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YX;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YY;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YZ;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_ZX;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_ZY;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_ZZ;

◆ KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)

◆ KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION

#define KRATOS_DEFINE_3D_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION (   module,
  name 
)
Value:
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_X;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_Y;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_Z;

◆ KRATOS_DEFINE_APPLICATION_VARIABLE

#define KRATOS_DEFINE_APPLICATION_VARIABLE (   application,
  type,
  name 
)     KRATOS_API(application) extern Variable<type > name;

◆ KRATOS_DEFINE_FLAG

#define KRATOS_DEFINE_FLAG (   name)     extern const Kratos::Flags name;

◆ KRATOS_DEFINE_LOCAL_APPLICATION_FLAG

#define KRATOS_DEFINE_LOCAL_APPLICATION_FLAG (   application,
  name 
)     static KRATOS_API(application) const Kratos::Flags name;

◆ KRATOS_DEFINE_LOCAL_FLAG

#define KRATOS_DEFINE_LOCAL_FLAG (   name)     static const Kratos::Flags name;

◆ KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS (   application,
  name 
)
Value:
KRATOS_API(application) extern Kratos::Variable<double> name##_XX;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YY;\
KRATOS_API(application) extern Kratos::Variable<double> name##_XY;

◆ KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)

◆ KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION

#define KRATOS_DEFINE_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION (   module,
  name 
)
Value:
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XX;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YY;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XY;

◆ KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_APPLICATION_VARIABLE_WITH_COMPONENTS (   application,
  name 
)
Value:
KRATOS_API(application) extern Kratos::Variable<double> name##_XX;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YY;\
KRATOS_API(application) extern Kratos::Variable<double> name##_ZZ;\
KRATOS_API(application) extern Kratos::Variable<double> name##_XY;\
KRATOS_API(application) extern Kratos::Variable<double> name##_YZ;\
KRATOS_API(application) extern Kratos::Variable<double> name##_XZ;

◆ KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)     KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION(KRATOS_CORE, name)

◆ KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION

#define KRATOS_DEFINE_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS_IMPLEMENTATION (   module,
  name 
)
Value:
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XX;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YY;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_ZZ;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XY;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_YZ;\
KRATOS_EXPORT_MACRO(module) extern Kratos::Variable<double> name##_XZ;

◆ KRATOS_DEFINE_VARIABLE

#define KRATOS_DEFINE_VARIABLE (   type,
  name 
)     KRATOS_DEFINE_VARIABLE_IMPLEMENTATION(KRATOS_CORE, type, name)

◆ KRATOS_DEFINE_VARIABLE_IMPLEMENTATION

#define KRATOS_DEFINE_VARIABLE_IMPLEMENTATION (   module,
  type,
  name 
)     KRATOS_EXPORT_MACRO(module) extern Variable<type > name;

◆ KRATOS_DEPRECATED

#define KRATOS_DEPRECATED   [[deprecated]]

◆ KRATOS_DEPRECATED_MESSAGE

#define KRATOS_DEPRECATED_MESSAGE (   deprecated_message)    [[deprecated(deprecated_message)]]

◆ KRATOS_ENV32BIT

#define KRATOS_ENV32BIT

◆ KRATOS_EXPORT_MACRO

#define KRATOS_EXPORT_MACRO   KRATOS_NO_EXPORT

◆ KRATOS_FOR_COMPONENT_NAMED

#define KRATOS_FOR_COMPONENT_NAMED (   name)    KRATOS_TYPE_NAME_OF(name);}

◆ KRATOS_NOT_EXCLUDED

#define KRATOS_NOT_EXCLUDED (   filename)    !defined(KRATOS_##filename##_EXCLUDED)

◆ KRATOS_REGISTER_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)
Value:
KRATOS_REGISTER_VARIABLE(name##_XX) \
KRATOS_REGISTER_VARIABLE(name##_XY) \
KRATOS_REGISTER_VARIABLE(name##_YX) \
KRATOS_REGISTER_VARIABLE(name##_YY)
#define KRATOS_REGISTER_VARIABLE(name)
Definition: define.h:432

◆ KRATOS_REGISTER_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)
Value:
KRATOS_REGISTER_VARIABLE(name##_XX) \
KRATOS_REGISTER_VARIABLE(name##_XY) \
KRATOS_REGISTER_VARIABLE(name##_XZ) \
KRATOS_REGISTER_VARIABLE(name##_YX) \
KRATOS_REGISTER_VARIABLE(name##_YY) \
KRATOS_REGISTER_VARIABLE(name##_YZ) \
KRATOS_REGISTER_VARIABLE(name##_ZX) \
KRATOS_REGISTER_VARIABLE(name##_ZY) \
KRATOS_REGISTER_VARIABLE(name##_ZZ)

◆ KRATOS_REGISTER_3D_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_3D_VARIABLE_WITH_COMPONENTS (   name)
Value:
KRATOS_REGISTER_VARIABLE(name##_X) \
KRATOS_REGISTER_VARIABLE(name##_Y) \
KRATOS_REGISTER_VARIABLE(name##_Z)

◆ KRATOS_REGISTER_CONDITION

#define KRATOS_REGISTER_CONDITION (   name,
  reference 
)
Value:
KratosComponents<Condition >::Add(name, reference); \
Serializer::Register(name, reference);

◆ KRATOS_REGISTER_CONSTITUTIVE_LAW

#define KRATOS_REGISTER_CONSTITUTIVE_LAW (   name,
  reference 
)
Value:
KratosComponents<ConstitutiveLaw >::Add(name, reference); \
Serializer::Register(name, reference);

◆ KRATOS_REGISTER_CONSTRAINT

#define KRATOS_REGISTER_CONSTRAINT (   name,
  reference 
)
Value:
KratosComponents<MasterSlaveConstraint >::Add(name, reference); \
Serializer::Register(name, reference);

◆ KRATOS_REGISTER_ELEMENT

#define KRATOS_REGISTER_ELEMENT (   name,
  reference 
)
Value:
KratosComponents<Element >::Add(name, reference); \
Serializer::Register(name, reference);

◆ KRATOS_REGISTER_FLAG

#define KRATOS_REGISTER_FLAG (   name)     KRATOS_ADD_FLAG_TO_KRATOS_COMPONENTS(name);

◆ KRATOS_REGISTER_GEOMETRY

#define KRATOS_REGISTER_GEOMETRY (   name,
  reference 
)
Value:
KratosComponents<Geometry<Node>>::Add(name, reference); \
Serializer::Register(name, reference);

◆ KRATOS_REGISTER_MODELER

#define KRATOS_REGISTER_MODELER (   name,
  reference 
)
Value:
KratosComponents<Modeler>::Add(name, reference); \
Serializer::Register(name, reference);

◆ KRATOS_REGISTER_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)
Value:
KRATOS_REGISTER_VARIABLE(name##_XX) \
KRATOS_REGISTER_VARIABLE(name##_YY) \
KRATOS_REGISTER_VARIABLE(name##_XY)

◆ KRATOS_REGISTER_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   name)
Value:
KRATOS_REGISTER_VARIABLE(name##_XX) \
KRATOS_REGISTER_VARIABLE(name##_YY) \
KRATOS_REGISTER_VARIABLE(name##_ZZ) \
KRATOS_REGISTER_VARIABLE(name##_XY) \
KRATOS_REGISTER_VARIABLE(name##_YZ) \
KRATOS_REGISTER_VARIABLE(name##_XZ)

◆ KRATOS_REGISTER_VARIABLE

#define KRATOS_REGISTER_VARIABLE (   name)
Value:
AddKratosComponent(name.Name(), name); \
KratosComponents<VariableData>::Add(name.Name(), name);
void AddKratosComponent(std::string const &Name, ExplicitBuilderType const &ThisComponent)
Definition: register_factories.cpp:23

◆ KRATOS_SERIALIZE_LOAD_BASE_CLASS

#define KRATOS_SERIALIZE_LOAD_BASE_CLASS (   Serializer,
  BaseType 
)     Serializer.load_base("BaseClass",*static_cast<BaseType *>(this));

◆ KRATOS_SERIALIZE_SAVE_BASE_CLASS

#define KRATOS_SERIALIZE_SAVE_BASE_CLASS (   Serializer,
  BaseType 
)     Serializer.save_base("BaseClass",*static_cast<const BaseType *>(this));

◆ KRATOS_START_IGNORING_DEPRECATED_FUNCTION_WARNING

#define KRATOS_START_IGNORING_DEPRECATED_FUNCTION_WARNING

◆ KRATOS_STOP_IGNORING_DEPRECATED_FUNCTION_WARNING

#define KRATOS_STOP_IGNORING_DEPRECATED_FUNCTION_WARNING

◆ KRATOS_THROW_ERROR

#define KRATOS_THROW_ERROR (   ExceptionType,
  ErrorMessage,
  MoreInfo 
)
Value:
{ \
KRATOS_ERROR << ErrorMessage << MoreInfo << std::endl; \
}

◆ KRATOS_TRY

#define KRATOS_TRY   KRATOS_TRY_IMPL

◆ KRATOS_TRY_IMPL

#define KRATOS_TRY_IMPL   try {

◆ KRATOS_TYPE_NAME_OF

#define KRATOS_TYPE_NAME_OF (   name)    name##Type

◆ KRATOS_WATCH

#define KRATOS_WATCH (   variable)    std::cout << #variable << " : " << variable << std::endl;

◆ KRATOS_WATCH_CERR

#define KRATOS_WATCH_CERR (   variable)    std::cerr << #variable << " : " << variable << std::endl;

◆ KRATOS_WATCH_MPI

#define KRATOS_WATCH_MPI (   variable,
  mpi_data_comm 
)    std::cout << "RANK " << mpi_data_comm.Rank() << "/" << mpi_data_comm.Size() << " "; KRATOS_WATCH(variable);