CAT3D is a Therapy Planning System developed by Mevis Informática Médica, São Paulo, Brazil.
This document presents a short description in Spanish of the main algorithms used by CAT3D to model dose distributions.
Document by Armando Alaminos Bouza
MSCEIT: Test de Inteligencia Emocional Mayer-Salovey-Cauruso
Algoritmos CAT3D Pencil Beam y Collapsed Cones
1. CAT3D, Algoritmos fundamentales.
El CAT3D tiene implementados dos algoritmos de cálculo de dosis para fotones:
Convolución de Pencil beams y Convolución de Conos Colapsados (conocido
em la literatura como Collapsed Cones Convolution).
Descripción de Pencil Beam em el CAT3D.
Convolución de pencil beam divergentes y finitos, realizada en el dominio del tiempo para evitar la
aproximación de kernel invariante impuesta a la solución en el dominio de la frecuencia con FFT.
En el caso del pencil beam divergente la inclinación del kernel es parte del modelo y no demanda
correción ulterior.
Las principales referencias bibliográficas que son bases del algoritmo Pencil Beam usado por el
CAT3D son:
– Anhesjo A, et.al, “A pencil beam model for photon dose calculations.” Med.Phys. 19(2),
1992.
– Bourland J., et.al, “A finite size pencil beam model for photon dose calculations in three
dimetions”, Med. Phys. 19(6), 1992.
– Gustafsson, Brahme, et.al, “A generalized pencil beam algorithm for optimization of
radiotherapy” Med. Phys. 21(3), 1994.
El kernel se obtiene como solución de la deconvolusión de los campos experimentales medidos. Se
considera un kernel de pencil beam conteniendo todo el espectro de energía del haz
(polienergético). El kernel tiene simetría cilíndrica por lo que es almacenado en una matriz
bidimensional con capacidad para guardar contribuciones de dispersión hasta puntos situados a 50
cm del eje central del kernel. Existen dos tamaños de kernel posibles, que establecen un
compromiso entre resolución y tiempo de ejecución, de 8x8 o 4x4 mm de sección transversal al
nivel del isocentro. En la presencia de heterogeneidades el kernel se escala de acuerdo con la
densidad.
El flujo de fotones primarios se obtiene del producto de cuatro funciones:
1) Distribución de flujo derivada del paso por el filtro aplanador del LINAC, considerando un
campo de sección transversal infinita. Se obtiene por interpolación en una serie de puntos medidos
o preferentemente ajustados para reproducir em forma óptima el perfil de dosis a 100mm de
profundidad.
2) Distribución de flujo primario generada por el colimador del sistema em regiones de penumbra.
Contiene 4 parámetros de ajuste que pueden interpretarse como diámetro de la fuente, una
exponencial que caracteriza el hombro interno de la penumbra y otra que controla la caida de flujo a
partir del borde geométrico del campo y un factor de trasmisión en el colimador. Estos cuatro
parámetros pueden variar para distintos tamaños de campo (derivado del modelo de haz primario
presentado en Johns and Cunningham: The Physics of radiology, fourth edition, paginas 369 a 371).
3) Distribución de flujo primario generada por las protecciones creadas por el usuario o por un
MLC. El modelo considera una zona de penumbra gaussiana y un factor de trasmisión en la
protección. La penumbra de las protecciones se modela independientemente de la penumbra del
colimador.
4) Distribución generada por moduladores del haz, como filtros en cuña o filtros para modulación
2. de intensidad, sean físicos o dinámicos.
La distribución de densidades referentes a la anatomía del paciente se almacena em uma matriz de
dimensión 3. Todos los cálculos de recorrido radiológico de los pencil beams se obtienen por ray
tracing dentro de la referida matriz de densidades anatómicas. Esta matriz se crea a partir de la
representación gráfica de los cortes anatómicos primários (generalmente CT axial) en el PC que
ejecuta al CAT3D, por eso variaciones de resolución del monitor generan pequenas variaciones de
Source-Skin-Distance (SSD) dentro de las dimensiones de um voxel/pixel. Para obtener resultados
idénticos se necesitan PCs con resoluciones gráficas iguales.
Algoritmo “Collapsed Cones Convolution” :
Para crear nuestra biblioteca de EDKs elegimos al EGSnrc [3] que ya presenta entre sus códigos de
usuario una herramienta para generar EDKs: EDKnrc. El EDKnrc crea los EDK como un conjunto
de esferas concéntricas divididas en cierto número de conos. La distribución original del EDKnrc
consta de 24 esferas y 48 conos con resolución espacial de 3.75 grados. Modificamos la fuente en
MORTRAN del EDKnrc para generar 64 esferas y 90 conos con resolución de 2 grados. Para todas
las corridas del EDKnrc fijamos los siguientes parámetros : secciones de interacción de la biblioteca
NIST XCOM, ECUT=EA=0.512 MeV y PCUT=PA = 0.001 keV, mínimo número de historias
iniciales de 4.0E6 , llegando en algunos casos hasta 8.0E6 para mantener el error por debajo de 1%
dentro de la región de dispersión primaria alrededor del punto de interacción. Creamos EDKs para
fotones monoenergéticos de 50 keV hasta 25 MeV, por ahora.
Puede implementarse la convolución de los EDKs y el TERMA en forma directa, integrando la
contribución de todos los voxels dispersores en forma explícita, pero este abordaje produce tiempos
de cálculo inaceptables para todos los fines prácticos. Una solución empleada inicialmente fue la
utilización del teorema de la convolución que permite resolver la convolución como el producto
punto de las transformadas de Fourier del EDK y el TERMA. Pero la solución via teorema de la
convolución solo es válida para el caso de un EDK invariante para todo el volumen, esta restricción
impone serias limitaciones. En primer lugar, la invariabilidad de los EDKs entra en contradicción
con los medios heterogéneos, además de no modelar correctamente la inclinación de los EDKs en
haces divergentes [6].
La solución aproximada de la convolución del TERMA y los EDKs que menos restricciones impone
fue publicada en 1989 por Ahnesjo [2]. En lugar de integrar la contribución de todos los voxels
dispersores al punto de cálculo se propone dividir el volumen dispersor en un número finito de
conos. En cada cono integramos solamente considerando los valores de TERMA y propiedades del
tejido presente únicamente en el eje del cono. La precisión de esta solución depende de la cantidad
de conos utilizados, pues algunas heterogeneidades pequeñas pueden ser ignoradas cuando ningún
eje de cono las intercepta. Afortunadamente la densidad de ejes de conos en regiones próximas al
punto central de depósito de dosis es alta resultando menos probable que se omita una
heterogeneidad de importancia clínica. En la medida que nos alejamos del punto de depósito de
dosis los ejes de los cono se alejan entre si y resulta más probable no evaluar correctamente las
heterogeneidades o alteraciones locales del TERMA. Las heterogeneidades y alteraciones del
TERMA próximas al punto de depósito tienen influencia mucho mayor sobre la dosis y en esa
región la densidad de ejes de conos es alta, esto confiere buenos resultados al método. El método
descrito por Ahnesjo se denomina Convolución con Conos Colapsados - collapsed cones
convolution (CCC) - .
3. En nuestro caso, la convolución de los EDKs con el TERMA la resolvimos con el método CCC,
descrito por Ahnesjo. A diferencia de Ahnesjo [2] no empleamos el modelo analítico para los EDKs
polienergéticos. En su lugar creamos el EDK de cada espectro como la combinación lineal de los
EDKs primarios de cada componente del espectro, pesado por su fracción y su coeficiente de
atenuación másico.
La convolución por collapsed cones se implementó con 239 conos no isotrópicos, la densidad de
conos es mayor en la dirección de propagación de los fotones primarios y disminuye en el sentido
opuesto. Cada cono se integra numéricamente con 208 sectores radiales que comienzan con paso de
0.5 mm y a partir de los 30 mm pasa a 2 mm hasta los 150 mm, por último se emplean pasos de 4
mm hasta alcanzar 502 mm de radio máximo. El algoritmo de integración empleado es equivalente
al "cummulative-cummulative kernel". Todos los sectores son pre-integrados y tabulados en
memoria para disminuir el tiempo de cálculo.
La convolución del TERMA con el EDK la implementamos desde el punto de vista del depósito de
energía. Otras implementaciones emplean el punto de vista del TERMA dispersor. Ambas
implementaciones son equivalentes según el teorema de reciprocidad. Preferimos el punto de vista
de deposito porque facilita significativamente el paralelismo de cálculo de múltiples puntos
simultáneos explotando plenamente las arquitecturas de procesadores multi núcleos y
multiprocesadores. El paralelismo lo logramos empleando OpenMP. El punto de vista del TERMA
dispersor crea colisiones de escritura en memoria que deben ser resueltos con secciones críticas, lo
cual deteriora la eficiencia o aumentando significativamente el uso de memoria RAM y
consecuentemente deteriorando la efectividad de la reducida memoria cache. Otra ventaja del punto
de vista de la absorción de dosis es que resulta adecuado para evaluar la dosis en puntos aislados o
en volúmenes, en el caso del punto de vista de emisión de dispersión sólo tiene sentido calcular la
dosis para todo el volumen.
La inclinación de los EDK dispersores en relación al punto de depósito (kernel tilt) lo resolvemos
estrictamente en cada caso. La divergencia del haz es considerada al computarse el TERMA. La
modificación del espectro con la profundidad, conocido como beam hardening, lo modelamos
estrictamente en el cálculo del TERMA, que es realizado para cada componente espectral por
separado, pero el EDK polienergético permanece constante con la profundidad. La modificación
espectral del haz al alejarse del eje central, conocido como off-axis softening, lo modelamos
genéricamente en el TERMA empleando los resultados de Taylor et. al. [7].
En calidad de test de regresión para evaluar la convolución en su nivel más básico, es decir la
convolución de un haz finito, divergente y monoenergético, creamos las distribuciones de dosis en
el eje para tres energías puras (1.25, 4.0 y 6.0 MeV) utilizando el propio EGSnrc. Usamos la
convolución de EDKs implementada dentro del CAT3D para reproducir los resultados del MC. La
comparación de las distribuciones del MC y del CAT3D muestran resultados con desvíos menores
que 1% en todos las profundidades desde varios mm antes de la profundidad del máximo hasta los
400 mm, que está dentro de la varianza en la distribución del propio MC. La figura 1 presenta la
distribución de dosis en el eje central de un campo de 100x100 mm2 con haz monoenergético de 6
MeV. El trazado continuo de la figura 1 corresponde a la distibución generada por el EGSnrc
mientras que los cuadraditos son resultado del CC. Las curvas generadas por la convolución del
4. CAT3D y el EGSnrc son indistinguible desde los 2 hasta los 402 mm de profundidad sobre el eje
central.
Fig. 1. CAT3D vs EGSnrc para 6 MeV
Para el caso de haces polienergéticos la única solución estricta sería efectuar una convolución para
cada componente del espectro y sumar las distribuciones de dosis correspondientes a cada fracción.
Este abordaje genera un notable aumento del tiempo de convergencia y por ese motivo es evitado
por diversos autores [2,3,4,5].
Para validar el método de convolución de un EDK polienergético y el TERMA creamos haces a
partir de combinación lineal de las distribuciones monoenergéticas de MC. Luego ejecutamos la
convolución del CAT3D y comparamos sus resultados a los generados con las distribuciones
primarias del MC. Las diferencias encontradas hasta los 400 mm son menores que 2% en dosis
relativa local y menores que 0.5% respecto al máximo de dosis, lo que prueba que la utilización de
una única convolución del EDK polienergético es adecuada para los fines clínicos. La figura 2
muestra el comportamiento de la distribución por superposición de las energias de 1.25 y 6.00 MeV
del MC como trazado continuo y el resultado del CC como cuadraditos.
5. Fig. 2 . CAT3D vs EGSnrc , 1.25 MeV + 6.0 MeV
En presencia de heterogeneidades el TERMA se escala con el camino radiológico efectivo con base
en el coeficiente de atenuación másico para cada componente espectral. Los EDK se escalan desde
el elemento dispersor hasta el punto de depósito también con base en el camino radiológico efectivo
calculado a partir de la densidad electrónica, con base en el teorema de O'Connor-Fano. Esto indica
que cada cono crea un proceso de ray-tracing en la densidad del tejido. El escalado de los EDK no
es rigurosamente preciso pero es una aproximación aceptable según diversos autores .
Las pruebas que hemos realizado con la implementación del Collapsed Cones Convolution dentro
del CAT3D, en diversas situaciones nos muestran que el tiempo de cálculo para unos 64000 puntos
está próximo a los 6 segundos en un procesador i7 2700 K. El tiempo depende del volumen del
tejido incluido en el plan, particularmente por la ejecución del ray tracing de cada cono.
6. Bibliografía referente a Collapsed Cones Convolution:
1) Mohan R., Chui C., “Differential pencil beam dose computation model for photons “, Med.
Phys. 13, 64 (1986) .
2) Ahnesjo A. , “Collapsed cone convolution of radiant energy for photon dose calculation in
heterogeneous media”, Med. Phys. 16, 577 (1989) .
3) E. Mainegra-Hing, D. W. O. Rogers, and I. Kawrakow, “Calculation of energy deposition kernels
for photons and dose point kernels for electrons”, Med. Phys. 32, 685 (2005).
4) Hoban P.W., Murray D.C., Round W.H., “Photon beam convolution using polyenergetic energy
deposition kernels”, Phys. Med. Biol. 39, 669 (1994) .
5) Papanikolaou N., Mackie R., Meger-Wells C., Gehring M., Reckwerdt P., “Investigation of the
convolution method for polyenergetic spectra”, Med. Phys. 20, 1327 (1993) .
6) Sharpe M.B., Battista J.J., “Dose calculations using convolution and superposition principles:
The orientation of dose spread kernels in divergent x-ray beams”, Med. Phys. 20, 1685 (1993).
7)Taylor R.C., Tello V.M., Schroy C.B., Vossles M., Hanson W.F., “A generic off-axis energy
correction for linac photon beam dosimetry”, Med. Phys. 25, 662 (1998).