根据风场数据,画出剖面和断面海洋流场

剖面

clc;
clear;
dep=load('C:\Users\风轻叶落\Desktop\xu\xiashi\bs.depth');
u_file=dir(['C:\Users\风轻叶落\Desktop\xu\xiashi\u*']);
v_file=dir(['C:\Users\风轻叶落\Desktop\xu\xiashi\v*']);
w_file=dir(['C:\Users\风轻叶落\Desktop\xu\xiashi\w*']);
for i=1:9
u(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xu\xiashi\',u_file(i).name]);
v(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xu\xiashi\',v_file(i).name]);
w(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xu\xiashi\',w_file(i).name]);
end
% dep=load('C:\Users\风轻叶落\Desktop\xibeifeng\bs.depth');
% u_file=dir(['C:\Users\风轻叶落\Desktop\xibeifeng\u*']);
% v_file=dir(['C:\Users\风轻叶落\Desktop\xibeifeng\v*']);
% w_file=dir(['C:\Users\风轻叶落\Desktop\xibeifeng\w*']);
% for i=1:9
% u(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xibeifeng\',u_file(i).name]);
% v(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xibeifeng\',v_file(i).name]);
% w(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xibeifeng\',w_file(i).name]);
% end


row=24;   %行 28  28   24
col=10;   %列 18  38   10
lat=37.167  +(row-1)/12;   %纬度
lon=117.583 +(col-1)/12;    %经度
mydep=dep(row,col);       %对应经纬度的水深
%sigma坐标下的参数*水深
h1=0*mydep;
h2=-0.021*mydep;
h3=-0.042*mydep;
h4=-0.083*mydep;
h5=-0.167*mydep;
h6=-0.333*mydep;
h7=-0.500*mydep;
h8=-0.667*mydep;
h9=-0.833*mydep;
h10=-1*mydep;
h=[h1,h2,h3,h4,h5,h6,h7,h8,h9];
for i=1:9
myu(i)=u(row,col,i);
myv(i)=v(row,col,i);
myw(i)=w(row,col,i);
plo=quiver3(0,0,h(i),myu(i),myv(i),myw(i),'r');
hold on
plo2=quiver3(0,0,h(1),0,2,0,'b','LineWidth',2);
set(plo2,'maxheadsize',1);%风向不符合实际,前面风场好像也不对?
% set(gca,'xtick',[-6:1:6]);
% set(gca,'ytick',[-6:1:6]);
hold on
plo=quiver3(0,0,h(9),myu(i),myv(i),0,'b');

end
axis([-5 10 -3 4]);
%修饰图
xx=[0,0,0,0,0,0,0,0,0];
yy=xx;
zz=h;
plot3(xx,yy,zz,'-oblack');
plot3(myu,myv,h+myw,'green')
h0(1:9)=h9;
plot3(myu,myv,h0,'green')

for i=1:9
    plot3([myu(i),myu(i)],[myv(i),myv(i)],[h9,zz(i)],'--oblack');
end
text(0,2,0,'风向')
text(-3,3,0,num2str(lat,'纬度=%.4f°'))
% text(-3,3,0,'纬度:39.5837°')
text(-3,3,-3,num2str(lon,'经度=%.4f°'))

title('渤海夏季南风流速剖面','FontSize',20);
xlabel('u(cm/s)');
ylabel('v(cm/s)');
zlabel('水深(m)');
 

 

断面

clc;
clear;
dep=load('C:\Users\风轻叶落\Desktop\xu\dongshi\bs.depth');
u_file=dir(['C:\Users\风轻叶落\Desktop\xu\dongshi\u*']);
v_file=dir(['C:\Users\风轻叶落\Desktop\xu\dongshi\v*']);
w_file=dir(['C:\Users\风轻叶落\Desktop\xu\dongshi\w*']);
for i=1:9
u(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xu\dongshi\',u_file(i).name]);
v(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xu\dongshi\',v_file(i).name]);
w(:,:,i)=load(['C:\Users\风轻叶落\Desktop\xu\dongshi\',w_file(i).name]);
end
row0=1;
row1=46;
for row =row0:row1
% row=43;   %行
col=38;   %列
lat(row)=37.167  +(row-1)/12;   %纬度
lon=117.583 +(col-1)/12;    %经度
 mydep=dep(row,col);      %对应经纬度的水深
%sigma坐标下的参数*水深
h1=0*mydep;
h2=-0.021*mydep;
h3=-0.042*mydep;
h4=-0.083*mydep;
h5=-0.167*mydep;
h6=-0.333*mydep;
h7=-0.500*mydep;
h8=-0.667*mydep;
h9=-0.833*mydep;
h10=-1*mydep;
h=[h1,h2,h3,h4,h5,h6,h7,h8,h9]

for i=1:9
wH=1;
myu(row,i)=u(row,col,i);
myv(row,i)=v(row,col,i);
myw(row,i)=w(row,col,i)*wH;

% myv(row,i)=min(myv);
% myw(row,i)=min(myw);
% plo=quiver(lat(row),h(i),myv(row,i),myw(row,i),0.1,'r');
%  plo=quiver(lat(row),-i,myv(row,i),myw(row,i),0.08,'r');
% set(plo,'maxheadsize',2)
% hold on
% plo2=quiver3(0,0,h(1),0,2,0,'b','LineWidth',2);
% set(plo2,'maxheadsize',1);%风向不符合实际,前面风场好像也不对?
% set(gca,'xtick',[-6:1:6]);
% set(gca,'ytick',[-6:1:6]);
% hold on
% plo=quiver3(0,0,h(9),myu(i),myv(i),0,'b');
end
% axis([-3 3 -6 4]);

% set(gca,'ytick',[5:-1:-60]);
end

for i=1:46
    for j=1:9
 if (myw(i,j)>0&myw(i,j)<1)
      myw(i,j)=1;
 elseif (myw(i,j)<0&myw(i,j)>-1)
      myw(i,j)=-1;
 elseif (myw(i,j)>10)
      myw(i,j)=10;
 elseif(myw(i,j)<-10)
      myw(i,j)=-10;
 end
    end
end
% for i=1:46
%     for j=1:9
%  if (myv(i,j)>0&myv(i,j)<1)
%       myv(i,j)=1;
%  elseif (myv(i,j)<0&myv(i,j)>-1)
%       myv(i,j)=-1;
%  elseif (myv(i,j)>10)
%       myv(i,j)=10;
%  elseif(myv(i,j)<-10)
%       myv(i,j)=-10;
%  end
%     end
% end
hold on
zS=0.05;  
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%即使w v在同一量级,x y坐标尺度不对称也会影响效果,调整z轴跨度
for row =row0:row1
col=38;   %列
lat(row)=37.167  +(row-1)/12;   %纬度
lon=117.583 +(col-1)/12;    %经度
 mydep=dep(row,col);      %对应经纬度的水深
%sigma坐标下的参数*水深
h1=0*mydep;
h2=-0.021*mydep;
h3=-0.042*mydep;
h4=-0.083*mydep;
h5=-0.167*mydep;
h6=-0.333*mydep;
h7=-0.500*mydep;
h8=-0.667*mydep;
h9=-0.833*mydep;
h10=-1*mydep;
h=[h1,h2,h3,h4,h5,h6,h7,h8,h9]
    for i=1:9
        plo=quiver(lat(row),h(i)*zS,myv(row,i),myw(row,i),0.03,'r');
        set(plo,'maxheadsize',1)
    end
    set(gca,'xtick',[min(lat):1:max(lat)]);
end
hold on;
plot(lat(row0:row1),-dep(row0:row1,col)*zS)
%构造闭合边界
plot([min(lat(row0:row1)),min(lat(row0:row1))],[-max(dep(row0:row1,col))*zS,0])
plot([max(lat(row0:row1)),max(lat(row0:row1))],[-max(dep(row0:row1,col))*zS,0])
plot([min(lat(row0:row1)),max(lat(row0:row1))],[-max(dep(row0:row1,col))*zS,-max(dep(row0:row1,col))*zS])
laa=lat;
laa(1,47:48)=[lat(row1),lat(row0)];  %补充闭合边界的点到矩阵中
dee=dep(row0:row1,col);
dee(47:48)=[max(dep(row0:row1,col)),max(dep(row0:row1,col))];
dee=-dee*zS;
c=[1:48];
patch(laa,dee,c) 

% set(gca,'XTick',-3.5:0.5:0,'XTickLabel',{'-60''-50''-40''-30''-20''-10''0'});

set(gca,'YTick',-3.5:0.5:0.5,'YTickLabel',{'-70','-60','-50','-40','-30','-20','-10','0','10'});
% set(gca,'XTickLabel',0:-10:-60);
title('渤海冬季断面流速矢量图 (经度:120.6663°)','FontSize',16);
xlabel('纬度(°N)');
ylabel('深度(m)');

 

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值