QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4001|回复: 1
打印 上一主题 下一主题

wolf_powell线搜索方法

[复制链接]
字体大小: 正常 放大
ilikenba 实名认证       

1万

主题

49

听众

2万

积分

  • TA的每日心情
    奋斗
    2024-6-23 05:14
  • 签到天数: 1043 天

    [LV.10]以坛为家III

    社区QQ达人 新人进步奖 优秀斑竹奖 发帖功臣

    群组万里江山

    群组sas讨论小组

    群组长盛证券理财有限公司

    群组C 语言讨论组

    群组Matlab讨论组

    跳转到指定楼层
    1#
    发表于 2004-4-30 11:21 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    <> function wolf_powell(A,b,dir,gradt,x) result(wp_result); j% F- o6 C5 W
    real,dimension(,intent(in)::b,dir,gradt,x5 Z5 e$ h! C; p- M8 Y
    real,dimension(:,,intent(in)::A
    9 {% b4 g5 F. Z real::a1,a2,f1,f2,a0,p,q,t,r,wp_result,gradt1(size(gradt)) ,r1+ V% w6 N, j1 ]( F/ o
    t=2.0; E5 n; n7 A' r
    a0=1& M& h1 p: Z, K7 `  Z  r5 ^5 G
    p=0.1
    1 i( k: W) K  v4 o" f9 ^5 M q=0.9
    " s' q( ]  `, F7 T0 q  U a1=0
    : ?. d- X. p# Z. z2 _1 J a2=100000
    , c* a& u/ B; u. T. `; y r=dot_product(dir,gradt)
    2 a3 L( V0 }, y! t f1=f(x,A,b): j; d2 ^1 L9 x2 c
    10 f2=f(x+a0*dir,A,b)
      y) E7 |9 W% N7 _, e$ a& l2 t) r if(f2&gt;f1+p*r*a0)then- \, G, B9 |' t$ H* \
         a2=a0
    * S6 C6 H  t" i  a0=a1+0.5*(a0-a1)/(1+(f1-f2)/(a0-a1)*r)9 d: U- `- n1 f# ^+ s3 x
      goto 100 K. Q. X+ c: S' @& [
    else
    $ \8 v. u: e4 J     gradt1=matmul(A,x+a0*dir)+b
    : T" F8 R9 y/ E  r1=dot_product(gradt1,dir)3 o% P( m+ m& \/ E* I) S
      if(r1&gt;=q*r)then
    & g8 K+ M0 H- W5 m8 f       wp_result=a0
    2 \( d6 g) N- k$ a  R* D8 X  else
    : i% r: u/ B2 L4 X) {" z+ H3 b; S; f       a1=a0
    # v0 y" U, d% I+ B( N+ o" a) G7 i    f1=f2
      R3 q% e) N; i( k* ?% I; U1 O# e    r=r10 _& i7 B0 _8 F, m/ u( j; L$ S3 i
        a0=a0+(a0-a1)*r1/(r-r1)
    # _1 ?7 f- S; s    goto 10  |! c9 S* R' m. t: J, T
      endif+ X2 E7 D: p* X$ o# {
    endif
    . z" h+ X% o+ v) h end function
    ( ?" T) G6 p. C# M3 g</P>. y  Z% J! F" F9 s% v
    <>本程序由Fortran 90语言编写,在Visual Fortran 5上编译通过!本程序由沙沙提供!</P>
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    ammon        

    0

    主题

    3

    听众

    21

    积分

    升级  16.84%

    该用户从未签到

    新人进步奖

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-7-20 06:07 , Processed in 0.371645 second(s), 58 queries .

    回顶部