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 | Functions
atomic_utilities.h File Reference
#include <atomic>
#include "includes/define.h"
#include "containers/array_1d.h"
Include dependency graph for atomic_utilities.h:

Go to the source code of this file.

Namespaces

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

Functions

template<class TDataType >
void Kratos::AtomicAdd (TDataType &target, const TDataType &value)
 
template<class TDataType , std::size_t ArraySize>
void Kratos::AtomicAdd (array_1d< TDataType, ArraySize > &target, const array_1d< TDataType, ArraySize > &value)
 
template<class TVectorType1 , class TVectorType2 >
void Kratos::AtomicAddVector (TVectorType1 &target, const TVectorType2 &value)
 
template<class TMatrixType1 , class TMatrixType2 >
void Kratos::AtomicAddMatrix (TMatrixType1 &target, const TMatrixType2 &value)
 
template<class TDataType >
void Kratos::AtomicSub (TDataType &target, const TDataType &value)
 
template<class TDataType , std::size_t ArraySize>
void Kratos::AtomicSub (array_1d< TDataType, ArraySize > &target, const array_1d< TDataType, ArraySize > &value)
 
template<class TVectorType1 , class TVectorType2 >
void Kratos::AtomicSubVector (TVectorType1 &target, const TVectorType2 &value)
 
template<class TMatrixType1 , class TMatrixType2 >
void Kratos::AtomicSubMatrix (TMatrixType1 &target, const TMatrixType2 &value)
 
template<class TDataType >
void Kratos::AtomicMult (TDataType &target, const TDataType &value)
 
template<class TDataType , std::size_t ArraySize>
void Kratos::AtomicMult (array_1d< TDataType, ArraySize > &target, const array_1d< TDataType, ArraySize > &value)
 
template<class TVectorType1 , class TVectorType2 >
void Kratos::AtomicMultVector (TVectorType1 &target, const TVectorType2 &value)
 
template<class TMatrixType1 , class TMatrixType2 >
void Kratos::AtomicMultMatrix (TMatrixType1 &target, const TMatrixType2 &value)
 
template<class TDataType >
void Kratos::AtomicDiv (TDataType &target, const TDataType &value)
 
template<class TDataType , std::size_t ArraySize>
void Kratos::AtomicDiv (array_1d< TDataType, ArraySize > &target, const array_1d< TDataType, ArraySize > &value)
 
template<class TVectorType1 , class TVectorType2 >
void Kratos::AtomicDivVector (TVectorType1 &target, const TVectorType2 &value)
 
template<class TMatrixType1 , class TMatrixType2 >
void Kratos::AtomicDivMatrix (TMatrixType1 &target, const TMatrixType2 &value)