Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
dipole.hpp
Go to the documentation of this file.
1/*
2 * This file is part of Vlasiator.
3 * Copyright 2010-2016 Finnish Meteorological Institute
4 *
5 * For details of usage, see the COPYING file and read the "Rules of the Road"
6 * at http://www.physics.helsinki.fi/vlasiator/
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17
18 * You should have received a copy of the GNU General Public License along
19 * with this program; if not, write to the Free Software Foundation, Inc.,
20 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21 */
22/*
23Background magnetic field class of Vlasiator.
24*/
25
26#ifndef DIPOLE_HPP
27#define DIPOLE_HPP
28#include "fieldfunction.hpp"
29
30
31
32class Dipole {
33private:
34 bool initialized = false;
35 double q[3]; // Dipole moment; set to (0,0,moment)
36 double center[3]; // Coordinates where the dipole sits; set to (0,0,0)
37public:
38
39 Dipole() {}
40
41 void initialize(const double moment,const double center_x, const double center_y, const double center_z, const double tilt_angle);
42 double operator()(double x, double y, double z, coordinate component, unsigned int derivative=0, coordinate dcomponent=X) const;
43};
44
45#endif
46
double operator()(double x, double y, double z, coordinate component, unsigned int derivative=0, coordinate dcomponent=X) const
Definition dipole.cpp:44
void initialize(const double moment, const double center_x, const double center_y, const double center_z, const double tilt_angle)
Definition dipole.cpp:32
bool initialized
Definition dipole.hpp:34
Dipole()
Definition dipole.hpp:39
double q[3]
Definition dipole.hpp:35
double center[3]
Definition dipole.hpp:36
coordinate
Definition functions.hpp:28
@ X
Definition functions.hpp:28