研究生阶段的一些经验总结有点乱希望有用.docx
《研究生阶段的一些经验总结有点乱希望有用.docx》由会员分享,可在线阅读,更多相关《研究生阶段的一些经验总结有点乱希望有用.docx(13页珍藏版)》请在冰豆网上搜索。
研究生阶段的一些经验总结有点乱希望有用
研究生阶段的一些经验总结
(有点乱,希望有用)
目录
Matlab1
1.将数组中的数据存储在文本文件中1
2.画图的一些命令格式应用举例(有点乱,但比较有用)1
3.在Matlab图形中怎样输入特殊符号?
?
?
4
4.将ansys计算得到的位移数据转化为加速度4
5.常用函数5
6.计时5
7.自相关函数5
8.傅里叶变换6
ansys7
9.ansys的一些命令7
10.从ANSYS文件中提取有用数据7
11.梁截面的显示开关是什么?
8
12.提取结构反力9
13./config,nres,200009
14.*dim,weiyiy,array,nnn,nm9
15.循环结构和选择结构9
16.命令FLST9
17.已知结构的前二阶固有频率f和阻尼比,求阻尼矩阵的系数10
18.实验阻尼比和频率计算10
Matlab
1.将数组中的数据存储在文本文件中
命令:
savey2.txty1-ASCII–TABS
说明:
将y1这个数组中的数据以字符形式存储在文件y2.txt中
2.画图的一些命令格式应用举例(有点乱,但比较有用)
figure
(2);
plot(yyy);
xlabel('结点序号');
ylabel('振型改变率(%)');
title('第1阶振型改变率')
axistight;gridon;
加注释框
plot(pl,p1,'-*',pl,p2,'-d',pl,p3,'-p',pl,p4,'-h');xlabel('损伤单元');ylabel('频率改变率(%)');title('前四阶频率改变率')
legend('第一阶','第二阶','第三阶','第四阶');legendboxoff;
axistight;
holdon;
plot(hh,pinlv(1,:
),'-*k','LineWidth',2,'MarkerSize',12)
holdon
plot(hh,pinlv(2,:
),'-ok','LineWidth',2,'MarkerSize',12)
hhh=legend('测点1','测点2');
xlim([28]);ylim([01]);
xlabel('工况','FontSize',18);
ylabel('COMAC','FontSize',18);
set(gca,'XTick',2:
3:
12,'FontSize',18,'YTick',0:
0.1:
1)
set(hhh,'FontSize',16,'FontWeight','Bold');
legend('boxoff')
hh=[012];
plot(pinlv(1,:
),hh,'-*k','LineWidth',2,'MarkerSize',12)
holdon
plot(pinlv(2,:
),hh,'-ok','LineWidth',2,'MarkerSize',12)
plot(pinlv(3,:
),hh,'-sk','LineWidth',2,'MarkerSize',12)
%hhh=legend('工况1','工况4','工况7',2);
hhh=legend('工况2','工况5','工况8',2);
%axistight;
axis([-1102])
ylabel('层数','FontSize',18);
xlabel('第2阶振型','FontSize',18);
set(gca,'XTick',-1:
0.2:
1,'FontSize',18);
set(gca,'YTick',0:
1:
3,'FontSize',18);
set(hhh,'FontSize',16,'FontWeight','Bold');
legend('boxoff')
plot(tyyt,yy(:
1),'-*k',tyyt,yy(:
2),'-sk',tyyt,yy(:
3),'-dk','markersize',10,'LineWidth',2);legend('j=1','j=2','j=3')
xlabel('计算次序','FontSize',18);
xlabel('损伤部位弹性模量减少百分比/%','FontSize',18);
ylabel(strcat(sprintf('\\it{NR}\\rm_%d_j(\\tau_0)变化率',xv),'/%'),'FontSize',18);
set(gca,'XTick',tyyt,'FontSize',18);
xlim([012]);
clc
%text(,...
%'String','$\pi\to^{\tau}_0gg$gg',...
%'Position',[.5.5],...
%'FontSize',16)
xlabel(sprintf('\\it{NR}\\rm_%d_j(\\tau_0)',2))
%Matlab图形中允许用TEX文件格式来显示字符。
使用\bf,\it,\rm表示黑体,
%斜体,正体字符,特别注意大括号{}的用法。
subplot(2,2,1);
plot(zzz,s1)
axistight;
xlabeltime(s);
ylabelm/(m/s^2);
在一个大的画面上,画2行2列小图,将数据充满数轴,横坐标单位是time(s),纵坐标单位是m/(m/s2)
figure(xv);产生第xv个图
plot(tyyt,yy','-*');画曲线
legend('j=1','j=2');注释框
ylabel(strcat(sprintf('NR%dj(τ0)变化率',xv),'(%)'));
上句涉及到两个函数,sprintf生成一个字符串,strcat将字符串连接起来
title(sprintf('方法1的NR%dj(τ0)变化率',xv));
xlabel('计算次序');axistight;
set(gca,'XTick',tyyt);设置横坐标的刻度
plot(tyyt,yy(:
1),'-*k','markersize',10,'LineWidth',2);在画曲线的同时,给出了线的宽度,颜色,符号的大小
xlabel('损伤位置宽度改变量/mm','FontSize',18);横坐标的刻度值的标度的字符大小是18
ylabel(strcat(sprintf('\\it{NR}\\rm_%d_j(\\tau_0)变化率',xv),'/%'),'FontSize',18);
在图上纵坐标上写一些希腊字母
set(gca,'XTick',tyyt,'FontSize',18);
xlim([012]);x轴的取值范围是0到12
hhh=legend('完好状态','弹性摸量减少3%','弹性摸量减少6%','弹性摸量减少9%','弹性摸量减少12%',2);将注释框的句柄给hhh
axis([-0.622.103]);给定了横坐标和纵坐标的取值范围
set(hhh,'FontSize',16,'FontWeight','Bold');给定了注释框图线的字符尺寸和字符的粗度
legend('boxoff');去掉注释框的边框
clc
%text(,...
%'String','$\pi\to^{\tau}_0gg$gg',...
%'Position',[.5.5],...
%'FontSize',16)
xlabel(sprintf('\\it{NR}\\rm_%d_j(\\tau_0)',2))
%Matlab图形中允许用TEX文件格式来显示字符。
使用\bf,\it,\rm表示黑体,
%斜体,正体字符,特别注意大括号{}的用法。
3.在Matlab图形中怎样输入特殊符号?
?
?
答:
上标用^(指数) 下标用_(下划线)调用方式为:
^{任意字符},_{任意字符},注意{}的使用!
希腊字母等特殊字符用\加拼音如:
α\alpha, β\beta, γ\gamma θ\theta Θ\ThetaГ\Gamma δ\delta Δ\Delta ξ\xi Ξ\Xiη\elta ε\epsilong ζ\zeta μ\miu υ\nu τ\tauλ\lamda Λ\Lamda π\pi Π\Pi σ\sigma Σ\Sigmaφ\phi Φ\Phi ψ\psi Ψ\Psi χ\chi ω\ommiga Ω\Ommiga<\leq >\geq 不等于\neq <<\ll >>\gg正负\pm 左箭头\leftarrow 右箭头\rightarrow 上箭头\uparrow体会以下两例:
figure,title('\zeta^{-t}sint');figure,title('x~{\chi}_{\alpha}^{2}(3)');
4.将ansys计算得到的位移数据转化为加速度
loads1s2;
a1a2=s1s2;dt=1/208.33;
fori=2:
24999
a1a2(i,:
)=(s1s2(i-1,:
)+s1s2(i+1,:
)-s1s2(i,:
)*2)/dt/dt;
end
savea1a2.mata1a2
plot(s1s2)
figure
(2);
plot(a1a2);
loads1s2;
v1v2=s1s2;dt=1/208.33;
fori=2:
50000-1
v1v2(i,1)=(s1s2(i+1,1)-s1s2(i-1,1))/2/dt;
v1v2(i,2)=(s1s2(i+1,2)-s1s2(i-1,2))/2/dt;
end
v1v2(1,1)=(s1s2(2,1)-s1s2(1,2))/dt;
v1v2(1,2)=(s1s2(2,2)-s1s2(1,2))/dt;
v1v2(50000,1)=(s1s2(50000,1)-s1s2(49999,1))/dt;
v1v2(50000,2)=(s1s2(50000,2)-s1s2(49999,2))/dt;
a1a2=v1v2;
fori=2:
50000-1
a1a2(i,1)=(v1v2(i+1,1)-v1v2(i-1,1))/2/dt;
a1a2(i,2)=(v1v2(i+1,2)-v1v2(i-1,2))/2/dt;
end
a1a2(1,1)=(v1v2(2,1)-v1v2(1,2))/dt;
a1a2(1,2)=(v1v2(2,2)-v1v2(1,2))/dt;
a1a2(50000,1)=(v1v2(50000,1)-v1v2(49999,1))/dt;
a1a2(50000,2)=(v1v2(50000,2)-v1v2(49999,2))/dt;
savea1a2.mata1a2
5.常用函数
eig求特征值
zeros0数组
abs绝对值数组
n=round(t200/10);四舍五入
disp显示
[h,l]=size(s1s2);给出数组的行数和列数
y=randn(ndzb,1);随机数
yp=mean(y);平均数
hp=load(sprintf('jhp%d.txt',jjj));将文本文件中的数据给矩阵hp,否则将生成一个矩阵和文件同名。
6.计时
tic
toc
7.自相关函数
functions0=zixg(s)
s0=0;
forj=s
s0=s0+j^2;
end
8.傅里叶变换
chl='a1a2.mat';
load(chl);qi=15000;
y=a1a2(qi+1:
qi+10000,2);
%y=y/(100*7.47*45);
t200=size(y);t200=t200
(1);
zz=1:
t200;zzz=zz/208.33;
plot(zzz,y)
axistight;
xlabeltime(s);
ylabelm/s^2;
mn=1;
y=y(1:
8192);
%plot(y)
n=t200
(1);
x=1:
n;x=x';
ts=1/208.33;
ws=2*pi/ts;
m=n/2;mm=round(m);
w=ws*(0:
n-1)/n;
w=w/2/pi;
z=fft(y,n);
%z=z.*conj(z)/n/n;
zm=abs(z);
zm=zm/n;
%zm=zm/(2*pi);
%zm=20*log10(zm);
%zm=z;
%zm=10*log10(zm);
figure
(2);
plot(w(mn:
mm),zm(mn:
mm));
xlabel('f(Hz)')
axistight;
[a1,a2]=max(zm);
w(a2)
ansys
9.ansys的一些命令
/OUTPUT,apinggu0929,txt,,将输出窗口内容输入到文件
fini推出当前模块,到最高层
/cle重新开始计算
/config,nres,30000
/config,fsplit,750将结果文件分成几份,每份大小为标准的千分之750
/INPUT,'0STEPG1','TXT','','',0
*dim,li,array,nnn,1
*dim,bo,TABLE,nn,1,1,time,wave
*tread,bo,suiji,txt,,
*CFOPEN,'y22z28','',''
*VWRITE,weiyiy(1,22,1),weiyiy(1,23,1),weiyiy(1,24,1),weiyiy(1,25,1),weiyiy(1,26,1),weiyiy(1,27,1),weiyiy(1,28,1)
(7E18.8E3)
*CFOPEN,'li','',''
*VWRITE,li(1,1,1),,,,,,,,,
(E18.8E3)
10.从ANSYS文件中提取有用数据
clc;clear;%注意,本文件只适用于数据列数是3,只有英文注释,且注释最后以'[gal]'为结尾的情况
ch1='k17';%要打开的文件名
ch2=strcat(ch1,'.asc')%要打开的文件的扩展名是ASC
ch3=strcat(ch1,'.mat')%要存入的文件的扩展名是MAT
fp=fopen(ch2,'r');%打开待处理文件
buff=fscanf(fp,'%s',1)%读取第一个字符串
hang=3000000;%数据区总行数
lie=3;uii=0;%希望得到的数据列数
ss=zeros(hang,lie);%数据要存入的矩阵
while
(1)
ifstrcmp(buff,'[gal]')==1%第一次判断特征字符串(判断是否即将离开注释区)
buff=fscanf(fp,'%s',1);
ifstrcmp(buff,'Write')~=1%第二次判断特征字符串(判断是否已经离开注释区)
ss(1,1)=str2num(buff);
fbuff=fscanf(fp,'%f',1);ss(1,2)=fbuff;
fbuff=fscanf(fp,'%f',1);ss(1,3)=fbuff;
ui=2;
while
(1)
buff=fscanf(fp,'%s',1);
if(length(buff)==0)
uii=1
break
end
if(abs(buff)<40)
uii=1
break
end
ss(ui,1)=str2num(buff);
fbuff=fscanf(fp,'%f',1);ss(ui,2)=fbuff;
fbuff=fscanf(fp,'%f',1);ss(ui,3)=fbuff;
ui=ui+1;
end
ifuii==1
break
end
end
ifuii==1
break
end
end
ifuii==1
break
end
buff=fscanf(fp,'%s',1)
iflength(buff)==0
break
end
end
ss(ui:
hang,:
)=[];
save(ch3,'ss');
11.梁截面的显示开关是什么?
/ESHAPE,1.0
UtilityMenu>PlotCtrls>Style>SizeandShape
12.提取结构反力
*GET,PAR,NODE,N,RF,FX
*GET,PAR,NODE,N,RF,FY
*GET,PAR,NODE,N,RF,FZ
*GET,PAR,NODE,N,RF,MX
*GET,PAR,NODE,N,RF,MY
*GET,PAR,NODE,N,RF,MZ
13./config,nres,20000
在我以往动力计算中,缺省的步骤是1000,如果希望做更多的步数,就可利用这个命令,其中20000是我在某次计算中动力计算的步数。
fini
/cle
/config,nres,20000
/config,fsplit,750
fini:
退出当前模块
/cle:
进行一个新的计算
/config,fsplit,750:
由于结果文件过大,ansys将停止计算,因此,可以设置多个结果文件,没有结果文件是原来4G的千分之750。
14.*dim,weiyiy,array,nnn,nm
定义一个数组,其类型是array,其名称是weiyiy,其位数维数是nnn行,nm列
*dim,bo,TABLE,nn,1,1,time,wave
定义一个数组,其类型是TABLE,其名称是bo,其位数维数是nn行,1列,1页。
可以插值计算,其行标名称是time,其列标名称是wave
*tread,bo,suiji,txt,,
从suiji.txt文件读取数据给数组bo
*CFOPEN,'s1s2','',''
*VWRITE,weiyiy(1,1,1),weiyiy(1,2,1),,,,,
(2E18.8E3)
打开一个文件,并且将变量按照指定的格式写进文件
15.循环结构和选择结构
*do,m,1,nnn,1
*enddo
*if,m,lt,20,then
*else
*endif
16.命令FLST
FLST,2,56,4,ORDE,2
FITEM,2,1
FITEM,2,-56
命令的格式是:
FLST,NFIELD,NARG,TYPE,Otype,LENG
NFIELD表示
NARG表示被拾取对象的个数
TYPE,表示被拾取对象的类型1-节点,2 -单元,3-关键点,4-线,5-面,6-体,
Otype:
数据顺序NOOR – 无序;ORDER – 有序;
LENG:
数据项的行数.
命令格式:
FITEM,NFIELD,ITEM,ITEMY,ITEMZ –
ITEM:
对象的编号
17.已知结构的前二阶固有频率f和阻尼比,求阻尼矩阵的系数
w=[6.9019218.1034]*2*pi
uuu=0.005
a=2*w
(1)*w
(2)*(uuu*w
(2)-uuu*w
(1))/(w
(2)^2-w
(1)^2)
b=2*(uuu*w
(2)-uuu*w
(1))/(w
(2)^2-w
(1)^2)
利用ansys软件计算得出一个结构的前2阶频率(f单位是赫兹),给定了阻尼比,然后计算阿而发和被他。
18.实验阻尼比和频率计算
或
以下无正文
仅供个人用于学习、研究;不得用于商业用途。
толькодлялюдей,которыеиспользуютсядляобучения,исследованийинедолжныиспользоватьсявкоммерческихцелях.
Forpersonaluseonlyinstudyandresearch;notforcommercialuse.
NurfürdenpersönlichenfürStudien,Forschung,zukommerziellenZweckenverwendetwerden.
Pourl'étudeetlarechercheuniquementàdesfinspersonnelles;pasàdesfinscommerciales.