Skip to content

Number of fractions planned - remove doseImage computation in Sparsebeamlets

Valentin Hamaide requested to merge valentin into master

MR for Number of fractions issue in openTPS:

The spot MU should be defined per fraction, as in DICOM.

Issue 1: after optimizing the dose, the number of MU was not divided by number of fractions.

Issue 2: dicomIO read & write were incorrect for the plan.

Issue 3: method optimize() from PlanOptimizer modify plan.spotMUs in place and also return weights from optimization, which is not always the MU (because of xSquared) and brings confusion --> stop returning weight and only modify plan.spotMUs in place.

Issue 4: beamlets.toDoseImage() return the dose without taking into account the number of fractions (while it is the case for MCsquareDoseCalculator.computeDose). Since SparseBeamlet object does not have access to the plan and hence the number of fractions, it should be done outside this function. This is now implemented in PlanOptimizer.computeDose(). This method is therefore now removed from SparseBeamlet. This is better because there was potential difference between attribute beamletWeights and plan.spotMUs and it does not make sense to do processing in a data class.

Merge request reports