<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;
      charset=windows-1252">
  </head>
  <body>
    <div class="moz-cite-prefix">Hi Stéphane</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">It looks very nice and I hope it will
      be added to Scilab as proposed by your code review. Why does it
      say in red print "Cannot Merge" ?<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">/Claus<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">On 16-03-2021 17:45, Stéphane Mottelet
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:db8455b3-1b4c-2717-03dd-ecbb90bb7a3e@utc.fr">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      <p>Hi</p>
      <p>For real life signals you should rather use something like this
        (Savitsky-Golay filters)<br>
      </p>
      <p><a class="moz-txt-link-freetext"
          href="https://codereview.scilab.org/#/c/21499/"
          moz-do-not-send="true">https://codereview.scilab.org/#/c/21499/</a></p>
      <p>S.</p>
      <div class="moz-cite-prefix">Le 16/03/2021 à 17:09, CHEZE David
        227480 a écrit :<br>
      </div>
      <blockquote type="cite"
cite="mid:C1165F01A4B61C48AF8B97D1C4AB348B9D3869B5@EXDAG0-B2.intra.cea.fr">
        <meta http-equiv="Content-Type" content="text/html;
          charset=windows-1252">
        <meta name="Generator" content="Microsoft Word 15 (filtered
          medium)">
        <style>@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}@font-face
        {font-family:Monospaced;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}pre
        {mso-style-priority:99;
        mso-style-link:"Préformaté HTML Car";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}span.PrformatHTMLCar
        {mso-style-name:"Préformaté HTML Car";
        mso-style-priority:99;
        mso-style-link:"Préformaté HTML";
        font-family:Consolas;}p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}span.EmailStyle20
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}span.EmailStyle21
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}p.HTMLPreformatted, li.HTMLPreformatted, div.HTMLPreformatted
        {mso-style-name:"HTML Preformatted";
        mso-style-link:"HTML Preformatted Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Courier New";}span.EmailStyle24
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}div.WordSection1
        {page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
        <div class="WordSection1">
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US">Hi
              Clément,<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"
              lang="EN-GB">Thank you for your quick reply and solution !
              Actually it’s working for simple data but with noisy
              experimental timeseries, some filtering is required to get
              perfect regular signal (between the ‘true’ extrema) that
              could be then managed by the routine. I suppose this is
              something the Matlab/Octave is handling internally, with
              some parameters as function’s argument to tune it, maybe
              it’s not the case .<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"
              lang="EN-GB"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"
              lang="EN-GB">Regards,<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"
              lang="EN-GB"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"
              lang="EN-GB">David<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"
              lang="EN-GB"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="color:#1F497D;mso-fareast-language:EN-US"
              lang="EN-GB"><o:p> </o:p></span></p>
          <div>
            <div style="border:none;border-top:solid #E1E1E1
              1.0pt;padding:3.0pt 0cm 0cm 0cm">
              <p class="MsoNormal"><b>De :</b> users <a
                  class="moz-txt-link-rfc2396E"
                  href="mailto:users-bounces@lists.scilab.org"
                  moz-do-not-send="true"><users-bounces@lists.scilab.org></a>
                <b>De la part de</b> Clément David<br>
                <b>Envoyé :</b> mardi 16 mars 2021 16:27<br>
                <b>À :</b> Users mailing list for Scilab <a
                  class="moz-txt-link-rfc2396E"
                  href="mailto:users@lists.scilab.org"
                  moz-do-not-send="true"><users@lists.scilab.org></a><br>
                <b>Objet :</b> Re: [Scilab-users] find and locate local
                maxima<o:p></o:p></p>
            </div>
          </div>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal"><span lang="EN-US">Hello David,<o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span lang="EN-US">After reading the
              Matlab documentation page, it seems pretty simple to
              implement using Scilab : and $ symbols:<o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced;color:#B01813"
              lang="EN-US">function</span><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"> <span style="color:#4A55DB">[</span><b><span
                  style="color:#834310">pks</span></b><span
                style="color:black">, </span><b><span
                  style="color:#834310">locs</span></b><span
                style="color:#4A55DB">]</span><span
                style="color:#5C5C5C">=</span><u><span
                  style="color:black">findpeaks</span></u><span
                style="color:#4A55DB">(</span><b><span
                  style="color:#834310">data</span></b><span
                style="color:#4A55DB">)</span><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US">    <span style="color:black">ii</span> <span
                style="color:#5C5C5C">=</span> <span
                style="color:#32B9B9"> find</span><span
                style="color:#4A55DB">(</span><span style="color:black">d</span><span
                style="color:#4A55DB">(</span><span
                style="color:rosybrown">1</span><span
                style="color:#FFAA00">:$</span><span
                style="color:#5C5C5C">-</span><span
                style="color:rosybrown">2</span><span
                style="color:#4A55DB">)</span> <span
                style="color:#5C5C5C"><</span> <span
                style="color:black">d</span><span style="color:#4A55DB">(</span><span
                style="color:rosybrown">2</span><span
                style="color:#FFAA00">:$</span><span
                style="color:#5C5C5C">-</span><span
                style="color:rosybrown">1</span><span
                style="color:#4A55DB">)</span> <span
                style="color:#5C5C5C">&</span> <span
                style="color:black">d</span><span style="color:#4A55DB">(</span><span
                style="color:rosybrown">2</span><span
                style="color:#FFAA00">:$</span><span
                style="color:#5C5C5C">-</span><span
                style="color:rosybrown">1</span><span
                style="color:#4A55DB">)</span> <span
                style="color:#5C5C5C">>=</span> <span
                style="color:black">d</span><span style="color:#4A55DB">(</span><span
                style="color:rosybrown">3</span><span
                style="color:#FFAA00">:$</span><span
                style="color:#4A55DB">))</span><span style="color:black">;</span><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US">    <b><span style="color:#834310">pks</span></b>
              <span style="color:#5C5C5C">=</span> <b><span
                  style="color:#834310">data</span></b><span
                style="color:#4A55DB">(</span><span style="color:black">ii</span><span
                style="color:#5C5C5C">+</span><span
                style="color:rosybrown">2</span><span
                style="color:#4A55DB">)</span><span style="color:black">;</span><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US">    <b><span style="color:#834310">locs</span></b>
              <span style="color:#5C5C5C">=</span> <span
                style="color:black">ii</span> <span
                style="color:#5C5C5C">+</span> <span
                style="color:rosybrown"> 2</span><span
                style="color:black">;</span><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced;color:#B01813"
              lang="EN-US">endfunction</span><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced;color:black"
              lang="EN-US">data</span><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"> <span style="color:#5C5C5C">=</span> <span
                style="color:#4A55DB">[</span><span
                style="color:rosybrown">25</span> <span
                style="color:rosybrown">8</span> <span
                style="color:rosybrown">15</span> <span
                style="color:rosybrown"> 5</span> <span
                style="color:rosybrown">6</span> <span
                style="color:rosybrown">10</span> <span
                style="color:rosybrown">10</span> <span
                style="color:rosybrown">3</span> <span
                style="color:rosybrown"> 1</span> <span
                style="color:rosybrown">20</span> <span
                style="color:rosybrown">7</span><span
                style="color:#4A55DB">]</span><span style="color:black">;</span><o:p></o:p></span></p>
          <p class="MsoNormal"><u><span
                style="font-size:11.5pt;font-family:Monospaced;color:#AE5CB0"
                lang="EN-US">plot</span></u><span
              style="font-size:11.5pt;font-family:Monospaced;color:#4A55DB"
              lang="EN-US">(</span><span
              style="font-size:11.5pt;font-family:Monospaced;color:black"
              lang="EN-US">data</span><span
              style="font-size:11.5pt;font-family:Monospaced;color:#4A55DB"
              lang="EN-US">)</span><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced;color:#4A55DB"
              lang="EN-US">[</span><span
              style="font-size:11.5pt;font-family:Monospaced;color:black"
              lang="EN-US">pks,locs</span><span
              style="font-size:11.5pt;font-family:Monospaced;color:#4A55DB"
              lang="EN-US">]</span><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"> <span style="color:#5C5C5C">=</span> <u><span
                  style="color:#AE5CB0">findpeaks</span></u><span
                style="color:#4A55DB">(</span><span style="color:black">data</span><span
                style="color:#4A55DB">)</span><span style="color:black">;</span><o:p></o:p></span></p>
          <p class="MsoNormal"><u><span
                style="font-size:11.5pt;font-family:Monospaced;color:#AE5CB0"
                lang="EN-US">plot</span></u><span
              style="font-size:11.5pt;font-family:Monospaced;color:#4A55DB"
              lang="EN-US">(</span><span
              style="font-size:11.5pt;font-family:Monospaced;color:black"
              lang="EN-US">locs,</span><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"> <span style="color:black">pks,</span> <span
                style="color:rosybrown">'xr'</span><span
                style="color:#4A55DB">)</span><span style="color:black">;<o:p></o:p></span></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced;color:black"
              lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced;color:black"
              lang="EN-US">Note: using oct2py and pims might also be an
              option for simple cases but these wrappers are complex to
              use and data need to be copied at language boundaries.<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced;color:black"
              lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US">Regards,<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:11.5pt;font-family:Monospaced"
              lang="EN-US">Clément</span><span lang="EN-US"><o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
          <div>
            <div style="border:none;border-top:solid #E1E1E1
              1.0pt;padding:3.0pt 0cm 0cm 0cm">
              <p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span
                  lang="EN-US"> users <<a
                    href="mailto:users-bounces@lists.scilab.org"
                    moz-do-not-send="true">users-bounces@lists.scilab.org</a>>
                  <b>On Behalf Of </b>CHEZE David 227480<br>
                  <b>Sent:</b> Tuesday, March 16, 2021 2:53 PM<br>
                  <b>To:</b> Users mailing list for Scilab <<a
                    href="mailto:users@lists.scilab.org"
                    moz-do-not-send="true">users@lists.scilab.org</a>><br>
                  <b>Subject:</b> [Scilab-users] find and locate local
                  maxima<o:p></o:p></span></p>
            </div>
          </div>
          <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
          <p class="MsoNormal">Hi all,<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal"><span lang="EN-GB">I’m looking for
              function that could find and locate every local maxima of
              any discrete time signal (timeseries), similar to Matlab
              or Octave function findpeaks(), scipy find_peaks(). Is
              anyone aware if something similar is already available in
              Scilab ? (I already browsed a little bit and it don’t seem
              so…)<o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-GB">If not in Scilab
              macros, any hint to use the Octave or scipy function
              directly from Scilab? <o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-GB">More globally it seems
              that Octave Forge could be linked with Python (from oct2py
              import octave<o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-GB"># Load the
              Octage-Forge signal package.<o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-GB">octave.eval("pkg load
              signal")), does someone ever tried to bridge similarly in
              Scilab ? oct2sci<o:p></o:p></span></p>
          <p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span lang="EN-GB">Kind regards,<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Arial",sans-serif"
              lang="EN-GB"><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Arial",sans-serif">David
            </span><o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <pre class="moz-quote-pre" wrap="">_______________________________________________
users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:users@lists.scilab.org" moz-do-not-send="true">users@lists.scilab.org</a>
<a class="moz-txt-link-freetext" href="https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users" moz-do-not-send="true">https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users</a>
</pre>
      </blockquote>
      <pre class="moz-signature" cols="72">-- 
Stéphane Mottelet
Ingénieur de recherche
EA 4297 Transformations Intégrées de la Matière Renouvelable
Département Génie des Procédés Industriels
Sorbonne Universités - Université de Technologie de Compiègne
CS 60319, 60203 Compiègne cedex
Tel : +33(0)344234688
<a class="moz-txt-link-freetext" href="http://www.utc.fr/~mottelet" moz-do-not-send="true">http://www.utc.fr/~mottelet</a>
</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:users@lists.scilab.org">users@lists.scilab.org</a>
<a class="moz-txt-link-freetext" href="http://lists.scilab.org/mailman/listinfo/users">http://lists.scilab.org/mailman/listinfo/users</a>
</pre>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>