GooseFEM 1.4.1.dev2+g78f16df
Loading...
Searching...
No Matches
config.h File Reference

Basic configuration: More...

#include <algorithm>
#include <array>
#include <assert.h>
#include <cstdlib>
#include <iomanip>
#include <iostream>
#include <limits>
#include <math.h>
#include <memory>
#include <numeric>
#include <string>
#include <vector>
#include <xtensor/xadapt.hpp>
#include <xtensor/xarray.hpp>
#include <xtensor/xfixed.hpp>
#include <xtensor/xinfo.hpp>
#include <xtensor/xio.hpp>
#include <xtensor/xlayout.hpp>
#include <xtensor/xmath.hpp>
#include <xtensor/xnoalias.hpp>
#include <xtensor/xshape.hpp>
#include <xtensor/xsort.hpp>
#include <xtensor/xstrided_view.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xutils.hpp>
#include <xtensor/xview.hpp>

Go to the source code of this file.

Namespaces

namespace  GooseFEM
 Toolbox to perform finite element computations.
 
namespace  GooseFEM::array_type
 Container type.
 

Macros

#define GOOSEFEM_ASSERT(expr)
 All assertions are implementation as::
 
#define GOOSEFEM_CHECK(expr)   GOOSEFEM_ASSERT_IMPL(expr, __FILE__, __LINE__, __FUNCTION__)
 Assertion that cannot be switched off.
 
#define GOOSEFEM_WIP_ASSERT(expr)   GOOSEFEM_ASSERT_IMPL(expr, __FILE__, __LINE__, __FUNCTION__)
 Assertion that concerns temporary implementation limitations.
 
#define GOOSEFEM_WARNING(message)   GOOSEFEM_WARNING_IMPL(message, __FILE__, __LINE__, __FUNCTION__)
 All warnings are implemented as::
 
#define GOOSEFEM_WARNING_PYTHON(message)
 All warnings specific to the Python API are implemented as::
 

Typedefs

template<typename T , size_t N>
using GooseFEM::array_type::tensor = xt::xtensor<T, N>
 Fixed (static) rank array.
 

Detailed Description

Basic configuration:

  • Include general dependencies.
  • Define assertions.
License: This project is released under the GNU Public License (GPLv3).

Definition in file config.h.

Macro Definition Documentation

◆ GOOSEFEM_ASSERT

#define GOOSEFEM_ASSERT ( expr)

All assertions are implementation as::

 GOOSEFEM_ASSERT(...)

They can be enabled by::

 #define GOOSEFEM_ENABLE_ASSERT

(before including GooseFEM). The advantage is that:

  • File and line-number are displayed if the assertion fails.
  • GooseFEM's assertions can be enabled/disabled independently from those of other libraries.
Exceptions
std::runtime_error

Definition at line 97 of file config.h.

◆ GOOSEFEM_CHECK

#define GOOSEFEM_CHECK ( expr)    GOOSEFEM_ASSERT_IMPL(expr, __FILE__, __LINE__, __FUNCTION__)

Assertion that cannot be switched off.

Implement assertion by::

 GOOSEFEM_CHECK(...)
Exceptions
std::runtime_error

Definition at line 107 of file config.h.

◆ GOOSEFEM_WARNING

#define GOOSEFEM_WARNING ( message)    GOOSEFEM_WARNING_IMPL(message, __FILE__, __LINE__, __FUNCTION__)

All warnings are implemented as::

 GOOSEFEM_WARNING(...)

They can be disabled by::

 #define GOOSEFEM_DISABLE_WARNING

Definition at line 131 of file config.h.

◆ GOOSEFEM_WARNING_PYTHON

#define GOOSEFEM_WARNING_PYTHON ( message)

All warnings specific to the Python API are implemented as::

 GOOSEFEM_WARNING_PYTHON(...)

They can be enabled by::

 #define GOOSEFEM_ENABLE_WARNING_PYTHON

Definition at line 147 of file config.h.

◆ GOOSEFEM_WIP_ASSERT

#define GOOSEFEM_WIP_ASSERT ( expr)    GOOSEFEM_ASSERT_IMPL(expr, __FILE__, __LINE__, __FUNCTION__)

Assertion that concerns temporary implementation limitations.

Implement assertion by::

 GOOSEFEM_WIP_ASSERT(...)
Exceptions
std::runtime_error

Definition at line 117 of file config.h.