Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
vec.h File Reference

An interface to a type with floating point values. More...

#include "../common.h"
Include dependency graph for vec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Detailed Description

An interface to a type with floating point values.

By setting suitable compile-time defines oen can set the length, accuracy and implementation of the vector. The vector length has to be a multiple of WID, which is 4 in Vlasiator. It also cannot be larger than WID*WID or 16. Thus 4, 8 or 16 are now supported. Currently implemented vector backends are:

VEC4D_AGNER

  • Double precision
  • Vector length of 4
  • Use Agner's vectorclass with AVX intrinisics

VEC4F_AGNER

  • Single precision
  • Vector length of 4
  • Use Agner's vectorclass with AVX/SSE2 intrinisics

VEC8F_AGNER

  • Single precision
  • Vector length of 8
  • Use Agner's vectorclass with AVX intrinisics

Definition in file vec.h.