亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? hw-nozzle.m

?? 求解二維無粘歐拉方程
?? M
?? 第 1 頁 / 共 3 頁
字號(hào):
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%數(shù)值模擬二維收縮噴管流場(chǎng)
%顯式時(shí)間推進(jìn)、有限體積法、結(jié)構(gòu)化網(wǎng)格,2階MUSCL格式,超限插值網(wǎng)格
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function nozzle()                     
    Data=setdata;                  
    U=init(Data);                  
    [U,para]=getpara(U,Data);     
    
    fp=fopen('progress.txt','w');
    fclose(fp);
    
    N=para.N-1;
    M=para.M-1;
    F(1,:,:)=para.p;壓力
    F(2,:,:)=para.rho; 密度
    F(3,:,:)=para.u;
    F(4,:,:)=para.v;
    F(5,:,:)=para.a;
    F(6,:,:)=para.E0;
    F(7,:,:)=para.M0;
    fp=fopen('result.plt', 'w');
    for j=2:N
        for i=2:M
            fprintf(fp,'%12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f\r\n', para.X(j, i), para.Y(j, i), F(1, j, i), F(2, j, i), F(3, j, i), F(4, j, i), F(5, j, i), F(6, j, i), F(7, j, i));
        end
        fprintf(fp,'\r\n');  格心坐標(biāo) 對(duì)應(yīng)參數(shù)值
    end
    fclose(fp);
    
    run=1;                         
    t=0;
    sumt=1;
    step=0;
    sumstep=1000;
    error_constant=1e-4;
    while run
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       fp=fopen('key.txt','r');
        exit=fscanf(fp,'%d');.
        fclose(fp);
        if exit==0
            break;    
        end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
        oldU=U(1,:,:);
        [U,dt]=Update(U,para);
        [U,para]=getpara(U,Data);   
        maxerror=max(max(abs(oldU(1,:,:)-U(1,:,:))));
       
        t=t+dt;
        step=step+1;
        
        run=stopcalculate(t,sumt,step,sumstep,error_constant,maxerror);    
   
        fp1=fopen('progress.txt','a+');
        str1=num2str(t);
        str2=num2str(step);
        str3=num2str(maxerror);
        fprintf(fp1,'\r\nsumtime:%d,sumstep:%d,error_constant=%f',sumt,sumstep,error_constant);
        fprintf(fp1,'\r\ncurrent_t=%s\r\ncurrent_step=%s',str1,str2);
        fprintf(fp1,'\r\ncurrent_maxerror=%s\r\n',str3);
        fclose(fp1);
   
        N=para.N-1;
        M=para.M-1;
        F(1,:,:)=para.p;
        F(2,:,:)=para.rho;
        F(3,:,:)=para.u;
        F(4,:,:)=para.v;
        F(5,:,:)=para.a;
        F(6,:,:)=para.E0;
        F(7,:,:)=para.M0;
        
        fp=fopen('result.plt', 'w');
        for j=2:N
            for i=2:M
                fprintf(fp,'%12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f  %12.6f\r\n', para.X(j, i), para.Y(j, i), F(1, j, i), F(2, j, i), F(3, j, i), F(4, j, i), F(5, j, i), F(6, j, i), F(7, j, i));
            end
            fprintf(fp,'\r\n');
        end
        fclose(fp);
    end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%    
function Data=setdata()
    cfl=0.8;                      
    gam=1.4; 
    [PointX,PointY,Nx,Ny]=setgrid2D; %     劃分網(wǎng)格 網(wǎng)格數(shù)據(jù)節(jié)點(diǎn)
    [CyPointX,CyPointY,CxPointX,CxPointY]=getcentrepoint(PointX,PointY,Nx,Ny);% 包圍節(jié)點(diǎn)的  矩形四個(gè)點(diǎn)坐標(biāo)
    [UPointX,UPointY,PointX,PointY]=getunitpoint(PointX,PointY,Nx,Ny);  % 格心坐標(biāo)
    method='char';                  
    Data=struct('gam',gam,'cfl',cfl,'Nx',Nx,'Ny',Ny,'PX',PointX,'PY',PointY,'CyPX',CyPointX,'CyPY',CyPointY,'CxPX',CxPointX,'CxPY',CxPointY,'UPX',UPointX,'UPY',UPointY,'method',method);       
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
function [PointX,PointY,Nx,Ny]=setgrid2D() %應(yīng)用超限插值法構(gòu)造網(wǎng)格單元
clear all;
R1=1;   %噴管入口半徑                       
R2=20;  %候道的彎曲半徑
Cta=15; %候道的圓周半徑
S=0.1;  %單位長度上網(wǎng)格的大小                  
M2=ceil(R2*Cta*pi/180)/S;   %x方向的網(wǎng)格點(diǎn)數(shù)
N2=R1*2/S;    %y方向的網(wǎng)格點(diǎn)數(shù)
Nx=M2;
Ny=N2;

%Px(i,j)--網(wǎng)格(i,j)點(diǎn)的x坐標(biāo)
%Py(i,j)--網(wǎng)格(i,j)點(diǎn)的y坐標(biāo)
    Px(1,1)=0;
    Px(M2,1)=R2*sin(Cta/360*pi)*2;
    Px(1,N2)=0;
    Px(M2,N2)=R2*sin(Cta/360*pi)*2;

    for j=1:M2   %構(gòu)造Lagrange 插值型函數(shù)
        qx1(j)=1-(j-1)/(M2-1);
        qx2(j)=(j-1)/(M2-1);   
    end
    cta=Cta*pi/180; %角度轉(zhuǎn)換成弧度
    dcta=(Cta*pi/180)/(M2-1);   %M2-1等分
    l=2*R2*sin(dcta/2);    %每等份的玄長
    
    a1=R2*sin(cta/2);
    b1=-R2*cos(cta/2);
    a2=a1;
    b2=2*R1+R2*cos(cta/2);    %圓心偏移點(diǎn)
    
    x(1,1)=Px(1,1);
    x(1,N2)=Px(1,1);
    y(1,1)=0;
    y(1,N2)=R1*2;
    for i=2:M2
        x(i,1)=x(i-1,1)+l*cos(cta/2-qx2(i)*dcta/2);
        x(i,N2)=x(i,1);        
        y(i,1)=sqrt(R2^2-(x(i,1)-a1)^2)+b1;
        y(i,N2)=-sqrt(R2^2-(x(i,N2)-a2)^2)+b2;
    end

    Py(1,1)=0;
    Py(M2,1)=0; 
    Py(1,N2)=R1*2;
    Py(M2,N2)=R1*2;
    for j=1:N2
        qy1(j)=1-(j-1)/(N2-1);
        qy2(j)=(j-1)/(N2-1);
    end 
    for j=1:N2
        x(1,j)=0;
        x(M2,j)=R2*sin(Cta/360*pi)*2;
        y(1,j)=qy1(j)*Py(1,1)+qy2(j)*Py(1,N2);
        y(M2,j)=qy1(j)*Py(M2,1)+qy2(j)*Py(M2,N2);
    end

    for i=1:M2
       for j=1:N2
           x(i,j)=qx1(i)*x(1,j)+qx2(i)*x(M2,j);
           y(i,j)=qy1(j)*y(i,1)+qy2(j)*y(i,N2);
       end
    end
    hold on
    plot(x,y,'b')
    plot(x',y','b')
    hold off
   
PointX=x.';
PointY=y.';
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
function [CyPointX,CyPointY,CxPointX,CxPointY]=getcentrepoint(PointX,PointY,Nx,Ny)
    for iindex=1:Ny-1
        for jindex=1:Nx
            CyPointX(iindex,jindex)=( PointX(iindex+1, jindex) + PointX(iindex, jindex) )/2;
            CyPointY(iindex,jindex)=( PointY(iindex+1, jindex) + PointY(iindex, jindex) )/2;
        end
    end
    for iindex=1:Ny
        for jindex=1:Nx-1
            CxPointX(iindex,jindex)=( PointX(iindex, jindex+1) + PointX(iindex, jindex) )/2;
            CxPointY(iindex,jindex)=( PointY(iindex, jindex+1) + PointY(iindex, jindex) )/2;
        end
    end
    
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
function [UPointX,UPointY,PointX,PointY]=getunitpoint(PointX,PointY,Nx,Ny)%            
    UPointX=zeros(Ny+1,Nx+1);
    UPointY=zeros(Ny+1,Nx+1);
     for iindex=1:Ny-1
        for jindex=1:Nx-1
            UPointX(iindex+1,jindex+1)=( PointX(iindex,jindex) + PointX(iindex+1,jindex) + PointX(iindex,jindex+1) + PointX(iindex+1,jindex+1))/4;
            UPointY(iindex+1,jindex+1)=( PointY(iindex,jindex) + PointY(iindex+1,jindex) + PointY(iindex,jindex+1) + PointY(iindex+1,jindex+1))/4;
        end
    end
    for iindex=1:Ny-1
        UPointX(iindex+1,1) = PointX(iindex,1) + PointX(iindex+1,1) - UPointX(iindex+1,2);
        UPointY(iindex+1,1) = PointY(iindex,1) + PointY(iindex+1,1) - UPointY(iindex+1,2);
        UPointX(iindex+1,Nx+1) = PointX(iindex,Nx) + PointX(iindex+1,Nx) - UPointX(iindex+1,Nx);
        UPointY(iindex+1,Nx+1) = PointY(iindex,Nx) + PointY(iindex+1,Nx) - UPointY(iindex+1,Nx);
    end
    for jindex=1:Nx-1
        UPointX(1,jindex+1) = PointX(1,jindex) + PointX(1,jindex+1) - UPointX(2,jindex+1);
        UPointY(1,jindex+1) = PointY(1,jindex) + PointY(1,jindex+1) - UPointY(2,jindex+1);
        UPointX(Ny+1,jindex+1) = PointX(Ny,jindex+1) + PointX(Ny,jindex) - UPointX(Ny,jindex+1);
        UPointY(Ny+1,jindex+1) = PointY(Ny,jindex+1) + PointY(Ny,jindex) - UPointY(Ny,jindex+1);
    end
    UPointX(1,1) = 2*PointX(1,1) - UPointX(2,2);
    UPointY(1,1) = 2*PointY(1,1) - UPointY(2,2);
    UPointX(1,Nx+1) = 2*PointX(1,Nx) - UPointX(2,Nx);
    UPointY(1,Nx+1) = 2*PointY(1,Nx) - UPointY(2,Nx);
    UPointX(Ny+1,1) = 2*PointX(Ny,1) - UPointX(Ny,2);
    UPointY(Ny+1,1) = 2*PointY(Ny,1) - UPointY(Ny,2);
    UPointX(Ny+1,Nx+1) = 2*PointX(Ny,Nx) - UPointX(Ny,Nx);
    UPointY(Ny+1,Nx+1) = 2*PointY(Ny,Nx) - UPointY(Ny,Nx);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function [X,Y]=changerow(X,Y,n)
    for iindex=1:n
        tempX(iindex,:)=X(n-iindex+1,:);
        tempY(iindex,:)=Y(n-iindex+1,:);
    end
    X=tempX;
    Y=tempY;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%    
function U=init(Data)      
    gam=Data.gam;
    M=Data.Nx+1;       N=Data.Ny+1;
    PX=Data.PX;        PY=Data.PY;    % 生成的網(wǎng)格節(jié)點(diǎn)坐標(biāo)
    CyX=Data.CyPX;     CyY=Data.CyPY;% 包圍節(jié)點(diǎn)的四個(gè)點(diǎn)坐標(biāo)
    CxX=Data.CxPX;     CxY=Data.CxPY;
    UX=Data.UPX;       UY=Data.UPY;% 格心  ,包括 虛格心 m X n
    U=zeros(4,N,M);
    
   
    P_in=130000;%入口靜壓Pa
    T_in=300.0;%入口靜溫K
    Vt=200.0;%入口平均速度m
    afa=0;%入口角
    R=287.;%氣體常數(shù)
    rho_in=P_in/R/T_in;
   
    %入口初始化
    uVelocity=Vt*cos(afa);
    vVelocity=Vt*sin(afa);
    a_in=sqrt(gam*R*T_in);
    Ma=Vt/a_in;
    T0_in=T_in*(1+Ma^2*(gam-1)/2);
    P0_in=P_in*(T0_in/T_in)^(gam/(gam-1));
    rho0_in=rho_in*(T0_in/T_in)^(1/(gam-1));
    
    for iindex=1:2
        for jindex=1:N
            U(1,jindex,iindex)=rho_in;
            U(2,jindex,iindex)=rho_in*uVelocity;  % x方向的速度×密度
            U(3,jindex,iindex)=rho_in*vVelocity; % y方向的速度×密度
            U(4,jindex,iindex)=P_in/(gam-1)+rho_in*Vt^2/2;
        end
    end
    %出口初始化,初步假設(shè)出口氣流角一致afa
    P_out=101325;
    P0_out=P0_in;
    T0_out=T0_in;
    rho0_out=rho0_in;
    Ma=sqrt(2*((P0_out/P_out)^((gam-1)/gam)-1)/(gam-1));
    T_out=T0_out/(1+(gam-1)*Ma^2/2);
    rho_out=rho0_out/((1+(gam-1)*Ma^2/2)^(1/(gam-1)));
    Vt=sqrt(2*gam*R*(T0_out-T_out)/(gam-1));
    
    tg_afa=(UY(N-2,M-1)-UY(N-2,M-2))/(UX(N-2,M-1)-UX(N-2,M-2));
    cos_afa=1/sqrt(tg_afa^2+1);
    sin_afa=sqrt(1-cos_afa^2);
    uVelocity=Vt*cos_afa;
    vVelocity=Vt*sin_afa;

    for iindex=M-1:M
        for jindex=1:N
            U(1,jindex,iindex)=rho_out;
            U(2,jindex,iindex)=rho_out*uVelocity;
            U(3,jindex,iindex)=rho_out*vVelocity;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆成人久久精品二区三区| 色久优优欧美色久优优| 亚洲色图视频免费播放| 91精品国产一区二区| av激情成人网| 国产一区二区三区在线观看免费 | 精品欧美久久久| a在线欧美一区| 国产一区二区三区四区五区入口 | 国产精品亚洲视频| 天堂成人国产精品一区| 亚洲三级免费电影| 欧美国产禁国产网站cc| 欧美一级欧美一级在线播放| 99久久伊人精品| 国内偷窥港台综合视频在线播放| 亚洲成人激情av| 亚洲人成影院在线观看| 欧美精品一区二区三区在线播放| 欧洲精品在线观看| www.欧美精品一二区| 国产一区二区三区精品欧美日韩一区二区三区 | 91社区在线播放| 成人午夜av电影| 狠狠色狠狠色综合日日91app| 五月天一区二区| 玉米视频成人免费看| 国产精品大尺度| 国产日产精品一区| 国产视频911| 久久综合给合久久狠狠狠97色69| 91麻豆精品国产自产在线观看一区 | 国产不卡在线播放| 国产另类ts人妖一区二区| 狠狠色2019综合网| 久久99久久久久久久久久久| 久久精品国产99| 另类的小说在线视频另类成人小视频在线| 香蕉影视欧美成人| 石原莉奈在线亚洲三区| 性做久久久久久久免费看| 亚洲成av人影院在线观看网| 亚洲成人动漫在线免费观看| 午夜精品福利一区二区三区蜜桃| 亚洲国产中文字幕| 亚洲r级在线视频| 香蕉乱码成人久久天堂爱免费| 亚洲乱码日产精品bd| 亚洲线精品一区二区三区| 亚洲国产精品嫩草影院| 五月天久久比比资源色| 日韩成人免费看| 久久精品国产精品亚洲红杏| 国产乱码精品一区二区三区忘忧草| 国产一区二区三区精品欧美日韩一区二区三区| 国产一区二区中文字幕| 波波电影院一区二区三区| 97超碰欧美中文字幕| 欧美三级资源在线| 日韩欧美久久久| 国产色综合一区| 一区二区三区欧美亚洲| 日韩国产欧美一区二区三区| 国产一区二区在线电影| 91在线你懂得| 777午夜精品视频在线播放| 精品久久久久久久久久久久久久久 | 国产成人亚洲综合a∨婷婷| 成人a免费在线看| 91色在线porny| 欧美人与禽zozo性伦| 久久伊人中文字幕| 亚洲视频一区在线| 日本欧美大码aⅴ在线播放| 国产成人精品亚洲777人妖| 色欧美日韩亚洲| 717成人午夜免费福利电影| 久久综合一区二区| 亚洲精品视频观看| 精品在线观看视频| 91在线看国产| 日韩三区在线观看| 中文字幕在线观看不卡| 亚洲成av人片| 国产成人在线观看免费网站| 色94色欧美sute亚洲线路二| 欧美成人a∨高清免费观看| 中文字幕字幕中文在线中不卡视频| 偷窥少妇高潮呻吟av久久免费| 国产一区不卡视频| 欧美性色欧美a在线播放| 欧美精品一区二区三区在线播放| 亚洲猫色日本管| 免费美女久久99| 91一区二区三区在线观看| 日韩欧美国产麻豆| 一区二区在线观看av| 国产精品中文有码| 欧美日韩黄色一区二区| 国产精品久久久久久久裸模| 久久精品国产亚洲5555| 欧美日韩在线精品一区二区三区激情| 亚洲精品在线一区二区| 亚洲一区二区高清| 成人性色生活片| 欧美电影免费观看高清完整版| 亚洲综合色丁香婷婷六月图片| 国产精品一二三四区| 欧美一区二区三区不卡| 一区二区在线观看不卡| 成人影视亚洲图片在线| 日韩精品一区二区三区中文不卡| 一区二区三区产品免费精品久久75| 国产毛片精品一区| 日韩视频免费观看高清完整版| 亚洲女厕所小便bbb| 国产大陆a不卡| 日韩欧美国产综合| 日韩和的一区二区| 欧美影视一区在线| 亚洲靠逼com| 94-欧美-setu| 中文欧美字幕免费| 国产一区视频网站| 精品国产1区二区| 色婷婷一区二区| 中文字幕亚洲一区二区av在线 | 国产精品久久一卡二卡| 首页国产欧美日韩丝袜| 日本高清不卡aⅴ免费网站| 中文字幕精品—区二区四季| 九九九精品视频| 日韩一区二区三区精品视频| 亚洲一二三四区不卡| 91国偷自产一区二区三区观看 | 久久超碰97人人做人人爱| 欧美色大人视频| 同产精品九九九| 欧美精品三级在线观看| 日日夜夜一区二区| 7878成人国产在线观看| 秋霞成人午夜伦在线观看| 777久久久精品| 久久精品国产秦先生| 日韩欧美激情在线| 九色porny丨国产精品| 久久日韩精品一区二区五区| 国产真实乱子伦精品视频| 久久综合久久鬼色| 国产精品综合网| 国产精品网站一区| 菠萝蜜视频在线观看一区| 一区二区在线观看av| 欧美日韩中文字幕精品| 奇米色777欧美一区二区| 精品剧情v国产在线观看在线| 久久精品二区亚洲w码| 久久久久高清精品| 成人黄动漫网站免费app| 亚洲丝袜精品丝袜在线| 欧美写真视频网站| 奇米影视在线99精品| 精品国产乱码久久久久久蜜臀| 狠狠网亚洲精品| 亚洲同性gay激情无套| 欧美日韩一区二区三区不卡| 麻豆免费精品视频| 中文字幕不卡在线播放| 欧美亚洲一区二区在线观看| 秋霞国产午夜精品免费视频| 国产欧美1区2区3区| 一本色道亚洲精品aⅴ| 青娱乐精品在线视频| 中文字幕乱码日本亚洲一区二区| 日本道免费精品一区二区三区| 天堂影院一区二区| 国产日韩欧美精品综合| 在线观看不卡一区| 九九热在线视频观看这里只有精品 | 日韩视频免费观看高清在线视频| 国产不卡在线一区| 午夜精品在线视频一区| 久久夜色精品国产噜噜av| 色哦色哦哦色天天综合| 久久精品国产亚洲高清剧情介绍 | 日韩视频一区二区三区在线播放| 国产91精品精华液一区二区三区 | 亚洲一区视频在线观看视频| 精品区一区二区| 欧美日韩综合色| 懂色av一区二区在线播放| 日韩中文字幕亚洲一区二区va在线| 国产日韩亚洲欧美综合| 欧美肥妇free| 99国产精品久久久久| 久久精品国产一区二区三| 亚洲国产一区在线观看| 国产日韩欧美精品电影三级在线| 欧美日韩电影在线播放| 成人av网站大全|