24小时热门版块排行榜    

查看: 2614  |  回复: 5

杲1988

木虫 (小有名气)

[求助] matlab中利用LM算法解非线性方程组的问题 已有1人参与

劳烦各位看下:求解如下线性方程组,x(1)-0.7*sin(x(1))-0.2*cos(x(2))=0;
                                                          x(2)-0.7*cos(x(1))+0.2*sin(x(2))=0 .
是利用改进的高斯牛顿算法,即LM算法求解,编制的三个m文件分别保存,LM算法主程序在lmm这个文件中,三个m文件如下:
function [x,val,k]=lmm(Fk,JFk,x0)
maxk=100;
rho=0.55;sigma=0.4;muk=norm(feval(Fk,x0));
k=0;epsilon=1e-6;n=length(x0);
while(k     fk=feval(Fk,x0);
    jfk=feval(JFk,x0);
    gk=jfk'*fk;
    dk=-(jfk'*jfk+muk*eye(n))\gk;
    if(norm(gk)     m=0;mk=0;
    while(m<20)
        newf=0.5*norm(feval(Fk,x0+rho^m*dk))^2;
        oldf=0.5*norm(feval(Fk,x0))^2;
        if(newf             mk=m;break;
        end
        m=m+1;
    end
    x0=x0+rho^mk*dk;
    muk=norm(feval(Fk,x0));
    k=k+1;
end
x=x0;
val=0.5*muk^2;

function JF=JFk(x)
JF=[1-0.7*cos(x(1)),0.2*sin(x(2));
    0.7*sin(x(1)),1+0.2*cos(x(2))];

function F = Fk(x)
F(1)=x(1)-0.7*sin(x(1))-0.2*cos(x(2));
F(2)=x(2)-0.7*cos(x(1))+0.2*sin(x(2));
F=F(;

命令窗调用格式如下:
>> clear all;
>> [x,val,k]=lmm(Fk,Jfk,[1,1])

问题是,一运行,显示:
??? Input argument "x" is undefined.
Error in ==> Fk at 3
F(1)=x(1)-0.7*sin(x(1))-0.2*cos(x(2));

想知道是哪里未定义?还是调用格式不对?
三个文件都没有报错,但调试时,显示
??? Input argument "Fk" is undefined.
Error in ==> lmm at 6
rho=0.55;sigma=0.4;muk=norm(feval(Fk,x0));

求各位指点!
对,版本是2011a,32位,XP系统。感激!!!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

虚心求教,共同探讨。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

杲1988

木虫 (小有名气)

上述中,笑脸图标部分是:
F = F ( : ) ;
与论坛图标代码竟相同了...
求教 感激!
虚心求教,共同探讨。
2楼2013-03-30 10:21:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

杲1988

木虫 (小有名气)

一天了,继续求关注!
虚心求教,共同探讨。
3楼2013-03-30 22:13:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖


感谢参与,应助指数 +1
fegg7502: 金币+1, 应助指数+1, 3ks 2013-04-02 09:31:20
feval('Fk',x0)
showmethemoney
4楼2013-04-01 11:07:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖


csgt0: 金币+1, 谢谢 2013-04-16 16:24:35
x1: 0.526522621903241
x2: 0.507919719042045
5楼2013-04-16 09:05:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yaozirel

金虫 (正式写手)

【答案】应助回帖

命令窗调用格式如下:
>> clear all;
>> [x,val,k]=lmm(‘Fk’,‘Jfk’,[1;1])
风光背后,不是沧桑,就是硬抗。
6楼2014-10-09 18:43:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 杲1988 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 让我中一个面上吧! +8 大萍1987 2026-08-20 10/500 2026-08-20 21:48 by 大萍1987
[基金申请] 言之凿凿,明天官网会通知放榜? +15 医学老男孩 2026-08-20 17/850 2026-08-20 20:35 by CaoLG
[基金申请] 时间戳又变了 +12 wuchongjun 2026-08-20 17/850 2026-08-20 20:05 by spzhao
[基金申请] 今天系统多次维护,明天很可能放榜! +10 zju2000 2026-08-16 11/550 2026-08-20 20:02 by cl479861084
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 只有每年这种时候来逛逛小木虫 +21 yaoyewhu2008 2026-08-20 22/1100 2026-08-20 17:03 by yaoyewhu2008
[基金申请] 放榜前的不淡定 40+3 snowwithsea 2026-08-19 12/600 2026-08-20 15:56 by lfy8008
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 今天基金会出结果吗?20260819 +14 kkkl_v 2026-08-19 15/750 2026-08-20 08:21 by sunzitan
[基金申请] filecode,4个jtjc了 +11 ziyangfang 2026-08-19 13/650 2026-08-19 21:28 by aasahr
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 什么时候开奖? +6 CrisMessi 2026-08-18 6/300 2026-08-19 08:06 by Equinoxhua
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见