ANSOFT计算结果提取

(1)导出既定曲线上的结果数据;
(2)导出既定体空间的结果数据;
下一步,用matlab的导入函数xlsread函数将数据读出,操作语句可参考xlsread函数的操作说明(help xlsread)。这样ANSOFT的计算结果就导入到了matlab中。
相比两种方法,第一种操作简单,对目标体空间为六面体时比较使用,当目标体空间由某个曲面围成时,如托卡马克等离子体区域等,通过第一种方法完成往往会导致大量的冗余数据,而第二种数据就具有这方面的优势。
(3)导出特定曲面上的结果数据;
曲面上的数据理论上也可以通过体空间的数据然后插值获得,但是这样用体数据来获得面数据经常会导致大量冗余数据,操作经济性不好,因为ANSOFT在导出大量数据时速度很慢。
所以,导出曲面数据最好的方法是通过给定的格点文件来提取,方法在导出体空间数据中已经介绍。
附:计算程序举例,导出等离子体表面的磁场数据
% creat a .pts(.txt) file for ANSFOT data exporting
% written by RAO B.,2012.05.12
clear all;
R=1.05*1000;
r=0.26*1000;
N_tht=384;N_phi=384;
tht=0:2*pi/N_tht:2*pi-2*pi/N_tht;
phi=-pi/4:2*pi/N_tht:pi/4-2*pi/N_tht;
len_tht=length(tht);len_phi=length(phi);
THT=repmat(tht,len_phi,1);
PHI=repmat(phi',1,len_tht);
xx=(R+r*cos(THT)).*cos(PHI);
yy=(R+r*cos(THT)).*sin(PHI);
zz=r*sin(THT);
cordn=zeros(len_phi*len_tht,3);
for i1=1:1:len_phi
end
fid=fopen('B_cordn_a.txt','w');
fprintf(fid,'Unit=mmrn');
fprintf(fid,'%f
fclose(fid);
% open the result file from ANSOFT by excel, and save it as B_cordn_a.xlsx
B_cordn=xlsread('B_cordn_a.xlsx');
THT1=repmat(tht',len_phi,1);
for i1=1:1:len_phi
end
% Br_cordn1(xx yy zz Bx By Bz)
Br_cordn1=B_cordn(:,4).*cos(THT1).*cos(PHI1)+B_cordn(:,5).*cos(THT1).*sin(PHI1)+B_cordn(:,6).*sin(THT1);
Btht_cordn1=-B_cordn(:,4).*sin(THT1).*cos(PHI1)-B_cordn(:,5).*sin(THT1).*sin(PHI1)+B_cordn(:,6).*cos(THT1);
Bphi_cordn1=-B_cordn(:,4).*sin(PHI1)+B_cordn(:,5).*cos(PHI1);
Br_cordn=(reshape(Br_cordn1,len_tht,len_phi))';
Btht_cordn=(reshape(Btht_cordn1,len_tht,len_phi))';
Bphi_cordn=(reshape(Bphi_cordn1,len_tht,len_phi))';

工程师必备
- 项目客服
- 培训客服
- 平台客服
TOP
