Билэ:Airflow-Obstructed-Duct.png
testwiki диэн сиртэн ылыллыбыт
Навигацияҕа көс
Көрдөбүлгэ көс
Бигэргэтиэх иннинэ көрүү улахана: 800 × 571 пииксэл. Атын көрдөрөр кыамталар: 320 × 229 пииксэл | 640 × 457 пииксэл | 1024 × 731 пииксэл | 1270 × 907 пииксэл.
Билэ бэйэтэ (1270 × 907 пииксэл, билэ кээмэйэ: 85 КБ, MIME тиибэ: image/png)
Викискладе бу билэтэ атын бырайыактарга эмиэ туттуллуон сөп. туһунан сирэйтэн ылыллыбыт тиэкис аллара көрдөрүлүннэ.
Быһаарыы
| Быһаарыыта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)
|
| Күнэ-дьыла | 24 Олунньу 2007 (дата первоначальной загрузки файла на вики) |
| Хантан ылыллыбыта | 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 Олунньу 2007
MIME-тип Нууччалыы
image/png
контрольная сумма Нууччалыы
44c13ef5152db60934799deeb8c6556bfa2816e6
размер данных Нууччалыы
86 796 байт
высота/рост Нууччалыы
907 пиксель
ширина Нууччалыы
1270 пиксель
Билэ устуоруйата
Ыйын-күнүн/кэмин баттаа, оччотооҕуга баар буолбут.
| Күнэ-ыйа/Кэмэ | Ойуучаан | Кээмэйдэрэ | Кыттааччы | Хос быһаарыы | |
|---|---|---|---|---|---|
| билиҥҥи | 16:52, 1 Ыам ыйын 2007 | 1270 × 907 (85 КБ) | wikimediacommons>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 |
Билэни туттуу
Бу билэни бу сирэй туһанар: