opentps.core.processing.doseCalculation namespace
Subpackages
Submodules
opentps.core.processing.doseCalculation.abstractDoseCalculator module
opentps.core.processing.doseCalculation.abstractDoseInfluenceCalculator module
opentps.core.processing.doseCalculation.abstractMCDoseCalculator module
- class AbstractMCDoseCalculator
- Bases: - AbstractDoseCalculator- Abstract class for Monte Carlo dose calculation - property nbPrimaries: int
 
opentps.core.processing.doseCalculation.doseCalculationConfig module
opentps.core.processing.doseCalculation.geant4DoseCalculator module
opentps.core.processing.doseCalculation.mcsquareDoseCalculator module
- class MCsquareDoseCalculator
- Bases: - AbstractMCDoseCalculator,- AbstractDoseInfluenceCalculator- Class for Monte Carlo dose calculation using MCsquare. This class is a wrapper for the MCsquare dose calculation engine. - Variables:
- _ctCalibration (AbstractCTCalibration) – CT calibration (Optional) 
- _ct (Image3D) – the CT image of the patient (Optional) 
- _plan (RTPlan) – Treatment plan (Optional) 
- _roi (ROIMask) – ROI mask 
- _config (MCsquareConfig) – MCsquare configuration 
- _mcsquareCTCalibration (BDL) – MCsquare CT calibration 
- _beamModel (BDL) – MCsquare beam model 
- _nbPrimaries (int) – Number of primaries proton 
- _statUncertainty (float) – Statistical uncertainty for MCsquare 
- _scoringVoxelSpacing (float) – Scoring voxel spacing of dose image 
- _simulationDirectory (str) – Simulation directory path 
- _simulationFolderName (str) – Simulation folder name 
- _computeDVHOnly (int) – Compute DVH only (True if > 0) 
- _computeLETDistribution (int) – Compute Linear Energy transfer (LET) distribution in the patient (True if > 0) 
- _subprocess (subprocess.Popen) – Subprocess if used 
- _subprocessKilled (bool) – Subprocess killed (if subprocess is used) 
- _sparseLETFilePath (str) – Sparse LET file path 
- _sparseDoseFilePath (str) – Sparse dose file path 
- _sparseDoseScenarioToRead (int) – Sparse dose scenario to read 
 
 - computeBeamlets(ct: CTImage, plan: RTPlan, roi: Sequence[ROIContour | ROIMask] | None = None) SparseBeamlets
- Compute beamlets using MCsquare - Parameters:
- ct (CTImage) – CT image of the patient 
- plan (RTPlan) – RT plan 
- roi (Optional[Sequence[Union[ROIContour, ROIMask]]], optional) – ROI contours or masks on which beamlets will be cropped at import, by default None 
 
- Returns:
- beamletDose – Beamlets dose with same grid size and spacing as the CT image 
- Return type:
 
 - computeBeamletsAndLET(ct: CTImage, plan: RTPlan, roi: Sequence[ROIContour | ROIMask] | None = None) Tuple[SparseBeamlets, SparseBeamlets]
- Compute beamlets and LET using MCsquare - Parameters:
- ct (CTImage) – CT image of the patient 
- plan (RTPlan) – RT plan 
- roi (Optional[Sequence[Union[ROIContour, ROIMask]]], optional) – ROI contours or masks, by default None 
 
- Returns:
- beamletDose (SparseBeamlets) – Beamlets dose with same grid size and spacing as the CT image 
- beamletLET (SparseBeamlets) – Beamlets LET with same grid size and spacing as the CT image 
 
 
 - computeDose(ct: CTImage, plan: RTPlan, roi: Sequence[ROIContour] | None = None) DoseImage
- Compute dose distribution in the patient using MCsquare - Parameters:
- ct (CTImage) – CT image of the patient 
- plan (RTPlan) – RT plan 
- roi (Optional[Sequence[ROIContour]], optional) – ROI contours, by default None 
 
- Returns:
- Dose distribution with same grid size and spacing as the CT image 
- Return type:
 
 - computeDoseAndLET(ct: CTImage, plan: RTPlan, roi: Sequence[ROIContour] | None = None) Tuple[DoseImage, LETImage]
- Compute dose and LET distribution in the patient using MCsquare 
 - computeRobustScenario(ct: CTImage, plan: RTPlan, roi: [Sequence[Union[opentps.core.data._roiContour.ROIContour, opentps.core.data.images._roiMask.ROIMask]]]) Robustness
- Compute robustness scenario using MCsquare - Parameters:
- ct (CTImage) – CT image of the patient 
- plan (RTPlan) – RT plan 
- roi ([Sequence[Union[ROIContour, ROIMask]]]) – ROI contours or masks 
 
- Returns:
- scenarios – Robustness with nominal and error scenarios 
- Return type:
 
 - computeRobustScenarioBeamlets(ct: CTImage, plan: RTPlan, roi: Sequence[ROIContour | ROIMask] | None = None, storePath: str | None = None) Tuple[SparseBeamlets, Sequence[SparseBeamlets]]
- Compute nominal and error scenarios beamlets using MCsquare - Parameters:
- ct (CTImage) – CT image of the patient 
- plan (RTPlan) – RT plan 
- roi (Optional[Sequence[Union[ROIContour, ROIMask]]], optional) – ROI contours or masks on which beamlets will be cropped at import, by default None 
- storePath (Optional[str], optional) – Path to store the beamlets, by default None 
 
- Returns:
- nominal (SparseBeamlets) – Nominal beamlets dose with same grid size and spacing as the CT image 
- scenarios (Sequence[SparseBeamlets]) – Error scenarios beamlets dose with same grid size and spacing as the CT image 
 
 
 - property ct
 - property ctCalibration: AbstractCTCalibration | None
 - getSimulationProgress()
- Get the number of simulated particles and the uncertainty - Returns:
- numParticles (int) – Number of simulated particles 
- uncertainty (float) – Uncertainty (%) 
 
 
 - property independentScoringGrid: bool
 - kill()
 - property nbPrimaries: int
 - optimizeBeamletFree(ct: CTImage, plan: RTPlan, roi: [Sequence[Union[opentps.core.data._roiContour.ROIContour, opentps.core.data.images._roiMask.ROIMask]]]) DoseImage
- Optimize weights using beamlet free optimization - Parameters:
- ct (CTImage) – CT image of the patient 
- plan (RTPlan) – RT plan 
- roi ([Sequence[Union[ROIContour, ROIMask]]]) – ROI contours or masks 
 
- Returns:
- DoseImage – Optimized dose 
- Return type:
- doseImage 
 
 - property scoringGridSize
 - property scoringOrigin
 - property scoringVoxelSpacing: Sequence[float]
 - setScoringParameters(scoringGridSize: Sequence[int] | None = None, scoringSpacing: Sequence[float] | None = None, scoringOrigin: Sequence[int] | None = None, adapt_gridSize_to_new_spacing=False)
- Sets the scoring parameters - Parameters:
- scoringGridSize (Sequence[int]) – scoring grid size 
- scoringSpacing (Sequence[float]) – scoring spacing 
- scoringOrigin (Sequence[float]) – scoring origin 
- adapt_gridSize_to_new_spacing (bool) – If True, automatically adapt the gridSize to the new spacing 
 
 
 - property simulationDirectory: str
 - property simulationFolderName
 - property statUncertainty: float