zoukankan      html  css  js  c++  java
  • [转载]matlab 中序列求极值的方法

    matlab 中序列求极值的方法
    2007-11-27 17:02
     

    此问题重复讨论的势头见长,因此做个小结。这类问题的基本思路都一致。
    利用数学里驻点和极值点定义来求。
    --------------------------------------ilxy的方法-------------------------------------------------------------------
    >> aa=randperm(20)
    aa =
    16 13 17 7 19 18 14 8 11 2 20 3 6 4 15 1 12 10 5 9
    >> bb=intersect(find(diff(aa)>0)+1,find(diff(aa)<0))
    bb =
        3 5 9 11 13 15 17
    ----------------------------------------------------------------------------------------------------------------------
    ----------------------------------hyperelastic 的方法----------------------------------------------------------
    N = 100;
    aa=randperm(N);
    index = find(((aa(2:N-1)>aa(1:N-2))+(aa(2:N-1)>aa(3:N)))==2)+1;
    bb = aa(index);
    -------------------bainhome 的方法-----------------------------------------------------------------------------
    a=rand(1,100);   find(diff(sign(diff(a)))>0)+1
    ------------------------------------------------------------------------------------------------------------------------
    以上代码都是求极大值,略微变换后可以得到极小值。出自:中华钢结构论坛
    ------------------------------------eight版主给的方法------------------------------------------------------------
    d=diff(x);
    n=length(d);
    d1=d(1:n-1);
    d2=d(2:n);
    indmin=find(d1.*d2<0 & d1<0)+1;
    indmax=find(d1.*d2<0 & d1>0)+1;
    ------------------------------------------------------------------------------------------------------------------------
    虽然基本原理一样,不过几位的方法都各有特色。都是前辈们智慧的结晶,在此深表感谢。
    小代码体现大智慧的典范!

    我在实验中所搜到的方法,可惜这次没搜索到:

    假设待求的数列为data,则find(diff(sign(diff(data)))== - 2)+1 可求极大值。find(diff(sign(diff(data)))== 2)+1 可求极小值

    转自:http://hi.baidu.com/honinbou/blog/item/5199883dfb69fcc49e3d625e.html
  • 相关阅读:
    linux ramdisk
    linux系统灵活运用灯[android课程3]
    linux编译注解
    Linux内核3.0移植并基于Initramfs根文件系统启动
    linux0.11文件分析
    2.2linux内核移植简介
    sudo: ./sd_fusing.sh:找不到命令
    Tiny4412之C语言实现流水灯,Tiny4412裸机程序[3]
    Exynos 4412的启动过程分析[2]
    POJ 3009 Curling 2.0 {深度优先搜索}
  • 原文地址:https://www.cnblogs.com/gisalameda/p/12840588.html
Copyright © 2011-2022 走看看