找回密码
 注册
关于网站域名变更的通知
查看: 403|回复: 4
打印 上一主题 下一主题

矩阵表达式

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-17 10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
自定义的函数:
! S( t& |. G) I/ r# C, Yfunction f=largejfun(x)
4 G5 X" [0 y2 Z, o4 q# _7 M, Q/ \f=(x-1./1:100).^2;. b0 t* e4 M# Z
end
# u3 N4 Y) L6 a% a8 E0 {
# l& C3 @- T" J2 d调用函数的时候:& [4 v- O* M/ Y' t
clc
8 T' ~, @, J2 }' I) z# A7 Q3 Xx0=10*ones(1,100);
/ \3 }+ E* p+ v' ~1 P; t* {- |options=optimset('display','iter','TolFun',1e-8);! s: y6 h* y" r3 O4 |. o
[x,fval,exitflag,output]=fminunc(@largejfun,x0,options)
: G$ |2 [9 ^; ]# }2 `" |
4 e1 d) q/ v8 v5 A1 F  A
8 e7 C% d; Z2 X% m5 A9 A运行结果出错,出错结果显示如下:
1 Z; x7 O- G, Y8 l, M! r6 D错误使用 fminunc (line 348)
& x* Q8 f1 ?2 s) F( ~" H: f( }8 c1 r. ESupplied objective function must return a scalar value.# r1 a' D/ @4 F$ g7 ?
" n+ B, A% V# R! R5 i# Z, O
4 @' F: x2 `$ G# A* A$ m
出错 fminu1 (line 4)5 K3 P8 G& N" z) B  G
[x,fval,exitflag,output]=fminunc(@largejfun,x0,options)( K" l' e* Z, A" C# e+ M
9 z0 n- y. H8 [: U8 T" ~

. B, z, G: r3 ^/ l% d; a- l( s+ j- _
) R) _* [7 S5 m) j

# j' m6 Q2 ^3 \# W: b/ s) @. ~1 x( F% e

0 X8 ?0 X! \5 ]0 h- M& R5 g
' k3 T: r+ R: e& F- [& i; I2 T$ ~
; w* S9 [1 a: l  j/ v) ]& ~+ c
我将自定义函数改为如下:
9 c" o1 k+ ?. T: W5 m1 [9 Y( _function f=largejfun(x)7 ]4 f: P  ]! M1 ^4 a! a
f=0;4 y6 [, ^& N( `* ?: N  e6 s
for i=1:100
/ {, r7 }& _! Z  ^: ]6 J    f=f+(x(i)-1/i)^2;! ?5 I! h/ y) C6 O" j, I
end- A1 _4 q/ q* ~3 m, Y$ N& ]
; i$ `$ C+ E; D& t( _5 v0 Z0 a
最后运行结果没有任何问题。$ u; q) U- r. C7 w- U4 {
那是哪里有问题呢?
1 ^5 X$ A' f0 B' d

该用户从未签到

2#
发表于 2020-8-17 10:48 | 只看该作者
很明显啊,f=(x-1./1:100).^2这种写法,甭管你的x是标量还是向量,1./1:100肯定是向量,做差之后还是向量(或矩阵),再求平方,仍然不会是标量啊。
" u, L- e$ x, R' d想转换成标量就用sum或者norm之类的函数,通过求和、求模来转化成标量。
: K4 R' U$ m" D

点评

谢谢大神指导  详情 回复 发表于 2020-8-20 14:04

该用户从未签到

3#
发表于 2020-8-18 13:24 | 只看该作者
楼上正解,楼主试试

该用户从未签到

5#
 楼主| 发表于 2020-8-20 14:04 | 只看该作者
kekek 发表于 2020-8-17 10:48
& w! N( l- |/ V/ z很明显啊,f=(x-1./1:100).^2这种写法,甭管你的x是标量还是向量,1./1:100肯定是向量,做差之后还是向量( ...
, W4 P% [5 m/ n( ]
谢谢大神指导+ }  B( t/ E% U3 `$ I
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 20:05 , Processed in 0.203125 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表