File:Airflow-Obstructed-Duct.png
维基百科,自由的 encyclopedia
本预览的尺寸:800 × 571像素。 其他分辨率:320 × 229像素 | 640 × 457像素 | 1,024 × 731像素 | 1,270 × 907像素。
原始文件 (1,270 × 907像素,文件大小:85 KB,MIME类型:image/png)
摘要
File:N S Laminar.svg是此文件的矢量版本。 如果此文件质量不低于原点阵图,就应该将这个PNG格式文件替换为此文件。
File:Airflow-Obstructed-Duct.png → File:N S Laminar.svg
更多信息请参阅Help:SVG/zh。
|
描述Airflow-Obstructed-Duct.png |
A simulation using the navier-stokes differential equations of the aiflow into a duct at 0.003 m/s (laminar flow). The duct has a small obstruction in the centre that is parallel with the duct walls. The observed spike is mainly due to numerical limitations. This script, which i originally wrote for scilab, but ported to matlab (porting is really really easy, mainly convert comments % -> // and change the fprintf and input statements) Matlab was used to generate the image. %Matlab script to solve a laminar flow %in a duct problem %Constants inVel = 0.003; % Inlet Velocity (m/s) fluidVisc = 1e-5; % Fluid's Viscoisity (Pa.s) fluidDen = 1.3; %Fluid's Density (kg/m^3) MAX_RESID = 1e-5; %uhh. residual units, yeah... deltaTime = 1.5; %seconds? %Kinematic Viscosity fluidKinVisc = fluidVisc/fluidDen; %Problem dimensions ductLen=5; %m ductWidth=1; %m %grid resolution gridPerLen = 50; % m^(-1) gridDelta = 1/gridPerLen; XVec = 0:gridDelta:ductLen-gridDelta; YVec = 0:gridDelta:ductWidth-gridDelta; %Solution grid counts gridXSize = ductLen*gridPerLen; gridYSize = ductWidth*gridPerLen; %Lay grid out with Y increasing down rows %x decreasing down cols %so subscripting becomes (y,x) (sorry) velX= zeros(gridYSize,gridXSize); velY= zeros(gridYSize,gridXSize); newVelX= zeros(gridYSize,gridXSize); newVelY= zeros(gridYSize,gridXSize); %Set initial condition for i =2:gridXSize-1 for j =2:gridYSize-1 velY(j,i)=0; velX(j,i)=inVel; end end %Set boundary condition on inlet for i=2:gridYSize-1 velX(i,1)=inVel; end disp(velY(2:gridYSize-1,1)); %Arbitrarily set residual to prevent %early loop termination resid=1+MAX_RESID; simTime=0; while(deltaTime) count=0; while(resid > MAX_RESID && count < 1e2) count = count +1; for i=2:gridXSize-1 for j=2:gridYSize-1 newVelX(j,i) = velX(j,i) + deltaTime*( fluidKinVisc / (gridDelta.^2) * ... (velX(j,i+1) + velX(j+1,i) - 4*velX(j,i) + velX(j-1,i) + ... velX(j,i-1)) - 1/(2*gridDelta) *( velX(j,i) *(velX(j,i+1) - ... velX(j,i-1)) + velY(j,i)*( velX(j+1,i) - velX(j,i+1)))); newVelY(j,i) = velY(j,i) + deltaTime*( fluidKinVisc / (gridDelta.^2) * ... (velY(j,i+1) + velY(j+1,i) - 4*velY(j,i) + velY(j-1,i) + ... velY(j,i-1)) - 1/(2*gridDelta) *( velY(j,i) *(velY(j,i+1) - ... velY(j,i-1)) + velY(j,i)*( velY(j+1,i) - velY(j,i+1)))); end end %Copy the data into the front for i=2:gridXSize - 1 for j = 2:gridYSize-1 velX(j,i) = newVelX(j,i); velY(j,i) = newVelY(j,i); end end %Set free boundary condition on inlet (dv_x/dx) = dv_y/dx = 0 for i=1:gridYSize velX(i,gridXSize)=velX(i,gridXSize-1); velY(i,gridXSize)=velY(i,gridXSize-1); end %y velocity generating vent for i=floor(2/6*gridXSize):floor(4/6*gridXSize) velX(floor(gridYSize/2),i) = 0; velY(floor(gridYSize/2),i-1) = 0; end %calculate residual for %conservation of mass resid=0; for i=2:gridXSize-1 for j=2:gridYSize-1 %mass continuity equation using central difference %approx to differential resid = resid + (velX(j,i+ 1)+velY(j+1,i) - ... (velX(j,i-1) + velX(j-1,i)))^2; end end resid = resid/(4*(gridDelta.^2))*1/(gridXSize*gridYSize); fprintf('Time %5.3f \t log10Resid : %5.3f\n',simTime,log10(resid)); simTime = simTime + deltaTime; end mesh(XVec,YVec,velX) deltaTime = input('\nnew delta time:'); end %Plot the results mesh(XVec,YVec,velX) |
日期 | 2007年2月24日 (原始上传日期) |
来源 | Transferred from en.wikipedia to Commons. |
作者 | 英语维基百科的User A1 |
许可协议
Public domainPublic domainfalsefalse |
本作品已被作者英语维基百科的User A1释出到公有领域。这适用于全世界。 在一些国家这可能不合法;如果是这样的话,那么: User A1无条件地授予任何人以任何目的使用本作品的权利,除非这些条件是法律规定所必需的。Public domainPublic domainfalsefalse |
原始上传日志
The original description page was here. All following user names refer to en.wikipedia.
- 2007-02-24 05:45 User A1 1270×907×8 (86796 bytes) A simulation using the navier-stokes differential equations of the aiflow into a duct at 0.003 m/s (laminar flow). The duct has a small obstruction in the centre that is paralell with the duct walls. The observed spike is mainly due to numerical limitatio
此文件中描述的项目
描绘内容
版权状态 简体中文(已转写)
受版权保护,并由版权所有者释出于公有领域 简体中文(已转写)
著作权持有者释出至公有领域 简体中文(已转写)
24 2 2007
媒体类型 简体中文(已转写)
image/png
数据大小 简体中文(已转写)
86,796 字节
907 像素
1,270 像素
文件历史
点击某个日期/时间查看对应时刻的文件。
日期/时间 | 缩略图 | 大小 | 用户 | 备注 | |
---|---|---|---|---|---|
当前 | 2007年5月1日 (二) 15:52 | 1,270 × 907(85 KB) | Smeira | {{Information |Description=A simulation using the navier-stokes differential equations of the aiflow into a duct at 0.003 m/s (laminar flow). The duct has a small obstruction in the centre that is paralell with the duct walls. The observed spike is mainly |
文件用途
以下2个页面使用本文件:
全域文件用途
以下其他wiki使用此文件:
- anp.wikipedia.org上的用途
- ar.wikipedia.org上的用途
- ba.wikipedia.org上的用途
- bg.wikipedia.org上的用途
- bn.wikipedia.org上的用途
- ca.wikipedia.org上的用途
- ckb.wikipedia.org上的用途
- cs.wikipedia.org上的用途
- de.wikipedia.org上的用途
- en.wikipedia.org上的用途
- en.wikiquote.org上的用途
- es.wikipedia.org上的用途
- fa.wikipedia.org上的用途
- he.wikipedia.org上的用途
- hif.wikipedia.org上的用途
- hi.wikipedia.org上的用途
- hr.wikipedia.org上的用途
- hy.wikipedia.org上的用途
- id.wikipedia.org上的用途
- jv.wikipedia.org上的用途
- ko.wikipedia.org上的用途
- ko.wikiversity.org上的用途
- map-bms.wikipedia.org上的用途
- ms.wikipedia.org上的用途
- mwl.wikipedia.org上的用途
- pt.wikipedia.org上的用途
- Isaac Newton
- Equação diferencial
- Equações de Navier-Stokes
- Equação diferencial linear
- Equação diferencial de Bernoulli
- Equação diferencial de d'Alembert
- Decaimento exponencial
- Equação de Laplace
- Equação diferencial parcial
- Equação de Poisson
- Equação do calor
- Lema de Grönwall
- Teorema de Picard-Lindelöf
- Método de Runge-Kutta
- Equação de Mason-Weaver
- Equação do pêndulo
查看本文件的更多全域用途。