![]()  | 
  
    Octopus
    
   | 
 
This module defines the quantity_t class and the IDs for quantities, which can be exposed by a system, and used by an interaction. More...
This module defines the quantity_t class and the IDs for quantities, which can be exposed by a system, and used by an interaction.
A special case of quantities, the so-called couplings are used to transfer information from a system to the interactions. Other quantities can be used for output purposes.
An interaction partner (derived from interaction_partner_t) needs to update the behaviour of the quantity by setting
thisquantities(<quantity_id>)updated_on_demand thisquantities(<quantity_id>)required thisquantities(<quantity_id>)always_available
For the details of these flags see the documentation of quantity_t
Interactions also need to declare, which quantities they require from the system and the interaction partner:
! From the system: thissystem_quantities = [<system_quantity1_id>, <system_quantity2_id>, ...]
! From the partner: thiscouplings_from_partner = [<partner_quantity1_id>, <partner_quantity1_id>, ...]
Data Types | |
| type | quantity_t | 
| Systems (system_t) can expose quantities that can be used to calculate interactions with other systems.  More... | |
Variables | |
| integer, parameter, public | position = 1 | 
| integer, parameter, public | velocity = 2 | 
| integer, parameter, public | current = 3 | 
| integer, parameter, public | density = 4 | 
| integer, parameter, public | scalar_potential = 5 | 
| integer, parameter, public | vector_potential = 6 | 
| integer, parameter, public | e_field = 7 | 
| integer, parameter, public | b_field = 8 | 
| integer, parameter, public | mass = 9 | 
| integer, parameter, public | charge = 10 | 
| integer, parameter, public | permittivity = 11 | 
| integer, parameter, public | permeability = 12 | 
| integer, parameter, public | e_conductivity = 13 | 
| integer, parameter, public | m_conductivity = 14 | 
| integer, parameter, public | dipole = 15 | 
| integer, parameter, public | max_quantities = 15 | 
| character(len=17), dimension(max_quantities), parameter, public | quantity_label = (/ "position ", "velocity ", "current ", "density ", "scalar potential", "vector potential", "E field ", "B field ", "mass ", "charge ", "permittivity ", "permeability ", "e_conductivity ", "m_conductivity ", "dipole " /) | 
| integer, parameter, public quantity_oct_m::position = 1 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::velocity = 2 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::current = 3 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::density = 4 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::scalar_potential = 5 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::vector_potential = 6 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::e_field = 7 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::b_field = 8 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::mass = 9 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::charge = 10 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::permittivity = 11 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::permeability = 12 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::e_conductivity = 13 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::m_conductivity = 14 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::dipole = 15 | 
Definition at line 146 of file quantity.F90.
| integer, parameter, public quantity_oct_m::max_quantities = 15 | 
Definition at line 146 of file quantity.F90.
| character(len=17), dimension(max_quantities), parameter, public quantity_oct_m::quantity_label = (/ "position ", "velocity ", "current ", "density ", "scalar potential", "vector potential", "E field ", "B field ", "mass ", "charge ", "permittivity ", "permeability ", "e_conductivity ", "m_conductivity ", "dipole " /) | 
Definition at line 165 of file quantity.F90.