matlab解方程组 知道一部分解的范围 如何编程计算呢

比如(2a+28b+28c+16d+32e+48f+54g)*N=3187a+b+c+d+e+f+g=1然后分别知道a=40%~45%b=20%~26%c=1%~3%d=... 比如

(2a+28b+28c+16d+32e+48f+54g)*N=3187
a+b+c+d+e+f+g=1
然后分别知道
a=40%~45%
b=20%~26%
c=1%~3%
d=30~35%
e,f,g 均 < 1%
N也有个范围大概在500~600
用matlab如何找出a b c d e f g N 在其范围内符合要求的组合呢?
展开
 我来答
雨扬振1238
2013-08-02 · TA获得超过2782个赞
知道小有建树答主
回答量:586
采纳率:100%
帮助的人:976万
展开全部

程序在附件里。

根据以上各变量的范围,我发现a~g都可以满足,只是想要得到非常近似的解(精度可以达到3.5e-7),N大概在254左右(见下图,精度随N的变化图)。以上结论是对于这道数学问题而言的,在实际问题中,你可以根据各变量物理意义来判断这个数学结果。



Sievers分析仪
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
victoriajll
2013-08-01 · TA获得超过4884个赞
知道大有可为答主
回答量:654
采纳率:100%
帮助的人:1047万
展开全部
%你这只能遍历了,程序如下,不过很慢,变量太多了,得找好点的计算机
step1=0.1/100;%修改这里的精度,理论上越小越好,但也就越耗时间
step2=0.01/100;
for a=0.4:step1:0.45
    for b=0.2:step1:0.26
        for d=0.3:step1:0.35
            for c=0.01:step2:0.03
                for e=step2:step2:0.01
                    for f=step2:step2:0.01
                        g=1-(a+b+c+d+e+f);
                        if g<=0
                            break;
                        else
                            for N=500:600
                                x=(2*a+28*b+28*c+16*d+32*e+48*f+54*g)*N;
                                if abs(3187-x)<=0.1%可以修改这里的精度
                                    y=[a b c d e f g N]%输出结果
                                end
                            end
                        end
                    end
                end
            end
        end
    end
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式