Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
backgroundfield.h File Reference
#include "fieldfunction.hpp"
#include "integratefunction.hpp"
#include "../definitions.h"
#include "../common.h"
#include "fsgrid.hpp"
#include "phiprof.hpp"
#include <span>
Include dependency graph for backgroundfield.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void setBackgroundField (const FieldFunction &bgFunction, fsgrids::bgbspan bgb, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, bool append=false)
void setBackgroundFieldToZero (FieldSolverGrid &fsgrid, fsgrids::technicalspan technical, fsgrids::bgbspan bgb)
template<long unsigned int numFields>
void setPerturbedFieldToZero (FieldSolverGrid &fsgrid, fsgrids::technicalspan technical, std::span< std::array< Real, numFields > > b, int offset=fsgrids::bfield::PERBX)
template<long unsigned int numFields>
void setPerturbedField (const FieldFunction &bfFunction, std::span< std::array< Real, numFields > > b, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, int offset=fsgrids::bfield::PERBX, bool append=false)

Function Documentation

◆ setBackgroundField()

void setBackgroundField ( const FieldFunction & bgFunction,
fsgrids::bgbspan bgb,
fsgrids::technicalspan technical,
FieldSolverGrid & fsgrid,
bool append = false )

Definition at line 31 of file backgroundfield.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setBackgroundFieldToZero()

void setBackgroundFieldToZero ( FieldSolverGrid & fsgrid,
fsgrids::technicalspan technical,
fsgrids::bgbspan bgb )

Definition at line 127 of file backgroundfield.cpp.

Here is the caller graph for this function:

◆ setPerturbedField()

template<long unsigned int numFields>
void setPerturbedField ( const FieldFunction & bfFunction,
std::span< std::array< Real, numFields > > b,
fsgrids::technicalspan technical,
FieldSolverGrid & fsgrid,
int offset = fsgrids::bfield::PERBX,
bool append = false )

This function is used along with a field function to append the given function values to the perturbed B grid. A special other use case is, if using a Magnetosphere with dipole type 4 (vector dipole), when the corrective terms to vanish the dipole towards the inflow boundary are stored in the backgroundfield FSgrid object at offset fsgrids::bgbfield::BGBXVDCORR

Definition at line 78 of file backgroundfield.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setPerturbedFieldToZero()

template<long unsigned int numFields>
void setPerturbedFieldToZero ( FieldSolverGrid & fsgrid,
fsgrids::technicalspan technical,
std::span< std::array< Real, numFields > > b,
int offset = fsgrids::bfield::PERBX )

Templated function for setting the perturbed B field to zero. Function is templated so it may, if necessary, be called to set the vector dipole correction terms inside the background field FSgrid object to zero (see setPerturbedField below).

Definition at line 54 of file backgroundfield.h.

Here is the caller graph for this function: