## Question

What is the exact specification of the comma separated generic ascii for the COMPASS Beam Modelling Tool dose curve import?

## Answer

- .csv files is an ASCII-type export of a one-sheet Microsoft Office Excel file. The example file is shown in ASCII.
- White space and case are disregarded.
- Each item is one line.
- Line end is windows (CR/LF).
- Literals are in bold.
- The number format must equal to the number format of the windows system settings.
- The list separator in the file must match to the list separator of the windows system settings.
- Several measurement scans can be stored in the same file.
- The coordinate system used, is a left-handed system with the X- and Y-axes in accordance with the IEC61217 standard for the gantry coordinate system. The Z-axis is along the depth axis, indicating the depth from the surface downwards, i.e. in the opposite direction from the Z-axis in the IEC61217 standard.
- There are three different dose curve types: Depth, Crossline, and Inline. The Depth curve is measured along the Z-axis, the Crossline curve along the X-axis, and the Inline curve along the Y-axis.
- The field size must be reflection symmetric around the depth axis (X = 0, Y = 0).
- The start point must be on the central axis (x = 0, y = 0). For dose profiles (Crossline and Inline curves), the Z-point is read from the three coordinates in the start point specification; it indicates the depth from the surface downwards. For depth dose curves, the Z coordinate of the start point specification must be equal to 0, since it is assumed that given coordinates along the profile are absolute and not relative to the starting point.

The data set consists of two columns. In the first column, depending on curve type, one of the coordinates X, Y or Z is given, and in the second column, the dose is given. The coordinate system is described in section 6.2.

### Structure

EnergySpecification := energy[MV]: SepChar IntegerValue

SourceSurfaceDistanceSpecification := SSD[mm]: SepChar DoubleValue

FieldSizeSpecification1 := Fieldsize[mm]: SepChar X1 SepChar Y1

SepChar X2 SepChar Y2

X1 := DoubleValue

Y1 := DoubleValue

X2 := DoubleValue

Y2 := DoubleValue

CurveTypeSpecification := CurveType: SepChar CurveTypeEnumerator

CurveTypeEnumerator := Depth | Inline | Crossline

RadiationTypeSpecification := RadiationType: SepChar

RadiationTypeEnumerator

RadiationTypeEnumerator := Photon | Electron

QuantitySpecification := Quantity: SepChar QuantityEnumerator

QuantityEnumerator := RelativeDose | AbsoluteDose

StartPointSpecification2 := StartPoint[mm]: SepChar X SepChar Y SepChar Z

X := DoubleValue

Y := DoubleValue

Z := DoubleValue

PointList := { MeasuredPoint }+

MeasuredPoint := { Distance SepChar MeasurementValue}+

Distance := DoubleValue

MeasurementValue := DoubleValue

EndTag := End

### Example

energy[MV]:; 6

SSD[mm]:; 1000

Fieldsize[mm]:; -15; -15; 15; 15;

CurveType:; Depth

RadiationType:; Photon

Quantity:; RelativeDose

StartPoint[mm]:; 0; 0; 0

0.0; 43.420

5.0; 78.330

10.0; 96.840

15.0; 99.740

20.0; 97.340

25.0; 95.240

30.0; 93.140

35.0; 90.240

40.0; 87.540

45.0; 84.640

50.0; 82.340

55.0; 79.740

60.0; 77.830

End