Draft: Proof of principle Calo cGAN implemented in LibTorch
This MR is just a proof of principle showing how cGANs could be implemented within Gauss-on-Gaussino framework. needs Gaussino/Gaussino!24 (closed) Gaussino/Gaussino!20 (merged) !708 (merged)
Setup:
from Configurables import CaloGANModelFactory
ganFactory = CaloGANModelFactory()
ganFactory.RegionName = "EcalFastRegion"
ganFactory.ModelPath = 'traced_generator.pt'
ganFactory.LabelShape = [1, 3, 1 ,1]
ganFactory.LatentShape = [1, 30, 1 ,1]
# this is just temporarily available in the configuration
ganFactory.ParticleEnergyMax = 1e5
ganFactory.PositionXMax = 3840.0
ganFactory.PositionXMin = -3840.0
ganFactory.PositionYMax = 3120.0
ganFactory.PositionYMin = -3120.0
from Configurables import FastG4RegionFAC
FastG4RegionFAC().SensDetNameSuffix = ""
from Gauss import G4Physics
G4Physics().FastSim = True
from Gauss.FastSimulation import FastSimulation
FastSimulation().CaloGANModel = ['Ecal']