musrsim/mutrack/src/MUTRACK_VERSION_2-0-0.INPUT

533 lines
27 KiB
Plaintext

c===============================================================================
c ERLAEUTERUNGEN : siehe Datei-Ende
c===============================================================================
c KOMMENTARZEILEN: (Zeilen beginnend mit '@')
c===============================================================================
$parameter_liste
TestRun = T ! -> fileNummern zwischen 9900 und 9999 [false]
!==============================================================================
! WEITERFUEHRUNG FRUEHERER SIMULATIONEN
!==============================================================================
fileName_ACCEL = 'ac_9915' ! ACCEL-file
fileName_MUTRACK = 'mu_9915' ! prev. MUTRACK sim. up to TD-Foil
previousSimulation = 1 ! fruehere Simulation fortfuehren? [ 0 ]
! 0 : fromScratch
! 1 : ACCEL
! 2 : MUTRACK ('FoilFile')
! im Fall von 'priviousSimulation' = 1 oder = 2 (ACCEL oder MUTRACK):
previousSettings = T ! uebernehme fruehere Schleifensettings [false]
ow_U_Tgt = f ! - aber ueberschreibe 'U_Tgt_' [false]
ow_U_Gua = f ! - aber ueberschreibe 'U_Gua_' [false]
ow_U_G1 = f ! - aber ueberschreibe 'U_G1_' [false]
ow_U_L1 = f ! - aber ueberschreibe 'U_L1_' [false]
ow_U_Sp = f ! - aber ueberschreibe 'U_Sp_' [false]
ow_U_L2 = f ! - aber ueberschreibe 'U_L2_' [false]
ow_U_Folie = f ! - aber ueberschreibe 'U_Folie_' [false]
!ow_B_TD = NICHT IMPLEMENTIERT ueberschreibe 'BTD_' [false]
!ow_B_Helm = NICHT IMPLEMENTIERT ueberschreibe 'BHelm_' [false]
ow_masse = f ! - aber ueberschreibe 'masse_' [false]
ow_ladung = f ! - aber ueberschreibe 'ladung_' [false]
ow_E0 = T ! - aber ueberschreibe 'E0_' [false]
ow_y0 = f ! - aber ueberschreibe 'y0_' [false]
ow_z0 = f ! - aber ueberschreibe 'z0_' [false]
ow_theta0 = f ! - aber ueberschreibe 'theta0_' [false]
ow_phi0 = f ! - aber ueberschreibe 'phi0_' [false]
ow_alfaTgt = f ! - aber ueberschreibe 'alfaTgt_' [false]
ow_alfaSp = f ! - aber ueberschreibe 'alfaSp_' [false]
ow_alfaTD = f ! - aber ueberschreibe 'alfaTD_' [false]
ow_deltaL1 = f ! - aber ueberschreibe 'deltaL1_' [false]
ow_artList = f ! - aber ueberschreibe 'artlist' [false]
!==============================================================================
! KAMMER-SETTINGS UND TEILCHEN-PARAMETER
!==============================================================================
! Einheiten: Spannungen in kV, Winkel in degree, Masse in keV/c**2,
! Ladung in pos.Elementarlad., Energie in keV, Laengen in mm,
! Zeiten in ns, Geschwindigkeiten in mm/ns
!------------------------------------------------------------------------------
! - - - - - - - - - - Schleifen-Parameter - - - - - - - - - - - - - - - - - - -
U_Tgt_ = 18 ! U(Target) [ 0. ]
U_Gua_ = 15 ! U(Guard) [ 0. ]
U_G1_ = 12 ! U(Gitter) [ 0. ]
U_L1_ = 5 ! U(kalte Linse) [ 0. ]
U_Sp_ = 13.5 ! U(Spiegel) [ 0. ]
U_L2_ = 4.5 ! U(warme Linse) [ 0. ]
U_L3_ = 4.5 ! U(warme Linse) [ 0. ]
U_Folie_ = -2.980 ! U(Folie) [ 0. ]
U_Vorne_ = -2.790 ! U(Vorne) [ 0. ]
U_Hinten_ = -3.230 ! U(Hinten) [ 0. ]
U_MCP3_ = -2.600 ! U(MCP3) [ 0. ]
U_MCP2_ = -1.87 ! U(MCP2) [ 0. ]
!B_TD_ = NICHT IMPLEMENTIERT ! BFeld(Kompensationsspule) [ 0. ]
!B_Helm_ = NICHT IMPLEMENTIERT ! BFeld(Helmholtzpule) [ 0. ]
alfaTgtVertically = f ! alfa(Target) = vertikale Verkippung
alfaTgt_ = 0 ! alfa(Target) (x=0,y=90) [ 0. ]
alfaSp_ = 45 ! alfa(Spiegel) (x=0,y=90) [45. ]
alfaTD_ = 0 ! alfa(Trigger) (x=0,y=90) [ 0. ]
Masse_ = 0 ! (*) Masse [105659]
Ladung_ = 0 ! (*) Ladung [ 1. ]
E0_ = 0.01 ! (*) Startenergie (in keV!) [ 0. ]
y0_ = 0 ! (*) y0 (Startposition) [ 0. ]
z0_ = 0 ! (*) z0 (Startposition) [ 0. ]
theta0_ = 0 ! (*) theta0 (Startwinkel)(x=0) [ 0. ]
phi0_ = 0 ! (*) phi0 (Startwinkel)(y=0,z=90)[ 0. ]
Thickness_ = 3 ! Foliendicke in ug/cm**2 [ 3.0]
mean_Eloss_= 15 ! mittlerer Energieverlust in keV [ 0.0]
DeltaL1_ = 0! -3,3,3 ! Verlaengerung 1 in mm [ 0.0]
DeltaL2_ = 0! -5,+5,1 ! Verlaengerung 2 in mm [ 0.0]
! (*) <-> siehe Dateiende
! - - - - - - - - - - Zufallsverteilte Startparameter - - - - - - - - - - - - -
randomStarts = 5000 ! Anzahl zufallsverteilter Starts [ 50 ]
! Start-Energie:
random_energy = 1 ! 0: gemaess 'E0_' [ 0 ]
! 1: E0_ + gleichverteilter Offset
! 2: E0_ + gaussverteilter Offset
lowerE0 = .000 ! min. Energie (in keV!) [0.000]
upperE0 = .001 ! max. Energie (in keV!) [0.010]
sigmaE0 = .005 ! Breite der Gaussverteilung [0.010]
! Start-Position:
random_position = 0 ! 0: gemaess 'y0_' und 'z0_' [ 0 ]
! 1: gleichverteilt auf Viereckflaeche
! 2: gleichverteilt auf Kreisflaeche
! 3: Gaussverteilt auf Viereckflaeche
! 4: Gaussverteilt auf Kreisflaeche
StartBreite = -1 ! [TargetBreite]
StartHoehe = -1 ! [TargetHoehe ]
StartRadius = -1 ! [ 40 ]
sigmaPosition = 15 ! Breite der Gaussverteilung [ 15 ]
! Start-Winkel:
random_winkel = 0 ! 0: gemaess 'theta0_' und 'phi0_' [ 0 ]
! 1: Lambertverteilt
! 2: Gaussverteilt
StartLambertOrd = 1 ! Ordnung der Lambert-Verteilung [ 1. ]
sigmaWinkel = 5 ! Breite der Gaussverteilung [ 1. ]
! - - - - - - - - - - Projektile (case-sensitive) - - - - - - - - - - - - - - -
! maximal 9 verschiedene aus:
! e+, e-, m+, m-, Mu, Mu-, H+, H, H-, H2+, H2, H2-, alfa ![ ' ' ]
! H2O1, H2O2, H2O3, H2O4, H2O5,
! Hyd1, Hyd2, Hyd3, Hyd4, Hyd5, Hyd6, Hyd7, Hyd8, Hyd9,
! A11+, A12+, A21+, A31+, A32+, N11+, N21+, K11+, K12+
! H2O1,H2O2,..,H2Oi,..: Wassercluster (H2O)i
! Hyd1,Hyd2,..,Hydi,..: protonierte Wassercluster [(H2O)i]H+
! A: Argon, N: Stickstoff, K: Krypton
! (alle Zeichen in artList nach einem '!' werden ignoriert)
artList = 'm+'
! nur verwendet falls 'log_neutralize = t': neutrale Anteile in %
! (eine Angabe je Projektil, '-1' -> verwende Funktion von M. Gonin
! fuer Neutralisierung von Protonen in Graphit).
neutral_fract = 0
! - - - - - - - - - - Trigger-Detektor- - - - - - - - - - - - - - - - - - - - -
TriggerInBeam = t ! TriggerDetektor im Strahlweg? [false]
transTDFoil = 88. ! Transmission der Folie in % [100.]
log_neutralize = F ! Neutralisierung in der Folie? [false]
n_E_Verlust = 5 ! 0: kein Energieverlust [ 0 ]
!<0: mittl. Verlust gemaess 'mean_Eloss_'
!>0: mittl. Verlust gemaess ICRU-Tabelle
!|1| keine Energieaufstreuung
!|2| Streuung gaussvert. gemaess 'sigmaE'
!|3| Streuung gleichvert. [lowerE,upperE]
!|4| Streuung gaussv. nach Lindhard/Scharff
!|5| Streuung gaussv. nach Yang (recommended
calculate_each = F ! bei ICRU: fuer jedes Teilchen neu? [false]
graphitData = F ! bei ICRU: Elossdaten fuer Graphit? [false]
! (Alternative: amorpher Kohlenstoff)
sigmaE = 0.5 ! GaussBreite des Energieverlustes [ .5]
lowerE = 0 ! untere Grenze fuer Energieverlust [ 0. ]
upperE = 0.050 ! obere Grenze fuer Energieverlust [ .1]
n_Aufstreu = 3 ! 0: keine Winkelaufstreuung [ 0 ]
! 1: gemaess 'sigmaAufstreu'
! 2: gemaess Meyer (gaussverteilte Winkel)
! 3: gemaess Meyer (nach f-Funktion)
sigmaAufstreu = 2. ! Gaussbreite der Aufweitung [ 5. ]
generate_FE = F ! FolienElektronen generieren? [false]
!==============================================================================
! AUSGABE - STEUERUNG
!==============================================================================
writeTraj2File = f ! Um das rausschreiben der Trajektorie in ein separates
! file 'OUT.TRAJ' zu ermoeglichen, muessen im SourceCode
! alle mit 'cMBc' herauskommentierten Zeilen aktiviert
! werden. (Dieses feature wurden fuer M.B. implementiert
! aber wegen Rechenzeitargumenten herauskommentiert)
! - - - - - - - - PHYSICA-Tabelle erstellen?- - - - - - - - - - - - - - - - - -
createPhysTab = f ! [false]
! welche Statistiken?
PHY_S1xM2 = t ! S1xM2 im PHYSICA-file? [false]
PHY_S1M2 = t ! S1M2 im PHYSICA-file? [false]
PHY_S1Fo = t ! S1Fo im PHYSICA-file? [false]
PHY_FoM2 = t ! FoM2 im PHYSICA-file? [false]
PHY_S1M3 = t ! S1M3 im PHYSICA-file? [false]
PHY_M3M2 = t ! M3M2 im PHYSICA-file? [false]
PHY_t_FE = t ! tFE im PHYSICA-file? [false]
PHY_y_Fo = t ! y(Folie) im PHYSICA-file? [false]
PHY_z_Fo = t ! z(Folie) im PHYSICA-file? [false]
PHY_r_Fo = t ! r(Folie) im PHYSICA-file? [false]
PHY_y_M2 = t ! y(MCP2) im PHYSICA-file? [false]
PHY_z_M2 = t ! z(MCP2) im PHYSICA-file? [false]
PHY_r_M2 = t ! r(MCP2) im PHYSICA-file? [false]
PHY_y_xM2 = t ! y(xMCP2) im PHYSICA-file? [false]
PHY_z_xM2 = t ! z(xMCP2) im PHYSICA-file? [false]
PHY_r_xM2 = t ! r(xMCP2) im PHYSICA-file? [false]
! welche statistischen Groessen?
PHY_mean = t ! Mittelwerte? [false]
PHY_variance = t ! Varianzen? [false]
PHY_minimum = t ! Minimalwerte? [false]
PHY_maximum = t ! Maximalwerte? [false]
PHY_percent = t ! rel. Anteil beitragender Teilchen? [false]
! - - - - - - - - NTupel-relevante Vorgaben - - - - - - - - - - - - - - - - - -
createNTP = t ! NTP-File erzeugen [false]
Fo_triggered = F ! TD-Folientreffer verlangt [false]
xM2_triggered = F ! Erreichte MCP2-Ebene verlangt [false]
M2_triggered = F ! MCP2-Treffer verlangt [false]
smearS1Fo = f ! Verschmierung von S1Fo in NTP (zur
sigmaS1fo = 1.6 ! Beruecksichtigung der Zeitaufloesung)
NTP_S1xM2 = F ! - Flugzeit bis MCP2-Ebene? [false]
NTP_times = F ! - sonstige Flugzeiten? [false]
NTP_FoM2Only = F ! - von 'times' nur FoM2 (rezessiv!) [false]
NTP_lifetime = F ! - Lebenszeiten? [false]
NTP_start = F ! - Startgroessen? [false]
NTP_stop = F ! - Stopgroessen? [false]
NTP_40mm = F ! - Groessen bei x=40mm? [false]
NTP_Folie = t ! - Everlust und Aufstreuung? [false]
NTP_charge = F ! - Ladungszustand nach Folie? [false]
NTP_steps = F ! - min. und max. Schrittweiten? [false]
! - - - - - - - - - - Vorgaben fuer das Summary - - - - - - - - - - - - - - - -
n_outWhere = 2 ! 0-> keine Ausgabe des Summarys [ 2 ]
! 1-> Ausgabe nur in Datei
! 2-> in Datei und auf Schirm
! 3-> nur auf Schirm
!-1-> nur kleines Logfile
SUM_S1xM2 = t ! S1xM2 im Summary? [false]
SUM_S1M2 = t ! S1M2 im Summary? [false]
SUM_S1Fo = t ! S1Fo im Summary? [false]
SUM_FoM2 = t ! FoM2 im Summary? [false]
SUM_S1M3 = t ! S1M3 im Summary? [false]
SUM_M3M2 = t ! M3M2 im Summary? [false]
SUM_t_FE = t ! tFE im Summary? [false]
SUM_y_Fo = t ! y(Folie) im Summary? [false]
SUM_z_Fo = t ! z(Folie) im Summary? [false]
SUM_r_Fo = t ! r(Folie) im Summary? [false]
SUM_y_M2 = t ! y(MCP2) im Summary? [false]
SUM_z_M2 = t ! z(MCP2) im Summary? [false]
SUM_r_M2 = t ! r(MCP2) im Summary? [false}SUM_FoM2SUM_FoM2
SUM_y_xM2 = t ! y(xMCP2) im Summary? [false]
SUM_z_xM2 = t ! z(xMCP2) im Summary? [false]
SUM_r_xM2 = t ! r(MxCP2) im Summary? [false}SUM_FoM2SUM_FoM2
log_out_FE = F ! die FE-Statistik im Summary? [false]
log_out_pfosten(1)= F ! P : Pfosten einzeln im Summary? [false]
log_out_pfosten(2)= F ! FE: Pfosten einzeln im Summary? [false]
! - - - - - - - - File mit zugrundeliegender Geometrie erstellen? - - - - - - -
write_geo = T ! [false]
! - - - - - - - - zu erstellende Tabellenfiles- - - - - - - - - - - - - - - - -
Tab_S1xM2 = F ! Tabelle S1xM2 [false]
Tab_S1M2 = F ! Tabelle S1M2 [false]
Tab_S1Fo = F ! Tabelle S1Fo [false]
Tab_FoM2 = F ! Tabelle FoM2 [false]
Tab_S1M3 = F ! Tabelle S1M3 [false]
Tab_M3M2 = F ! Tabelle M3M2 [false]
Tab_t_FE = F ! Tabelle tFE [false]
Tab_y_Fo = F ! Tabelle y(Folie) [false]
Tab_z_Fo = F ! Tabelle z(Folie) [false]
Tab_r_Fo = F ! Tabelle r(Folie) [false]
Tab_y_M2 = F ! Tabelle y(MCP2) [false]
Tab_z_M2 = F ! Tabelle z(MCP2) [false]
Tab_r_M2 = F ! Tabelle r(MCP2) [false]
Tab_y_xM2 = F ! Tabelle y(xMCP2) [false]
Tab_z_xM2 = F ! Tabelle z(xMCP2) [false]
Tab_r_xM2 = F ! Tabelle r(xMCP2) [false]
! - - - - - - - - - - Graphikausgabe- - - - - - - - - - - - - - - - - - - - - -
GRAPHICS = F ! Graphikausgabe der Trajektorien? [false]
GRAPHICS_Anzahl = 40 ! fuer wieviele Starts je Schleife? [ 25 ]
vertical = T ! Blick auf die Kammer VON OBEN? [true!]
log_marker = F ! Marker am Trajektorienende? [false]
plot_FE = F ! FE-Trajektorien plotten? [false]
n_postSkript = 0 ! Postskript-files erstellen? [ 1 ]
! 0 : nicht erstellen
! 1 : Abfrage nach jeder Schleife
! 2 : immer erstellen
iMonitor = 3 ! Abtastfrequenz fuer Graphik [ 2 ]
color = 1 ! 0=schwarzweiss, 1=farbig [ 0 ]
schnitt_p = 2 ! Kammerteil: 1=horiz., 2=vertikal [ 2 ]
schnitt_x = -1 ! x-Koord. der Schnittebene [MCP2]
!==============================================================================
! GRUNDEINSSTELLUNGEN
!==============================================================================
! - - - - - - - - - - Programmsteuerung - - - - - - - - - - - - - - - - - - - -
TestOnWireHit = t ! Drahttreffer beruecksichtigen? [false]
UseDecay = t ! MYONEN-Zerfall beruecksichtigen? [false]
upToTDFoilOnly = F ! Integration nur bis zur TD-Folie [false]
createFoilFile = F ! neues 'FoilFile' erstellen? [false]
idealMirror = F ! Spiegel als ideal betrachten? [false]
DEBUG = F ! Debug-Version? [false]
DEBUG_FE = F ! FE in Debug-Info? [false]
DEBUG_Anzahl = 3 ! fuer wieviele Starts je Schleife? [ 2 ]
! - - - - - - - - - - Geometrie - - - - - - - - - - - - - - - - - - - - - - - -
Geo_fileName = 'GEO_KAMMER_RUN9_NEW_MUONS'
! Geo_fileName = 'GEO_KAMMER_RUN9_NEW_PROTONS'
! Geo_fileName = '9nM' ! RunNummer bzw. Name des Geo-files
! Geo_fileName = '9' ! RunNummer bzw. Name des Geo-files
! '9n': mit laengerer Mappe fuer MCP2
gridInFrontOfFoil = f ! Gitter vor der Triggerfolie? [false]
! ('grindInFrontOfFoil' nur bei Run 9)
xBlende = -1 ! Abstand der Blende zum MCP2 (-1 => none)
radius_Blende = 0 ! Radius der Blende vor MCP2
! - - - - - - - - - - Startflaeche- - - - - - - - - - - - - - - - - - - - - - -
StartFlaeche = 0 !-1: entsprechend x0_ und Kammerteil [ 0 ]
! 0: Target
! 1: 1. Gitter
! 2: Folie (Startwinkel im Kammersystem)
! 3: Folie (Startwinkel im Triggersystem)
x0_ = 0 ! Startort rel zu. Tgt bzw. Spiegel [ 0. ]
Kammerteil = 1 ! 1: horizontal, 2: vertikal [ 1 ]
! - - - - - - - - - - Fehlerkontrolle - - - - - - - - - - - - - - - - - - - - -
eps_x = 1.e-6 ! max. Fehler im Ort [1.e-5]
eps_v = 1.e-6 ! max. Fehler in Geschw. [1.e-5]
log_relativ = F ! relative Fehlerbetrachtung? [false]
maxStep = 7000 ! max. Anzahl Integrationsschritte [ 1000]
dtsmall = 0.00001 ! kleinster Integrations-Zeitschritt [0.001]
maxBelowDtSmall = 700 ! max. Anzahl von dtSmall Unterschr. [ 50 ]
! - - - - - - - - - - seed- - - - - - - - - - - - - - - - - - - - - - - - - -
seed_ = 0 ! > 1E6, ungerade (if .LE. 0 => automatic)
$END
c********************************************************************************
c*
c* In dieser Datei werden die Parameter fuer die Flugbahnberechnung von
c* Teilchen in der NEMU-Apparatur mittels des Fortranprogramms 'MUTRACK'
c* festgelegt.
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Alle Zeilen vor der Zeile ' $parameter_liste', die nicht mit 'c ' beginnen
c* und keine Leerzeilen sind, werden als Kommentarzeilen fuer das Mutrack-
c* Programm betrachtet und im Kopf des Logfiles ausgegeben.
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Bleibt die rechte Seite einer Zuweisung frei (variable = ), so wird der
c* am Zeilenende in eckigen Klammern angegebene Defaultwert verwendet.
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Jeder Parameter des Abschnitts 'SCHLEIFEN-PARAMETER' kann einen, zwei
c* oder mehrere aequidistante Werte annehmen. Die Eingabe geschieht
c* entsprechend in einer der Formen
c*
c* _parameter = wert
c* _parameter = wert1 , wert2
c* _parameter = wert_min , wert_max , wert_step.
c*
c* Die Zuweisungen in den mit (*) markierten Zeilen des gleichen Abschnitts
c* kommen nur zum Tragen, wenn sie nicht durch prioritaere Zuweisungen
c* ueberdeckt werden. Fuer die Massen- und die Ladungsschleife geschieht dies
c* durch Spezifizieren von 'artList' im Abschnitt 'PROJEKTILE' (vgl. unten),
c* fuer die Energie-, Positions- und Winkel-Schleifen durch die Wahl einer
c* Zufallsverteilung fuer die entsprechende Groesse im Abschnitt 'ZUFALLS-
c* VERTEILTE STARTPARAMETER' ('random_energy', 'random_position' bzw.
c* 'random_winkel' > 0).
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Wird die Variable 'artList' im Abschnitt 'PROJEKTILE' mit einer Komma-
c* getrennten Liste aus
c*
c* m+, m-, Mu, Mu-, e+, e-, H+, H, H-, H2+, H2, H2-, alfa,
c* A11+, A12+, A21+, A31+, A32+, N11+, N21+, K11+, K12+, X11+, X12+
c*
c* belegt (als String: z.B. 'm+,H+' ), so werden die Parameter 'Ladung' und
c* 'Masse' der Reihe nach mit den zugehoerigen Werten belegt.
c* (m=Myon, Mu=Myonium, e=Elektron, H=Wasserstoff, alfa=alpha-Teilchen).
c* Die zweite der beiden Zeilen gibt Kuerzel fuer Ionen schwererer Atome an:
c* 'Znm+' steht fuer einen "Cluster" aus n Atomen der Art 'Z' im Ladungszustand
c* m+.
c* A: Argon, N: Stickstoff, K: Krypton, X: Xenon.
c*
c* Soll diese Moeglichkeit nicht genutzt werden, so ist 'artList' undefiniert
c* zu belassen.
c*
c* Das Einlesen der Teilchenliste geschieht CASE-SENSITIVE. Ein '!' an
c* beliebiger Stelle der Teilchenliste bewirkt, dass alle Zeichen nach
c* dem ! ignoriert werden.
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Befindet sich der Trigger im Strahlweg, so kann mit n_E_Verlust die Art
c* der Beruecksichtigung des Energieverlustes in der Triggerfolie gewaehlt
c* werden:
c*
c* n_E_Verlust=0: kein Energieverlust
c* n_E_Verlust=1: mittlerer Energieverlust gemaess 'mean_E_Verlust',
c* Breite der Energieverlustverteilung gemaess 'sigmaE'.
c* n_E_Verlust=2: Funktioniert nur mit einfach positiv geladenen
c* Teilchen und wenn die Startflaeche entweder der Moderator
c* oder das 1. Gitter ist. Der Energieverlust wird hier
c* ueber Geschwindigkeitsskalierung aus Protonendaten
c* gewonnen (ICRU-Tabelle). Im so erhaltenen Energieverlust
c* ist auch die Wegstreckenverlaengerung in der Folie
c* bei nicht senkrechtem Einfall beruecksichtigt (Einfalls-
c* richtung!). Mit 'sigmaE' ungleich Null kann die Energie-
c* verlustverteilung zusaetlich verbreitert werden.
c* Bei gewuerfelten Startenergien fuer die Projektile
c* wird fuer die Berechnung des mittleren Energieverlustes
c* der Mittelwert von 'lowerE0' und 'upperE0' verwendet, es
c* sei denn, dass 'calculate_each'=.true. gesetzt wurde.
c* In diesem Fall wird der Energieverlust fuer jedes
c* Teilchen neu berechnet. Dies soll es ermoeglichen,
c* groessere Bereiche fuer die Startenergie vorzugeben und
c* trotzdem sinnvolle Energieverluste zu erhalten.
c* Allerdings kann dies die Rechenzeit u. U. stark erhoehen.
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Wird das logical 'log_marker' im Abschnitt 'Graphikausgabe' gesetzt, so
c* wird gegebenenfalls bei der Graphikdarstellung der Projektiltrajektorien
c* das Trajektorienende mit einem Marker versehen, wobei der Markertyp vom
c* Teilchenschicksal abhengt. Dabei gibt es aber momentan (Stand: Feb.96) noch
c* Probleme, da vor allem fuer Teilchen, die auf der aktiven Flaeche des
c* MCP2 aufschlagen, falsche Markertypen gewaehlt werden.
c* Scheint ein spezielles Problem der CERN-library zu sein und wird bis auf
c* weiteres nicht wieter verfolgt. Dieses feature wurde speziell fuer DEBUG-
c* Taetigkeiten entwickelt und sollte ansonsten nicht von besonderer Bedeutung
c* sein.
c* Die Teilchenschicksale und die zugehoerigen Markertypen sind:
c*
c* auf Rand des MCP2 : gefuellter Kreis
c* im TD abgebrochen : Stern (3 gekreuzte Linien)
c* Spiegel durchquert : gefuellter Kreis
c* MCP2 getroffen : leere Raute
c* zerfallen : Schweizerkreuz
c* Element verfehlt : leerer Kreis
c* reflektiert : leeres Dreieck
c* aufgeschlagen : gefuellter Kreis
c* verloren (steps>maxsteps) : gefuellter fuenfstrahliger Stern
c* Zeitschritt kleiner dtSmall : leerer fuenfstrahliger Stern
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Der Name der Ausgabedateien lautet 'MU_nnnn', wobei 'nnnn' eine durch-
c* laufende Nummer ist. Die Ausgabedateien erhalten je nach Inhalt eine der
c* Extensionen
c*
c* .LOG -> Summary-file
c* .NTP -> PAW-Ntupel
c* ._??? -> Statistik-Tabellen
c* .PHYSICA -> Gestamttabelle fuer Graphische Darstellung mit PHYSICA
c* .PS -> Postskript-Files mit Graphik der Bahnkurven. Bei diesen
c* Dateien wird der Dateiname um die Nummer der jeweiligen
c* Schleife, zu der die Graphik gehoert, erweitert. (Insofern
c* mehr als eine Schleife durchlaufen wird).
c* .GEO -> file mit der verwendeten Kammergeometrie.
c* .FOIL -> file mit Trajektoriendaten am Ort der Triggerfolie. Kann
c* von spaeteren MUTRACK runs eingelesen werden.
c* .INFO -> Info-file zu .FOIL mit den verwendeten Parametersettings.
c*
c* Die Dateien werden im Directory 'mutrack$OUTdirectory' abgelegt.
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* Das Achsensystem ist mit dem Ursprung in die Mitte des Moderators
c* gelegt. Die x-Achse verlaeuft in Strahlrichtung, die z-Achse nach oben,
c* die y-Achse so, dass ein rechtshaendiges System besteht.
c* Nach dem Spiegel wird das Koordinatendreibein so gedreht, dass die x-Achse
c* wiederum in Strahlrichtung weist. Der Ursprung wird dabei in das Zentrum
c* des Doppelkreuzes der Spiegelaufhaengung verschoben.
c*
c* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c*
c* *****************************************************************
c* * Die Zeilen *
c* * $PARAMETER_LISTE *
c* * und *
c* * $END *
c* * MUESSEN IN SPALTE ZWEI BEGINNEN! *
c* *****************************************************************
c* * 26.09.1995 >> anselm.hofer@psi.ch *
c*******************************************************************************