University of the Studies of Turin
Faculty of Mathematical, Physical and Natural Sciences
Course of Bachelor in Physics



BACHELOR THESIS


DEVELOPMENT And IMPLEMENTAZIONE IN C++ OF ALGORITHMS FOR The CALCULATION OF PLANS OF TREATMENT IN ADROTERAPIA







Candidate: Giovanni Nicco





Academic Year 1999/2000

Index

1  physical Bases, biological chemistries and of the x-ray
    1,1  Interaction of the cancellation with the matter
        1.1.1  Heavy loaded particles
        1.1.2  Electron emission and formation of the trace
        1.1.3  Loss of energy for electrons
        1.1.4  Photons
        1.1.5  Neutrons
    1,2  Reactions consequent biological chemistries and to the ionization
        1.2.1  Radiochimici effects
        1.2.2  Damages to the DNA
        1.2.3  Biological answer
2  X-ray
    2,1  Radioterapiche largenesses of base
    2.2  The bases of the x-ray
    2,3  Conventional x-ray
    2,4  Adroterapia
    2,5  Plans of treatment in Adroterapia
    2,6  Diagnostic images
    2,7  Computerized Tomography
    2,8  Distribution of the dose
    2.9  Systems of active distribution of the bundle
3  program ANCOD2: the objects
    3,1  Description of objects to you
    3,2  Architecture of the program
    3,3  Objects and Methods
        3.3.1  Signals of C++
        3.3.2  REALdef
        3.3.3  SystemOfUnits
        3.3.4  int3Vector
        3.3.5  Hep3Vector
        3.3.6  Linens
        3.3.7  GridBox
        3.3.8  Rijk
        3.3.9  R1R1
        3.3.10  RiRjR1
        3.3.11  RUN
        3.3.12  PAW
        3.3.13  The rows makefile
4  program ANCOD2: the procedures and turn out to you
    4.1  The procedure farSource
        4.1.1  Highly summarized description
        4.1.2  Detailed description
    4,2  rilasciate theoretical Doses from the plan of produced treatment
    4.3  I use of ANCOD2 in the appraisal of the Ionian SOBP in water for carbon
Bibliography
Index images
Introduction


This job of witnesses é be carried out near group TERA ofthe universitá of the studies of Turin, and local section INFN. Plan TERA (YOUrapia with Radiazione Todronica) came promoted in 1991 with the scope to carry in Italy new effective techniques of x-ray with uses of light protons, Ionian neutrons and. Section INFN of Turin participates to collaboration TERA with several attivitá:
The contribution of the thesis é be that one to improve and to carry the program for the drawing up of plans of treatment from a language procedures-oriented (FORTRAN) to a language Object-Oriented (C++). Such passage has the scope to align the code towards it puts into effect them guideline in the computing and to reorganize it second dictates me of the Object Oriented Programming (structuring of the information and effective modularizzazione of the code). For how much it concerns the improvement é instead proposed a new algorithm for the calculation of the fluenze and opened the program to the reading of two new ones form you of rows CT (Computerized Tomograph): that CART, used from the machine for the TAC of center IRCC (Institute for the Search and the Cure of Cancer) of Candiolo and that DICOM (standard much common one for the exchange of medical images).
In understood it the 1 they come described the processes of interaction of the cancellation with the matter that are inherent to the x-ray. They come therefore described some biological aspects of this type of interaction.
In understood it the 2 information equip on the x-ray leaving from the main radioterapiche largenesses until arriving to modalitá of planning and the release of dose to the patient.
In understood it the 3 the classes are described and the objects prepare to you in order to support the constituent ones of the problem of the calculation of a treatment plan.
Nel understood it 4 comes before introduced delle the procedures that goddesses will make use methods and delle described classes nel third party understood it (that relative to located sources a lot dal target), beyond alla description far away detailed del program is illustrates also turns out to you with it obtained to you.
Thankses


Ringrazio Teresa and my mother in order to have to me supported for the job of which this thesis she represents the final part.
Ringrazio moreover all the compagni/colleghi with which I have divided these last months etc..

Understood it 1
Physical bases, biological chemistries and of the x-ray

The passage of endowed particles of mass or photons through the matter provokes, as a result of electromagnetic or nuclear interactions, release of energy and physical mutations chemical to the inside of the same matter. In an organism, such mutations, can induce physiological alterations cioé modifications of the operation of the cellular members, the cells and the entire organism. The arc of acquaintances necessary in order to re-unite cause-effect spaces perció from the interaction cancellation-matter to the reactions chemistries connected until the biological and physiological answer of the organism. The main slight knowledge necessary will come here of continuation taken in consideration in order to cover, not too much in detail, such arc of acquaintances.

1,1  Interaction of the cancellation with the matter

The cancellations [1] are distinguished in two groups: The greater part of the interaction between particles loaded and characterized material é from electromagnetic processes which had to the interaction between the electromagnetic field with the particle incident and that one of electrons and the atomic nuclei of the means in which one moves. A part smaller (but piú always important to the high energies) of the interaction é instead that responsible nuclear of the fragmentation of the nuclei and therefore of the tails of the peaks of Bragg (paragraph 1.1.1). As far as the electromagnetic part they are distinguished: First they involve continuous loss of energy from part of the particle incident through ionization and excitation of means. The electrons emitted from the ionization process have initially great kinetic energies and are therefore to they time ionizzanti particles said beams d : in practical they are the responsibles of the division of the energy lost from the primary particle in means. The elastic collisions, viceversa, give place to changes of direction of the motion of project them but without appreciable losses of energy. The effect increases with diminishing of the mass of the particle incident and &#"Calling ghostscript to convert zImages/fig5.EPSF to zImages/fig5.EPSF.gif, please wait..." 233; therefore particularly important for particles to read (electrons) that hitting against the nuclei of the matter they come diffuse to great angles also much, changing direction abruptly and emitting consequently cancellation of braking. This various dynamics in the collisions suggests to separate the study of particles loaded to read (to electrons) from that one of heavy particles loaded (those having greater mass with that one with the electron).
Release of energy
One defines stopping power [2] the valor medium of the loss of energy for unitá of distance. It depends on the velocitá and from it loads linearly with the ionizzante particle let alone () from the densitá of crossed means. In a biological context one prefers however to use the LET (Linear andnergy Transfer) that it represents the same one quantitá but in the fixed water cioé to densitá r = 1 GM/cm3 and that measure usually in keV/ mm.
An other measure of the loss of energy the much common é refraining power massico that eliminates the dependency from the average dividend the stopping power for the densitá of same means (usually expresses in [ (MeVcm2)/(GM) ]).

1.1.1  Heavy loaded particles

The loss of energy of heavy particles loaded é caused from the Coulomb interaction with electrons with atoms target (electron stopping) or with theirs upgrades them nuclear (nuclear stopping). The own ranges of energy of these two processes are indicate to you in fig. 1.1.

 

Figures 1.1: Schematic Rappresentazione of the processes of loss of energy for a heavy loaded particle.

 

Puó to notice itself that to low energies the nuclear predominates stopping while for all the other energies é the electron stopping that cause the loss of energy. The intensitá of the interaction it depends on the velocitá and from it loads. In the case of the Ionian ones however it must consider loads average effective which depends in its turn on the velocitá. The electrons of project having them velocitá an orbital minor of that one of project them come in fact tear to you via in the collisions, consequently the remaining electron number, and therefore it loads effective, are function of the velocitá of projects them. To velocitá medium many elevated all the electrons can be removed and it loads with the ione equals its atomic number. With decreasing of velocitá electrons they come captures to you from the material target and it loads effective with projects diminishes them. It loads effective é expressed from the formula empiricist of Barkas [2]:
ZEFF = Zprt (| 1 - exp(-125 bztrg2/3 )

)

"Calling ghostscript to convert zImages/fig11.EPSF to zImages/fig11.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/fig10.EPSF to zImages/fig10.EPSF.gif, please wait..."

In fig 1,2 they are illustrates the values to you of ZEFF in function of the specific energy (energy for unitá of atomic mass; usually expressed in MeV/u) of the particle it projects them.

 

Figures 1.2: It second loads effective the formula with Barkas in function of the specific energy.

 

Puó to notice itself that for 10 greater specific energies of MeV all and the six electrons of carbon are it tears to you via.
The region of the nuclear stopping although to high biological effectiveness in how much the nuclei can be bounces to you outside from the own molecular ties and, in the fattispecie, also from the DNA, it does not turn out however meaningful because it only happens to lowest energies and in limited regions of space. The region ofthe electron stopping é instead that one whose biological effects are predominant and comes described from the formula of Bethe-Bloch:
 dE

dx
=  4 pand2 2ZEFF N ztrg

mandv2
ln  mv2

The 0ztrg
+ rel. terms
where

In fig. 1.3 come compare theoretical values (Bethe-Bloch) and empiricists to you of the loss of energy (to be able refraining massico) in function of the specific energy and from the particle incident:

 

Figures 1.3: Comparazione between the loss of energy measured with that theoretical in function of the specific energy.

 

 

Puó to notice itself that the maximum release of energy, as an example of Ionian carbon é to approximately 9 MeV cm2/mg equivalents to a 900 LET of KeV/mm and that the same LET puó to be obtained to muovendosi different specific energies to two sides of the maximum; to this same LET, tu"Calling ghostscript to convert zImages/fig9.EPSF to zImages/fig9.EPSF.gif, please wait..." ttavia biological effectiveness corresponds different: this means that the same LET in if not é a complete parameter for the determination of the biological effectiveness.

Range

From the curves of loss of energy (dE/dx) the quantitá can be obtained inverse (dx/dE) and, for integration on all the rilasciabile energy, the range that the particle covers to the inside of means:
R = .
.
And0

0 
 dx

dE
dE

Being dE/dx "a medium" value also R it turns out to have a dispersion s that it defines the parameter of straggling to: =.{2s}. In practical it comes defined range medium the distance for which the particle number begins them é reduced of 50% and straggling the FWHM (Full Width Half Maximum) of the Gaussian one that of it it represents the dispersion like puó looking at itself in fig. 1.4 where two curves are represented: the integral curve that describes the course of the still present particle number to one profonditá x and the curve differentiates them that extension the particle number whose equal way é to profonditá the x in abscissa.

 

Figures 1.4: Integral curve and differentiates them of the heavy loaded particle distances in the matter.

 

 

The collected ranges calculate to you or measured they come of usual in reperibili tables in literature, é however possible to calculate the ranges for generic heavy particles taking advantage of the fact that the fattorizzabile range é in terms of M (mass of the particle), Z (loads) and one function only employee from the velocitá f(b):
Rp(b) =  Mp

Zp2
f(b)

Rx(b) =  Mx

Zx2
f(b)

Rx(b) =  zp2Mx

Zx2Mp
Rp(b)

Peak of Bragg

Graficando the loss of energy of a heavy particle loaded in function with the profonditá observes a plateu that it leave from the take-off point in the material and arrives until little cm from the range of the particle where begins to grow in order then peaky whose width é of little milimeter which it follows a second plateu with low values a lot piú like puó looking at itself in figure 1.5

Figures 1.5: Densitá of ionization in function of the profonditá. The outlined curve represents the contribution goddesses nuclear fragments.

 

 

Such peak comes said peak of Bragg and its most remarkable therapeutic value for first was intuito from Bob Wilson which face to notice in an article of last years ' 40 that used protons to therapeutic scope would have interrupted theirs they traettoria on the target without to provoke damages the rear woven ones. In the fig. 1.5 famous a release of energy also beyond the range: ció é legacy to the fact that the range only refers to the Ionian head physicians but exists Ionian secondary (produced of reaction of the fragmentation) with small atomic number piú and therefore greater range. The structure of the curves of Bragg puó to comprise itself on the base of the fig. 1.3: to high energies the small warehouse of energy é and the particles continue in their traettoria producing one densitá of low and almost constant ionization; when the particles have been slowed down to 100 meaningfully inferior specific energies toMeV/u the loss of energy grows quickly ulteriorly diminishing the velocitá in a positive reaction that refrains the particle in little milimeter catching up one LET of proportions also 6:1 regarding the plateu of entrance.

1.1.2  Electron emission and formation of the trace

For greater specific energies of 1MeV/u (region of electron stopping) the energy lost from the head physicians é nearly totally transferred to electrons. Based on the energy it begins them of the ione is had between the 65-75% of the rilasciata energy transformed in kinetic energy of electrons, 15-25% necessary for their remaining ionization and the 5-15% come consumed in excitation electronic. In agreement to this distribution the greater part of electrons is freed from their atomic ties and dissipates their kinetic energy to a sure distance from primary collision (fig. 1,6) forming cosí a trace of ionization around the traettoria of projects them.

 

Figures 1.6: Scattering of iniettati electrons to 5 keV in x= 0 0 in direction z.

 

 

The secondary electrons have therefore scattering elastic and gasped to us. The scatter elastic they do not dissipate energy practically but they determine the angular distribution of electrons; those you gasped to us go distinguished in energy: To low energies ( and < the 20 eV ) secondary electrons do not generate ionization practically but they are limited to excite atoms of the crossed material. To greater energies it dominates instead the ionization and such release of "Calling ghostscript to convert zImages/fig3.EPSF to zImages/fig3.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/fig4.EPSF to zImages/fig4.EPSF.gif, please wait..." energy has a maximum between the 70 and the 200 keV, for this reason highly energetic electrons become mainly reatti to you to biological level (where they count the ionizations) when they come slows down to you to energies of little hundreds of eV. The transferred medium energy in the events of widely independent ionization é from the energy of electrons and is worth between the 15 and 20 eV.
The combination of the transport and the release of energy of electrons concurs with Montecarlo codes to calculate with optimal verosimiglianza the traces left from Ionian in the matter. An example of such traces é illustrated in fig. 1.7 .

 

Figures 1.7: Comparazione between the traces of a proton and one ione carbon both with specific energy of 1 MeV/u, in means é schematically represented the structure of the DNA: ione the carbon produces greater densitá of ionization causing damages piú elevates you to the DNA.

 

 

Online of principle the biological damage by means of the comparazione of the structure of the trace with geometry of the DNA, in practical would have to be possible predirre many efforts in such direction has manifested the insufficiency of puts into effect them capacitá of the computers in executing complex calculations cosí. É be however evidenced, is to level experiences them that with codes montecarlo course 1/r2 for the radial release of energy of electrons around the trace, such turns out to you commonly is accepted except for distances many small (hard-Core of high release of energy) like indicated in fig. 1.8.

Figures 1.8: Radial distribution of the dose around the trace of one particle: the dose decreases like 1/r2 on several orders of magnitude of the radial distance.

 

 

1.1.3  Loss of energy for electrons

The loss of energy differs from that one of heavy loaded particles for two reasons: the fact that the electron incident is identical to that one hit (that it must be held in I compute in the quantistico calculation) and the fact that the electron incident endures large shunting lines because of its small mass (that it involves radiation for cancellation from loaded particle braking bremsstrahlung). The loss of energy is expressed perció in two terms:
 dE

dX
= .
.
 dE

dX
.
.


ion 
+ .
.
 dE

dX
.
.


brem 
The first term is worth:
- .
.
 dE

dX
.
.


ion 
=  2 p4and N

mand v2
r .
.
ln .
.
 mand v2

2.2 I
.
.
+  1

2
.
.
for not relativistici electrons (v < < c), and
- .
.
 dE

dX
.
.


ion 
=  2 p4and N

mand v2
r .
.
ln .
.
 2 mand g[ 3/2 ] v2

I
.
.
-  1

2
ln (b) +  1

16
+  C

Z
-  d

2
.
.
for relativistici electrons.
According to term it is worth:

- .
.
 dE

dx
.
.


brem 
=  And

X0
where
 1

X0
=  4Z(Z+1)NTo

137 To
rand2ln  183

Z1/3
with
rand=  and2

mand c2
beam classic of the electron.
X0 é said length of cancellation of the crossed material and it represents the thickness of matter that reduces, medium, the energy of the electron of a factor and:
< and > = and0 and-x/X0
The loss of energy for bremsstrahlung grows with the energy and becomes predominant to the high energies; the relationship between the two losses of given energy é gives
 (dE/dx)brem

(dE/dx)ion
=  Z And

580 MeV
It is used to define, for every material, a critical energy to of over of which the which had contribution to the radiation becomes that one piú large, such energy "Calling ghostscript to convert zImages/fig6.EPSF to zImages/fig6.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/fig7.EPSF to zImages/fig7.EPSF.gif, please wait..." puó to read to the intersection of the two curves illustrated in the fig. 1.9 and are worth:

Figures 1.9: Contributions of the two modalitá of loss of electron energy in function of their energy.

 

 


Andc =  580

Z
MeV
Because of the many shunting lines endured from an electron in crossing means (fig. 1,10), é possible one not to properly define a completed distance if in terms of medium distance of removal from the point it does not begin them ( practical range ). Its the following value é described from formula semiempiricist:
Rp = 0,71 and1,72 g/cm2
with and expressed in MeV.

Figures 1.10: Traettoria of an electron to the inside of the matter and practical range.

 

 

1.1.4  Photons

Based on the energy and to crossed means i beams X and g prime vary types of processes: the more important are the photoelectric effect, the Compton effect and the production of braces, except important they are instead the coherent spread (or Rayleigh) and the effect to fotonucleare.
Photoelectric effect   the photoelectric effect consists in the collision between a photon and an atom, with absorption of the photon and emission of an electron of energy andand- equal to the difference between the energy of the photon hn and the energy of tie of the electron andb:
g+ To . To+ + and-
Andand- = andg - andb
The section of collision sf for photoelectric effect depends on Z5 and has one equal energetic threshold to 300 keV.
For andb < < hn < < mandc2 and for electrons in shell the K of an atom with atomic number Z the collision section can be used:

sph= 4.2sTto4Z5 .
.
 mandc2

hn
.
.
[ 7/2 ]

 
where n it is the frequency of the photon, h the constant of Planck, to is the constant of fine structure, sT the classic section of collision of Thomson(8pr2and/3), mand the mass of electron and c the speed of the light in the empty one.
The photoelectric process is dominant to the low energies (hn < 0,5 MeV) and in the heavy elements, for which he is still appreciable to energies of 4-5 MeV.
Effect Compton   Consiste in the interaction between a photon and a free electron, on condition that the energy of the photon is much greater one of the energy of tie of the electron hn > > andb.
The expression analytics for the collision section  is of Klein and Nishina:

sC=prand2  1

and
.
.
.
.
1-  2(and+1)

and2
.
.
ln(2and+1) +  1

2
+  4

and
-  1

2(2and+1) 2
.
.
with and = [ (hn)/(mandc2) ] and rand the beam classic of the electron.
The Compton effect dominates for energies comprised between 0.8 and 4 MeV.
Creation of braces   Happens in the coulomb field of a nucleus or an electron and consists in the transformation of the energy of a photon in one brace electron-positron.
For 1 < < [ (hn)/(mandc2) ] < < [ 1/(toZ[ 1/3 ]) ] the collision section can be used:

s2andPC=rZ2 .
.
 28

9
ln .
.
 2hn

mandc2
.
.
-  218

27
.
.
and for [ (hn)/(mandc2) ] > > [ 1/(toZ[ 1/3]) ], holding account of the effect of screening:

s2andPC=rZ2 .
.
 28

9
ln .
.
 183

Z[ 1/3 ]
.
.
-  218

27
.
.
The process happens for hn 3 mandc2 and is dominant for 5 advanced energies to MeV.
Section of collision total  
To leave from the previous processes one can be defined collision section total for the interaction of photons given from the sum of the partial sections of collision:
stot=sph+sC+sPC
of which a course in figure 1.11 is shown .

Figures 1.11: Section of collision total and contributions of the different processes for photons in carbon, function of the energy ( sp.and.:effetto photoelectric, scoherent: coherent spread, sincoherent: Compton spread, kn: production of braces in the field nuclear, kand: production of braces in the field of electrons, snuc: absorption to fotonucleare)

 

 

 

The photon absorption in means has a esponenziale course and photon the N number that has not endured interactions in a distance l is:

N=N0and-mŠl
where N0 is the number begins them of photons and the coefficient of linear attenuation is defined like:

m = r  NTo

To
stot
with r density and To number of mass of the absorber; NTo is the number of Avogadro.

1.1.5  Neutrons

The neutrons, do not equip you of load electrical worker, they are not subject to coulomb interactions with electrons and nuclei of the matter. They constitute however an indirectly ionizzante cancellation because they interact with the nuclei of the matter that cross through the force strong nuclear producing ionizzanti particles. These reactions are rare events in how much only happen when the neutron tos be distant less than 10-15 m from the nucleus. The law of attenuation of a thin monoenergetic neutron bundle é similar to that one of the photons in the sense that come anch' they attenuates to you through a coefficient of linear attenuation esponenzialmente.
The thermal neutrons ( and < 0,1 eV ) interact with the atomic nuclei from which come "captured"; the nucleus then diseccita emitting a photon. The probabilitá of neutronica capture it increases diminishing of the energy of the neutron and varies considerable to second of the absorbent material. The section of great collision é for elements which the hydrogen, the boron and the lithium.
The fast neutrons (1 150 MeV < and < MeV) endure mainly hit elastic with the nuclei, are worth to say that all the energy lost from the neutron é transformed in kinetic energy of the nucleus ("moderation" of neutrons). The maximum transfer of energy is had when the frontal collision é and the nucleus have piú or less the same mass of the neutron, cioé when the target é a proton. Since rich the biological hydrogen woven one é, the fast neutron passage in characterized it é in greatest part from this type of interaction that produces to protons of bounce of equal energy to that one of the neutron incident, which cause to ionization and excitation in atoms and molecules of means. Other damages to the living woven one are caused from the collisions of neutrons with the nuclei of carbon, oxygen and nitrogen.
Neutrons of intermediate energy interact by means of both processes, of capture and elastic collision.
Others two interactions to remember are hit to it gasped to us and it hits to it not-elastic. In the first neutron it comes later on captured from the nucleus and riemesso with one smaller energy and production of a photon. This process single verification if the neutron has one at least energy of 1 MeV, necessary to excite the nucleus. It hits not-elastic differ from previous because after the neutronica capture the issued particle not é the neutron but a loaded particle. These collisions have place for 5 advanced energies to MeV and theirs probabilitá to take place itself grow to increasing of the energy. Finally, for neutrons with advanced energy to 100 MeV puó to have the spallazione , cioé the fragmentation of the nucleus hit in piú parts.

1,2  Reactions consequent biological chemistries and to the ionization

1.2.1  Radiochimici effects

The ionizzanti cancellations produce to the inside of the matter ionizzati atoms and molecules or excite to you. From the moment that an organism living é compostoi to the 70-85% of water [the 3] probable processes piú happen on it:
(radiolisi)
H2Or cancellation
\leadsto
 
H2Or++and-
(excitation)
(excitation) H2Or cancellation
\leadsto
 
H2Or*
The three species, H2Or+, H2Or* and and- they are diffused in following means and gives to place phenomena:

H2Or++H2Or. H3Or++OH?font >

H2Or*. .
.
.
.
.
H2Or++and-
H?font >+OH?font >
H2+Or?font >
"Calling ghostscript to convert zImages/elsolvat.EPSF to zImages/elsolvat.EPSF.gif, please wait..."
The electron produced from H2+Or?font >, once slowed down, is arranged to the center of four water molecules takes the watery electron name and constitutes one chemical species much reactive. One its particular reaction é:
H2Or+andaq-. H2Or-
Also the molecule H2Or- (like H2Or+) é unstable:
H2Or-. H?font >+OH-
After ~ 10-11 sec from the passage of the ionizzante cancellation four remain chemically active species H3Or+,OH?font >,H?font > and andaq-. (fig. 1,12)
Of which:
H3Or+ + and-aq . H?font >+H2Or
They remain percó the following free radicalses:
OH?font >: ossidrile radical
H?font > : radical hydrogen
andaq: watery electron
Such radicals are many reagents you since also being electronically neutral they stretch to couple the electron spaiato with an other similar one of an other radical, or to eliminate the electron with a transfer process. Moreover they can interact with organic molecules RH (where R is members of the molecule and H a hydrogen atom) forming radical secondary:

Figures 1.12: Species reactive produced in the radiolisi of the water: to) watery or solvatato electron andaq-, b) radical H hydrogen?font >, c) ione hydrogen H+, d) radical idrossile OH?font >, and) ione idrossile OH-.

 

 


RH+OH?FONT >. R?font >+H2Or

RH+H?font >. R?font >+H2
Both these free radicalses (primary or secondary) can interact with biologically meaningful molecules provoking the so-called indirect radiobiologico damage.
Piú very rarely has viceversa a directed radiobiologico damage when organic molecules RH endure the direct action of the cancellation.
RH cancellation
\leadsto
 
RH++and-. R?font >+H++and-
The free radicalses interact also with oxygen molecules originating other harmful free radicalses; in oxygen presence an increase of the consequent biological damage to the cancellation passage is had thereforeeffect oxygen.
Or2+H?font >. I HAVE2?font >

Or2+and-. Or2-

Or2-+H+. I HAVE2?font >
Moreover oxygen puó also to interact with other free radicalses:
R?font >+Or2. RO2?font >

RO2?FONT >+RH. 2ROH+R?font >

1.2.2  Damages to the DNA

The nucleus of the cell é demonstrated sensitive hundred of times piú to the attack of the produced free radicalses from the cancellation passage. Such radicals are not moved very from the place in which they have been produced because of their elevated one reattivitá, if they react with the DNA wants therefore to say that they have been produced in its grip prossimitá. The damages that can provoke are following:
Cancellation of one base (Bd: base deletion): a base is removed from the nucleotide;
Alteration of a sugar (Knows: sugar alteration): change of the property chemistries of the desossiribosio;
Alteration of one base (Ba: base alteration): change of the property chemistries of one organic base (To, T, G or C);
Erroneous pairing of base (Mb: mismatched base): it comes altered the natural connection between bases A-T and G-C.
Breach of chain (Sb: strand break): breach of the covalent bond between the sugar desossiribosio and the groups phosphate;

1.2.3  Biological answer

The outcome of the damages produced to the DNA regarding the life of the cell depends on the phase of the cellular cycle in which they they take part ( G1 maturation of cell,quite G0,S synthesis of new chromosomic material,G2 preparation to the mitosis,M mitosis) and from the capacitá of the same cell to repair just the genome. In any case there are of proteins sensors that find following the endured damage and send one of the three marks them cellular:
Arrest of the cellular cycle   the cellular cycle comes interdetto and in such a way the capacitá is stayed out of duplication of the cells.
Apoptosi   This process determines the dead women cellular without however priming typical inflammatory processes of the necrosis, this é in fact the genetically programmed way of cellular suicide to the aim to guarantee the organism renews of its cells.
Repair   If one of two sides of the double propeller of the DNA comes characterized like "wrong" one able protein é of risintetizzarlo for "complement" to the integral considered opposite side. This process of repair puó not to prime itself if a double breach of chain (DSB double strand break) in this case is had in fact the repairing protein does not succeed to carry a.termine its job.
The DSB just defer therefore from the SB (single strand break) because they cannot be repairs to you, this é the reason for which cancellations to elevated densitá of ionization (high LET), which they have greater probabilitá to realize two near damages between they (fig. 2,2) biologically turn out piú destructive (or effective in the perspective of the x-ray).

Understood it 2
X-ray

2,1  Radioterapiche largenesses of base

Dose

One first measure of the quantitá of cancellation absorbed from woven é a densitá of energy medium and rilasciata from ionizzanti particles in one infinitesimal mass rdV tending to zero [4]
D=
lim
dV. 0 
 and

rdV
In International Sistema its unit of measure é [ Jkg-1 ] which it comes given the name of Gray [ Gy ] . A submultiple of the Gy é rad= 10-2Gy.

Equivalent dose

In radioprotezione (than it is distinguished from the x-ray for the low dealt doses) uses the equivalent largeness dose that holds account of the harmfulness of every detailed list cancellation by means of a factor of weight for the cancellation wr. The equivalent dose in a woven given T é from the expression:
HT=
.
r=cancellation 
wr DT,r
Its unit of measure in International Sistema would be anch' it the Gray but in order to remember that it is multiplied for a factor of adimensional weightw r it takes the name of Sievert [ Sv ].

Effective dose

In the within of the radioprotezione account also of the greater or smaller sensibility to the cancellation from part of woven through a factor of weight for woven w the Twith T an index of the woven one is always kept. A largeness is obtained that it serves to giving to an esteem of the damage total endured from an individual as a result of one exposure to cancellation:
And=
.
WovenT= 
wT HT

RBE

In the x-ray viceversa (high doses) the "harmfulness" of the type of cancellation takes to the name of "effectiveness" understanding as ability to bring damage to the cells. In order to quantify it one is used relative measure making reference to one very precise cancellation champion (indicated with the pedice g ): biological effectiveness (RBE , Relative Biological Effectiveness is defined relative) the expression:

RBEr=  Dg

Dr
Where Dg is the dose necessary in order to produce the same damage produced from the D doser of an other cancellation (indicated with the pedice r ). (If D r) then RBE=2 is necessary the double quantity ofdoseof
conventional cancellation(Dg = 2). In practical it is used to directly put in relation the value of the RBE with the LET (giá defined in the first one understood it but that verrá resumed in the next paragraph) of the not conventional cancellation why it is fundamentalally on that the biological effectiveness of a cancellation depends. In fig. 2.1
Figures 2.1: Rappresentazione of the data experiences them (obtained on several cellular lines) of the dependency of the RBE from the LET. The segments p, C, Of it indicate the obtainable LET with protons, Ionian carbon and Ionian neons.
puó to notice itself as to increasing of the LET there is an increase of the RBE (since increases to the concentration of ionization and therefore the probabilitá of a DSB (double strand break: double breach of the propeller of the DNA, not repairable); with the progressive one to increase of the LET however has a sovrappiú of energy release that, while it does not increase the damage diminishes however the number of places in which such release it happens because of the greater dissipation of energy.

LET

The amount of energy transferred from the directly or indirectly ionizzante particle in the space unit determines the distribution of the ionization and the excitations to the inside of the biological material and harmfulness (RBE) of the same cancellation. LET is defined (To delineate Energy Transfer) the amount:
LET=  dE

dx
where dE it is the medium energy transferred to means from the particle in covering a feature dx in its inside. In table 2,1 they are introduces the values to you of the LET of the main cancellations used in x-ray [5]
Particle It loads Energia(MeV) LET(keV/mm)
Electron -1 0.01 2.3
0.1 0.42
1 0.25
Photon 0 1.17-1.33 0.2 2
(g of the 60Co )
Proton +1 2 16
+2 8
+5 4
+10 0.4
to +2 5 95
Neutron 0 5 3-30
Ione carbon C+6 6 10MeV/u 170
250MeV/u 14
Table 2.1: Ionizzanti LET of cancellations and interesting particles in x-ray
In fig. 2.2 "Calling ghostscript to convert zImages/dna.EPSF to zImages/dna.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/p13.EPSF to zImages/p13.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/t5.EPSF to zImages/t5.EPSF.gif, please wait..." the dimensions of the traces of several particles regarding those of the DNA can be confronted: it is obvious as for particles to high LET (as the particle to in issue is one more elevated possibility than double breach of the propeller of the consequent DNA with greater biological effectiveness.
Figures 2.2: Schematic Rappresentazione of the DNA and the traces of an electron and a particle to that they cross it.

OER

They exist you vary chemical factors that influence the biological effect of the cancellations, between these the main one is surethe effect oxygen . The molecular oxygen presence (Or2) increases to a lot the damage endured from cells (fig. 2,3).
Figures 2.3: Of survival for cells irradiated in presence or 2 Or percentage absence; with the points To, B, C comes graphically illustrated the meant one of quantitá the OER. The file illustrates the radiosensibilitá in function of the partial pressure of Or2.
In order to obtain a determined biological effect in woven devoid of oxygen (as the nucleus of a tumor) is necessary a dose of greater cancellation poichŹ is less of the sensitive half to the cancellations [6]. Viceversa in woven very oxygenates to you is sufficient one smaller dose of cancellation. This ascertainment empiricist has three explanations:
- the oxygen presence cause an increase of the production of free radicalses.
- molecular oxygen has one elevated affinity electronic and stretches therefore to react with electrons freed from the ionization delaying some the recombination and increasing the probability from part of the electron to cause damages.
- the oxygen lack between a radiation and the other of an aliquot treatment diminish the ability to recovery from part of the damaged cells.
Quantitatively the effect oxygen expresses through amount OER (Oxigen Enhancement Ratio), defined as the relationship between the demanded dose in order to bring a sure damage to one cell in ipossica condition respect to one condition of normal oxygenation:
OER=  D

D0
Where D é the dose necessary in order to produce to a woven effect in real and 0D é the dose that would produce the same effect if the woven one completely were oxygenated in air to normal pressure. In fig. 2.4
Figures 2.4: OER in function of the LET for several types of cancellations and several lines cellulari.Sono indicates the raggiungibili ranges to you of LET for interesting particles in x-ray.
it can be noticed like the several OER in function of the LET.

2.2  The bases of the x-ray

The x-ray is used in order to destroy a localized tumor facendogli to absorb one such dose of cancellations to kill of the cells. Sometimes work also on the p"Calling ghostscript to convert zImages/t3.EPSF to zImages/t3.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/t7.EPSF to zImages/t7.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/doprofot.EPSF to zImages/doprofot.EPSF.gif, please wait..." ossibili way of spread of the tumor in order to prevent that proliferi elsewhere. Fundamental in both cases é the fact that the tumorali cells turn out piú vulnerable medium to the cancellation of those knows some and this guarantees a space of job (in terms of dose) muovendosi to the inside of which é possible to bring a fatal damage to the bearable tumor but for the other cells. Such stimabile space é from the curves dose-effect (fig. 2,5).
Figures 2.5: Curves dose-effect: (a) woven tumorali (b) woven healthy. Therapeutic relationship is defined quantitá the D2/D1 where 2D and D1 is the doses that have one probabilitá equal to 50% to provoke respective complications the woven ones heal and control on the tumor.
In such figure puó to observe itself that for a dose correspondent to a probabilitá next to the 100% of control on the tumor (line To) one is had also probabilitá a lot (too much) elevated to obtain damages to the woven ones heals. For this reason the radioterapista chooses of usual a such dose not to go up beyond 50% of probabilitá of having damages on the woven ones heals, for as these curves are introduced this mean also to have only 50% of probabilitá of control of the tumor.
If however it is succeeded to having good selettivitá a ballistic one or conformitá in the sense that is succeeded to irradiate only the tumor nearly then (always making reference the fig. 2.5) an only horizontal line is not had piú represented the absorbed dose but one brace of lines one for the dose absorbed from the tumor (than fará reference to the curve (a)) and one for the woven dose absorbed from healthy (that fará the reference to the curve (b)).
With I use it of hadrons is succeeded to obtain an increase of probabilitá of cure of a tumor in how much the dose absorbed é piú concentrated in the tumorali woven ones of how much is succeeded, viceversa to obtain with electrons or photons (this for the giá cited characteristic of the peak of Bragg that resumptions will come later on however).

2,3  Conventional x-ray

Initially the x-ray was practiced using like sources of cancellation of the radioisotopi like cobalt, today it is preferred to use linear electron accelerators which can produce directly make us of monoenergetic electrons or (refraining electrons on targets to high densitá) it makes us of photons characterizes you from a continuous phantom of energies with energy maximum correspondent to that one of electrons. In figures 2,6 and 2,7 they are visualizes the release to you of energy in photon and electron water respective.
Figures 2.6: Curves dose-profonditá in water in order make us of electrons of energy comprised between 4.5 and 21 MeV.
Figures 2.7: Curves dose-profonditá in water in order make us of having photons the maximum energies for energies comprised between 6 and 25 MeV.

Electrons

It makes us of electrons have the maximum distance to the inside of the woven one (than é approximately equal (in cm) to the metá of the energy begins expressed them in MeV), to of lá of which one is had tail of lowland intensitá due to photons of bremsstrahlung.
For this type of energy release the electrons are adapted for the treatment of superficial tumors or to the maximum to some centrimetro sottopelle.

Photons

It makes us of photons are viceversa characterizes to you from an absorption of preceded decreasing esponenziale type from a maximum that does not go beyond i 4 cm for photons also several energetic (25 MeV).
Theirs I use particularly é indicated for "deep" tumors situates you to many centimeters from the cute. For irraggiare in selective way such targets they have been developed technical sophisticated, that they imply the necessitá to use piú makes us that they enter in various points of the body but that they are all focuses to you on the center of the tumor.
In order to realize this type of treatment it is necessary that the entire linear electron accelerator wheels around a fixed point in the space (isocentro) so as to to be able to use whichever take-off point of the bundle prestabilito regarding the patient. A way in order "to conform" the bundle to the tumor é moreover that one of frapporre of the obstacles between the source and the target so as to to make to reach specific doses in every point of this. In such sense today they are used of the "obstacles" whose varied shape dynamically saving in time and costs of realization respect the obsolete "obstacles" to fixed shape. Such dynamic objects come call "multileaf collimators" ( collimators to you to many leaves) in how much are constituted from parallelepipedi of heavy metal that move sliding on the other for means of motors and frappongono to the bundle coming true itself some the modulation in intensitá.

2,4  Adroterapia

For adroterapia the x-ray practiced with composed particles from quark agrees: neutrons, protons, Ionian.

Neutrons

As far as neutrons, their release of energy in water é much similar one to that one of photons and turns out particularly useful single in how much the boron has the two following proprietá:
1) fixed on some woven tumorali.
2) it interacts with thermal neutrons freeing particles to to high LET that rilasciano locally all their energy.
Such proprietá they concur to realize the boroterapia that consists exactly in making so that the boron fixed on the tumorale woven one in issue which it comes then irradiated with thermal neutrons triggering a reaction that free particles to that rilasciano dose exactly where such necessary dose é. The release of energy for neutrons é visualized in fig. 2,8 with to that one of electrons, photons and protons.
Figures 2.8: Curve dose-profonditá for photons, (da one cobalt source and a linear accelerator from 8 MeV), neutrons and protons. For every bundle source comes indicated the distance "skin" ("Source to Skin Deep").

Protons

The curves dose-profonditá for protons (2,8) di"Calling ghostscript to convert zImages/t13.EPSF to zImages/t13.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/t14.EPSF to zImages/t14.EPSF.gif, please wait..." fferiscono [7] strongly from those of the other cancellations up to now analyzed in how much heavy protons (and particles loaded) in a generalized manner rilasciano the doses piú elevated to the end with their distance in the woven ones giving place to the "peak of examined Bragg" giá in the first one understood it. For protons therefore low the superficial dose é regarding that one absorbed in the region of the peak, various from how much succeeds for photons and neutrons.
The profonditá of the peak of varied Bragg with the energy it begins them of protons: modulating it opportunely é possible to obtain plateu in the said curve a dose-profonditá SOBP (Spread-out Bragg Peak; peak of Bragg increased) illustrated in fig. 2.9.
Figures 2.9: Peak of increased Bragg (SOBP) in order makes us of Ionian protons and.
With a plateu of this type a null release of dose beyond the target is succeeded to practically avoid very many woven dose to healthy (you é), however puó to make oneself better still with Ionian light in how much, like puó noticing itself in fig. 2.9 the dose rilasciata before the low peak é a lot piú as the loaded particle becomes piú heavy.

Ionian light

Ionian the light ones concur therefore a good "conformation" of the dose even if introduce the following problems:
1) to realize a complex accelerator of Ionian é piú that to realize of one for single protons.
2) as the mass of the ione increases introduces the phenomenon of the fragmentation giá seen in the first one understood it that it provokes to the release of dose also beyond the peak of Bragg (tails) like puó looking at itself in fig. 2.9 . In practical it has single sense to use Ionian not piú heavy of oxygen.
The greatest advantage to use the adroterapia in place of the traditional therapy (photons, electrons) appears obvious in fig. 2.10,
Figures 2.10: Comparison between the distributions of dose makes us of protons and electrons on a target (represented from the circle).
in it it comes quantified the qualitá of the consistent treatment obtained with a proton bundle increased comparing the curves of isodose with those due to an electron bundle.

2,5  Plans of treatment in Adroterapia

É seen as the hadrons offer the advantage of a distribution of dose in profonditá with a pronounced maximum to the end of the traettoria regarding the esponenziale deposition of photons or the maximum a lot increased of electrons, in this way they concur a conformazionale therapy of elevated precision.
Such precision concurs to adapt the distribution of the dose to the shape of the volume very well target, diminishing at the same time the dose received from the woven ones you heal and saving the critical organs us.
The plan of radioterapico treatment must be planned holding account of a series of multidisciplinary parameters that go from the diagnostic one, to the radiomedicina passing for the technological limits and problematic relative biological physics and to the modalitá of release of the dose.
In a generalized manner, schematically, we have following is made:
  1. Acquisition of diagnostic information (CT, PET, NMR, others reperti).

  2. Location of the volume target and the organs to risk limitrofi.

  3. Chosen of the doses and modalitá of release (the type of x-ray, position of sources, eventual I use of collimators)

  4. Elaboration of the treatment plan second one of following modalitá:
    • direct planning direct Appraisal of the plan of treatment with method tries and tries again.

    • inverse planning automatic Elaboration of a plan of treatment through reversal algorithms .

  5. Simulation and three-dimensional visualization of the distribution of obtained dose.

2,6  Diagnostic images

The data of departure for the formulation of a treatment plan are constituted from obtained diagnostic images with various techniques. They in fact, beyond supplying means for the appraisal from the clinical point of view of the extension and the positioning of the lesion, contain also the relative information to the three-dimensional anatomy of the patient. This last information carries out the most important role in the drawing up of the TP(Treatment Planning), since concurs to estimate the eventual presence of organs and/or structures to risk in the vicinities of the tumor, and to trace therefore the contours of the volume target and those surrounding ones, beyond allowing the choice of the characteristics of the bundle and opportune geometry of radiation piú.
The diagnostic images moreover contain also the relative information to the distribution space them of the densitá to the inside of the body of the patient, than, once converted in a map of the powers refraining massici in water, é to the base of the dosimetrici calculations for the drawing up of the TP.
E' important to emphasize the necessitá to decide of a set of diagnostic images of the patient in the radiation position, in order to arrange of a simulation of treatment piú the possible supporter with the realtá, suit of all the necessary data for the location of the lesion and the positioning of the patient on the lettino or the chair of treatment (clip surgical, signs tatua you on the skin, etc). This last tied to the possibilitá, piú always diffuse requirement é, to obtain reconstructed radiografiche images to leave from the diagnostic images of departure, that they can be compared with of the x-rays carried out in knows it of treatment during ciascuna therapy session, in order to guarantee an adequate one riproducibilitá of the positioning of the patient.

2,7  Computerized Tomography

The technique of the computerized tomography é necessarily main the diagnostic source (example for pathologies to the tiroide PET 1 does not turn out piú valid for the appraisal of the physiological state of the same tiroide) however constitutes in the greater part of the cases the source from which part in order to elaborate a treatment plan, eventually coadiuvata from other sources of images which the PET exactly or the NRM. the 2 CT are based on the absorption of i beams X from part of the crossed woven one, such absorption depends on the densitá electronic of the material that constitutes the woven one and comes measured from a coefficient, saying coefficient of absorption or linear attenuation m. [8]
In order to realize the CT the orga"Calling ghostscript to convert tac.EPSF to tac.EPSF.gif, please wait..." in issue it does not come ideally subdivided in many slices of limited thickness (typically approximately a millimeter), ognuna of these comes therefore sondata individually using makes us of beams X. (fig. 2,11)

Figures 2.11: System of scanning for tomography. A bundle of beams X passes through the object and comes revealed to the escape. The system (source of beams X - detector) up slides along the directions indicated in the figure (scansion). Piú scansions comes carried out to several angles for being able to better reconstruct the image of the organ.

 

 

 

To every scansion it comes measured the curve of absorption of the cancellation in function of the position of the system source-detector. The information of all are always collected therefore the scansions (of the same one slowly) and through algorithms sosfisticati enough laughed them in way piú or less precise to the densitá electronic in every point of the woven one. (the precision increases with the number of scansions but ognuna of they it brings a damage upgrades them to the patient in how much rilascia dose to the woven ones for which not puó eccedere)[9]. In rough but piú perhaps intuitiva one way much puó to say that from the analysis of the "ombre/trasparenze" seen from piú angles-shot puó to reconstruct the forma/densitá of the object in examination. The elaborated differences of densitá cosí are such to concur the distinction between woven and an other nonch' é eventual pathology of same weaving. It must peró specify that of fact, through the scansion technique the coefficients of absorption m can only be measured (k,and) where k it represents the identificativo of a particular one voxel and and the energy of i beams X uses you. In order to pass to the densitá electronic true and own it must calibrate (through scansions to famous materials) the acquisition system elaborating the coefficients that tie the densitá electronic to the absorption coefficients:
rand= (To +BŠm)               .
.
 electrons

cm3
.
.
In order to render piú the data collected on the absorption coefficients leggibili it is used peró to report them to that difference-percentage regarding those of the water still multiplies to you for 1000 for magnificarne the difference [10], such values take to the name of number of Hounsfield or number TC:
TC(k,and) =  m(k,and) -mH2Or

mH2Or
Š1000
L"Calling ghostscript to convert hu.eps to hu.gif, please wait..." "Calling ghostscript to convert zImages/a246.EPSF to zImages/a246.EPSF.gif, please wait..." to relation between densitá electronic and numbers of Hounsfield differs regarding that one with in coefficients of absorption only for the coefficients that normally come expressed in the following shape:
rand= (To +BŠ10-3ŠTC)Š1023               .
.
 electrons

cm3
.
.
From the definition of number of Hounsfield it is observed that for air TC=-1000, while for water TC= 0. The values of woven numbers TC for the several one of the human body are reassumed in figure 2.12.
Figures 2.12: Distribution of woven numbers TC for the several one of the human body.
A tie between densitá electronic exists finally rand and densitá of the material:
r =  To

NToŠZ
rand

2,8  Distribution of the dose

Making reference to the images of the woven one to cure the doctor it supplies its prescription as far as the dose that in it goes rilasciata.
Knowing a priori the impossibilitá to only localize the dose on the tumor and knowing moreover the limits of the equipment to disposition in order to realize the treatment, the doctor supplies one demanded of dose release that is reasonably obtainable.
Such demand comes represented with of the curves of isodose (cioé contours long which the dose assumes constant value) traced directly on the image of the woven one. With sophisticated systems piú, viceversa the doctor puó to take advantage itself of the aid of a computer for stilare a treatment plan. In fig.2.13
Figures 2.13: Curves of isodose for treatment with protons to intensitá modulated.
é possible to see one shielded of one of these programs for the elaboration of treatment plans: up on the left the curves of isodose turning out from the complete treatment with 9 are observed make us of protons. E' important to emphasize that the optimization of the physical distribution of the dose does not coincide with the optimization of the treatment plan, because the influenced radiobiologico effect é from other parameters, which the division outline and the radiosensibilitá cellular. In order to judge the effects of the radiation é therefore always necessary to estimate also probabilitá of control of tumor(TPC) and probabilitá of damages to tessuuti normal (the NTPC) noticeable from the reading of the curves the dose-effetto"Calling ghostscript to convert magn.EPSF to magn.EPSF.gif, please wait..." "Calling ghostscript to convert rascan.EPSF to rascan.EPSF.gif, please wait..." for the woven ones in issue.

2.9  Systems of active distribution of the bundle

For somministrare a consistent dose on a tumor, the method better é that one than a modulation in intensitá of the bundle by means of bolus cioé obstacles frapposti between the source and the target (does not arrange of passive distribution of the bundle) but by means of dispositi in a position to generating it makes us to you of various energies (arranges of active distribution of the bundle).
Using of disposed magnets on the distance of the bundle é moreover possible to modify of its direzione.(fig. 2.14

Figures 2.14: Schematic structure of a system to magnetic scansion.

 

 

With the union of the two modulations é possible, in the case of the adroterapia to center the peak of Bragg in very precise points of the volume to deal executing of one three-dimensional scansion [11].
Such scansion puó to be of two types: raster or voxel (fig. 2,15).
Figures 2.15: Systems of scansion: to) raster b) voxel.
With the method raster the continuous bundle é and moves to zig-zag, with the method voxel the intermittent bundle é and situates the peak of Bragg to the inside of a small volume that puó to be also of the order of the millimeter of side realizing therefore a treatment extremely in compliance with the same tumor.
 

Understood it 3
Program ANCOD2: the objects

3,1  Description of objects to you

The program must be in a position to supplying a treatment plan that consists in with of spot described gives: particle direction, number, energy. Such slowly of treatment it must be elaborated to leave from the following things:
  1. from the CT that describes the organs to deal

  2. from the prescription of the doctor on the parts to deal and with which doses

  3. from the description of the equipment that effettuerá the treatment and from the positioning of the patient regarding the bundle

From the program it wants moreover the visualization of the doses that with the plan of elaborated treatment is previewed comes rilasciate (necessarily not identical to those prescribed); such doses will have, in phase of verification, being convalidate with simulations montecarlo or experience them.
Detention remaining these objects the program to you has however many degrees of libertá that they follow evolversi of the situation, as an example:

3,2  Architecture of the program

Respect to a language procedures-oriented where the concentrated attention é on the flow of events that door from a set of data in input towards a set of data in output [12] in a language object-oriented is attempted more rather than to characterize the single ones entitá that they concur to constitute an informative context considering the procedures as contingent events whose plasticitá and facilitá of realization they are guaranteed just from a good disarticulation of 13 same data[] Every member of the informative context from which wants to extract information must be rendered independent as far as the creation, maintenance and callback. These componenti("Oggetti") must be able to be exchanged between several the modules of the procedures without that there is other code that sovraintenda to ció: a matrix must contain in if its number of elements and the module puó calmly to recall it without preoccuparsi to try information to its care elsewhere.
This formulation demands taken care of a study of the informative context but code drawing up concurs one once piú snella that this é be placed in system.
A ' other characteristic of 14 languages object-oriented[] é that one to concur the creation of new "types" of data. As an example if the program makes algebra use to delineate convene to create a new type of data, in this case "matrix" and to define for it sum operations, multiplication, reversal etc, so that the code can contain instruction of the type
To = B + C; To = B * C;

Where To,B,C are matrices.
The introduction of new types facilitates therefore very many the code drawing up and must be used every time is a reasonable one probabilitá of res-use in the same informative context [15]. In the drawing up of treatment plans as an example the study of the trajectories of particles, of the appraisal of the distances etc, suggests to the creation of objects which geometric points, lines and plans with relati algorithms to you for the calculation of the intersections, the distances and quant' other. With of a entitá logically very delineated, joined to the algorithms that them are own, it constitutes one "class". As an example in this program é be introduced the Rijk class that concurs the management of matrices of real numbers with 3 indices (creazione/inizializzazione, destruction, access, visualization, memorization on rows, callback from rows, it prints).
All the informative context puó to be structured on piú levels: they introduce entitá/tipi base in order then to define complex others entitá piú that of it make use. The important, in the drawing up of the informative context, é to characterize the hierarchical levels in which well it structure. Such location é tutt' stable other that univoca or: é work of the project manager to estimate how much time to spend in the study of the architecture and when and how much to modify it to unexpected forehead: a vision to sgrossamento begins them continuation from successive approximations seems to be one good road [13] or however é be that continuation in the drawing up of this program.

3,3  Objects and Methods

Here of continuation they will come described, to leave low from piú the hierarchical level, the classes that constitute the informative context which procedure ANCOD2 fará reference in the elaboration of the treatment plan.
The hierarchy of the classes é following:
For being able to proceed in the reading é peró opportune to open a short parenthesis on the C++ that concurs one understanding, even also only highly summarized, of its main constituent ones.

3.3.1  Signals of C++

The instruction # includes
The structure of a C++ program é following:
# it includes < iostream.h > int main(){int i; cout 
< < `` Inserire a number ``; cin > > i; cout < < `` inserted 
Number = '' < < i; return 0; }


This program carries out a input from keyboard (cin = console input) and a output on c finishes them (cout =onsole output).
You notice that the first instruction ( # includes < iostream.h >) that of fact substitute from a precompiler with the content of the rows comes iostream.h says the compiler that verrá made use of a set of instructions that they concern input and output through operating of stream (< < and > >); operating whose meant evince from the same example. This particular é a lot important , in fact the C++ compiler comes conceived like opened: removed a nucleus able base to carry out the elementary operations piú the rest of the compiler comes integrated from many modules of which some they are present standards of the C++ in every compiler, others is own of the specific compiler and, above all it previews that good part of the added modules will have been created from the same programmatore. This characteristic, joined to others potenzialitá of the base nucleus that we will see later on, concurs the programming Object Oriented.
The functions
One good rule of programming é following: you divide and conquest: the sum of the difficoltá of a problem divided in two é in fact from the human point of view much minor of that one of the same problem considered in its together. In order to succeed to divide a problem the "functions" are used where, for function not only something agrees that gives back to a number but also something that it carries out of the operations. Here of continuation it comes brought back the example of declaration of a function ("min") in order to find the minor between two numbers and its I use:
int min(int to, int b) {/* Declaration */if(to < b) return
to; if(b < to) return b; } # it includes < iostream.h > 
int main() {int i,j; cout < < "To insert two numbers"; cin
> > the > > j; cout < < "smaller Number =" < < min(i, j); 
/ * I use */return 0; }






The rows header and implementation
In the previous example declaration
int min(int to, int b)

implementazione
   if(to < b) return to; if(b < to) return b;


and I use
   cout < < "smaller Number =" < < min(i, j);


of the function min they were all and three in same rows whose name could be as an example "prova.cc". Normally instead these three parts come subdivided in how much
The classes
Beyond to the functions they can be defined of the classes that are of the given structures that they have of the methods that of it concur the manipulation. Example of a class could be that one of the complex numbers: a complex number é composed from a brace of real numbers for which é defined the sum, the product, the difference and the relationship. The sintassi in order to create a such class, however, é of all the banal one and does not introduce one here class a lot piú simple.
rows unaClasse.h:
class unaClasse{private: int to; public: 
void set_a(int num); int get_a(); }

rows unaClasse.cc:
void unaClasse::set_a(int num) {to = num; } int 
unaClasse::get_a() {return to; }


rows utilizzo.cc:
# it includes "unaClasse.h" # includes < iostream.h > int 
main(){unaClasse var1; unaClasse var2; var1.set_a(10); 
var2.set_a(22); cout < < var1.get_a(); cout < < 

var2.get_a(); return 0}

This program, once compiled and executed produrrá the press of numbers 10 and 22.
For ulterior deepenings on the C++ one sends back specific witnesses of which some titles them they are indicates to you in bibliography.

3.3.2  REALdef

This module defines a priori (for this é be placed to "level -1") what agrees for "real number": I use of double guarantees greater precision and velocitá of execution, that one of "float", viceversa, one smaller memory requirement.
All the classes to follow definiranno REAL the real numbers, where replaced REAL verrá from double or float to second of how much content in this module.

3.3.3  SystemOfUnits

This module é be ritagliato from bookcases CLHEP (CLasses for High Energy Physics) [17] coming from from the CERN and consists in one series of definitions of constanti. In it the definitions of unitá of measure in terms of multiples and the submultiples of a chosen value as fundamental and equal place to 1 are contained.
Es. for the lengths we have the following definitions:
 milimeter = 1; cm = 10 * 1 milimeter; m = 1000
* 1 milimeter; micrometer = 1.e-3 * 1 milimeter; nanometer
= 1.e-6 * 1 milimeter;      

With this definition é therefore possible to use instructions like:
thickOfDetector = 5*mm;

or (using the definitions of the energies):
enOfParticle = 5*MeV;

All this avoids of having to bring back to part the conventions on the unitá of measure assumed and turns out very chiarificativo in the reading of other people's code.

3.3.4  int3Vector

This class serves for being able to manage like one only entitá one tern of indices. Examples of I use are the gunlayer to particular voxel, a gunlayer that it in its turn constitutes the index of an element of the matrix containing densitá electronic of all the voxel.
int3Vector spotVoxel=(10,2,13); actualDensity = 
densityMatrix(spotVoxel);

(In the second instruction not us cure piú of the single members of the gunlayer to those voxel).

3.3.5  Hep3Vector

As it suggests the name this class comes from bookcases CLHEP from which peró é be enucleata and reduced. The phase of installation and I use of bookcases CLHEP in fact has introduced a such series of problems to suggest to send back to the future its completion, this also in virtú of the fact that the program would have used a part however much limiting of the same bookcases. Of the CLHEP é remained the sintassi of the constructor and the methods it implements (cioé those to you that have not been excluded) so as to to guarantee of a compatibilitá tomorrow. The class é the not entire but real version of the class int3Vector, servants cioé as an example to manage terns of real numbers (useful for the carriers in the space or generic "three-dimensional" data).

3.3.6  Linens

The class Linens é be realized to the aim to represent a particle bundle that leaves (or passes) from a point and directs towards an other point. (Piú that of a line draft in realtá of a oriented line) the methods of intersection with the orthogonal plans to the aces is concurred therefore to evidence the traettoria of one particle.

3.3.7  GridBox

This class serves in order to manage a reticulum of plans that it characterizes with of parallelepidi that sayings come buckets, box or voxel.
In practical every element pertaining to this class puó to visualize like one "three-dimensional shelf": what it counts they are not the contents to the inside of the buckets but the dimensions and the number of the same buckets. The class only supplies therefore geometric indications but it returns very useful in the identification and the management of the typical volumes of the treatment plans: TTV (TorTto Volume) and the PTV (Pwools of Treatment Volume). Every voxel it has a center center and one left inferior chine node, later on comprenderá the importance of such distinction. (they define left inferior and advanced right the points with piú and piú respective great small algebriche coordinates).

3.3.8  Rijk

In fortran [18] I use it of matrices to 2 or piú indices é defined in definitive way univoca and from the standards of the language. In C++ it comes supplied I use analogous that does not turn out peró much efficient one in how much historically derived from the C with a system of gunlayer gunlayers that turns out slow in approaching the data. Moreover the C did not have methods, they did not exist therefore operating of press or manipulation of the matrices that were not of the functions to part. For who it wants to use matrices, or also only carriers, in C++ é therefore advised to reperire of package giá ready (é the case of the CLHEP or the Standards Template Library (STL) [19] or to rewrite itself of the classes optimizing them for just the type of I use. In ANCOD2, as an example, to part the reversal does not appear elements of matrix algebra and the matrices are fundamentalally of the containers to three indices of numbers of Hounsfield, densitá electronic or other: from here the creation of the Rijk class.
The methods of the Rijk class are:

3.3.9  R1R1

A relation of type y=f(x) puó to be tabulata like with of values (xi,yi) if the famous function not é or if its calculation turns out particularly heavy for the calculating. This, as an example, é the case of the En function(range) that alloy a set of specific energies to the correspondents range (distance of the peak of Bragg in water) for Ionian protons or carbon. Class R1R1 serves therefore in order to manage a "relation" in mathematical sense between two insiemi of real numbers calls Dom to you (for dominion) and Img (for image). Important É that the values of the dominion are given in increasing order, otherwise some methods of the class will not work.

3.3.10  RiRjR1

This class serves to manage one R relationto Ā~Rb . R. In practical puó visualizing itself all as a table which every line competes a value of the R entiretyto and every column one of the R entiretyb, to the intersection finds the value function of both, in order to exemplify puó to be believed to realize one table with the first 3 powers of some numbers:
                                                                          
                                                                          
                                                                          
                                                                          
                                                                          
                                                                          
  first first 1 2 3 (name = "Exponent") with row 2 2 4 8 3 3
9 27 (name = "PotenzeCalcolate") 5 5 25 125 10 10 100 1000 (name = 
"base")                                                          
                                                                          


The first line comes indicated as firstRow and its entrances are worth respective 1, 2 and 3. Its name é "Exponent".
The first column comes indicated as firstCol and its entrances are worth respective 2,3,4,5 and 10. Its name é "Base".
The entrances of the matrix have anch' they a name: "PotenzeCalcolate". In the ANCOD2 case this class é used in order memorizzare the release of energy for a set of 47 energies from 12 to 450 MeV (firstRow) for 351 distances from 0 to 350 milimeter (firstCol).

3.3.11  RUN

Class RUN serves in order to manage programs with many data in income during the execution. Until the program needs of single two or three data these can be supplied simply from keyboard. An example é the program for the calculation of the roots of an equation of second degree that only needs of the coefficients to, b and c.
Viceversa for a program that has need of many data convene to elaborate a system in order to deposit these data on rows so that the program rilegga tidily alone without having them them to digitare every time from keyboard. Series of problems are introduced to this point peró one:
  1. The order é difficult to interpret: to modify ten written numbers one of continuation to the other does not help to remember the meant one of everyone of they.

  2. The number of elements to supply in income could be variable and the this case the ordering would be at least "complex".

  3. In these rows they would not be you concur comments (in how much would occupy the place of a data).

For these and other reasons, in every place where there are sufficiently complex programs come realize you of the systems piú or less it elaborates in order to pass to you of the data to a program in execution. Generally these systems are base to you on of the words key that concur to associate every specific value to its variable one: every line of the rows sufficient to contains a word key and a value and this é for variable that are not of the matrices or the carriers. For matrices or carriers it must, viceversa, with to the word key, to define in some way also their dimension and the things are made piú complicated little. In ANCOD2 é chosen to matrices or carriers if not through the seen methods restore in the previous classes, for this reason the types of data to pass only will be comprised between following: real numbers, entire numbers, stringhe, variable booleane, names of rows. In order to choose, during one execution, to use one matrix of Rijk type in place of a pertano other bisognerá to associate to the word key "MatriceUsata" the names of rows "MatriceA.Rijk" rather than "MatriceB.Rijk". Beyond to the word key and the value to it every associate line of the rows of input conterrá also a character begins them that he indicates of that type of data draft: R for real numbers, for entire numbers, S for stringhe, B for variable booleane (true/false) F for names of rows, % for lines that are of comment. An example of rows for the execution presenterá therefore cosí:
Prova1.run rows
% Files for the execution and for turn out to 
you: F CT_input /usr/ater/rossi/data/candiolo/73843748 F 
energyLoss enLoss.dat F graficoDosi dosiProva22.hbook F TPoutputFile 
TP22.dat % % Things to make or not to make during this execution: 
B debugON false B printRunSetting true % % Entire 
numeroIterazioni 1000 tipoCT 1 % (1=MOLINETTE, 2 = PSI, 100=GSI) % 
Stringhe S titoloGraficoDosi Prova22 % % Real R XofVertex 896,0 R 
YofVertex 8,0 R ZofVertex -2000 % (these lengths are expressed in 
millimeters.) 
  

Obviously to ognuna of the words keys on the left they correspond or piú points of the program that recall it with a sintassi concurred from a particular structure given defined "Map" that concurs to use one tightens like if it were an index of a carrier. Such only carrier é for every type of data: ( files __ . Names of Files)
( flags __ . Variable Booleane)
( intVar __ . Variable entire)
( strVar __ . Variable it tightens)
( realVar __ . Variable real)
It follows a program example that uses class RUN reading rows of data that pilot the called execution "Prova1.run"
# it includes "RUN.H" main(){RUN thisRun; 
readDataCards("Prova1.run"); cout < < 

files__["TPoutputFile" ] cout < < files__["graficoDosi" ]; cout 
< < files__["energyLoss" ] cout < < files__["CT_input" ]; cout <
< flags__["printRunSetting" ]; cout < < flags__["debugON" ] cout
< < intVar__["numeroIterazioni" ] cout < < intVar__["tipoCT" ]; 
cout < < strVar__["titoloGraficoDosi" ] cout < < 

realVar__["ZofVertex" ]; cout < < realVar__["YofVertex" ]; 
cout < < realVar__["ZofVertex" ]; }

It produces R-in.stampa:
        TP22.dat dosiProva22.hbook enLoss.dat 
/usr/ater/rossi/data/candiolo/73843748 true false 1000 1 Prova22 -2000
8,0 896.0


(the order of some data é be intentionally changed regarding that one of the rows of input in order indicating that they can be recalls to you in whichever order to the inside of the program). This program é be executed with the data sets up to you in the Prova1.run rows but in case rather than to bring continuous modifications to the Prova1.run rows is decided of to have predisposed piú rows of execution (Prova1.run, Prova2.run, etc.) the name of the execution rows could variable and be passed in input from keyboard before the instruction readDataCards():
String nomeFileEsecuzione; cin > > 
nomeFileEsecuzione; RUN 
thisRun=readDataCards(nomeFileEsecuzione);

  • constructor This method does not have parameters and predisposes in memory the maps that will serve to associate the names of the variable ones to their values:
    RUN thisRun;
    
    
    It creates six maps:
    ( files __ . Names of Files)
    ( flags __ . Variable Booleane)
    ( intVar __ . Variable entire)
    ( strVar __ . Variable it tightens)
    ( realVar __ . Variable real)
    However these maps are still empty and will go filled up with the methods of allocation of a value to the name of the variable one es:
    RUN thisRun; thisRun.declareFile("CTinput", 
    "23322343.dat");
    
    

  • GIVEN reading CARDS the seen subroutine readDataCards giá previously executes the reading of the rows of input and the consequent filling of the maps of the variable ones by means of the instruction to declare opportune to second of the type of data found in every line.

  • allocation of a value to a variable one Exists five various methods in order to fill up the maps, one for every type of variable:
    RUN thisRun; /*1*/ thisRun.declareFile("CTinput", 
    "23322343.dat"); /*2*/ thisRun.declareFlag("debugON", false); 
    /*3*/ thisRun.declareIntVar("tipoCT", 1); /*4*/ 
    thisRun.declareStrFile("titoloGraficoDosi", "prova22"); /*5*/ 
    thisRun.declareRealFile("XofVertex", 89.6*cm);
    
    

  • recovery of the value of variable a This "method" in realtá consists in the simple callback of one of the five "maps" with the relative one indice/nome of the variable one:
    # it includes `` RUN.H' ' main(){RUN thisRun; 
    readDataCards("Prova1.run"); /*1*/ cout < < 
    
    files__["TPoutputFile" ] /*2*/ cout < < flags__["printRunSetting" ]; 
    /*3*/ cout < < strVar__["titoloGraficoDosi 
    intVar__["numeroIterazioni "] /*4*/ cout < <" ] /*5*/ cout < < 
    realVar__["ZofVertex" ]; }
    
    
    It turns out you of these press giá have been introduces to you in the previous examples.

  • it prints This method (< <) carries out the press of all the five maps with the relative braces name-valore.L' instruction cout < < thisRun; produrrá therefore a report of the parameters that have regulated the execution of the program in issue.

3.3.12  PAW

The choice to assign to the dispositive software of visualization (in this case PAW [20]) the acquaintance of the class rather than viceversa é tied to the following motivations:
  • To have a code ANCOD2 that can be executed on PC Windows as an example not being bound to PAW (they will use in fact other systems of visualization like those supplied in the compiler Borland C++ Builder III).

  • Remaining in atmosphere unix or linux to use other devices you of visualization like root [22] or tcl/tk [23], respective graphical C++ interpreter with capacitá and one script language (tcl) much similar to language Perl with one extension (tk) for the diagram. The single functions of this module have been introduce everyone to you in the class of objects that it visualizes if of they remember therefore only the names:
    • For the class Rijk PAWplot(), PAWplotAlongY(), PAWplotAlongZ()

    • For class R1R1 PAWplot()

    • For the class RiRjR1 PAWplot()

3.3.13  The rows makefile

The makefile é rows that serve for the compilation of a program constituted from piú moduli[16]. Through the commando "gmake" the operating system controls on the "makefile" (that it must specifically have this name) which modules of the program are still valid and which, because of one some modification carried out on some rows of code, must be ricompila you since or directly or indirectly they do not have pi' a eseguibile code modernized with the code source (example because they use one determined class that é be modified). The structure of the "such makefile" é to inviduare la/le chains of dependencies of a module from the others through one succession of braces of lines:
The first line ("commando") consists of a followed name from the character ":" continuation from a directory of names ("dependencies").
Second ("the rule") must be begun from a character "tab" and continuation from the commandos unix that they are necessary in order to execute the "commando".
Other lines preceded from the character "tab" can follow the second line and work anch' they like "rules" in the same way. Here of continuation é introduced a makefile example that servirá to illustarne the meant one:
# (Lines preceded from the character diesis are COMMENTS) 
# (lines A1 A2 A3) useR1R1: useR1R1.exe (tab) echo running 
useR1R1 (tab) useR1R1.exe # (lines B1 B2 B3) useR1R1.exe: 
useR1R1.o R1R1.o range.o (tab) echo linkink useR1R1 (tab) cxx - 
or useR1R1.exe useR1R1.o R1R1.o range.o # (lines C1 C2 C3) useR1R1.o: 
useR1R1.cc (tab) echo compiling useR1R1.cc (tab) cxx - c 
useR1R1.cc # (lines D1 D2 D3) R1R1.o: R1R1.cc R1R1.h (tab) echo 
compiling R1R1.cc (tab) cxx - c R1R1.cc # (lines E1 E2 E3) range.o: 
range.cc range.h (tab) echo compiling range.cc (tab) cxx - c 
range.cc


Lines A1-A3 indicate that to the commando given from keyboard "gmake useR1R1" the computer must execute the instruction "useR1R1.exe" on condition that "useR1R1.exe" (dependency of "useR1R1") "is modernized".
Lines B1-B3 define "when" useR1R1.exe é "dawned": it stops of being modernized if for some reason its dependencies (useR1R1.o R1R1.o range.o) or the dependencies of its dependencies (useR1R1.cc, range.cc range.h) has been modified.
Lines C1-C3, E1-E3 indicate anch' they some dependencies and the rules to adopt if these have endured modifications.
Púo to synthetize the philosophy of the following makefile in way: it must be reconstructed from the point in which something é be modified: the dependencies indicate what must be reconstructed if one of they é be modified, the rules as .

Understood it 4
Program ANCOD2: the procedures and turn out to you

4.1  The procedure farSource

4.1.1  Highly summarized description

The main scope of all "informative context" ANCOD2 e' that one to obtain the energy, the directions and the necessary number of particles to the aim of rilasciare one determined dose on target the volume with the technique of the voxel scanning. Substantially draft of:
  • to know the densitá present in the volume to deal (supplied from the CT)

  • to elaborate the trajectories of particles

  • to reconstruct the distance in equivalent water based on the densitá and to the trajectories

  • to determine the energy for posizionare the peak of Bragg to the dealt center of the voxel

  • to calculate the release of energy in every voxel leaving from tables of release in water

  • to calculate the particle number in every bundle so as to to have the dose wished in the volume target.

Of all this the piú is made last é delicate:
Considering that the number of voxel deals to you (and therefore the number it makes us) puó to vary from 103 to 104 and that everyone of they rilascia energy in a determined number of voxel of the CT whose number of voxel puó varying between 106 and 107 enormous matrices are obtained easy (109 - 1011 elements). In order to resolve this problem the energy release is adopted of the stratagems in order to succeed to eliminate whichever not necessary information (example memorizzando on the single ones voxel crosses and not on one only great containing matrix to you all the voxel). This resolves the problem of the mere memorization of the data, although it less renders "to delineate" the vision of the data: it must sequenziare the voxel crosses to you with the introduction of new "indices" that do not make piú reference to the position of the voxel in the CT but to that one in the carrier that them sequenzializza; it is moreover necessary to introduce new carriers in order to hold memory of the introduced manipulations. The trattabile problem however é although the times of calculation on these matrices (that they remain however of 104 - 105 elements) is much elevating. In a generalized manner following are introduced chosen:
  • Total reversal Defining reversal the process of the calculation of the particle number (fluenze), the problem é that one to find the values wb that they resolve the following equation:
    Di,j,k= N
    .
    b= 1 
    (wb  dbi,j,k)
    with
    • dbi,j,k dose rilasciata from a particle of the bundle (beam) b on voxel the i, j, k

    • Di,j,k the dose wished in voxel {the i, j, k} .

    É to notice that dbi,j,k space on all the voxel of the CT although only for some triple i, j, k its not null value é. Sequenzializzando triple the not null i, j, k with a new index v (as "v-oxel") all it is introduced like the following problem:

    dbv wb = Dv

    wb 3 0
    Whose complicated resolution é from the large dimension of matrix dbv and for the condition of positivitá sets up on the fluenze. In such sense however they are being carried ahead, studies with bonds turns out to you on matrices not too much large with methods of reversal iterati to you.

  • Local reversal If, viceversa, the geometric conditions are such that it is succeeded in partizionare the voxel of the CT so that there are insiemi of voxel crosses from one correspondent to you partition of the beams, then the reversal puó to happen to local level, in the sense that the calculation of the fluenze comes circostanziato to a very precise number of voxel much minor of that total and this simplifies very many the things above all if the release of dose on the single ones voxel introduces one such structure to concur the treatment of the problem of the reversal with a method to successive approximations. These conditions can be obtained
    • if the sufficiently far source é to appear "to the infinite": in this case a series of "rows" of voxel exists crosses to you from beams that they cross only they

    • if a spherical geometry with center in the source to q and f constant is prepared then , to varying of r equivalent is had in way a "row" of voxel. (This method demands the translation of the CT from a cartesian system of coordinates to a spherical system of coordinates polar).

The confluence between the method of total reversal currently realized in the previous version of ANCOD (FORTRAN) and new version ANCOD2 (C++) still must be realized, cosi like must be still realized the approach to spherical geometry probably much valid one for sources not too much drawn near. The procedure farSource realizes therefore the calculation of plans of treatment for sources to the infinite, but thanks to the structure to objects of the code the implementazione of the others two methods would not have to turn out onerosa too much.

4.1.2  Detailed description

Load: enLoss, rangeEn, densy

Following the three instructions to the beginning of the program:

RiRjR1 enLoss = 
Rijk_restore("/user/ater/nicco/data/enLoss.RiRjR1"); R1R1 
rangeEn = R1R1_restore("/user/ater/nicco/data/rangeEn.RiRjR1"); 
Rijk enLoss = 
RiRjR1_restore("/user/ater/nicco/data/psiDensy.Rijk");

they read respective:
  • enLoss containing Table the releases of energy expressed in MeV in every millimeter in water for particles in issue (in this case Ionian carbon). Every column of this table represents a specific energy begins them of the particle and every line represents the release of energy in Mev in i-mo the millimeter.
    In fig. 4.1 are represent the releases to you of energy in every milimeter for the curves with peak of Bragg between 28 and i 326 milimeter.
    Figures 4.1: Ionian warehouse of energy for carbon in function of the profonditá in water.

  • _ rangeEn The the table rangeEn servant in order memorizzare the relation between position of the peak of Bragg and energy specific of the particle deductible from the table enLoss but with a sure dispendio of calculation, for this such relation come "fixed" in this variable of type R1R1. In realtá observing the fig. 4.2 puó to state itself that the relation é a lot very ricostruibile with a polinomio of third degree, in the program é however chosen I use it of a table for greater coherence with the methods of appraisal of the release of every energy in voxel (Two values of z of the various peak to second if supplied from the interpolation or from their effective value in table they could have created of the incongruenze in the same release of energy).
    Figures 4.2: Position of the peak of Bragg in Ionian function of the specific energy for carbon.

  • densy the matrix densy contains the densitá of the voxel desunte from the CT.
    It puó to be read directly from rows CT written in one of the several one forms to you known from the program or, and é the case taken in vision, "restored" with the restore method from written rows in format ASCII previewed for the data of Rijk type.
    In particular the CT used in this case é that one coming from from institute PSI whose reading giá had been realized in FORTRAN in program ANCOD, therefore has joined some instructions for the memorization of the matrix read on rows in format Rijk:
            open(unit=42, FILE=' psiDensy.Rijk', status=' unknown') 
    write(42, *) ' ',' j ',' k ' write(42, *) NPIX, NPIY, NPIZ write(42, 
    *) ' dataInThisFileAreInKIJorderKmovesSlowerJFaster' I give k=1, NPIZ 
    write(42, *) ' k=', k,'###################################' I give 
    i=1, NPIX write(42,900)(densy(i, j, k), j=1, NPIY) end I give end I 
    give close(42) 900 format(100(f6.3,1x))
    
    
    and the rows produced constitute source CT on which é be tested the program.
    Such CT has like subject the skull of a patient; é possible to see of the first sections in fig. 4.3.
    The sections are disposed with increasing index k along the height (piedi/capo), the index on axis x and the index j on the axis y.
    The advanced palate, the lobes and the skillful pavilion of the orecchie and, in a generalized manner, the shape of the skull sezionato on a plan to z constant can be noticed.
    Figures 4.3: Contours for the densitá of the coming from CT from the PSI.

Declaration geometry of the volumes and the source

After to have loaded the CT and the relative tables to the following release of energy instructions define geometry of the problem:
GridBox TTV(0*cm, 0 * cm, 0*cm, 134,1.594*mm, 113, 
1.594*mm, 98, 1.594*mm); int3Vector TGVposInsideTTV(40,40,40); 
int3Vector dimOfTGV(20,20,2); Hep3Vector source(-400*cm, 
8.61*cm, 7.97*cm);

The first instruction indicates to the program that the volume of the CT (ToTal Volume) é posizionato to the center of the system of adopted reference (0 *cm,0 *cm,0 *cm...), has 134*113*98 voxel everyone of dimension 1.594*1.594*1.549 milimeter.
The second instruction characterizes the position of target the volume regarding the volume of the CT: voxel [ the 0,0,0 ] of the target it coincides with the voxel[40,40,40 ] of the CT. The third instruction supplies the dimensions of target the volume in voxel: 20*20*2. The last instruction, finally, supplies the position of the source in the space regarding the system of reference of the CT. The following instructions serve for the press of defined geometry:
cout<<"(All lenghts to are in mm)"<< endl; 
cout<<"TTV:"<< TTV < < endl; cout<< "Lower & Upper 
limits:"<< TTV.lowerCorner()<< "" < < TTV.higherCorner()<<endl; 
cout<<"TGV:"<< TGV < < endl; cout<< "Lower & Upper 
limits:"<< TGV.lowerCorner()<< "" < < TVV.higherCorner()<<endl; 
cout<<"Source:" < < source < < endl; \


and they produce turned out following:
(All lenghts to are in milimeter) TTV: Origin: 
(0,0,0) Number of Voxels: [ 134,113,98 ] Voxel dimensions:
(1.594,1.594,1.594) Lower & Upper limits:(0,0,0) 
(213.596,180.122,156.212) TGV: Origin: (63.76,63.76,63.76)
Number of Voxels: [ 10,10,10 ] Voxel dimensions: 
(1.594,1.594,1.594) Lower & Upper limits:(63.76,63.76,63.76) 
(79.7,79.7,79.7) Source:(-4000,86.1,79.7)


Cycle of spot on the entire target

The main cycle of the program é what it realizes the "scansion" of target the volume: for every its voxel one is previewed spot whose estimated energy and intensitá sará to the inside of the same cycle:
for(iz=0; iz<TGV.nVoxels().k();iz++){for(iy=0; 
iy<TGV.nVoxels().j();iy++){for(ix=0; ix< 
TGV.nVoxels().i();ix++){.........}}}

Definition of "beam"

The entitá comes to this instituted point "beam" that sará fundamental for the study of the traettoria:
IX=ix+TGVposInsideTTV.i(); 
IY=iy+TGVposInsideTTV.j(); IZ=iz+TGVposInsideTTV.k(); 
spotInd = int3Vector(IX, IY, IZ); spot = 
TTV.centerPosition(spotInd); Linens beam(source, spot);

IX, IY, IZ are the indices of the voxel on which é aimed the spot regarding volume CT (TTV), spotInd é the version carrier of aforesaid the three indices, spot é the position in the space of the center of voxel and beam é the line that leaves from the source (source) and passes through the center of those voxel (spot).

Search of the intersections

Instituted the line-traettoria of the bundle they come searched the intersections with all the plans that constitute the volume target (on condition that such intersections exist and they are not "to the infinite"):
BeamOrthogonalToX=false; BeamOrthogonalToY=false; 
BeamOrthogonalToZ=false; if(abs((source.x()-spot.x()))< 
ParallelismLimit)BeamOrthogonalToX=true; 
if(abs((source.y()-spot.y()))< 
ParallelismLimit)BeamOrthogonalToY=true; 
if(abs((source.z()-spot.z()))< 
ParallelismLimit)BeamOrthogonalToZ=true; 
if(!BeamOrthogonalToX){for(double x=TTV.lowerCorner().x(); 
x<=TTV.higherCorner().x(); x+=TTV.voxDims().x()) 
{tempPoint = beam.intersectionPlaneX(x); 
if(TTV.include(tempPoint)) 
{vect_distUintersPnt[iInters].dist=source.distance(tempPoint); 
vect_distUintersPnt[iInters].intersPnt=tempPoint; 
iInters++; }}} if(!BeamOrthogonalToY){....} 
if(!BeamOrthogonalToZ){....}


The first six instructions serve to assess that there are intersections: ParallelismLimit é a number much small that guarantees that 10 distant intersections piú of10 milimeter do not come neanche dealt, otherwise the calculating would go in error from "overflow".
Assessed the condition of "intersections in useful zone" (Not BeamOrthogonalTo..) the cycle is executed on all the plans of the target (for....) and memorizza the intersection between beam and the plan; such intersection could however not to belong to the volume target, for this reason is carried out a test before definitively memorizzare the intersection in with of the found intersections (vect_distUintersPnt) modernizing of the conteggio (iInters++).
The carrier vect_distUintersPnt contains of the data that are the union ("U") between the distance from the origin (dist) and the coordinates of the intersection (intersPnt), with such braces of data sará in fact possible to order to all the intersections on the base of their distance from the origin reconstructing cosí the distance of the bundle through the superficial ones that they delimit the voxel. Last the two "instructions" are to indicate that the same considerations made for plans "X" go made also for the plans "Y" and "Z".

Ordering of the intersections

The instruction:
sort(vect_distUintersPnt.begin(), 
&vect\_distUintersPnt[iInters-1 ])
It orders the carrier vect_distUintersPnt on the base of a criterion supplied previously:
bool operator < (const distUintersPnt &x, const 
distUintersPnt &y) {return x.dist < y.dist; }

cioé on the base of the distance.
It goes noticed that the method "sort" é applicable to the class "vector" of the STL (Standard Template Libraries) and only needs of the following passages:
  1. Inclusion of I affixed rows to you header
    # it includes < vector > # includes < algorithm 
    > # includes < functional >
    
    	
    

  2. Definition of a chiaveOrdinatoria-given type
    struct distUintersPnt{double dist; 
    Hep3Vector intersPnt; };
    	
    

  3. Declaration of a containing carrier given of the type as soon as defined
    vector<distUintersPnt > 
    
    vect_distUintersPnt(NmaxIntersections);
    	
    

  4. Definition of an ordering criterion
    bool operator < (const distUintersPnt &x, const 
    distUintersPnt &y) {return x.dist < y.dist; }
    	
    

  5. I use just true and
    sort(vect_distUintersPnt.begin(), 
    &vect_distUintersPnt[iInters-1 ]);
    	
    

Elaboration and memorization of quantitá inherent a single one beam

In a cycle on all the intersections of the beam come calculated and memorizzate the following entrances of carriers:
  • vintersInd[ ] Indices (regarding the TTV) of the voxel included between two intersections.

  • vpath[ ] Distance covered to the inside of voxel (the equivalent to the difference of the distances from the source of the two intersections).

  • vWEpath[ ] Distance covered to the inside of the voxel in terms of water-equivalent (WE Water Equivalent), par to the distance covered multiplied for the densitá of those voxel.

  • vWEpathTot[ ] Distance total (in terms of water-equivalent) covered in order to arrive until to the leaving point from the voxel.

  • vWEspotCenter[ ] Distance total (in terms of water-equivalent) covered in order to arrive until to the center of the voxel.

for(int ii=0;ii<nInters-1;ii++) 
{middlePnt=(vect_distUintersPnt[ii].intersPnt+ 
vect_distUintersPnt[ii+1].intersPnt) * 0.5; 
vintersInd[ii]=TTV.insideWhichVoxel(middlePnt); 
vpath[ii]=vect_distUintersPnt[ii].intersPnt. 
distance(vect_distUintersPnt[ii+1].intersPnt); 
vWEpath[ii]=vpath[ii]*densy.get(vintersInd[ii ]); 
WEpathTot+=vWEpath[ii ]; vWEpathTot[ii]=WEpathTot; 
vWEspotCenter[ii]=vWEpathTot[ii ] - vWEpath[ii]/2; 
if(vintersInd[ii]==spotInd)iSPOT=ii; }

The last instruction serves memorizzare in which sequenziale position the voxel is found towards which the spot was directed (once that the intersections have been ordered).

Calculation of the release of energy in every voxel

To this point of the program the position (in water-equivalent) of the voxel is known towards which é directed the spot:
zpeak=vWEspotCenter[iSPOT ];

E' therefore possible to calculate the necessary energy to the aim of peaky of Bragg in that position:
E=rangeEn.linInterpolation(zpeak);

Energy is now necessary to establish how much every energy rilascerá in voxel a having particle and to the aim of being able to calculate the fluenze.
The following problems rise therefore:
  1. To elaborate one according to curve for the energy release z once established that the particle dovrá to have energy and.

  2. Using this curve to estimate the release of energy between z1 and z2 escape and take-off points (in water-equivalent) of every single voxel.

For how much it concerns the first problem é decided to use a passibile strategy of improvement but that, giá used in the previous version of ANCOD, has given good turns out to you:
to traslare one curve of Bragg with zpeak next to that one tried those a lot that enough (in ahead or behind) posizionare the peak of in the z exactly wished Bragg.
In practical it is assumed that inserting or removing a piece of plateu it begins them from the curve the obtained curve does not differ very from that one that us expects (fig. 4,1).
For according to problem é instead realized one subroutine rebinning that given a histogram with the number of conteggi and the skillful limit of every column (bin) é in a position to riassestare conteggi on one the various series of limits skillful (with variable widths).
In this case rather than conteggi draft of MeV but the principle é the same one: é like if the stone number were known comprised between a traversina and the other of a railway railroad and the stone number was wanted ricalcolare in case the traversine come placed in one various position. The z present in the table enLoss they represent the position of the traversine before "rebinning", z in the carrier vWEpathTot the those after. The subroutine rebinning has four main arguments: the carriers and, zE, V, zV that they represent the rilasciate energies before (e) and dopo(V) the reb"Calling ghostscript to convert zImages/finale12.EPSF to zImages/finale12.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/finale13.EPSF to zImages/finale13.EPSF.gif, please wait..." inning and the respective ones z of the bin (zE and zV).
And, zE, zV I constitute the input of the subroutine, V (Voxel) the output.
You é moreover a fifth parameter nV that it indicates the number of bin of the carrier in escape. Not coming down too much in the particular puó simply to say that the first one bin of the carrier and sará what a parameter second holds account of the translation of the curve of Bragg dR that currency exactly the entitá of this translation, the given carrier zV é giá from vWEpathTot and the subroutine rebinning works on an algorithm that is based on the simultaneous long advance the two arranges of bins with calculation of the energy based on the "proportion of caught up traversina" from a part or the other.

Memorization of the matrix dE(beam, voxel) for the "row" of voxel in issue

The relative data you to the release of energy in every voxel from part of beam the current must be memorizza you for all beam making the part of the "row" for the successive local reversal, in particular if a constant dose to the inside of target the volume is wanted to be planned must trsformare the energy rilasciata in every voxel in the relative dose, this come realized dividend the rilasciata energy for the mass of the same volume:
for(int ii=0; ii<nInters-1;ii++){dEvox.put(iBEAM, 
II, (V[ii]*MeVtoJoule)/ (voxVolume*densy.get(vintersInd[ii])*10E-6)); 
} \ \ 1 gm/cm3 = 10^(-3)kg/10^(3)mm3 --> * 10E-6

In the third argument of the method "put" it comes realized the conversion from MeV/voxel to Gray: J/kg. To the end of the cycle on the "row" dEvox (declared of RiRjR1 type) conterrá the indicated release of dose over.

Press of the relative data you to a single one spot

For every spot é possible to print one series of information on the beam same: the instructions
cout < < "Beam =" < < beam < < endl; cout 

< < "spotInd" < < spotInd < < endl; cout < < "spotPos" < < spot 
< < endl; cout < < "zpeak =" < < zpeak < < endl; cout < < 

"En =" < < En < < "MeV" < < endl;

They produce following prints:
Beam = from (-4000,86.1,79.7) to (64.557,64.557,64.557) 
spotInd [ 40,40,40 ] spotPos (64.557,64.557,64.557) zpeak = 24,5792 En
= 98,5742 MeV

É moreover possible to print the relative information to all the voxel it crosses to you:
for(int ii=0; ii<nInters-1;ii++){cout < < setw(4) < 
< II < < "" < < vect_distUintersPnt[ii].intersPnt < < "" < < setw(10) 

< < vect_distUintersPnt[ii].dist < < "" < < setw(10) < < vpath[ii ] < 
< "" < < vintersInd[ii ] < < "" < < setw(10) < < 

densy.get(vintersInd[ii ]) < < "" < < setw(10) < < vWEpath[ii ] < < ""
< < setw(10) < < vWEpathTot[ii ] < < "" < < setw(10) < < D[ii ] < < ""

< < setw(10) < < D[ii]*MeVtoJoule < < "" < < setw(10) < < 
dEvox.get(iBEAM, ii) < < endl; }


Heading to part, the previous instructions produce the press in fig. 4.4 and fig. 4.5  .
Figures 4.4: Press of turns out to you relati you to single spot (a part 1).
Fig"Calling ghostscript to convert zImages/fine.EPSF to zImages/fine.EPSF.gif, please wait..." ure 4.5: Press of turns out to you relati you to single spot (a part 2).

Calculation of the fluenza

To this point of the program, ended the cycle on the "line", the matrix dEvox contains the release of dose in every voxel: it is only necessary piú to calculate the just fluenze to the aim to obtain the dose wished (in this fixed case to 1 Gray).
To such aim the subroutine findFluence has like parameters the matrix dEvox, the position of target the volume to the inside of the crossed row of voxel (TGVposInsideTTV.i()), its dimension (dimOfTGV.i()) and gives back to a data of containing type R1R1 the fluenza elaborated on every voxel of the TTV (therefore will be all null except those in the TGV) and dose rilasciata in those voxel.
The following instructions:
R1R1 fluence = findFluence(dEvox, TGVposInsideTTV.i(), 
dimOfTGV.i()); cout < < fluence<< endl;

Produranno the press (giá registered) of the two columns of numbers fluenza-dose of which they come here brought back the sun lines of the voxel near the target:
0 0,59612 0 0,59622 0 0,59812 0 0,6035 0 0,61325 0 0,6284 
0 0,65186 0 0,67924 0 0,70519 0 0,73203 0 0,75916 0 0,79259 0 0,83806 
0 0,90455 1.5767e+05 1 1.6444e+05 1 1.963e+05 1 1.9463e+05 1 
2.7161e+05 1 2.8179e+05 1 2.9948e+05 1 3.8605e+05 1 4.7864e+05 1 
1.4235e+06 1 0 0,1206 0 0,030101 0 0,02549 0 0,021223 0 0,018836 0 
0,016561 0 0,015258 0 0,014262 0 0,012307 0 0,011043 0 0,010058 0 
0,0091796 0 0.0084665

Puó to notice (fig. 4,6)
Figures 4.6: Energies, fluenze and theoretical doses rilasciate for one section of the plan of elaborated treatment.
that the subroutine succeeds to elaborate a plateu absolutely flat (with smaller differences of fifth decimates them), goes however evidenced that this é the theoretical release of real dose mentro that (obtainable one through the simulation with GEANT) could differ enough because of the multiple approximations introduced in the program.

Memorization of the plan of complete treatment

Repeating the operations sin examined here for a "row" of voxel on all the "rows" making part of the target and memorizzando the coordinates of the spot carries out you with to their energy and to the calculate fluenza the five columns of data are had that constitute the plan of same treatment: X Y Z n and.

4,2  rilasciate theoretical Doses from the plan of produced treatment

In fig. 4.6 are brought back the energies, the fluenze and the theoretical doses rilasciate for one particular section and one particular row of voxel (iz=41, iy=41) in the plan of treatment (with Ionian carbon) elaborated for the coming from CT from institute GSI.
Viceversa in figure 4,7 is visualized the doses rilasciate in tut"Calling ghostscript to convert zImages/ris10.EPSF to zImages/ris10.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/WSOBP1.EPSF to zImages/WSOBP1.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/WSOBP2.EPSF to zImages/WSOBP2.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/WSOBP3.EPSF to zImages/WSOBP3.EPSF.gif, please wait..." "Calling ghostscript to convert zImages/WSOBP4.EPSF to zImages/WSOBP4.EPSF.gif, please wait..." you the sections and all the rows with the same one slowly of treatment.
Figures 4.7: Theoretical dose (in Gray) rilasciata from the plan of treatment elaborated from program ANCOD2.

4.3  I use of ANCOD2 in the appraisal of the Ionian SOBP in water for carbon

Program ANCOD2 é used in order to confirm some turns out to you on the plateu begins them of a SOBP (Spread Out Bragg Peak) realized with Ionian carbon to varying of the maximum its profonditá. It turns out to you are collected in the figures fig. 4.8, 4,9, 4,10, 4,11 and coincide widely with those confront to you. Puó to notice itself that to growing of profonditá the qualitá of the plateu it is lost strength until assuming greater values of dose of those in the same SOBP. This depends on the fact that while the dose peak comes rilasciato in points to z various, plateu é substantially the same one (to paritá of z) for all spot and the this makes that the dose is accumulateed until leading to this result.
Aggravating itself of the phenomenon to growing of the profonditá of the peak depends viceversa on the shape of the energy release that to the high energies introduces a pronunciamento just begins followed them from a diminuizione that precedes the true peak and (like puó noticing itself in fig. 4.1).
Figures 4.8: Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 100-150 milimeter.
Figures 4.9: Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 150-200 milimeter.
Figures 4.10: Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 200-250 milimeter.

Figures 4.11: Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 250-300 milimeter.

 

 

 

Appendix To: ChapterAppendice rows CART To: Rows CART

The format rows CART for the CT

The program CadPlan external Beam Modeling, used from institute IRCC (Institute for the Search and the Cure of the Cancer) of Candiolo (To) manages coming from medical images from piú sources with an only format of rows called CART. In these rows they are contained regarding information the type of image (PET, CT, NMR), the peculiar information to the type of image (example for the CT the numbers of Hounsfield) and moreover other added information later on as the identification of the contours of the organs and the contour of the volume target. For the slice every CT vienememorizzata on single rows whose name of it constitutes the identificativo second the following rules:
name rows = ddmmyyxxx.znn
where
  • dd milimeter yy xxxz represents day, month, year, sequenziale of the patient.

  • nn (0..99) number of the slice

The rows é constituted from 269 records of constant length of 512 byte whose contained é following:
As far as the calibration for the derivation of the densitá electronic (in relation to the densitá electronic of the water) from the numbers of Hounsfield it comes adopted the following calibration:
rw;and = To0+B0*NCT   with   NCT . 1100

rw;and = To1+B1*NCT   with   NCT > 1100
with
To0= 0.0; B0= 0.001; To1= 0.572; B1= 0.00048; 
In fig. 4.12 can be observed some slices of one read tomography of the abdomen-river basin from the program readCandiolo .
In the visualization they have been instituted little classes of densitá in order evidencing the anatomical structures better: the lungs, the thoracic case and the dorsal thorn can easy be characterized (the scales on axis X and Y is different). In fig. 4.13 are visualize all the present contours to you in the CT, in particular in slice number 30 the marked contour piú é what it characterizes target the volume and it only appears in the slice comprised between 22 number and number 32, (fig. 4,14)
Figures 4.12: Images CT read from rows written in format CART.
Figures 4.13: Contours for the location of the organs and the volume to deal.
Figures 4.14: The marked volume piú, to the center, é the volume to deal.
B Appendix: Rows DICOM

The standard for the exchange of medical images DICOM

Historical introduction

With the introduction of computerized tomography (CT) and of others modalita' of diagnostic for electronic images, nonche' with the always greater one I use of computer in the within of the clinical applications, the American College of Radiology (ACR) and the National Electrical Manufacturers Association (NEMA) have recognized the requirement of a method standard for the transfer of images and information to associated they between it blots some realized from various industries.
In 1983 the ACR and the NEMA have formed a committee (ACR-NEMA) in order to develop one standard in a position to:
  • To promote the communication of images digital them and correlated given to you

  • To facilitate the development and the expansion of the recording of interfacciabili images with other instruments of management of the information clinical-hospital worker

  • To concur the date creation base diagnostic consultabili in net from one wide varieta' of dispositi to you.

In 1985 and 1988 the ACR-NEMA has published respective version 1,0 and 2,0 of the standard hardware, software and classificatorio of the information (given elements).

Standard DICOM

Standard ACR-NEMA takes name DICOM (Digital Imaging and Communication in Medicines currently) and e' version to the 3.0. It supplies a protocol of compatible communication with the TCP/IP (that one used from Internet) that it concurs to realize of the true ones and own Serveur DICOM that is it blots some in a position to working independently receiving and sending rows DICOM via net. Piu' simple but little important is not instead Browser DICOM that are tool that they concur to visualize, to editare, to manage rows DICOM locally. To great linens, in 15 documents ( Part1-Part15) and 50 supplements ( Supp1-Supp50), reperibili to the situated one
http://idt.net/~dclunie/dicom-status/status.html#BaseStandard1999

all are found form you of the transmitted data (explain you from the record until the bit) and the classification of the date elements. In case for some reason the situated one was not accessible succeeds however abba room in a hurry to converge towards this documentation with a search engine which www.google.com searching "DICOM" (is all leggibili rows pdf under unix with the commando "gv" or under Windows or Mac through pluggin "Acrobat releasable Reader" from net)

DATE ELEMENTS

The philosophy of the DICOM files e' following: Every DICOM rows e' a collection not ordered of "logical records" where every "constituted logical record" e' gives
A DICOM example rows e' be captured from the situated one:
ftp://ftp.philips.com/pub/ms/dicom/Medical_Images, its contents are illustrate to you in the following page and the fig. 4.15  .
Position of      |TAG|     Length associated Given byte --> from ' DICOM BROWSER'
realized in C++ (is not present all) 00 ]   | 0| 8| 0| 0|  (4) --> 12]   | 0| 8| 0| 5|  (10) --> 30]   | 0| 8| 0| 8|  (30) --> Image Type = ORIGINAL\PRIMARY\AXIAL\VOLUME 
68]   | 0| 8| 0|16|  (26) --> SOP Class UID = 1.2.840.10008.5.1.4.1.1.2 
102]   | 0| 8| 0|18|  (48) --> SOP Instance UID = 
1.3.46.670589.10.1.1.2158435922.934292566.34615. 158]   | 0| 8| 0|20|  (8) --> Study Given = 19990810 174]   | 0| 8| 0|21|  (8) --> 190]   | 0| 8| 0|23|  (8) --> Image Given = 19990810 206]   | 0| 8| 0|30|  (14) --> Study Time = 151329,234768 228]   | 0| 8| 0|31|  (14) --> 250]   | 0| 8| 0|33|  (14) --> Image Time = 154139,000000 272]   | 0| 8| 0|50|  (0) --> Accession Number = 280]   | 0| 8| 0|60|  (2) --> Modality = CT 290]   | 0| 8| 0|70|  (24) --> Manufacturer = Philips Medical Systems 322]   | 0| 8| 0|80|  (10) --> Institution Name = Philips CT 340]   | 0| 8| 0|90|  (0) --> Referring Physician' s Name = 348]   | 0| 8|10|10|  (2) --> Station Name = 358]   | 0| 8|10|30|  (2) --> Study Description = 368]   | 0| 8|10|40|  (10) --> 386]   | 0| 8|10|50|  (0) --> 394]   | 0| 8|10|60|  (0) --> 402]   | 0| 8|10|90|  (12) --> Manufacturer' s Model Name = Tomoscan CS 
422]   | 0| 8|11|40|  (110) --> 540]   | 0|10| 0| 0|  (4) --> 552]   | 0|10| 0|10|  (22) --> Patient' s Name = CT Aura-Secura^Example 
582]   | 0|10| 0|20|  (14) --> Patient ID = ID200631zw609 604]   | 0|10| 0|30|  (8) --> Patient' s Birth Given = 19991213 620]   | 0|10| 0|40|  (2) --> Patient' s Sex = M 630]   | 0|18| 0| 0|  (4) --> "Calling ghostscript to convert 
zImages/dic1.EPSF to zImages/dic1.EPSF.gif, please wait..." 642 ]   | 0|18| 0|10|  (4) --> Contrast/Bolus Agent = NINTH 654]   | 0|18| 0|50|  (8) --> Slice Thickness = 5,000000 670]   | 0|18| 0|60|  (10) --> KVP = 120,000000 688]   | 0|18|10|20|  (18) --> Software Version(s) = CT Backend R1.1L1 714]   | 0|18|10|30|  (22) --> 744]   | 0|18|11| 0|  (10) --> 762]   | 0|18|11|20|  (8) --> Gantry/Detector Tilt = 0,000000 778]   | 0|18|11|30|  (10) --> Table Height = 38,000000 796]   | 0|18|11|50|  (4) --> Exposure Time = 1000 808]   | 0|18|11|51|  (4) --> 820]   | 0|18|11|52|  (4) --> Exposure = 100 832]   | 0|18|12| 0|  (8) --> Given of Last Calibration = 19990810 848]   | 0|18|12| 1|  (14) --> Time of Last Calibration = 083759,582871 
870]   | 0|18|12|10|  (4) --> Convolution Kernel = AA0 882]   | 0|18|51| 0|  (4) --> Patient Position = HFS 894]   | 0|20| 0| 0|  (4) --> 906]   | 0|20| 0| D|  (48) --> Study Instance = 
1.3.46.670589.10.1.1.2158435922.934290809.23985. 962]   | 0|20| 0| And|  (48) --> Series Instance = 
1.3.46.670589.10.1.1.2158435922.934292556.78163. 1018]   | 0|20| 0|10|  (0) --> Study ID = 1026]   | 0|20| 0|11|  (2) --> Series Number = 19 1036]   | 0|20| 0|12|  (2) --> Acquisition Number = 1 1046]   | 0|20| 0|13|  (2) --> Instance Number = 1 1056]   | 0|20| 0|32|  (42) --> Image Position (Patient) = 
-2.042221e+02\-1.818909e+02\-1.570000e+02 1106]   | 0|20| 0|37|  (78) --> Image Orientation (Patient) = 
1.000000e+00\0.000000e+00\0.000000e+00\0.00000.. 1192]   | 0|20| 0|52|  (48) --> Frame of Reference = 
1.3.46.670589.10.1.1.2158435922.934292075.37016. 1248]   | 0|20|10|40|  (0) --> Position Reference Indicator = 1256]   | 0|20|10|41|  (12) --> 1276]   | 0|20|40| 0|  (0) --> Image Comments = 1284]   | 0|28| 0| 0|  (4) --> 1296]   | 0|28| 0| 2|  (2) --> Samples for Pixel = 1306]   | 0|28| 0| 4|  (12) --> Photometric Interpretation = MONOCHROME2 
1326]   | 0|28| 0|10|  (2) --> Rows = 512 1336]   | 0|28| 0|11|  (2) --> Columns = 512 1346]   | 0|28| 0|30|  (26) --> Pixel Spacing = 7.105113e-01\7.105113e-01 
1380]   | 0|28| 1| 0|  (2) --> Bits Allocated = 1390]   | 0|28| 1| 1|  (2) --> Bits Stored = 1400]   | 0|28| 1| 2|  (2) --> High Bit = 1410]   | 0|28| 1| 3|  (2) --> Pixel Representation = 1420]   | 0|28|10|50|  (26) --> Window Center = 4.000000e+01\7.000000e+01 
1454]   | 0|28|10|51|  (26) --> Window Width = 4.000000e+02\2.000000e+02 
1488]   | 0|28|10|52|  (12) --> Rescale Intercept = -1200,000000 1508]   | 0|28|10|53|  (8) --> Rescale Slope = 1,000000 1524]   |7F|E0| 0| 0|  (4) --> 1536]   |7F|E0| 0|10|(524288) - - > Given Pixel =


Figures 4.15: Image CT read from rows in format DICOM.

Analytical index (showing section)

List of the figures

    1,1  Schematic Rappresentazione of the processes of loss of energy for a heavy loaded particle.
    1.2  It second loads effective the formula with Barkas in function of the specific energy.
    1,3  Comparazione between the loss of energy measured with that theoretical in function of the specific energy.
    1,4  Integral curve and differentiates them of the heavy loaded particle distances in the matter.
    1,5  Densitá of ionization in function of the profonditá.
    1,6  Scattering in electron water to 5 keV.
    1,7  Comparazione between the traces of a proton and one ione carbon.
    1,8  Radial distribution of the dose around the trace of one particle.
    1,9  Contributions of the two modalitá of loss of electron energy in function of their energy.
    1,10  Traettoria of an electron to the inside of the matter and practical range.
    1,11  Section of collision total and contributions of the different processes for photons in carbon, function of the energy.
    1,12  Species reactive produced in the radiolisi of the water.
    2,1  Rappresentazione of the data experiences them of the dependency of the RBE from the LET.
    2,2  Schematic Rappresentazione of the DNA and the traces of an electron and a particle to that they cross it.
    2,3  of survival for cells irradiated in presence or 2 Or Percentage absence.
    2,4  OER in function of the LET for several types of cancellations.
    2,5  Curves dose-effect.
    2,6  Curves dose-profonditá in order make us of electrons.
    2,7  Curves dose-profonditá in order make us of photons.
    2,8  Curves dose-profonditá for photons, neutrons and protons.
    2,9  Peak of increased Bragg (SOBP) in order makes us of Ionian protons and.
    2,10  Comparison between the distributions of dose makes us of protons and electrons on a target.
    2.11  System of scanning for tomography.
    2,12  Distribution of woven numbers TC for the several one of the human body.
    2,13  Curves of isodose for treatment with protons to intensitá modulated.
    2,14  Schematic structure of a system to magnetic scansion.
    2.15  Systems of scansion: to) raster b) voxel.
    4,1  Ionian warehouse of energy for carbon in function of the profonditá in water.
    4,2  Position of the peak of Bragg in Ionian function of the specific energy for carbon.
    4,3  Contours for the densitá of the coming from CT from the PSI.
    4.4  Press of turns out to you relati you to single spot (a part 1).
    4.5  Press of turns out to you relati you to single spot (a part 2).
    4,6  Energies, fluenze and theoretical doses rilasciate for one section of the plan of elaborated treatment.
    4,7  theoretical Dose (in Gray) rilasciata from the plan of treatment elaborated from program ANCOD2.
    4,8  Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 100-150 milimeter.
    4,9  Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 150-200 milimeter.
    4,10  Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 200-250 milimeter.
    4,11  Calculate Fluenze and doses for a SOBP in water realized with Ionian carbon to the profonditá of 250-300 milimeter.
    4,12  Images CT read from rows written in format CART.
    4,13  Contours for the location of the organs and the volume to deal.
    4.14  The marked volume piú, to the center, é the volume to deal.
    4,15  Image CT read from rows in format DICOM.

Bibliography

[ 1 ]
And Chiavassa, L. Ramello, And Vercellin
Particle detectors: Notes from the lessons of physics of neutrons
Science publishing-Turin 1991
[ 2 ]
U. Amaldi, B. Larsson, Y. Lemoigne
Advances in Hadrontherapy
Elsevier Science B.V. 1997
[ 3 ]
H.E. Johns and J.R. Cunningham
The Physics of Radiology
Charles and Thomas Pubblisher
Springfield, Illinois
[ 4 ]
International Commission on Radiation Unit and Measurements,
Radiations quantities, ICRU Rep.30,
Washington D.C. (1980).
[ 5 ]
U. Amaldi and Silari editors
The TERA project and the centre for oncological hadrotherapy
INFN-Office Banns
Second edition (1995)
[ 6 ]
J.E. Coggle
Biological effects of the cancellations
Editions Medical Minerva (1985)
[ 7 ]
G. Kraft
The radiobiological and physical basis for radiotherapy with protons and heavier ions
Strahlenther.Onkol. 166;10:13 (1990)
[ 8 ]
S. Webb
The physics of medical imaging
Institute of Physics Publishing, Bristol and Philadelphia (1988)
[ 9 ]
And Hall
Radiobiology for the Radiologist
Philadelphia:J.B.Lippincott Co. (1994)
[ 10 ]
H. Barrett, W. Swindell
Radiological Imaging
Academic Press, Inc (London) (1981)
[ 11 ]
S. Webb
The physics of three-dimensional radiation therapy
Institute of Physics Publishing, Bristol and Philadelphia (1993)
[ 12 ]
I guide Buzzi-Ferraris
From the Fortran to the C++
Addison-Wesley Publishing Company Milano(1994)
[ 13 ]
Bjarne Strousstrup
The C++ Programming Language
Addison-Wesley
[ 14 ]
J.J.Barton, L.R. NackMan
Scientific and Engineering C++
Addison-Wesley Publishing Company, Inc. (1995)
[ 15 ]
Herbert Schildt
Teach Yourself C++
Osborne McGraw-Hill(1994)
[ 16 ]
R.Stallman, R.McGrath
GNU Make
Free Software Foundation (1995)
[ 17 ]
CERN
http://wwwinfo.cern.ch/asd/lhcpp/clhep/manual/userguide
[ 18 ]
A.edE. Spoletini
The Fortran language
Franc Angels Publisher Milan (1983)
[ 19 ]
Rogue Wave
C++ standard library
Rogue Wave Software, Corvallis Oregon US
[ 20 ]
CERN
PAW: Physic Analysis Workstation, an introductory tutorial
CERN Program Library entry Q121
[ 21 ]
J.Peek T.Reilly and M.Louvides
Unix Power Tools
Editor Tim O' Reilly Sebastopol, CA, U.S. (1994)
[ 22 ]
Root Educational Resources to Fermilabs
http://www-pat.fnal.gov/root
[ 23 ]
J.K.Ousterhout
Tcl and the TK toolkit
Addison-Wesley Publishing Company(1994)
 

Footnotes:

1Positron Emission Tomography: positron emission tomography
2Nuclear Magnetic Resonance: nuclear magnetic resonance.


Rows translated from TandX by TTH, version 3.22.
On 26 Mar 2003, 21:48.