Está en la página 1de 4

(véase también: Kinzelbach 1987, Wexler 1992), que puede deducirse por analogía de (16.

7) y
(16.12). Existen muchas aplicaciones de esta ecuación, principalmente para la propagación de la
contaminación en la atmósfera. Richter y Seppelt (2004) aplican la solución de soplo gaussiano sin
advección para evaluar la eliminación de polen de cultivos modificados genéticamente en
ecosistemas agrícolas. El método puede elegirse como opción en el archivo 'GaussianPuff.m'.

En la Fig. 16.5 se visualiza una nube de Gauss en 3D. El resultado se obtuvo

utilizando el archivo 'GaussianPuff.m' con datos de entrada.

Para aplicaciones en la atmósfera, la fórmula se amplía para tener en cuenta la superficie del
suelo.

mientras que La superficie del suelo se sitúa en z = 0, mientras que la emisión del contaminante
aparece a la altura H. En las aplicaciones, H puede corresponder a la altura de la chimenea. H
puede corresponder a la altura de la chimenea, pero a menudo es necesario para tener en cuenta
el ascenso inicial de un penacho de emisión con una temperatura superior a la del ambiente. H
también se denomina altura efectiva de la chimenea.

En la superficie del suelo, es habitual exigir una condición límite sin flujo. Como se demuestra en el
Cap. 15, la condición de ausencia de flujo puede cumplirse añadiendo otra fuente en posición de
espejo al otro lado de la frontera, es decir, para la situación aquí en la ubicación (x, y, z) = (0, 0, -H).
Para una ecuación de transporte lineal, la solución puede construirse utilizando el principio de
superposición (véanse los Capítulos 13 y 14).
función GaussianPuff

% modelo de soplo gaussiano

% usando soluciones analíticas MATLAB email-subharsgis08@gmail.com

% $SUBHADEEP MAISHALIITKGP]2016 $email-subharsgis08@gmail.com......ok

%-----------------------------------------------------------------------

d = 2; % dimensionalidad

Dx = 0,004; Dy = 0,001; Dz = 0,001; % difusividades

v = 1; % velocidad

M = 1; % masa

xmin = 0.85; xmax = 1.15; % intervalo eje x

ymin = -0.1; ymax = 0.1; % intervalo del eje y (usado sólo para d>1)

zmin = -0.1; zmax = 0.1; % intervalo del eje z (utilizado sólo para d>2)

t = [1:4:20]; % tiempo

gplot = 1; % opción de trazado (=1 sí; =0 no)

gcont = 2; % contour plot option (=2 filled; =1 yes; =0 none)

gsurf = 0; % opción de gráfico de superficie (=1 sí; =0 no)

% (sólo para d<3)


%-------------------------------execution------------------------------

switch d

caso 1

x = linspace (xmin,xmax,100);

c = [];

for i = 1:size(t,2)

xx = x - v*t(i);

c = [c; (M/sqrt(4*pi*Dx*t(i)))*ones(1,tamaño(x)).*...

exp(-(xx.*xx)/(4*Dx*t(i))];

fin

caso 2

si tamaño(t,2) > 1 t = t(1); display('sólo se considera el primer nivel de tiempo');

end

[x,y] = meshgrid (linspace(xmin,xmax,100),linspace(ymin,ymax,100));

xx = x - v*t;

c = (M/4/pi/t/sqrt(Dx*Dy))*ones(100).*exp(-0.25*(xx.*xx/Dx + y.*y/Dy)/t);

caso 3

if size(t,2) > 1 t = t(1); display('sólo se considera el primer nivel de tiempo');

fin

[x,y,z] = meshgrid (linspace(xmin,xmax,45),...

linspace(ymin,ymax,45),linspace(zmin,zmax,45));

xx = x -v*t;

c = (M/(sqrt(4*pi*t)^3)/sqrt(Dx*Dy*Dz))*ones(45,45,45)....

.*exp(-0.25*(xx.*xx/Dx + y.*y/Dy + z.*z/Dz)/t);

fin
%---------------------------------out put-------------------------------

si gplot

switch d

case 1

plot (c'); hold on; xlabel ('espacio');

ylabel ('concentration'); title ('1D Gaussian puff');

caso 2

para i = 10:10:100

plot (c(:,i)); hold on;

end

xlabel ('x'); ylabel ('concentración');

title ('2D Gaussian puff along slices y=const)');

caso 3

for i = 5:5:45

plot (c(:,i,23)); hold on;

end

xlabel ('x'); ylabel ('concentración');

title ('nube gaussiana 3D a lo largo de la línea x=0');

end

barra de color

end

También podría gustarte