Step-by-step guide
source /cvmfs/ilc.desy.de/sw/x86_64_gcc49_sl6/v01-19-02/init_ilcsoft.shddsim --compactFile SiD_o2_v02.xml --macroFile scan.mac --runType run > materialScan.txt
scan.mac
/control/matScan/theta 91 0 90 /control/matScan/phi 361 0 360 /control/matScan/scan
Old sidloi3 model
(for example, from lcsim.org/detectors/sidloi3.zip)
/cvmfs/ilc.desy.de/clic/slicv3r0p3/scripts/slic.sh -m x.mac -g sidloi3.lcdd > sidloi3Mat.txt
x.mac
/control/matScan/region TrackingRegion /control/matScan/scan
Example plotting script (Julia)
matScanPlot.jl
using Plots
theta = Vector{Float64}()
x0 = Vector{Float64}()
lambda = Vector{Float64}()
open(ARGS[1]) do f
for line in readlines(f)
fields = split(line)
if length(fields) == 0
continue
end
if fields[1] != "ave."
continue
end
t = parse(Float64, fields[5])
if t % 1 != 0
continue
end
push!(theta, t)
push!(x0, parse(Float64, fields[8]))
push!(lambda, parse(Float64, fields[9]))
end
end
plot(theta, x0, legend=false)
xlabel!("theta (degrees)")
ylabel!("X0")
savefig("t.pdf")