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.
Macros | Functions
define_python.h File Reference
#include <pybind11/pybind11.h>
#include "intrusive_ptr/intrusive_ptr.hpp"
#include <pybind11/stl.h>
#include <pybind11/stl/filesystem.h>
#include "includes/define.h"
Include dependency graph for define_python.h:

Go to the source code of this file.

Macros

#define KRATOS_REGISTER_IN_PYTHON_VARIABLE(module, variable)    module.attr(#variable) = &variable;
 
#define KRATOS_REGISTER_IN_PYTHON_3D_VARIABLE_WITH_COMPONENTS(module, name)
 
#define KRATOS_REGISTER_IN_PYTHON_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS(module, name)
 
#define KRATOS_REGISTER_IN_PYTHON_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS(module, name)
 
#define KRATOS_REGISTER_IN_PYTHON_2D_TENSOR_VARIABLE_WITH_COMPONENTS(module, name)
 
#define KRATOS_REGISTER_IN_PYTHON_3D_TENSOR_VARIABLE_WITH_COMPONENTS(module, name)
 
#define KRATOS_REGISTER_IN_PYTHON_FLAG_IMPLEMENTATION(module, flag)    module.attr(#flag) = &flag;
 
#define KRATOS_REGISTER_IN_PYTHON_FLAG(module, flag)    KRATOS_REGISTER_IN_PYTHON_FLAG_IMPLEMENTATION(module,flag);
 

Functions

 PYBIND11_DECLARE_HOLDER_TYPE (T, Kratos::intrusive_ptr< T >)
 
template<class T >
std::string PrintObject (const T &rObject)
 

Macro Definition Documentation

◆ KRATOS_REGISTER_IN_PYTHON_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_IN_PYTHON_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   module,
  name 
)
Value:
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XX) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XY) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YX) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YY)
#define KRATOS_REGISTER_IN_PYTHON_VARIABLE(module, variable)
Definition: define_python.h:35
static void module(const array_1d< double, 3 > &Vector, double &distance)
Definition: GeometryFunctions.h:127

◆ KRATOS_REGISTER_IN_PYTHON_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_IN_PYTHON_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   module,
  name 
)
Value:
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XX) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XY) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XZ) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YX) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YY) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YZ) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_ZX) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_ZY) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_ZZ)

◆ KRATOS_REGISTER_IN_PYTHON_3D_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_IN_PYTHON_3D_VARIABLE_WITH_COMPONENTS (   module,
  name 
)
Value:
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_X) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_Y) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_Z)

◆ KRATOS_REGISTER_IN_PYTHON_FLAG

#define KRATOS_REGISTER_IN_PYTHON_FLAG (   module,
  flag 
)     KRATOS_REGISTER_IN_PYTHON_FLAG_IMPLEMENTATION(module,flag);

◆ KRATOS_REGISTER_IN_PYTHON_FLAG_IMPLEMENTATION

#define KRATOS_REGISTER_IN_PYTHON_FLAG_IMPLEMENTATION (   module,
  flag 
)     module.attr(#flag) = &flag;

◆ KRATOS_REGISTER_IN_PYTHON_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_IN_PYTHON_SYMMETRIC_2D_TENSOR_VARIABLE_WITH_COMPONENTS (   module,
  name 
)
Value:
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XX) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YY) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XY)

◆ KRATOS_REGISTER_IN_PYTHON_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS

#define KRATOS_REGISTER_IN_PYTHON_SYMMETRIC_3D_TENSOR_VARIABLE_WITH_COMPONENTS (   module,
  name 
)
Value:
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XX) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YY) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_ZZ) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XY) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_YZ) \
KRATOS_REGISTER_IN_PYTHON_VARIABLE(module,name##_XZ)

◆ KRATOS_REGISTER_IN_PYTHON_VARIABLE

#define KRATOS_REGISTER_IN_PYTHON_VARIABLE (   module,
  variable 
)     module.attr(#variable) = &variable;

Function Documentation

◆ PrintObject()

template<class T >
std::string PrintObject ( const T &  rObject)

◆ PYBIND11_DECLARE_HOLDER_TYPE()

PYBIND11_DECLARE_HOLDER_TYPE ( ,
Kratos::intrusive_ptr< T >   
)