Falaise  4.0.1
SuperNEMO Software Toolkit
Public Types | Public Member Functions | Protected Member Functions | List of all members
snemo::geometry::mapped_magnetic_field Class Reference

Class representing a contant mapped magnetic field. More...

#include <falaise/snemo/geometry/mapped_magnetic_field.h>

Inheritance diagram for snemo::geometry::mapped_magnetic_field:
emfield::base_electromagnetic_field datatools::i_tree_dumpable

Public Types

enum  mapping_mode_type { MM_INVALID = -1, MM_IMPORT_CSV_MAP_0 = 0 }
 Mapping mode. More...
 
- Public Types inherited from emfield::base_electromagnetic_field
enum  flag_type
 
enum  status_type
 
typedef datatools::handle< base_electromagnetic_fieldhandle_type
 
typedef std::map< std::string, handle_typefield_dict_type
 
- Public Types inherited from datatools::i_tree_dumpable
enum  ostream_type
 

Public Member Functions

 mapped_magnetic_field (uint32_t=0)
 Default constructor. More...
 
virtual ~mapped_magnetic_field ()
 Destructor. More...
 
virtual void initialize (const ::datatools::properties &, ::datatools::service_manager &, ::emfield::base_electromagnetic_field::field_dict_type &)
 Initialization. More...
 
virtual void reset ()
 Reset. More...
 
virtual int compute_electric_field (const ::geomtools::vector_3d &position_, double time_, ::geomtools::vector_3d &electric_field_) const
 Compute electric field. More...
 
virtual int compute_magnetic_field (const ::geomtools::vector_3d &position_, double time_, geomtools::vector_3d &magnetic_field_) const
 Compute magnetic field. More...
 
virtual void tree_dump (std::ostream &out_=std::clog, const std::string &title_="", const std::string &indent_="", bool inherit_=false) const
 Smart print. More...
 
void set_map_filename (const std::string &)
 Set the map source filename. More...
 
void set_mapping_mode (mapping_mode_type)
 Set the mapping mode. More...
 
void set_zero_field_outside_map (bool)
 Set the flag to force a zero B-field outside the mapped domain. More...
 
bool is_zero_field_outside_map () const
 Return the flag to force a zero B-field outside the mapped domain. More...
 
void set_z_inverted (bool)
 Set the Z component inversion flag. More...
 
bool is_z_inverted () const
 Return the Z component inversion flag. More...
 
- Public Member Functions inherited from emfield::base_electromagnetic_field
void set_logging_priority (datatools::logger::priority priority_)
 
datatools::logger::priority get_logging_priority () const
 
bool is_initialized () const
 
void set_name (const std::string &)
 
const std::string & get_name () const
 
bool is_debug () const
 
void set_debug (bool debug_)
 
bool is_electric_field () const
 
bool is_magnetic_field () const
 
bool electric_field_can_be_combined () const
 
bool magnetic_field_can_be_combined () const
 
bool electric_field_is_time_dependent () const
 
bool magnetic_field_is_time_dependent () const
 
 base_electromagnetic_field (uint32_t flags_=0)
 
virtual ~base_electromagnetic_field ()
 
virtual int compute_electromagnetic_field (const geomtools::vector_3d &position_, double time_, geomtools::vector_3d &electric_field_, geomtools::vector_3d &magnetic_field_) const
 
virtual int compute_field (char label_, const geomtools::vector_3d &position_, double time_, geomtools::vector_3d &field_) const
 
virtual void initialize_simple ()
 
virtual void initialize_standalone (const datatools::properties &setup_)
 
virtual void initialize_with_service_only (const datatools::properties &setup_, datatools::service_manager &service_manager_)
 
virtual void initialize_with_dictionary_only (const datatools::properties &setup_, field_dict_type &dictionary_)
 
virtual void initialize (const datatools::properties &setup_, datatools::service_manager &service_manager_, field_dict_type &dictionary_)=0
 
virtual std::string get_class_id () const=0
 
virtual bool position_and_time_are_valid (const geomtools::vector_3d &position_, double time_) const
 
virtual int compute_electric_field (const geomtools::vector_3d &position_, double time_, geomtools::vector_3d &electric_field_) const
 
virtual int compute_magnetic_field (const geomtools::vector_3d &position_, double time_, geomtools::vector_3d &magnetic_field_) const
 
- Public Member Functions inherited from datatools::i_tree_dumpable
 i_tree_dumpable ()
 
virtual ~i_tree_dumpable ()
 
virtual void print_tree (std::ostream &out_=std::clog, const boost::property_tree::ptree &options_=empty_options()) const
 
void print_tree_json (std::ostream &out_=std::clog, const std::string &json_options_="") const
 
void print_tree_json (std::ostream &out_=std::clog, const char *json_options_=nullptr) const
 
void tree_dump_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="", const bool inherit_=false) const
 
void tree_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="") const
 
void smart_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="") const
 

Protected Member Functions

void _set_defaults ()
 Set default attributes values. More...
 
- Protected Member Functions inherited from emfield::base_electromagnetic_field
void _set_initialized (bool initialized_)
 
void _set_electric_field (bool=true)
 
void _set_magnetic_field (bool=true)
 
void _set_electric_field_can_be_combined (bool=true)
 
void _set_magnetic_field_can_be_combined (bool=true)
 
void _set_electric_field_is_time_dependent (bool=true)
 
void _set_magnetic_field_is_time_dependent (bool=true)
 
void _parse_basic_parameters (const datatools::properties &setup_, datatools::service_manager &service_manager_, field_dict_type &dictionary_)
 
void _set_defaults ()
 

Additional Inherited Members

- Static Public Member Functions inherited from datatools::i_tree_dumpable
static const boost::property_tree::ptree & empty_options ()
 
static boost::property_tree::ptree make_base_print_options (const std::string &title_, const std::string &indent_="", const bool inherit_=false)
 
static std::ostream & last_skip_tag (std::ostream &out_)
 
static std::ostream & skip_tag (std::ostream &out_)
 
static std::ostream & last_tag (std::ostream &out_)
 
static std::ostream & tag (std::ostream &out_)
 
- Public Attributes inherited from emfield::base_electromagnetic_field
 DEBUG
 
 ELECTRIC_FIELD
 
 MAGNETIC_FIELD
 
 ELECTRIC_FIELD_CAN_BE_COMBINED
 
 MAGNETIC_FIELD_CAN_BE_COMBINED
 
 ELECTRIC_FIELD_IS_TIME_DEPENDENT
 
 MAGNETIC_FIELD_IS_TIME_DEPENDENT
 
 STATUS_SUCCESS
 
 STATUS_ERROR
 
 STATUS_NOT_INITIALIZED
 
 STATUS_INVALID_POSITION_TIME
 
 STATUS_NO_ELECTRIC_FIELD
 
 STATUS_NO_MAGNETIC_FIELD
 
- Public Attributes inherited from datatools::i_tree_dumpable
 OSTREAM_COUT
 
 OSTREAM_CERR
 
 OSTREAM_CLOG
 
- Static Public Attributes inherited from emfield::base_electromagnetic_field
static const char ELECTRIC_FIELD_LABEL
 
static const char MAGNETIC_FIELD_LABEL
 

Detailed Description

Class representing a contant mapped magnetic field.

Member Enumeration Documentation

◆ mapping_mode_type

Mapping mode.

Enumerator
MM_INVALID 

Invalid mapping mode.

MM_IMPORT_CSV_MAP_0 

Build from imported CSV file.

Constructor & Destructor Documentation

◆ mapped_magnetic_field()

snemo::geometry::mapped_magnetic_field::mapped_magnetic_field ( uint32_t  = 0)

Default constructor.

◆ ~mapped_magnetic_field()

virtual snemo::geometry::mapped_magnetic_field::~mapped_magnetic_field ( )
virtual

Destructor.

Member Function Documentation

◆ _set_defaults()

void snemo::geometry::mapped_magnetic_field::_set_defaults ( )
protected

Set default attributes values.

◆ compute_electric_field()

virtual int snemo::geometry::mapped_magnetic_field::compute_electric_field ( const ::geomtools::vector_3d position_,
double  time_,
::geomtools::vector_3d electric_field_ 
) const
virtual

Compute electric field.

◆ compute_magnetic_field()

virtual int snemo::geometry::mapped_magnetic_field::compute_magnetic_field ( const ::geomtools::vector_3d position_,
double  time_,
geomtools::vector_3d magnetic_field_ 
) const
virtual

Compute magnetic field.

◆ initialize()

virtual void snemo::geometry::mapped_magnetic_field::initialize ( const ::datatools::properties ,
::datatools::service_manager ,
::emfield::base_electromagnetic_field::field_dict_type  
)
virtual

Initialization.

◆ is_z_inverted()

bool snemo::geometry::mapped_magnetic_field::is_z_inverted ( ) const

Return the Z component inversion flag.

◆ is_zero_field_outside_map()

bool snemo::geometry::mapped_magnetic_field::is_zero_field_outside_map ( ) const

Return the flag to force a zero B-field outside the mapped domain.

◆ reset()

virtual void snemo::geometry::mapped_magnetic_field::reset ( )
virtual

◆ set_map_filename()

void snemo::geometry::mapped_magnetic_field::set_map_filename ( const std::string &  )

Set the map source filename.

◆ set_mapping_mode()

void snemo::geometry::mapped_magnetic_field::set_mapping_mode ( mapping_mode_type  )

Set the mapping mode.

◆ set_z_inverted()

void snemo::geometry::mapped_magnetic_field::set_z_inverted ( bool  )

Set the Z component inversion flag.

◆ set_zero_field_outside_map()

void snemo::geometry::mapped_magnetic_field::set_zero_field_outside_map ( bool  )

Set the flag to force a zero B-field outside the mapped domain.

◆ tree_dump()

virtual void snemo::geometry::mapped_magnetic_field::tree_dump ( std::ostream &  out_ = std::clog,
const std::string &  title_ = "",
const std::string &  indent_ = "",
bool  inherit_ = false 
) const
virtual

Smart print.

Reimplemented from emfield::base_electromagnetic_field.


The documentation for this class was generated from the following file: