1
0
Fork 0
mirror of https://github.com/gwm17/catima.git synced 2024-11-29 21:48:51 -05:00
catima/docs/catima_calculator.md
2018-04-13 19:01:10 +02:00

281 lines
5.4 KiB
Markdown

Catima Caluclator
================
Catima Caluclator is a command line application and interface to the catime library.
Usage
-----
The application is executed from the command line:
```
catima_calculator config_file";
```
example
```
catima_calculator c.json
```
Config File Format
------------------
The file must be a valid JSON formatted file.
The json file should contain the following keys: "projectile", "material", "energy"
#### projectile
The __projectile__ keywords are:
* array - 2 number array, 1st is mass number, 2nd is charge of the projectile
examples:
```
"projectile":[11.997,6],
```
#### material
The __material__ keyword is array of object for multi layer material,
or single object defining the material.
The material object must contain __Z__ keyword defining proton number
of the projectile or the compound material id.
Optional material object keywords are:
* __Z__ - proton number or compunds id, mandatory
* __A__ - mass number of the material, if 0 or undefined elemental atomic weight is used
* __density__ - density in g/cm3, if 0 or undefined the tabulated density will be used.
* __thickness__ - material or layer thickness in g/cm2
#### energy
The __energy__ keyword can be
1.a number specifying the kinetic energy:
```
"energy":"500.0"
```
2. array of numbers for multiple energies:
```
"energy":[100,200,500,1000]
```
3. Object specifying minimum energy, maximum energy and energy step, to calculate multiple energies:
```
"energy":{
"min": 100,
"max": 1000,
"step": 10
}
```
instead of "step" key the "num" can be specified for integer number of steps between min and max energy.
#### config
The calculation configuration can be change using __config__ keyword. If
not specified default will be used. The config keyword is expected to be one of the strings
* "atimav1.3" - for Atima v1.3 setting
* "atimav1.4" - for Atima v1.4 setting
```
"config":"atimav1.4"
```
Example Files
-------------------
```
{
"projectile":[11.99671, 6],
"energy": 1000,
"material":[{"A":12.0107,
"Z":6,
"thickness":1.0
},
{
"A":55.845,
"Z":26,
"density":7.8,
"thickness":0.05
}
],
"config":"atimav1.4"
}
```
```
{
"projectile":[11.99671, 6],
"energy":{
"min": 100,
"max": 1000,
"step": 100
},
"material":[{"A":12.0107,
"Z":6,
"thickness":1.0
},
{
"A":55.845,
"Z":26,
"density":7.8,
"thickness":0.05
}
]
}
```
```
{
"projectile":[11.99671, 6],
"energy":{
"min": 100,
"max": 1000,
"step": 100
},
"material":{"A":12,
"Z":6,
"density":2.0,
"thickness":1.0
}
}
```
#### Compound material
The predefined compound material can be used using the __Z__ field as an ID of the compound.
The following are supported:
```
Plastics = 201,
Air = 202,
CH2 = 203,
LH2 = 204,
LD2 = 205,
Water = 206,
Diamond = 207,
Glass = 208,
ALMG3 = 209,
ArCO2_30 = 210,
CF4 = 211,
Isobutane = 212,
Kapton = 213,
Mylar = 214,
NaF = 215,
P10 = 216,
Polyolefin = 217,
CmO2 = 218,
Suprasil = 219,
HAVAR = 220,
Steel = 221,
CO2 = 222,
CH4 = 223,
Methanol = 224,
Acetone = 225,
Acetylene = 226,
Adenine = 227,
Adipose_Tissue = 228,
Alanine = 229,
Bakelite = 230,
AgBr = 231,
AgCl = 232,
AgI = 233,
Al2O3 = 234,
Amber = 235,
Ammonia = 236,
Aniline = 237,
Anthracene = 238,
A_150 = 239,
B_100 = 240,
BaF2 = 241,
BaSO4 = 242,
Benzene = 243,
BeO = 244,
BGO = 245,
Blood = 246,
Bone_Compact = 247,
Bone_Cortical = 248,
Brain_ICRP = 249,
B4C = 250,
BC400 = 251,
nButanol = 252,
C_552 = 253,
CdTe = 254,
CdWO4 = 255,
CaCO3 = 256,
CaF2 = 257,
CaO = 258,
CaWO4 = 259,
CsF = 260,
CsI = 261,
CCl4 = 262,
C2Cl4 = 263,
Cellophane = 264,
Chlorobenzene = 265,
Chloroform = 266,
Cyclohexane = 267,
Concrete = 268,
Diethyl_Ether = 269,
Ethane = 270,
Ethanol = 271,
Ethylene = 272,
Eye_lens = 273,
Fe2O3 = 274,
FeO = 275,
Freon12 = 276,
Freon12B2 = 277,
Freon13 = 278,
Freon13B1 = 279,
Freon13I1 = 280,
Gd2O2S = 281,
GaAs = 282,
Gel_Photo_Emulsion = 283,
Glass_Pyrex = 284,
Glass_Lead = 285,
Glucose = 286,
Glutamine = 287,
Glycerol = 288,
Guanine = 289,
Gypsum = 290,
nHeptane = 291,
nHexane = 292,
KI = 293,
K2O = 294,
LaBr3 = 295,
LaOBr = 296,
La2O2S = 297,
Lung = 298,
MgCO3 = 299,
MgF2 = 300,
MgO = 301,
MS20_Tissue = 302,
Muscle_skeletal = 303,
Muscle_strained = 304,
Muscle_sucrose = 305,
Muscle_no_sucrose = 306,
Na2CO3 = 307,
NaI = 308,
NaCl = 309,
Na2O = 310,
NaNO3 = 311,
Naphthalene = 312,
Nitrobenzene = 313,
N2O = 314,
Octane = 315,
Paraffin = 316,
nPentane = 317,
PhotoEmulsion = 318,
PuO2 = 319,
Polyacrylonitrile = 320,
Polycarbonate = 321,
PMMA = 322,
POM = 323,
Polypropylene = 324,
Polystyrene = 325,
Propane = 326,
nPropanol = 327,
PVC = 328,
Pyridine = 329,
SiO2 = 330,
Skin = 331,
Sucrose = 332,
Teflon = 333,
TlCl = 334,
Toluene = 335,
Trichloroethylene = 336,
WF6 = 337,
UC2 = 338,
UC = 339,
UO2 = 340,
Urea = 341,
Valine = 342
```