精准石油论坛: matlab file for wamit *.4 Rao output to excel file. - 精准石油论坛

跳转到内容

第一页
  • 您无法发起一个新主题
  • 您无法回复此主题

matlab file for wamit *.4 Rao output to excel file. 主题评价: -----

#1 已离线   iceforce 

  • 业余侠客
  • 图像
  • 群组: 认证会员
  • 主题数: 172
  • 注册日期: 07-24-2007

iceforce 发表于 09-24-2009 - 16:23
精准.石油.论坛 forum.petro-china.com

wamit *.4 文件里的rao不好画图。用这个程序转到了xls里容易些了。

% wamitRaoPlot: Plot Rao in wamit *.4 file.
% Roll Pitch Yaw unit were changed in to Degree.
% Load the *.4 file and output to a xls file.
% Created by Iceforce
% Ver.1.0. 2009.09.22.
clear all;
[Rao4Name,Rao4Path] = uigetfile('*.4');
Rao4FileName = fullfile(Rao4Path,Rao4Name);
[fid,message] = fopen(Rao4FileName,'r');
Rao4Fmt = '%e %e %d %e %e %e %e' ;
headLine = fgetl(fid);
e = fscanf(fid,Rao4Fmt,[7 inf]);
wamitRao4 = e';
fclose(fid);

wDr = unique(wamitRao4(:,2));
wFs = unique(wamitRao4(:,1));
nDr = length(wDr);
nFs = length(wFs);
for iDof = 1:6
ind = find(wamitRao4(:,3) == iDof);
mgtRow = wamitRao4(ind,4);
resM = reshape(mgtRow,nDr,nFs);
rao(iDof).Rao = resM';
end

fsRow = wamitRao4(ind,1);
resFs = reshape(fsRow,nDr,nFs);
Fs = resFs(1,: )';
drRow = wamitRao4(ind,2);
resDr = reshape(drRow,nDr,nFs);
Drc = resDr(:,1 )';

outName = strcat(strrep(Rao4Name,'.4','wamitRao'),date,'.xls');
rspFilename = fullfile(Rao4Path,outName);
headerl = {strcat('Rsp Result for semi 981 from Magnitude at: ',date)};
xlswrite(rspFilename, headerl,'Surge','A1');
xlswrite(rspFilename, {'Period','Direction'},'Surge','A2');
xlswrite(rspFilename, Fs,'Surge','A4');
xlswrite(rspFilename, Drc,'Surge','B3');
xlswrite(rspFilename, rao(1).Rao,'Surge','B4');


xlswrite(rspFilename, headerl,'Sway','A1');
xlswrite(rspFilename, {'Period','Direction'},'Sway','A2');
xlswrite(rspFilename, Fs,'Sway','A4');
xlswrite(rspFilename, Drc,'Sway','B3');
xlswrite(rspFilename, rao(2).Rao,'Sway','B4');

xlswrite(rspFilename, headerl,'Heave','A1');
xlswrite(rspFilename, {'Period','Direction'},'Heave','A2');
xlswrite(rspFilename, Fs,'Heave','A4');
xlswrite(rspFilename, Drc,'Heave','B3');
xlswrite(rspFilename, rao(3).Rao,'Heave','B4');


xlswrite(rspFilename, headerl,'Roll','A1');
xlswrite(rspFilename, {'Period','Direction'},'Roll','A2');
xlswrite(rspFilename, Fs,'Roll','A4');
xlswrite(rspFilename, Drc,'Roll','B3');
xlswrite(rspFilename, rao(4).Rao*180/pi,'Roll','B4');

xlswrite(rspFilename, headerl,'Pitch','A1');
xlswrite(rspFilename, {'Period','Direction'},'Pitch','A2');
xlswrite(rspFilename, Fs,'Pitch','A4');
xlswrite(rspFilename, Drc,'Pitch','B3');
xlswrite(rspFilename, rao(5).Rao*180/pi,'Pitch','B4');

xlswrite(rspFilename, headerl,'Yaw','A1');
xlswrite(rspFilename, {'Period','Direction'},'Yaw','A2');
xlswrite(rspFilename, Fs,'Yaw','A4');
xlswrite(rspFilename, Drc,'Yaw','B3');
xlswrite(rspFilename, rao(6).Rao*180/pi,'Yaw','B4');
精准.石油.论坛 forum.petro-china.com






----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
0

#2 已离线   wavesurfer 

  • 武林名宿
  • 图像
  • 群组: 版主
  • 主题数: 837
  • 注册日期: 01-20-2007

wavesurfer 发表于 09-24-2009 - 22:22
精准.石油.论坛 forum.petro-china.com

Thank you so much for your contribution.
精准.石油.论坛 forum.petro-china.com






----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
0

#3 已离线   iceforce 

  • 业余侠客
  • 图像
  • 群组: 认证会员
  • 主题数: 172
  • 注册日期: 07-24-2007

iceforce 发表于 09-24-2009 - 22:47
精准.石油.论坛 forum.petro-china.com

欢迎老大多指教!
试试吧老大,挺好用的。
精准.石油.论坛 forum.petro-china.com






----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
0

#4 已离线   windgo 

  • 业余侠客
  • 图像
  • 群组: 认证会员
  • 主题数: 178
  • 注册日期: 07-13-2008

windgo 发表于 09-27-2009 - 11:27
精准.石油.论坛 forum.petro-china.com

pretty nice job!
精准.石油.论坛 forum.petro-china.com






----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
0

#5 已离线   iceforce 

  • 业余侠客
  • 图像
  • 群组: 认证会员
  • 主题数: 172
  • 注册日期: 07-24-2007

iceforce 发表于 09-27-2009 - 21:39
精准.石油.论坛 forum.petro-china.com

其实可以用matlab开发一个harp后处理的package。
harp,wamit的结果要是重复性的后处理,还是不特别方便。
精准.石油.论坛 forum.petro-china.com






----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
0

第一页
  • 您无法发起一个新主题
  • 您无法回复此主题