ssat" />

SSAT

Model API name: ssat

Geant4 SECTOR SHIELDING ANALYSIS TOOL

Version: v3.5


Model provision:


Model example


import json
from os import path
from pathlib import Path

from nom_client.nom_client import NoMClient

here = path.abspath(path.dirname(__file__))

nom_client = NoMClient("SSAT example",
                       default_server_id="local_server",
                       debug_output=True)

sapre_model_gto = nom_client.get_model('sapre')
sapre_model_gto.set_params(orbitType="GEN")

sapre_gto_result = nom_client.run_model(sapre_model_gto)

ap8ae8_model = nom_client.get_model('ae8ap8')
ap8ae8_model.set_external_input(external_input_name="trajectory", external_input=sapre_gto_result)
ap8ae8_results = nom_client.run_model(ap8ae8_model)
print(ap8ae8_results)

sd2_model = nom_client.get_model('sd2')
sd2_model.set_external_input(external_input_name="trappedParticleSpectrum", external_input=ap8ae8_results)
sd2_result = nom_client.run_model(sd2_model)
print(sd2_result)

with Path(here + "/spenvis_gdm.gdml").open() as f:
    gdml = f.read()

ssat_model = nom_client.get_model('ssat')
binningUnit = "g/cm2"
ssat_model.set_params(sourceX=0.0,
                      sourceY=0.0,
                      sourceZ=0.0,
                      sourcePositionUnits="mm",
                      minimumTheta=0.0,
                      maximumTheta=180.0,
                      minimumPhi=0.0,
                      maximumPhi=360.0,
                      units="deg",
                      numberPolarBins=6,
                      numberAzimuthalBins=12,
                      polarBinningInterval="sin",
                      U1=1.0,
                      V1=0.0,
                      W1=0.0,
                      U2=0.0,
                      V2=1.0,
                      W2=0.0,
                      minimumThickness=0.1,
                      maximumThickness=100.0,
                      binningUnit=binningUnit,
                      numberOfBins=30,
                      binningScheme="log",
                      pathLengthCalculationMethod="slant",
                      angularSamplingDistribution="true",
                      numberOfRaysPerAngularBin=10000,
                      aux_files=json.dumps({"maingdml.gdml": gdml}))

#ssat_model.set_external_input(external_input_name="dose_depth_curve", external_input=sd2_result)
ssat_result = nom_client.run_model(ssat_model)
print(ssat_result)

         
Model references

No references