DNDSR 0.1.0.dev1+gcd065ad
Distributed Numeric Data Structure for CFV
Loading...
Searching...
No Matches
ArrayDOF_op.hxx File Reference

Host-side implementations of #ArrayDofOp vector-space operations. More...

#include "ArrayDOF.hpp"
#include "DNDS/Defines.hpp"
#include "DNDS/Errors.hpp"
Include dependency graph for ArrayDOF_op.hxx:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  DNDS
 the host side operators are provided as implemented
 

Detailed Description

Host-side implementations of #ArrayDofOp vector-space operations.

Each function (setConstant, +=, -=, *=, /=, addTo, norm2, dot, reduction, componentWiseNorm1, ...) is defined once here as a template over (n_m, n_n). Explicit instantiations for the supported (n_m, n_n) combinations live in ArrayDOF_inst/<...>.cpp; the CUDA mirror lives in ArrayDOF_op_CUDA.cuh.

The file uses #pragma omp to parallelise row-wise loops when #DNDS_DIST_MT_USE_OMP is defined, so the choice of distributed-vs-threaded execution is a build-time decision.

Definition in file ArrayDOF_op.hxx.