当前位置: 首页 > 程序语言 >matlab子程序,求助!!!!

matlab子程序,求助!!!!

作者 西入秦关
来源: 小木虫 250 5 举报帖子
+关注

matlab程序如下:
clc
clear all
p01=100
G=2000   
v=0.3
M=1.2   
Y=463
E=5200
sigmarb=308
sigmah0=100
x0=1;
xb=[ Y, G, v, E,sigmarb,sigmah0];
option=optimset('Display','iter','Algorithm','levenberg-marquardt');
x=fsolve(@(x) f(x,xb),x0,option)
---------------------------------------------------------
function [y]=f(x, xb)
G=xb(1);  
v=xb(2);
Y=xb(3);
E=xb(4);
sigmarb=xb(5);
sigmah0=xb(6);
y0=(1/x);  
y1=(2*(G+sigmah0-sigmarb)*(v-0.5)*(1+v)*Y+E*(sigmah0-sigmarb));         
y2=(1/x)^(((-4.*v.*v-2.*v+2).*Y-E)./E);
y3=2*(v-0.5)*G*Y*(1/x)*(1+v);
y4=G*(Y*(2*v*v+v-1)+E);
y=y0-(-y1*y2+y3)/y4;      
end
----------------------------------------------------------
我用maple2018算的2.7左右,但是,用matlab一直是0.99左右,求助各位大神,我的matlab哪里有问题?????      2.7左右应该是正确的!

matlab子程序,求助!!!!
ZYTKWHZU55TC8K5%K}~VZAS.png 返回小木虫查看更多

今日热帖
  • 精华评论
  • xiegangmai

    y2 的表达式错了吧,a和c的指数是不一样的, x和a/c是什么关系?

  • 西入秦关

    引用回帖:
    2楼: Originally posted by xiegangmai at 2018-08-31 11:27:28
    y2 的表达式错了吧,a和c的指数是不一样的, x和a/c是什么关系?

    没错吧!x=c/a

  • xiegangmai

    引用回帖:
    3楼: Originally posted by 西入秦关 at 2018-08-31 11:32:39
    没错吧!x=c/a...

    图上的表达式,a的指数和c的指数不一样,一个+E、一个+2E

  • 西入秦关

    引用回帖:
    4楼: Originally posted by xiegangmai at 2018-08-31 12:55:27
    图上的表达式,a的指数和c的指数不一样,一个+E、一个+2E...

    可以化简
    matlab子程序,求助!!!!-1
    LBQ5]$8IR`~_KP0NMKCMN[6.png

  • pdl9527

    function question_47
    clc
    clear all
    x0=1;
    option=optimset('Display','iter','Algorithm','levenberg-marquardt');
    x=fsolve(@(x) f(x),x0,option)
    %---------------------------------------------------------
        function y=f(x)
            p01=100;
            G=2000;
            v=0.3;
            M=1.2;
            Y=463;
            E=5200;
            sigmarb=308;
            sigmah0=100;
            y0=(1/x);
            y1=(2*(G+sigmah0-sigmarb)*(v-0.5)*(1+v)*Y+E*(sigmah0-sigmarb));
            y2=(1/x)^(((-4.*v.*v-2.*v+2).*Y-E)./E);
            y3=2*(v-0.5)*G*Y*(1/x)*(1+v);
            y4=G*(Y*(2*v*v+v-1)+E);
            y=y0-(-y1*y2+y3)/y4;
        end
    end
    %----------------------------------------------------------,

猜你喜欢
下载小木虫APP
与700万科研达人随时交流
  • 二维码
  • IOS
  • 安卓