|
|
windhairͬѧÄãºÃ£¬Ð»Ð»ÄãµÄ½¨Òé
ÎÒÖØÐ¼ì²éµ÷ÊԺ󣬾õµÃºÃÏñ»¹ÊÇǶÌ×ÉÏÓÐЩÎÊÌâ°É£¬ÄãÓÐ×¢Òâµ½ÕâÒ»²¿·ÖÂð£¿
¶ÔÁ¿¸Ù×öµ÷Õûºóº¬Ç¶Ì׵ĴúÂëÈçÏ£¬³öÏÖÈ«Áã½â£º
function Cha6demo2
clear all; clc
m=0;
y0=0;
x=linspace(0,0.00037,60);
t=linspace(0,129600,60);
sol=pdepe(m,@pdex1pde,@pdex1ic,@pdex1bc,x,t);
u=sol(:,:,1)
surf(x,t,u)
title('numerical solution computed with 20 mesh points.')
xlabel('Distance x')
ylabel('Time t')
figure
plot(x,u(end,: )),title('solution at t=129600')
xlabel('Distance x'),ylabel('u(x,129600)')
%--------------------------------------------------------
function[c,f,s]=pdex1pdex(x,t,u,DuDx)
c=(1+5.8/((0.2+u)^2))*10000000000;f=DuDx;s=(2/x)*DuDx;
%----------------------------------------------------------
function u0=pdex1ic(x)
u0=0;
%----------------------------------------------------------
function [pl,ql,pr,qr]=pdex1bc(xl,ul,xr,ur,t,v)
y0=0;
t=linspace(0,129600,60);
[t,v]=ode45(@ODEfun1,t,y0,[],ur)
pl=0;ql=1;pr=-0.9*10^5*(v-ur);qr=1; %pde·½³ÌµÄ±ß½çÌõ¼þprÖк¬ÓÐode·½³ÌµÄ½âÏòÁ¿v
%----------------------------------------------------
function DvDt=ODEfun1(t,v,ur)
DvDt=0.004*(ur-v)+0.00003002*30*((-7)*10^(-15)*t^3+2*10^(-9)*t^2-0.0002*t+9.6995)*(1-5.06*v)/(2.8+((-7)*10^(-15)*t^3+2*10^(-9)*t^2-0.0002*t+9.6995)*(1+((-7)*10^(-15)*t^3+2*10^(-9)*t^2-0.0002*t+9.6995)/0.05));
%ode·½³ÌÖк¬ÓÐpde½âÏòÁ¿ÔÚÓұ߽çÉϵĽâur
µ±ÎÒ³¢ÊÔ×Ų»ÓÃǶÌ×ode45À´Çó½âµÃv£¬¶øÊǽ«Ò»¸öÒÑÖªµÄº¯Êý¹ØÏµÊ½v£¨t£©=2*10^(-16)*t^3+3*10^(-11)*t^2+1*10^(-7)*t-0.0018À´´úÌæÊ±£¬¾Í²»»á³öÏÖÈ«Áã¾ØÕ󣬣¨½«±ß½çÌõ¼þ¾ä±úpdex1bcµÄ¶¨Ò岿·ÖÌæ»»ÎªÒÔϼ¸ÐУ©£º
%----------------------------------------------------------
function [pl,ql,pr,qr]=pdex1bc(xl,ul,xr,ur,t,v)
pl=0;ql=1;pr=-0.9*10^5*((-2*10^(-16)*t^3+3*10^(-11)*t^2+1*10^(-7)*t-0.0018)-ur);qr=1;
Äã¿´ÊDz»ÊÇǶÌ×ÉÏÓÐÎÊÌâÄØ£¿
[ Last edited by embrace5758 on 2009-4-10 at 16:28 ] |
|