Usuario:


Camino libre de un fotón

Definición

Si se indica el camino libre en función de la densidad se le puede comparar entre distintos materiales. Al ser una función de la energía del fotón se obtiene que el camino libre en hueso y agua son en el rango 0 a 10MeV muy similares:

Camino libre de fotones en agua y hueso. The EGS4 Code System Report SLAC-265, Nelson W.R. et. al., Stanford Linear Accelerator Center, California, 1985

Si se desea una estimación del camino libre del fotón en agua, que muestra un comportamiento muy similar al de tejido, basta multiplicar el largo en gramos por centímetro cuadrado por la densidad con lo que se obtiene valores entre 0 y 30 cm.

ID:(9256, 0)



Camino libre de varias partículas

Imagen

Si se comparan los caminos libres para fotones, neutrones, electrones y protones en agua de observan diferencias en potencias de diez:

Camino libre de partículas en agua (informe ICRU de 1970).

En este caso los valores están indicados en centímetros. Para el rango de hasta 0.01 a 6 MeV los rangos (en cm) son

Partícula | 0.01 MeV | 6 MeV

-------------|:------------:|:----------:

Fotones | 0.198 | 41.7

Neutrones | 0.878 | 0.430

Electrones | 0.00032 | 0.211

Protones | - | 0.033

ID:(9257, 0)



Distribución de probabilidades para el caso de medio inhomogenio

Nota

Cuando el medio es inhomogeneo la probabilidad de choque al avanzar en un dx

equation=9099

el factor \lambda pasa a depender de la posición.

ID:(9353, 0)



Bean machine o tablero de Galton

Cita

Una aplicación practica del modelo descrito se encuentra en el llamado tablero de Galton. En ella uno deja caer una volita por un tablero de clavos los que hacen que en cada choque la volita cambie de dirección y finalmente llegue abajo a un arreglo en que se le clasifica:

El arreglo en la parte inferior corresponde a la distribución probabilistica p(x) que corresponde al alto de la columna en x. El numero de volitas que llega a x es igual al ancho de la columna dx por la altura p(x).

ID:(9254, 0)



Estructura del código (1)

Ejercicio

La estructura del código de simulación tiene que tener tres unidades básicas:

- la definición de la función distribución (el arreglo que recoge las bolitas en la tabla de Galton)

- el simulador del avance de la partícula que entrega la posición final

- la unidad que determina la clase que debe ser incrementada en la función distribución (la unidad que determina en que contenedor del receptor de bolitas esta es depositada)

Para el primer punto debemos definir un arreglo, que inicialmente se setea en cero, que al final es poblado según la posición alcanzada.

Para el primer paso debemos primero definir el rango en que la bolita pede caer, es decir un valor mínimo x_{min} (xmin) y un valor máximo x_{max} (xmax). Este debe ser subdividido en num (num) intervalos de largo Dx:

\Delta x = \displaystyle\frac{x_{max}-x_{min}}{num}

Si el arreglo lo llamamos p sera primero necesario setear los num elementos en cero (vaciar los elementos de la tabla de Galton)

```

// set distribution to cero

for(i = 0;i < num;i++){

p[i] = 0.0; // set to empty

}

```

Una ves se han seteado en cero debemos estudiar el comportamiento de N bolitas/partículas y determinar su posición final x después de steps pasos (ver página que detalla el cálculo):

```

Position calculation

```

Una vez se ha obtenido la posición x se puede determinar el casillero en que se debe depositar la bolita simplemente restando el valor mínimo y dividiendo por el ancho de cada contenedor:

cls = \displaystyle\frac{x-x_{min}}{\Delta x}

Con este valor se puede localizar el contenedor p[cls] y agregarle una bolita o partícula. El código correspondiente sería:

```

cls = round((x-xmin)/Dx); // find position in array

p[cls]++; // increment array p in posicion cls on one

```

en donde la función round (en javascript Math.round) redondea el valor para obtener un valor cls entero. El cómando p[cls]++ corresponde a incrementar el elemento p[cls] en uno.

ID:(9250, 0)



Estructura del código (2)

Ecuación

Para calcular las posiciones finales se debe:

- iterar sobre múltiples partículas (N)

- para cada partícula estimar los caminos recorridos

- ir sumando los caminos alternando las direcciones de propagación

En este caso se asume que en cada choque la partícula cambia de dirección de propagación. En su inicio siempre comienza viajando incrementando la distancia lo que se define como la dirección positiva (dir = 1). En cada choque el signo de dir es invertido (dir = -dir o sea si dir=1 este se vuelve dir=-1).

Para el largo del paso se invoca la función de generación de largos antes definida (exprob) que se pondera con la direccón para obtener con la posición anterior la nueva posición.

```

// particles (n de N)

for(n = 0;n < N;n++){

x = 0; // initial position

dir = 1; // initial direction

for(i = 0;i < sp;i++){

x = x + dir*exprob(len); // new position

dir = -dir; // change direction

}

// finish position calculation

// clasification of end position x in distribution p

}

```

ID:(9258, 0)



Simulador camino aleatorio paso variable

Script

Para obtener la distribución de las partículas en función de la posición se puede realizar una iteración en que

> 0. se define una posición y dirección inicial
> 1. se generado al azar un largo de paso
> 2. se define al azar si se invierte la dirección
> 3. se desplaza según el paso definido en 1 y 2
> 3. se continua en 1

Si se supone que esperamos un tiempo definido y que la partícula se desplaza a velocidad constante, se puede determinar la posición que tiene tras un tiempo dado o tras un camino total definido.

Para comprender como este tipo de simulación depende de los parámetros se propone variar:

> i) la resolución (ancho de la clase con que se estima la distribución)

> ii) numero de iteraciones

ID:(9100, 0)



Conclusiones

Variable

Jugando con el simulador notamos que

> 1. Solo tiene sentido considerar distribuciones de posiciones posibles

> 2. La distribución se basa en determinar posiciones en rangos discretos

> 3. Rangos de menor tamaño requieren de un mayor numero de iteraciones

ID:(9101, 0)



Modelamiento con material homogéneo (1D)

Storyboard

Variables

Símbolo
Texto
Variable
Valor
Unidades
Calcule
Valor MKS
Unidades MKS

Cálculos


Primero, seleccione la ecuación:   a ,  luego, seleccione la variable:   a 

Símbolo
Ecuación
Resuelto
Traducido

Cálculos

Símbolo
Ecuación
Resuelto
Traducido

 Variable   Dado   Calcule   Objetivo :   Ecuación   A utilizar



Ecuaciones


Ejemplos

El caso mas simple es el de una particular que se desplaza a lo largo de un eje pudiendo impactar alg n objeto.

Si la probabilidad de lograr llegar a una distancia entre x y x+dx es p(x), se tendr que la probabilidad de impactar ser igual a la diferencia de propagaci n:

p(x)-p(x+dx)\sim-\displaystyle\frac{dp}{dx}dx

Si la probabilidad de llegar a x es p(x) y la probabilidad de impactar en el camino dx es proporcional a dx/\lambda, donde \lambda es un largo caracter stico, se tiene que

dp = -\displaystyle\frac{dx}{\lambda} p(x)

que se puede integrar dando

equation

donde \lambda es la constante de integraci n.

La funci n p(x) muestra como se distribuyen en la distancia x las ubicaciones en donde ocurre el primer impacto si la part cula inicia su camino en el origen (x=0).

Una distribuci n de esta forma corresponde a una distribuci n de Poisson.

Si se integra la distribuci n

equation=9099

sobre todas las distancias posibles x y asume que \lambda es constante, se obtiene

equation

lo que significa que la funci n esta normalizada. Esto no es de extra arse dando que la funci n p(x) corresponde a una distribuci n de probabilidades.

Si se estima el camino medio recorrido ponderando el camino x con la densidad de probabilidad p(x) se tiene

\langle x\rangle =\displaystyle\int_0^{\infty}dx,x,p(x)

Con la densidad de probabilidad

equation=9099

se obtiene integrando que

equation

En otras palabras la constante de integraci n \lambda corresponde al camino medio que recorre la part cula entre dos choques lo que se denomina el camino libre.

Si se indica el camino libre en funci n de la densidad se le puede comparar entre distintos materiales. Al ser una funci n de la energ a del fot n se obtiene que el camino libre en hueso y agua son en el rango 0 a 10MeV muy similares:

image

Si se desea una estimaci n del camino libre del fot n en agua, que muestra un comportamiento muy similar al de tejido, basta multiplicar el largo en gramos por cent metro cuadrado por la densidad con lo que se obtiene valores entre 0 y 30 cm.

Si se comparan los caminos libres para fotones, neutrones, electrones y protones en agua de observan diferencias en potencias de diez:

image

En este caso los valores est n indicados en cent metros. Para el rango de hasta 0.01 a 6 MeV los rangos (en cm) son

Part cula | 0.01 MeV | 6 MeV

-------------|:------------:|:----------:

Fotones | 0.198 | 41.7

Neutrones | 0.878 | 0.430

Electrones | 0.00032 | 0.211

Protones | - | 0.033

Cuando el medio es inhomogeneo la probabilidad de choque al avanzar en un dx

equation=9099

el factor \lambda pasa a depender de la posici n.

Una aplicaci n practica del modelo descrito se encuentra en el llamado tablero de Galton. En ella uno deja caer una volita por un tablero de clavos los que hacen que en cada choque la volita cambie de direcci n y finalmente llegue abajo a un arreglo en que se le clasifica:

image

El arreglo en la parte inferior corresponde a la distribuci n probabilistica p(x) que corresponde al alto de la columna en x. El numero de volitas que llega a x es igual al ancho de la columna dx por la altura p(x).

La estructura del c digo de simulaci n tiene que tener tres unidades b sicas:

- la definici n de la funci n distribuci n (el arreglo que recoge las bolitas en la tabla de Galton)

- el simulador del avance de la part cula que entrega la posici n final

- la unidad que determina la clase que debe ser incrementada en la funci n distribuci n (la unidad que determina en que contenedor del receptor de bolitas esta es depositada)

Para el primer punto debemos definir un arreglo, que inicialmente se setea en cero, que al final es poblado seg n la posici n alcanzada.

Para el primer paso debemos primero definir el rango en que la bolita pede caer, es decir un valor m nimo x_{min} (xmin) y un valor m ximo x_{max} (xmax). Este debe ser subdividido en num (num) intervalos de largo Dx:

\Delta x = \displaystyle\frac{x_{max}-x_{min}}{num}

Si el arreglo lo llamamos p sera primero necesario setear los num elementos en cero (vaciar los elementos de la tabla de Galton)

```

// set distribution to cero

for(i = 0;i < num;i++){

p[i] = 0.0; // set to empty

}

```

Una ves se han seteado en cero debemos estudiar el comportamiento de N bolitas/part culas y determinar su posici n final x despu s de steps pasos (ver p gina que detalla el c lculo):

```

Position calculation

```

Una vez se ha obtenido la posici n x se puede determinar el casillero en que se debe depositar la bolita simplemente restando el valor m nimo y dividiendo por el ancho de cada contenedor:

cls = \displaystyle\frac{x-x_{min}}{\Delta x}

Con este valor se puede localizar el contenedor p[cls] y agregarle una bolita o part cula. El c digo correspondiente ser a:

```

cls = round((x-xmin)/Dx); // find position in array

p[cls]++; // increment array p in posicion cls on one

```

en donde la funci n round (en javascript Math.round) redondea el valor para obtener un valor cls entero. El c mando p[cls]++ corresponde a incrementar el elemento p[cls] en uno.

Para simular el camino recorrido debemos poder generar en forma aleatoria los caminos libres basados en la distribuci n

equation=9099

Para ello basta calcular la probabilidad de lograr un camino x

P(x)=\displaystyle\int_0^x\displaystyle\frac{du}{\lambda}e^{-u/\lambda}=1-e^{-x/\lambda}

y despejar el camino x

equation

se obtiene una ecuaci n que si generamos al azar un numero entre 0 y 1 obtendremos un camino x generado con la distribuci n de Poisson.

Con ello se puede definir una funci n:

```

function exprob(len){

var ran = Math.random();

if(ran > 0){

return -len*Math.log(1-ran);

} else {

return len;

}

}

```

en que se considero la generaci n de un numero entre 0 y 1 al azar y se considero la posibilidad de que el valor sea cero lo que generar a problemas ya que el logaritmo ser a menos infinito.

Para calcular las posiciones finales se debe:

- iterar sobre m ltiples part culas (N)

- para cada part cula estimar los caminos recorridos

- ir sumando los caminos alternando las direcciones de propagaci n

En este caso se asume que en cada choque la part cula cambia de direcci n de propagaci n. En su inicio siempre comienza viajando incrementando la distancia lo que se define como la direcci n positiva (dir = 1). En cada choque el signo de dir es invertido (dir = -dir o sea si dir=1 este se vuelve dir=-1).

Para el largo del paso se invoca la funci n de generaci n de largos antes definida (exprob) que se pondera con la direcc n para obtener con la posici n anterior la nueva posici n.

```

// particles (n de N)

for(n = 0;n < N;n++){

x = 0; // initial position

dir = 1; // initial direction

for(i = 0;i < sp;i++){

x = x + dir*exprob(len); // new position

dir = -dir; // change direction

}

// finish position calculation

// clasification of end position x in distribution p

}

```

Para obtener la distribuci n de las part culas en funci n de la posici n se puede realizar una iteraci n en que

> 0. se define una posici n y direcci n inicial
> 1. se generado al azar un largo de paso
> 2. se define al azar si se invierte la direcci n
> 3. se desplaza seg n el paso definido en 1 y 2
> 3. se continua en 1

Si se supone que esperamos un tiempo definido y que la part cula se desplaza a velocidad constante, se puede determinar la posici n que tiene tras un tiempo dado o tras un camino total definido.

php

Para comprender como este tipo de simulaci n depende de los par metros se propone variar:

> i) la resoluci n (ancho de la clase con que se estima la distribuci n)

> ii) numero de iteraciones

Jugando con el simulador notamos que

> 1. Solo tiene sentido considerar distribuciones de posiciones posibles

> 2. La distribuci n se basa en determinar posiciones en rangos discretos

> 3. Rangos de menor tama o requieren de un mayor numero de iteraciones


>Modelo

ID:(1129, 0)