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

矩阵表达式

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
自定义的函数:. _7 R/ f2 [! O2 S* f# @
function f=largejfun(x)
' @% c) R, T7 @- h3 R% I" k4 Sf=(x-1./1:100).^2;3 [# R7 W: |+ a0 \# a3 M* ]
end9 H2 ]& r# V& o
- a& N; P2 ]* h* J6 x1 S
调用函数的时候:, m! K  M9 B  t/ n% C- U0 |; K
clc  B' _* U' J, ]6 e6 ?
x0=10*ones(1,100);
  @+ e5 G' c6 ^' p! P" \" hoptions=optimset('display','iter','TolFun',1e-8);
0 j: @# |0 L$ }7 o[x,fval,exitflag,output]=fminunc(@largejfun,x0,options)/ T0 K  Y6 S  t# s* A" H+ `

% w; j5 E# ^3 w! E( u, P! d% r! ?+ P: r; n; w
运行结果出错,出错结果显示如下:* ?/ I# w  c3 I# o# F6 i
错误使用 fminunc (line 348)
' _' v; c7 D& i6 YSupplied objective function must return a scalar value.
  h+ w$ L' D8 {- e. t
' o1 p$ C7 P3 `8 R1 L, N  w% s6 q
" T7 w% m3 h( |8 g* I( Q; T! ^9 |' O
出错 fminu1 (line 4)
- W9 V8 l5 C$ [. f3 ~9 }, n, S, U$ g; [[x,fval,exitflag,output]=fminunc(@largejfun,x0,options)+ T8 v1 O) R# ]/ m; z, z, u7 j6 C
, V" R7 `2 u0 H) w
6 \8 l' f% q. R4 K( z, s1 w
' o: [5 T' \- s" F7 N

: I- a  V7 y# O+ G0 Z9 v, |3 Q$ r, i9 _- f  a+ z3 L
: P1 D0 v" c1 y8 V7 ?
/ i# L7 O- t# V7 E

( O, t8 Z& q$ N1 l7 @" I我将自定义函数改为如下:2 m' ^; q* M# ]  ~
function f=largejfun(x)" j* U2 j9 t: U% r. p4 x, v
f=0;
& W: Q) v' x! [9 L/ Y7 H1 e& _0 ufor i=1:1007 [1 e" n* g9 u% ~  J
    f=f+(x(i)-1/i)^2;
. A+ r+ K6 H1 g, p' n1 Aend& p! c( `0 T& Z4 d7 |- z# U
( r; V5 O$ |2 w  i% e# O
最后运行结果没有任何问题。
8 s% k) S8 v$ N5 {3 ~& R那是哪里有问题呢?

) |3 t: }6 r9 J$ D0 o

该用户从未签到

2#
发表于 2020-8-17 10:48 | 只看该作者
很明显啊,f=(x-1./1:100).^2这种写法,甭管你的x是标量还是向量,1./1:100肯定是向量,做差之后还是向量(或矩阵),再求平方,仍然不会是标量啊。( Q9 H4 ]2 B+ R  C6 J
想转换成标量就用sum或者norm之类的函数,通过求和、求模来转化成标量。% U+ @: V" D7 D- s! s2 U1 f) i5 i

点评

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

该用户从未签到

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

该用户从未签到

5#
 楼主| 发表于 2020-8-20 14:04 | 只看该作者
kekek 发表于 2020-8-17 10:48% x/ k, t# }- j: T: O& i
很明显啊,f=(x-1./1:100).^2这种写法,甭管你的x是标量还是向量,1./1:100肯定是向量,做差之后还是向量( ...

5 E* }$ m. y# q, _% D( P) H谢谢大神指导
/ {; y  a" t6 k9 S) P! W( q
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-27 16:14 , Processed in 0.109375 second(s), 24 queries , Gzip On.

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

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

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