Usuario:


Problema de la probabilidad variable

Ecuación

>Top, >Modelo


Hasta aquí habíamos supuesto que la probabilidad de interacción era independiente de la posición. Sin embargo, por lo general los sistemas no son homogéneos y por ello es necesario considerar que las probabilidades dependen de la posición.

Esto significa que en la probabilidad de colisionar el factor lambda \lambda es una función de la posición y la integración de

$p(x)dx = \displaystyle\frac{1}{\lambda}e^{-x/\lambda}dx$



no se puede realizar en forma explicita. En este caso la probabilidad de impactar debe ser calculada en forma explicita y como los factores \lambda dependen de la posición la integración debe considerar la posición inicial x_0 desde donde comienza a propagar:

$P(x,x_0)=\displaystyle\int_{x_0}^x\displaystyle\frac{du}{\lambda(u)}e^{-(u-x_0)/\lambda(u)}$

donde P_0 es una constante de normalización. Para realizar el calculo de la integral se requiere de conocer el camino libre \lambda(x) a lo largo del camino que recorre la partícula. La información por lo general se obtiene como una grilla en tres dimensiones en que el valor se especifica en cada nodo. Cada nodo de esta se denomina un voxel en analogía a un pixel en una imagen bidimensional.

ID:(9102, 0)



Modelamiento del material

Ecuación

>Top, >Modelo


Para poder calcular la función probabilidad se debe discretizar el espacio definiendo una grilla con nodos o voxel que pueden estar a distancia fija o variar en función del material y/o geometría. En el caso de que la grilla es regular se tiene que las posiciones de los nodos son

$x_n=na$

ID:(9105, 0)



Probabilidad para el caso discreto

Ecuación

>Top, >Modelo


Si las posiciones se discretizan la integral de la probabilidad

$P(x,x_0)=\displaystyle\int_{x_0}^x\displaystyle\frac{du}{\lambda(u)}e^{-(u-x_0)/\lambda(u)}$



se requieren los valores de \lambda para cada voxel los que se pueden denotar con el indice del voxel como \lambda_n. Con ello la probabilidad de que la partícula viaje desde una posición i a una posición j será:

$P_{ij}=\displaystyle\sum_{k=i}^j \displaystyle\frac{a}{\lambda_k}e^{-(k-i)a/\lambda_k}$

ID:(9104, 0)



Probabilidad de colisión

Ecuación

>Top, >Modelo


Para simplificar el calculo se puede definir el factor

$\mu_k=\displaystyle\frac{a}{\lambda_k}$

ID:(9354, 0)



Ecuación de propagación simplificada

Ecuación

>Top, >Modelo


Con la probabilidad

$\mu_k=\displaystyle\frac{a}{\lambda_k}$



la ecuación

$P_{ij}=\displaystyle\sum_{k=i}^j \displaystyle\frac{a}{\lambda_k}e^{-(k-i)a/\lambda_k}$



se deja escribir como

$P_{ij}=\displaystyle\sum_{k=i}^j \mu_k e^{-|k-i|\mu_k}$

en donde se agrego el valor absoluto para el caso de que la propagación es de un valor i mayor a un valor j menor.

ID:(9355, 0)



Algoritmo para simular modelo material inhomogeneo

Descripción

>Top


A diferencia del caso homogéneo la posición inicial de la partícula solo puede asumir un nodo especifico. Para un nodo inicial y dirección de propagación definida se puede generar un numero al azar entre 0 y 1 y comenzar a generar números de la serie

$P_{ij}=\displaystyle\sum_{k=i}^j \mu_k e^{-|k-i|\mu_k}$

hasta sobrepasar el numero al azar. Al ocurrir esto se habrá llegado al nodo en que ocurrirá la colisión. Por ello el código debe tener un loop de la forma

```

var rand = Math.random(); // random number

var p = 0; // start sum

var k = i; // start position

var dir = 1; // direction

while(p < rand){

p = p + mu[k]*Math.exp(-Math.abs(k-i)*mu[k]);

k = k + dir;

}

// k is the result node

```

Para que este código pueda funcionar adecuadamente debe:

- definirse un rango en que mu tiene valores

- debe incluirse una protección por si la partícula abandona el rango en que se definió el arreglo mu.

ID:(9356, 0)



Simulador material inhomogeneo

Php

>Top


Sobre la base de un sistema que se extiende desde un borde izquierdo x_1<0 y uno al lado derecho x_2>0 en que en el lado izquierdo se tiene un valor \mu_A y a la derecha \mu_B con una frontera en borde que debe encontrarse dentro del rango del modelo:

ID:(9357, 0)