<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@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;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
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;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
{mso-style-priority:99;
mso-style-link:"Plain Text Char";
margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.PlainTextChar
{mso-style-name:"Plain Text Char";
mso-style-priority:99;
mso-style-link:"Plain Text";
font-family:"Calibri",sans-serif;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
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]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoPlainText">Hi,<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Are you sure that all the strings in matrix have at least 20 characters?<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">PS:<o:p></o:p></p>
<p class="MsoPlainText"><i><span style="font-size:10.0pt">Not related to the index issue but probably not a good idea to use a variable with same name as existing function matrix.<o:p></o:p></span></i></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Regards,<o:p></o:p></p>
<p class="MsoPlainText">Rafael<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">-----Original Message-----<br>
From: users <users-bounces@lists.scilab.org> On Behalf Of anna28<br>
Sent: Thursday, October 29, 2020 12:55 PM<br>
To: users@lists.scilab.org<br>
Subject: [Scilab-users] for-loop error</p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Hello all,<o:p></o:p></p>
<p class="MsoPlainText">I'm facing a trouble with a (in principle) very basic script... but I really don't understand the reason.<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Inside a bigger script, I have the following code:<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">"Nentries=283;<o:p></o:p></p>
<p class="MsoPlainText">Nticks=20;<o:p></o:p></p>
<p class="MsoPlainText">Nstep=15;<o:p></o:p></p>
<p class="MsoPlainText">for j=1:Nticks<o:p></o:p></p>
<p class="MsoPlainText"> k=j*Nstep;<o:p></o:p></p>
<p class="MsoPlainText"> disp("j="+string(j)+"; Nstep="+string(Nstep)+"; k="+string(k)+"<o:p></o:p></p>
<p class="MsoPlainText">j*Nstep="+string(j*Nstep));<o:p></o:p></p>
<p class="MsoPlainText"> if(k<=Nentries) then<o:p></o:p></p>
<p class="MsoPlainText"> str1=strsplit(matrix(k,1),[11,20])(2);<o:p></o:p></p>
<p class="MsoPlainText"> str2 = strsubst(str1, "_","=");<o:p></o:p></p>
<p class="MsoPlainText"> else<o:p></o:p></p>
<p class="MsoPlainText"> str2="=";<o:p></o:p></p>
<p class="MsoPlainText"> end<o:p></o:p></p>
<p class="MsoPlainText"> tick_array_step_rot(j)="$\text {\rotatebox{90}{"+str2+"}}$"<o:p></o:p></p>
<p class="MsoPlainText">end"<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">where "matrix" is a 283x5 string matrix.<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">It usually works, but it sometimes gives me error of "invalid index" at the line of "str1". That's why I asked to "disp" all the indexes and I find the following output:<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">j=1; Nstep=18; k=18 j*Nstep=18<o:p></o:p></p>
<p class="MsoPlainText">j=2; Nstep=18; k=36 j*Nstep=36<o:p></o:p></p>
<p class="MsoPlainText">j=3; Nstep=18; k=54 j*Nstep=54<o:p></o:p></p>
<p class="MsoPlainText">j=4; Nstep=18; k=72 j*Nstep=72<o:p></o:p></p>
<p class="MsoPlainText">j=5; Nstep=18; k=90 j*Nstep=90<o:p></o:p></p>
<p class="MsoPlainText">j=6; Nstep=18; k=108 j*Nstep=108<o:p></o:p></p>
<p class="MsoPlainText">j=7; Nstep=18; k=126 j*Nstep=126<o:p></o:p></p>
<p class="MsoPlainText">j=8; Nstep=18; k=-112 j*Nstep=-112<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">If I change the matrix and the number of rows, I detect similar problems: at a certain point, the multiplication j*Nstep gets wrong.<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Do you have any suggestions?<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">many thanks<o:p></o:p></p>
<p class="MsoPlainText">Anna<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
</div>
</body>
</html>