Usuario:


Algoritmo para simular modelo material inhomogeneo

Definición

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

Imagen

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)



Modelamiento con material inhomogeneo (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

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

equation=9099

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:

equation

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.

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

equation

Si las posiciones se discretizan la integral de la probabilidad

equation=9102

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 :

equation

Para simplificar el calculo se puede definir el factor

equation

Con la probabilidad

equation=9354

la ecuaci n

equation=9104

se deja escribir como

equation

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.

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

equation=9355

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.

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:

php


>Modelo

ID:(1130, 0)