Matlab GUI 编程 - 从多个edit box 控件获取输入,计算结果输出到 static text 控件显示...

程序应用的背景:在用ZEMAX POP 做光纤耦合效率分析的时候,需要将给定芯径和NA的光纤模场或尾纤输出LD的输出光场(多模场,M2 > 1)拟合为基模高斯光束。由于要反复计算多组参数做对比,为了方便做了如下的小程序

程序的功能:通过edit box 获取输入,Calc 中完成拟合高斯光束参数的计算,最终结果在result中显示

由于程序的任务比较简单,每个Edit box仅需要接收一个输入数据。Edit box 中数据的获取和statict text 中的数据显示均在Calc 按钮中进行。 Calc 按钮的回调函数中的程序片段如下

% get input from edit box
waveLen = str2double(get(handles.edit_waveLen, 'string'));
coreDia = str2double(get(handles.edit_coreDia, 'string'));
NA = str2double(get(handles.edit_NA, 'string'));

% calculate the Gaussian beam parameter
% that need to be display
r = coreDia/2;
M2 = r * asin(NA) * pi/waveLen;
zR = pi*r^2/M2/waveLen;
w0 = sqrt(zR*waveLen/pi);

% set output of static text
set(handles.text_M2, 'string', num2str(M2));
set(handles.text_rayleighRange, 'string', num2str(zR));
set(handles.text_gaussianWaist, 'string', num2str(w0));

注:该程序主要实现了一次完成多个edit box 中数据的获取和在多个数据的显示

 

 

转载于:https://www.cnblogs.com/toddler/archive/2013/01/29/2881934.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值