5 #include "gutilities.h"
12 vector <GFieldDefinition> gfield_defs;
15 auto gmultipoles_node = gopts->getOptionNode(
"gmultipoles");
16 for (
auto gmultipoles_item: gmultipoles_node) {
19 gfield_def.
name = gopts->get_variable_in_option<
string>(gmultipoles_item,
"name", goptions::NODFLT);
32 gfield_def.
type =
"multipoles";
33 gfield_defs.push_back(gfield_def);
46 help =
"Adds gmultipoles field(s) to the simulation \n ";
47 vector <GVariable> gmultipoles = {
48 {
"name", goptions::NODFLT,
"Field name"},
59 goptions.defineOption(
"gmultipoles",
"define the e.m. gmultipoles", gmultipoles, help);
#define GFIELD_DEFAULT_ROTANGLE
#define GFIELD_DEFAULT_VERTEX
#define GFIELD_DEFAULT_INTEGRATION_STEPPER
#define GFIELD_DEFAULT_ROTAXIS
#define GFIELD_DEFAULT_MINIMUM_STEP
#define GFIELD_DEFAULT_POLE_NUMBER
#define GFIELD_DEFAULT_STRENGTH
vector< GFieldDefinition > get_GFieldDefinition(GOptions *gopts)
Utility struct to load GFields from options.
double minimum_step
Minimum step size for integration.
std::string name
Key in the gmagneto maps.
void add_map_parameter(std::string key, std::string value)
Adds a parameter to the field parameters map.
std::string integration_stepper
Type of integration stepper.
std::string type
Type of the field.