/// <summary> /// Monte Carlo simulation input data /// </summary> /// <param name="numberOfPhotons">long number indicating number of photons launched from source</param> /// <param name="outputName">string indicating output name</param> /// <param name="simulationOptions">options to execute simulation</param> /// <param name="sourceInput">ISourceInput specifying source of light</param> /// <param name="tissueInput">ITissueInput specifying tissue definition</param> /// <param name="detectorInputs">IDetectorInput specifying which detectors to tally</param> public SimulationInput( long numberOfPhotons, string outputName, SimulationOptions simulationOptions, ISourceInput sourceInput, ITissueInput tissueInput, IList <IDetectorInput> detectorInputs) { N = numberOfPhotons; OutputName = outputName; Options = simulationOptions; SourceInput = sourceInput; TissueInput = tissueInput; DetectorInputs = detectorInputs ?? new List <IDetectorInput>(); }
/// <summary> /// Monte Carlo simulation input data /// </summary> /// <param name="numberOfPhotons">long number indicating number of photons launched from source</param> /// <param name="outputName">string indicating output name</param> /// <param name="simulationOptions">options to execute simulation</param> /// <param name="sourceInput">ISourceInput specifying source of light</param> /// <param name="tissueInput">ITissueInput specifying tissue definition</param> /// <param name="detectorInputs">IDetectorInput specifying which detectors to tally</param> public SimulationInput( long numberOfPhotons, string outputName, SimulationOptions simulationOptions, ISourceInput sourceInput, ITissueInput tissueInput, IList <IDetectorInput> detectorInputs) { N = numberOfPhotons; OutputName = outputName; Options = simulationOptions; SourceInput = sourceInput; TissueInput = tissueInput; DetectorInputs = detectorInputs; // check if detectorInputs list is null and if so make empty if (DetectorInputs == null) { DetectorInputs = new List <IDetectorInput>() { }; } }
protected void InitializeOptions(SimulationOptions options) { unmanagedFlags = new UnmanagedFlags(); unmanagedFlags.AbsWeightingType = (int)options.AbsorptionWeightingType; unmanagedFlags.Seed = options.Seed; }