Aplikacija PHITS (engl. Particle and Heavy Ion Transport code System) simulacijski je kod Monte Carlo transporta iona opće namjene. Izračunava transporte svih čestica širokog energetskog ranga koristeći knjižnice nuklearnih podataka i različite modele nuklearnih reakcija. Namijenjen je za područja povezana s fenomenom transporta čestica i teških iona, radioterapije, kozmičkog zračenja i sl.

Na računalnom klasteru Isabella PHITS je kompajliran s Fortran kompajlerima te koristi Open MPI knjižnice. Podržava serijsko i paralelno izvođenje poslova, odnosno izvođenje na jednojezgrenim i višejezgrenim procesorima.

Moduli

Moduli koji dopremaju PHITS u Vašu okolinu definirani su u tablici niže:

VerzijaModulKompajlerIzvršna datoteka
3.290phits/3.290GNUphits_LinGfort_MPI
3.31phits/3.31Intelphits_LinIfort_MPI
3.33phits/3.33
Intelphits_LinIfort_MPI

Primjer korištenja

Primjer serijskog korištenja

run.sge
#!/bin/bash
   
#$ -N phits
#$ -cwd
   
module load phits/3.290

phits_LinGfort_MPI phits.in

Primjer paralelnog korištenja

run_parallel.sge
#!/bin/bash
   
#$ -N phits
#$ -cwd
#$ -pe *mpi 4
   
module load phits/3.290
   
mpirun -np ${NSLOTS} phits_LinGfort_MPI phits.in

Primjer input datoteke

U PHITS verziji 3.31 ne treba koristiti liniju koja definira PHITS root direktorij:

file(1) = /apps/phits/3.290/phits   # PHITS install folder name


phits.in
[ T i t l e ]
minimized input file
 
[ P a r a m e t e r s ]
 icntl    =           0     			# (D=0) 3:ECH 5:NOR 6:SRC 7,8:GSH 11:DSH 12:DUMP
 maxcas   =          50     			# (D=10) number of particles per one batch
 maxbch   =           2     			# (D=10) number of batches
 file(1)  = /apps/phits/3.290/phits  	# PHITS install folder name
 file(6)  = phits.out       			# general output file name
 
[ S o u r c e ]
   s-type =   1             # mono-energetic axial source
     proj =  proton         # kind of incident particle
      dir =   1.0           # z-direction of beam [cosine]
       r0 =   0.            # radius [cm]
       z0 =   0.            # minimum position of z-axis [cm]
       z1 =   0.            # maximum position of z-axis [cm]
       e0 =   150.          # energy of beam [MeV/u]
 
[ M a t e r i a l ]
mat[1]    H 2  O 1
 
[ S u r f a c e ]
  10  so      10.
 
[ C e l l ]
 100     1 -1.0  -10
 101    -1        10
 
[ T - T r a c k ]
     mesh =  xyz            # mesh type is xyz scoring mesh
   x-type =    2            # x-mesh is linear given by xmin, xmax and nx
       nx =  200            # number of x-mesh points
     xmin =  -20.           # minimum value of x-mesh points
     xmax =   20.           # maximum value of x-mesh points
   y-type =    1            # y-mesh is given by the below data
       ny =    1            # number of y-mesh points
           -5.0  5.0
   z-type =    2            # z-mesh is linear given by zmin, zmax and nz
       nz =  200            # number of z-mesh points
     zmin =  -20.           # minimum value of z-mesh points
     zmax =   20.           # maximum value of z-mesh points
   t-type =    2            # t-mesh is linear given by tmin, tmax and nt
       nt =    1            # number of t-mesh points
     tmin =   0.0           # minimum value of t-mesh points
     tmax =   1.0           # maximum value of t-mesh points
     part =  all
   e-type =    1            # e-mesh is given by the below data
       ne =    1            # number of e-mesh points
            0.0  1000.0
     unit =    1            # unit is [1/cm^2/source]
     axis =   xz            # axis of output
     file = track_xz.out  # file name of output for the above axis
    title = Track Detection using [T-track] tally
    gshow =    3            # 0: no 1:bnd, 2:bnd+mat, 3:bnd+reg 4:bnd+lat
   epsout =    1            # (D=0) generate eps file by ANGEL
 
[ E n d ]

Praktični primjer

Simulacija čestičnog toka oko cilindričnog spremnika vode ozračenog protonskom zrakom energije 290 MeV

PHITS simulira kretanje čestice koristeći Monte Carlo metodu te predviđa njezino ponašanje omogućujući izračun različitih kvantitativnih vrijednosti poput fluksa i depozicije energije u određenoj regiji.

Osnovne komponente input datoteke su geometrija, izvor i raboš (engl. tally). Geometrija se definira sekcijama 'materijal', 'površina' i 'ćelija', dok je izvor okarakteriziran oblikom, vrstom, energijom i pravcem kretanja čestice. Raboš se koristi za izračun kvantitativnih vrijednosti tijekom kalkulacije radijacije transporta. Geometrija u 3D virtualnom prostoru (ćelija definirana u Kartezijevom koordinatnom sustavu) te informacije o izvoru čestice krucijalni su elementi izračuna kvantitativnih vrijednosti tih čestica. Za nedvosmisleno određivanje sekcije 'raboš', potrebno je specificirati koja se vrijednost određuje, gdje, za koju česticu, u kojoj mjernoj jedinici te u kojem se obliku output datoteke rezultat ispisuje.

U sekciji izvor definiran je oblik cilindra, dok je čestica proton sa zadanim dimenzijama, smjerom kretanja i energijom u MeV/u. 3D geometrija definira se materijalom i površinom ćelije u sekciji 'ćelija'. Primjer je vodena ćelija rednog broja '100' gustoće 1 gcm-3 oblika sfere koja je centrirana na izvoru XYZ koordinatnog sustava s promjerom od 10 cm. Prostor oko sfere pripada drugoj ćeliji rednog broja '101', a definira se kao vanjska praznina bez zadane gustoće. Duljina prolaza (engl. track length) evaluira se prilikom prolaska čestice određenom regijom te se suma prolazaka skalira. Dijeljenjem skalirane duljine prolaza s volumenom regije i brojem čestica izvora dobiva se tok u 1/cm2/izvor. Skaliranje se vrši pomoću XYZ mreže koja je zadana parametrima x, y, z, t (vrijeme) i e (energija) koji su definirani svojim minimumom, maksimumom i brojem točki koje čine mrežu. Parametrom 'epsout' zadan je ouput u obliku eps datoteke.

Slika 1. 2D graf output datoteke PHITS izračuna toka zrake protona u vodenoj cilindričnoj ćeliji. Prikazane su trajektorije protona i vrijednosti čestičnog toka izraženog u 1/cm2/izvor (lijevo) te relativne pogreške istog izračuna (desno).


  • No labels