1、IgorPro实用教程代码Igor Pro 实用教程代码第1章1.1.7Variable v1,v2String s1= ”hello ”,s2Make/N=100 data1Print 2+sqrt(3)+5A3+6A0.3Print sin(1),ln(3),exp(2) Make/O/N=100 data1 Setscale/I x,0,2*pi,data1Data1=sin(x)Fft data1 Make/O/N=100 data1Data1=x+gnoise(1)Curvefit line data1/DDisplay data1Edit data1Display data1Mod
2、ifyGraph mode(data1)=3,marker(data1)=19Sin(1) /errorPrint sin(1)1.2.1Make/O/N=100 dataSetscale/I x,0,1,dataData=xEdit data / 只显示 data 内容Edit data.xy / 显示 data 内容和 x 坐标信息Make/O/N=200 sinx;Setscale/I x,0,2*pi,sinx; sinx=sin(x);Display sinx;Make/O/N=200/C cmpwave;Make/O/T/N=200 twave;Setdatafolder root
3、;/ 设定当前目录Newdatafolder tmp;/ 创建一个名为 tmp 的目录Make/O/N=200 root:tmp:cmpwave; setscale /P x,0,2*pi/199, ”s”,sinx setscale/I x,0,2*pi, ”s”,sinxDuplicate/O oldwave,newwave; dupplicate/O/R=(x1,x2) oldwave,newwave; dupplicate/O/R=p1,p2 oldwave,newwave;Make/O data=1,2,3Make/O dataSetscale/P x,0,0.001,dataVar
4、iable tau=0.01Data=exp(-x/0.01)Make/O data1Data1=datap1.2.5Variable v1; /Variable/C v1; /Variable/G v1; / String str; /申明一个普通变量申明一个复数变量 申明一个全局变量 申明一个字符串变量1.2.6Function func()String curr=getdatafolder(1) / 获取当前目录Setdatafloder mydestfd /mydestfd 应该存在,存放了要处理的数据/some thing to be doneSetdatafolder curr /
5、 恢复当前目录End1.2.11Integrate1D(UserFunctionName, min_x, max_x , options , count )Integrate /DIM = d /METH=m /P/TtypeFlags yWaveA /X = xWaveA /D = destWaveA , yWaveB /X = xWaveB /D = destWaveB , .第2章2.1.1make/N=100/O gaussfun,lorfunsetscale/I x,-1,1,gaussfun,lorfungaussfun=exp(-x*x/0.01)lorfun=1/(x*x)+0
6、.04)make/N=10 XY_Y=4,6,8,4,6,7,9,1,4,3make/N=10 XY_X=3,5,1,4,7,5,8,6,9,2Display gaussfun/ 绘制 gaussfun 曲线Display XY_Y vs XY_X as “mygraph”/ 绘制 XY 曲线并且设定 graph 标题为 mygraphDisplay/L=newLeft/B=NewBottomgaussfun as mygraph/ 以新建自由坐标轴 newLeft 和 NewBottom 绘制 gaussfun 曲线。Preferences 0;Display/L=newLeft/B=New
7、Bottom gaussfun as mygraph;Graph1Style();Preferences 1;/ 以新建坐标轴 newLeft 和 NewBottom 为坐标轴绘制 gaussfun 曲线,并采用预定义样式 Grap h1Style 。2.1.2AppendToGraph/L=newLeft/B=newBottomlorfun/ 向当前 graph 添加 lorfun ,坐标轴为 newLeft 和 newBottomAppendToGraph/W=Graph0 lorfun/向名为“ Graph0 ”的窗口添加 lorfun 曲线2.2.2 Make/N=50 sinx,co
8、sx;Setscale/I x,0,2*pi,sinx,cosx;Sinx=sin(x);/ 创建两个 wave/设置两个 wave的x坐标为0到2 n / 设置 wave sinx 为它的横坐标的正弦Cosx=cos(x);Make/N=(50,2) arrowinfo;Setscale/I x,0,2*pi,arrowinfo;/Arrowinfo0=10;/ 设置 wavecosx 为它的横坐标的余弦/ 创建 Arrowinfo 信息 wave设置Arrowinfo wave 的x坐标为0到2 n,代表一圈/ 设置所有的箭头长度都是 10;Arrowinfo1=x;Display sin
9、xvscosx;/ 设置随着角度的增加箭头偏转的方向/ 显示 sinx ,并且以 cosx 为横坐标ModifyGrapharrow Marker(sinx)=arrowinfo,1,5,0.5,1/ 设置 Marker 为 Arrow 。这一步可以也可以通过曲线/ 外观设置对话框设置箭头 marker 完成,注意 Arrow /Info 要选择 arrowinfoMake/N=100 datax,datay,datazdatax=enoise(2); datay=enoise(2); dataz=exp(-(dataxA2+datayA2)Display datay vs datax; Mo
10、difyGraph mode=3,marker=8ModifyGraph zmrkSize(datay)=dataz,*,*,1,102.2.3make/O datasetscale/P x 0,1,datadata=exp(-x/60)display dataModifyGraph manTick(bottom)=0,30,0,0,manMinor(bottom)=3,2make/O InverseTemperature= 30,20,14.2857,10,5,3.0303,2.22222,1.25make/O Mobility= 0.211521,0.451599,0.612956,0.6
11、91259,0.886406,0.893136,0.921083,1Display Mobility vs InverseTemperature / 绘制曲线,使用默认坐标轴ModifyGraph mode=3,marker=8make/N=5/T TickLable= “20”, ”30”, ”50”, ”100”, ”400” / 刻度线标签make/N=5 TickPositionTickPosition=450/str2num(TickLable)ModifyGraph userticks(bottom)=TickPosition,TickLable2.2.4make/O gaussd
12、atasetscale/I x,-1,1,gaussdatagaussdata=gauss(x,0,0.2)display gaussdataModifyGraph zColor(gaussdata)=gaussdata,*,*,Rainbow256,0ModifyGraph mode=4,marker=19ModifyGraph mskip=5TextBox/C/N=text0/D=2,2,0/A=MC JCZ15FTimes New RomanGauss Funct ionreS(-xS2MZ14S/2FsymbolsFTimes New RomanS2MZ14S)I!Twice K0 i
13、s K0*2Twice K0 is %g, and today is %s, 2*K0, date() “x value=%g”,tagval(2) / 输出 x 的大小,每一个参数表示一种预定义类型tagwa “mean value=%g”,mean(tagwaveref(), -inf,+inf / 输出引用 wave 的平均值,veref 返回 wave 的引用。2.4.3make/O/N=(128,128) gaussdata=gauss(x,64,10,y,64,10)function xyzcontour()make/O/N=(100,3) xyzwavevariable ifor
14、(i=0;i100;i+=1)xyzwavei0=gnoise(1)xyzwavei1=gnoise(1)xyzwavei2=gnoise(1)endfordisplay;appendxyzcontour xyzwaveend2.4.5Make/O/N=(200,30) fdfun;Setscale/I x,-1,0.2,fdfun;fdfun=1/(exp(x*1.6*10000/1.38/30)+1);duplicate/O fdfun,lorfun1,lorfun2;lorfun1=0.005/(x+0.1)A2+0.01);lorfun2=0.008/(x+0.3)A2+0.01);f
15、dfun=fdfun+lorfun1+lorfun2newwaterfall fdfun;/ 绘制 waterfall 图Newwaterfall/Host=graphname wavename2.4.6Duplicate/O fdfun fdcolor;Fdcolor=y;ModifyGraph zColor(fdfun)=fdcolor,*,*,Rainbow256,0;Modifywaterfall angle=452.4.7Make/N=(100,100) gaussfun;Setscale/I x,-0.5,0.5,gaussfun;Gaussfun=exp(-x*x/0.04-y*
16、y/0.04);2.5.2make/O/N=(100,100) datasetscale/I x,-pi,pi,datasetscale/I x,-pi,pi,datadata=sin(x)*cos(y)make/O/N=(20,20,3) dspheresetscale/I x,0,pi,dsphere setscale/I y,0,2*pi,dsphere dsphere0=1*sin(x)*cos(y) dsphere1=1*sin(x)*sin(y) dsphere2=1*cos(x)NewGizmo/N=Gizmo0/T=Gizmo0ModifyGizmo startRecMacro
17、AppendToGizmo Surface=root:dsphere,name=surface0ModifyGizmo ModifyObject=surface0 property= surfaceColorType,1ModifyGizmo ModifyObject=surface0 property= fillMode,3ModifyGizmo ModifyObject=surface0 property= srcMode,4ModifyGizmo ModifyObject=surface0 property= frontColor,0.250004,0. 996109,0.250004,
18、1ModifyGizmo ModifyObject=surface0 property= backColor,0.996109,0.664073,0, 1ModifyGizmo setDisplayList=0, object=surface0ModifyGizmo SETQUATERNION=0.488416,0.302182,0.455614,0.680110Make/O/N=(20,3) data=gnoise(5)data2=2*datap0-3*datap1+datap0F2+gnoise(0.05)make/N=(100,100)/O datasetscale/I x,-2,2,d
19、atasetscale/I y,-2,2,datadata=gauss(x,-1,0.5,y,-1,0.5)+gauss(x,-1,0.5,y,1,0.5)data=data+gauss(x,1,0.5,y,-1,0.5)+gauss(x,1,0.5,y,1,0.5)3.1.2Make/O/N=100 trialwave;Setscale/I x,-1,3,trialwave;Trialwave=exp(-0.1*x)+gnoise(0.02);Display trialwave;ModifyGraph mode=3;function fitfun(coef,x):Fitfuncwave co
20、efvariable xendmake/O coef=a1,a2,a3, funcfit fitfun,coef,ydata/D3.1.3make/O LorF setscale/I x,-10,10,LorF setrandomseed 0.5 LorF=1/(x*x+1)+gnoise(0.05) display LorFModifyGraph mode=3,marker=83.1.5Make/O/N=(200,200) w2dModifyGraph lsize(fit_LorF)=2,rgb(fit_LorF)=(0,0,65280)3.2.2Make w f(x)=a*x*x+b*x+
21、c Make/O/N=200 trialdataSetscale/P x,-2,0.02,trialdata Setrandomseed 0.5 Trialdata=x*x-2*x-1+gnoise(0.2)Display trialdataModifyGraph mode=3,marker=8,rgb=(0,0,65280)3.2.4Function f(w,x):FitFuncWave w Variable xEndFunction f(w,x,y):FitFuncWave wVariable xVariable y / function bodyEnd3.3.1CurveFit flag
22、s fitType, kwCWave=coefWaveName , waveName flag param eters CurveFit fitType wavename Make/O/N=20 trialdata Setscale/I x,0,10,trialdata Setrandomseed 0.5Trialdata=exp(-4*(x-5F2)Display trialdataModifygraph mode=3,marker=8Variable V_FitOptions=8 /control fitting Curvefit gauss trialdataEdit M_iterate
23、sK0=1;K1=2;K2=3;K3=4CurveFit/G gauss trialdataMake/O/N=200 trialdataSetscale/I x 0,5,trialdataSetrandomseed 0.5Trialdata=exp(-(x-2)/2)+gnoise(0.1)Display trialdataModifygraph mode=3,marker=8 Curvefit/TBOX=768 exp_Xoffset trialdata /DCurvefit/K=2 /TBOX=768 exp_Xoffset trialdata /D SetAxis left 0,4Set
24、Axis bottom -1,8Curvefit/X/TBOX=896 exp_Xoffset trialdata /D make/O/N=20 trialdatasetscale/I x,0,2,trialdata setrandomseed 0.5 trialdata=exp(-x)+gnoise(0.1) display trialdatamodifygraph mode=3,marker=8Curvefit/TBOX=768 exp trialdata /D/F=0.95,6,ErrorBarMake/O/N=200 trialdataSetscale/I x,0,2,trialdat
25、aSetrandomseed 0.5 Trialdata=2*exp(-x)+gnoise(0.3)Display trialdataModifygraph mode=3,marker=8Curvefit/W=0 line trialdata /D/R3.3.3Make/O/N=200 data1Setscale/I x,0,2*pi,data1Setrandomseed 0.5Data1=2*sin(x)+gnoise(0.2)Display data1Modifygraph mode=3,marker=8K1 + K2 3K3/5 2*K1K1*K1 =0)Return w0+w1*xEndifIf(x0)Return w2-w3*xEndifEndMake/O/N=4 coCo=0,1,0,1FuncFit/W=0/NTHR=0 myfit,co,data1 /D3.4.3Function myfitfunc(pw,yw,xw):FitFuncWave pw,yw,xwYw=End duplicate yw tmp do interpo
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1