24小时热门版块排行榜    

查看: 1030  |  回复: 1

thematicsroy

新虫 (小有名气)

[交流] Matlab自适应数值积分,用了递归,最后怎样清理全局变量?

求解问题是:对f在区间[a,b]上实现自适应剖分,并在每个小区间上用三点高斯数值积分公式。自适应剖分的条件可以参看下面的if条件.要求函数输出最终数值积分值,以及所有剖分得到的小区间及每个小区间上的三点高斯积分值
以下是m文件源码:
function [int, abt] = gadap(a, b, f, p, tol) %
format long
global p
global abt
xc=(a+b)/2;int=gauss3(f,a,b);
t1=gauss3(f,a,xc);t2=gauss3(f,xc,b);  %%[a,xc]、[xc,b]上f的三点高斯积分值
if (abs(int-t1-t2))>tol*max(abs(int),abs(t1)+abs(t2))   %%判定条件,若满足则将[a,b]等分为两部分
    int=gadap(a,xc,f,p,tol)+gadap(xc,b,f,p,tol);
else
    p=p+1;
    abt(p,=[a,b,int];
    if b==1
        clear global p     %%清除全局变量p
    end
end

function I = gauss3(f,a,b) %%三点高斯数值积分
ta = (b-a)/2;
tb = (a+b)/2;
I = ta*(0.55555556*subs(sym(f),findsym(sym(f)),ta*0.7745967+tb)+...
            0.55555556*subs(sym(f),findsym(sym(f)),-ta*0.7745967+tb)+...
            0.88888889*subs(sym(f),findsym(sym(f)),tb));


现在问题是这代码只能清除全局变量p,若是还清除abt,则函数根本返回不了abt,只能每次在command window里用clear global来清除,各位有没有更好的办法,如果不用到全局变量可以吗
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

thematicsroy

新虫 (小有名气)

居然出现一个笑脸,应为:abt(p,:)=[a,b,int];
2楼2016-03-07 23:58:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 thematicsroy 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿东华大学控制学硕320求调剂 +3 Grand777 2026-03-21 3/150 2026-03-21 19:23 by 简之-
[考研] 26考研一志愿中国石油大学(华东)305分求调剂 +6 嘉年新程 2026-03-15 6/300 2026-03-21 17:07 by Dream007008
[考研] 一志愿华中科技大学071000,求调剂 +3 沿岸有贝壳6 2026-03-21 3/150 2026-03-21 10:35 by 暮云清寒
[考研] 301求调剂 +10 yy要上岸呀 2026-03-17 10/500 2026-03-21 03:14 by JourneyLucky
[考研] 332求调剂 +4 ydfyh 2026-03-17 4/200 2026-03-21 02:20 by JourneyLucky
[考研] 求调剂 +3 Ma_xt 2026-03-17 3/150 2026-03-21 02:05 by JourneyLucky
[考研] 311求调剂 +5 冬十三 2026-03-18 5/250 2026-03-21 00:16 by JourneyLucky
[考研] 321求调剂 +9 何润采123 2026-03-18 11/550 2026-03-20 23:19 by JourneyLucky
[考研] 329求调剂 +9 想上学吖吖 2026-03-19 9/450 2026-03-20 22:01 by luoyongfeng
[考研] 一志愿中南化学(0703)总分337求调剂 +8 niko- 2026-03-19 9/450 2026-03-20 21:57 by luoyongfeng
[考研] 北科281学硕材料求调剂 +5 tcxiaoxx 2026-03-20 5/250 2026-03-20 21:35 by laoshidan
[考研] 289求调剂 +6 怀瑾握瑜l 2026-03-20 6/300 2026-03-20 20:30 by 学员8dgXkO
[考研] 材料与化工专硕调剂 +7 heming3743 2026-03-16 7/350 2026-03-20 19:31 by zhukairuo
[考研] 一志愿南理工085701环境302求调剂院校 +3 葵梓卫队 2026-03-20 3/150 2026-03-20 19:28 by zhukairuo
[考研] 工科材料085601 279求调剂 +7 困于星晨 2026-03-17 9/450 2026-03-20 17:38 by 无懈可击111
[考研] 085601材料工程专硕求调剂 +10 慕寒mio 2026-03-16 10/500 2026-03-19 15:26 by 丁丁*
[考研] 0703化学调剂 +5 pupcoco 2026-03-17 8/400 2026-03-19 13:58 by houyaoxu
[考研] 材料考研调剂 +3 xwt。 2026-03-19 3/150 2026-03-19 11:22 by w沐阳w
[考研] 293求调剂 +11 zjl的号 2026-03-16 16/800 2026-03-18 08:10 by zhukairuo
[考研] 321求调剂 +5 大米饭! 2026-03-15 5/250 2026-03-16 16:33 by houyaoxu
信息提示
请填处理意见