Octopus
quantity.F90
Go to the documentation of this file.
1!! Copyright (C) 2020 N. Tancogne-Dejean
2!!
3!! This program is free software; you can redistribute it and/or modify
4!! it under the terms of the GNU General Public License as published by
5!! the Free Software Foundation; either version 2, or (at your option)
6!! any later version.
7!!
8!! This program is distributed in the hope that it will be useful,
9!! but WITHOUT ANY WARRANTY; without even the implied warranty of
10!! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11!! GNU General Public License for more details.
12!!
13!! You should have received a copy of the GNU General Public License
14!! along with this program; if not, write to the Free Software
15!! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
16!! 02110-1301, USA.
17!!
18
19#include "global.h"
20
23module quantity_oct_m
25 implicit none
26
27 private
28 public :: &
30
31 !# doc_start quantity
32 integer, public, parameter :: &
33 POSITION = 1, &
34 velocity = 2, &
35 current = 3, &
36 density = 4, &
37 scalar_potential = 5, &
38 vector_potential = 6, &
39 e_field = 7, &
40 b_field = 8, &
41 mass = 9, &
42 charge = 10, &
43 permittivity = 11, &
44 permeability = 12, &
45 e_conductivity = 13, &
46 m_conductivity = 14, &
48 !# doc_end
49
50 character(len=17), public, parameter :: QUANTITY_LABEL(MAX_QUANTITIES) = (/ &
51 "position ", &
52 "velocity ", &
53 "current ", &
54 "density ", &
55 "scalar potential", &
56 "vector potential", &
57 "E field ", &
58 "B field ", &
59 "mass ", &
60 "charge ", &
61 "permittivity ", &
62 "permeability ", &
63 "e_conductivity ", &
64 "m_conductivity " &
65 /)
66
73 type quantity_t
74 private
75 type(iteration_counter_t), public :: iteration
76 logical, public :: required = .false.
77 logical, public :: always_available = .false.
78 logical, public :: updated_on_demand = .true.
79 end type quantity_t
80
81contains
82
83end module quantity_oct_m
84
85!! Local Variables:
86!! mode: f90
87!! coding: utf-8
88!! End:
This module defines the quantity_t class and the IDs for quantities, which can be exposed by a system...
Definition: quantity.F90:107
integer, parameter, public density
Definition: quantity.F90:116
integer, parameter, public e_conductivity
Definition: quantity.F90:116
integer, parameter, public velocity
Definition: quantity.F90:116
integer, parameter, public m_conductivity
Definition: quantity.F90:116
integer, parameter, public permittivity
Definition: quantity.F90:116
integer, parameter, public permeability
Definition: quantity.F90:116
integer, parameter, public mass
Definition: quantity.F90:116
integer, parameter, public b_field
Definition: quantity.F90:116
integer, parameter, public current
Definition: quantity.F90:116
integer, parameter, public scalar_potential
Definition: quantity.F90:116
integer, parameter, public vector_potential
Definition: quantity.F90:116
integer, parameter, public charge
Definition: quantity.F90:116
integer, parameter, public max_quantities
Definition: quantity.F90:116
integer, parameter, public e_field
Definition: quantity.F90:116
Systems (system_t) can expose quantities that can be used to calculate interactions with other system...
Definition: quantity.F90:157
int true(void)