add CDATA + role in the optimization module + various tag corrections
Yann Collette [Tue, 8 Sep 2009 06:48:49 +0000 (08:48 +0200)]
20 files changed:
scilab/modules/optimization/help/en_US/NDcost.xml
scilab/modules/optimization/help/en_US/aplat.xml
scilab/modules/optimization/help/en_US/datafit.xml
scilab/modules/optimization/help/en_US/derivative.xml
scilab/modules/optimization/help/en_US/fit_dat.xml
scilab/modules/optimization/help/en_US/fsolve.xml
scilab/modules/optimization/help/en_US/karmarkar.xml
scilab/modules/optimization/help/en_US/leastsq.xml
scilab/modules/optimization/help/en_US/list2vec.xml
scilab/modules/optimization/help/en_US/lmisolver.xml
scilab/modules/optimization/help/en_US/lsqrsolve.xml
scilab/modules/optimization/help/en_US/numdiff.xml
scilab/modules/optimization/help/en_US/optim.xml
scilab/modules/optimization/help/en_US/qld.xml
scilab/modules/optimization/help/en_US/qp_solve.xml
scilab/modules/optimization/help/en_US/qpsolve.xml
scilab/modules/optimization/help/en_US/recons.xml
scilab/modules/optimization/help/en_US/semidef.xml
scilab/modules/optimization/help/en_US/vec2list.xml
scilab/modules/optimization/help/fr_FR/fsolve.xml

index 48d52f7..787ce45 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 // example #1 (a simple one)
 //function to minimize
 function f=rosenbrock(x,varargin)
-   p=varargin(1)
-   f=1+sum( p*(x(2:$)-x(1:$-1)^2)^2 + (1-x(2:$))^2)
+  p=varargin(1)
+  f=1+sum( p*(x(2:$)-x(1:$-1)^2)^2 + (1-x(2:$))^2)
 endfunction
 
 x0=[1;2;3;4];
@@ -131,25 +131,25 @@ x0=[1;2;3;4];
 // (*) This method is not the most efficient but it is easy to implement.
 // 
 function dy = DEQ(t,y,p)
-   // The rhs of our first order differential equation system.
-   c =p(1);k=p(2)
-   dy=[y(2);-c*y(2)-k*y(1)]
+  // The rhs of our first order differential equation system.
+  c =p(1);k=p(2)
+  dy=[y(2);-c*y(2)-k*y(1)]
 endfunction
 
 function y=uN(p, t, t0, y0)
-   // Numerical solution obtained with ode. (In this linear case an exact analytic
-   // solution can easily be found, but ode would also work for "any" system.)
-   // Note: the ode output must be an approximation of the solution at
-   //       times given in the vector t=[t(1),...,t($)]  
-   y = ode(y0,t0,t,list(DEQ,p))
+  // Numerical solution obtained with ode. (In this linear case an exact analytic
+  // solution can easily be found, but ode would also work for "any" system.)
+  // Note: the ode output must be an approximation of the solution at
+  //       times given in the vector t=[t(1),...,t($)]  
+  y = ode(y0,t0,t,list(DEQ,p))
 endfunction
 
 function r = cost_func(p, t_obs, x_obs, t0, y0) 
-   // This is the function to be minimized, that is the sum of the squared
-   // errors between what gives the model and the measuments.
-   sol = uN(p, t_obs, t0, y0)
-   e = sol(1,:) - x_obs
-   r = sum(e.*e) 
+  // This is the function to be minimized, that is the sum of the squared
+  // errors between what gives the model and the measuments.
+  sol = uN(p, t_obs, t0, y0)
+  e = sol(1,:) - x_obs
+  r = sum(e.*e) 
 endfunction
 
 // Data
@@ -173,7 +173,6 @@ p0 = [0.5 ; 5];
 // The value of the cost function before optimization:
 cost0 = cost_func(p0, t_obs, x_obs, t0, y0); 
 mprintf("\n\r The value of the cost function before optimization = %g \n\r",...
-                                                                       cost0)
 
 // Solution with optim
 [costopt,popt]=optim(list(NDcost,cost_func, t_obs, x_obs, t0, y0),p0,...
@@ -191,7 +190,7 @@ plot2d(t',y(1,:)',style=5)
 plot2d(t_obs',x_obs(1,:)',style=-5)
 legend(["model","measurements"]);
 xtitle("Least square fit to identify ode parameters")
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 8436ac6..ecd890a 100644 (file)
@@ -59,9 +59,9 @@
   </refsection>
   <refsection>
     <title>Examples</title>
-    <programlisting role="example"><![CDATA[
-        [lf,ind]=aplat(list(1,2,list([3,1],'xxx',list([3,2,1]))))
-    ]]></programlisting>
+    <programlisting role="example"><![CDATA[ 
+[lf,ind]=aplat(list(1,2,list([3,1],'xxx',list([3,2,1]))))
+ ]]></programlisting>
   </refsection>
   <refsection>
     <title>See Also</title>
index 481c506..1ad55ee 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 //generate the data
 function y=FF(x,p),y=p(1)*(x-p(2))+p(3)*x.*x,endfunction
 X=[];Y=[];
@@ -259,7 +259,6 @@ pg=[34;12;14] //parameter used to generate data
 for x=0:.1:3, Y=[Y,FF(x,pg)+100*(rand()-.5)];X=[X,x];end
 Z=[Y;X];
 
-
 //The criterion function
 function e=G(p,z),
   y=z(1),x=z(2);
@@ -294,7 +293,7 @@ scf(1);clf()
 plot2d(X,FF(X,pg),5) //the curve without noise
 plot2d(X,Y,-1)  // the noisy data
 plot2d(X,FF(X,p),12) //the solution
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 9ac267b..edea58f 100644 (file)
     <programlisting><![CDATA[ 
 derivative(F, x, H_form = "hypermat")
 derivative(F, x, order = 4) etc.
-    ]]></programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
@@ -202,7 +202,7 @@ x=[1;2;3];[J,H]=derivative(F,x,H_form='blockmat')
 
 n=3;
 // form an orthogonal matrix :   
-nu=0; while nu&lt;n, [Q,nu]=colcomp(rand(n,n)); end  
+nu=0; while nu<n, [Q,nu]=colcomp(rand(n,n)); end  
 for i=[1,2,4]
   [J,H]=derivative(F,x,order=i,H_form='blockmat',Q=Q);
   mprintf("order= %d \n",i);
@@ -236,7 +236,7 @@ Je = x'*(A+A')+p'
 He = A+A'
 clean(Je - J)
 clean(He - H)
-  ]]></programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 9e36495..b989fbe 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 deff('y=FF(x)','y=a*(x-b)+c*x.*x')
 X=[];Y=[];
 a=34;b=12;c=14;for x=0:.1:3, Y=[Y,FF(x)+100*(rand()-.5)];X=[X,x];end
@@ -134,7 +134,7 @@ xbasc();
 plot2d(X',Y',-1) 
 plot2d(X',FF(X)',5,'002')
 a=p(1),b=p(2),c=p(3);plot2d(X',FF(X)',12,'002')
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 8986c51..0368a80 100644 (file)
     <para>find a zero of a system of n nonlinear functions in n variables by a
     modification of the powell hybrid method. Jacobian may be provided.</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[ 
 0 = fct(x) w.r.t x.
-    </programlisting>
+ ]]></programlisting>
 
     <para><literal>fct</literal> is an "external". This external returns
     <literal>v=fct(x)</literal> given <literal>x</literal>.</para>
 
     <para>The simplest calling sequence for <literal>fct</literal> is:</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[  
 [v]=fct(x).
-    </programlisting>
+ ]]></programlisting>
 
     <para>If <literal>fct</literal> is a character string, it refers to a C or
     Fortran routine which must be linked to Scilab. Fortran calling sequence
     must be</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[ 
 fct(n,x,v,iflag)
 integer n,iflag
 double precision x(n),v(n)
-    </programlisting>
+ ]]></programlisting>
 
     <para>and C Calling sequence must be</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[ 
 fct(int *n, double x[],double v[],int *iflag)
-    </programlisting>
+ ]]></programlisting>
 
     <para>Incremental link is possible (help <literal>link</literal>).</para>
 
@@ -185,9 +185,9 @@ fct(int *n, double x[],double v[],int *iflag)
 
     <para>The simplest calling sequence for <literal>jac</literal> is:</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[ 
 [v]=jac(x).
-    </programlisting>
+ ]]></programlisting>
 
     <para>If <literal>jac</literal> is a character string, it refers to a to a
     C or Fortran routine which must be linked to Scilab calling sequences are
@@ -213,7 +213,7 @@ a*xres+b
 // See routines/default/Ex-fsolve.f
 [xres]=fsolve([100;100],'fsol1','fsolj1',1.e-7);
 a*xres+b
-  ]]></programlisting>
+ ]]></programlisting>
     <para>For some starting points and some equations system, the fsolve method can fail. The fsolve method is a local search method. 
       So, to have a good chance to find a solution to your equations system, you must ship, a good starting point to fsolve.</para>
     <para> Here is an example on which fsolve can fail:</para>
@@ -239,8 +239,7 @@ disp(info); // The termination indicator
 
 clf();x=linspace(0,1,1000);plot(x,feuler(x))
 a=gca();a.grid=[5 5];
-
-  ]]></programlisting>
+ ]]></programlisting>
     <para>So, each time you use fsolve, be sure to check the termination indicator and the residual value to see if fsolve has converged.</para>
   </refsection>
 
index 1568e13..d9b91f0 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
-// n=10;p=20;
-// a=rand(n,p);c=rand(p,1);x0=abs(rand(p,1));b=a*x0;x1=karmarkar(a,b,c,x0);
-  </programlisting>
+    <programlisting role="example"><![CDATA[ 
+n=10;p=20;
+a=rand(n,p);
+c=rand(p,1);
+x0=abs(rand(p,1));
+b=a*x0;
+x1=karmarkar(a,b,c,x0);
+ ]]></programlisting>
   </refsection>
 </refentry>
index 4290279..c4c0af3 100644 (file)
           <link linkend="link">link</link>). The generic calling sequences for
           this routine are:</para>
 
-          <programlisting> 
+          <programlisting role = ""><![CDATA[ 
 In Fortran:    subroutine fun(m, n, x, params, y)
                integer m,n
                double precision x(n), params(*), y(m)
 
 In C:          void fun(int *m, int *n, double *x, double *params, double *y)
-         </programlisting>
+ ]]></programlisting>
 
           <para>where <literal>n</literal> is the dimension of vector
           <literal>x</literal>, <literal>m</literal> the dimension of vector
@@ -330,13 +330,13 @@ In C:          void fun(int *m, int *n, double *x, double *params, double *y)
           must be linked to Scilab). The calling sequences for this routine
           are nearly the same than for <literal>fun</literal>:</para>
 
-          <programlisting> 
+          <programlisting role = ""><![CDATA[ 
 In Fortran:    subroutine dfun(m, n, x, params, y)
                integer m,n
                double precision x(n), params(*), y(m,n)
 
 In C:          void fun(int *m, int *n, double *x, double *params, double *y)
-         </programlisting>
+ ]]></programlisting>
 
           <para>in the C case <emphasis>dfun(i,j)=dfi/dxj</emphasis> must be
           stored in <literal>y[m*(j-1)+i-1]</literal>.</para>
@@ -365,7 +365,7 @@ In C:          void fun(int *m, int *n, double *x, double *params, double *y)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 // We will show different calling possibilities of leastsq on one (trivial) example
 // which is non linear but doesn't really need to be solved with leastsq (applying
 // log linearizes the model and the problem may be solved with linear algebra). 
@@ -484,7 +484,7 @@ link(flibname,names,"f")
 // 8- last example: fun and dfun in C
 
 // 8-1/ Let 's Scilab write the C code (in the TMPDIR directory):
-c_code = ["#include &lt;math.h&gt;"
+c_code = ["#include <math.h>"
           "void myfunc(int *m,int *n, double *x, double *param, double *f)"
           "{"
           "  /*  param[i] = tm[i], param[m+i] = ym[i], param[2m+i] = wm[i] */"
@@ -517,7 +517,7 @@ link(clibname,names,"c")
 
 // 8-4/ ready for the leastsq call
 [f,xopt, gropt] = leastsq(list("myfunc",m,tm,ym,wm),"mydfunc",x0)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index e8215dd..278630b 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example">
-        list2vec(list(1,2,3))
-        list2vec(list([1 2 3],[4;5],[%s %s+1]))
-    </programlisting>
+    <programlisting role="example"><![CDATA[ 
+list2vec(list(1,2,3))
+list2vec(list([1 2 3],[4;5],[%s %s+1]))
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 8421768..b66fd31 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 //Find diagonal matrix X (i.e. X=diag(diag(X), p=1) such that
-//A1'*X+X*A1+Q1 &lt; 0, A2'*X+X*A2+Q2 &lt; 0 (q=2) and trace(X) is maximized 
+//A1'*X+X*A1+Q1 < 0, A2'*X+X*A2+Q2 < 0 (q=2) and trace(X) is maximized 
 n  = 2;
 A1 = rand(n,n);
 A2 = rand(n,n);
@@ -156,7 +156,7 @@ X=lmisolver(list(zeros(A1)),evalf);
 
 X=X(1)
 [Y,Z,c]=evalf(X)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index ff457a2..7850af6 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 // A simple example with lsqrsolve 
 a=[1,7;
    2,8
@@ -372,7 +372,6 @@ endfunction
 [xsol,v]=lsqrsolve([100;100],f1,3)
 xsol+a\b
 
-
 function y=fj1(x,m)
   y=a;
 endfunction
@@ -396,7 +395,7 @@ endfunction
 [abc,v]=lsqrsolve([10;10;10],f1,size(X,1));
 abc
 norm(v)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index e093f67..6cdce77 100644 (file)
@@ -82,9 +82,9 @@
     <literal>R^n</literal> to <literal>R^p</literal> computes the matrix
     <literal>g</literal> such as</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[ 
 [ d f ] [ i ] g = [ ---- ] ij [ d x ] [ j ]
-  </programlisting>
+ ]]></programlisting>
 
     <para>using finite difference methods.</para>
 
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example">
+    <programlisting role="example"><![CDATA[ 
 // example 1 (without parameters)
-// myfun is a function from R^2 to R :   (x(1),x(2)) |--&gt; myfun(x) 
+// myfun is a function from R^2 to R :   (x(1),x(2)) |--> myfun(x) 
 function f=myfun(x)
   f=x(1)*x(1)+x(1)*x(2)
 endfunction
@@ -113,9 +113,8 @@ g=numdiff(myfun,x)
 // The exact gradient (i.e derivate belong x(1) :first component and derivate belong x(2): second component) is  
 exact=[2*x(1)+x(2)  x(1)]
 
-
 //example 2 (with parameters)
-// myfun is a function from R to R:  x(1) |--&gt; myfun(x) 
+// myfun is a function from R to R:  x(1) |--> myfun(x) 
 // myfun contains 3 parameters, a, b, c
 function  f=myfun(x,a,b,c)
   f=(x+a)^c+b
@@ -127,7 +126,7 @@ g2=numdiff(list(myfun,a,b,c),x)
 
 // The exact gradient, i.e derivate belong x(1), is :
 exact2=c*(x+a)^(c-1)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index ed4a0c6..37e3188 100644 (file)
               set the nizs, nrzs and ndzs integer parameters of the "nird"
               common.</para>
 
-              <programlisting>      
+              <programlisting role = ""><![CDATA[ 
 common /nird/ nizs,nrzs,ndzs
-    </programlisting>
+ ]]></programlisting>
 
               <para>This allows Scilab to allocate memory inside its internal
               workspace. The second time the objective function is called, ind
@@ -342,9 +342,9 @@ common /nird/ nizs,nrzs,ndzs
     <para>Non-linear optimization routine for programs without constraints or
     with bound constraints:</para>
 
-    <programlisting>      
+    <programlisting role = ""><![CDATA[ 
 min costf(x) w.r.t x.
-    </programlisting>
+ ]]></programlisting>
 
     <para><literal>costf</literal> is an "external" i.e a Scilab function, a
     list or a string giving the name of a C or Fortran routine (see
@@ -361,9 +361,9 @@ min costf(x) w.r.t x.
           <para>If <literal>costf</literal> is a Scilab function, the calling
           sequence for <literal>costf</literal> must be:</para>
 
-          <programlisting>     
+          <programlisting role = ""><![CDATA[ 
 [f,g,ind]=costf(x,ind)
-    </programlisting>
+ ]]></programlisting>
 
           <para>Here, <literal>costf</literal> is a function which returns
           <literal>f</literal>, value (real number) of cost function at
@@ -404,17 +404,17 @@ min costf(x) w.r.t x.
                 <para>The interface of the Fortran subroutine computing the
                 objective must be :</para>
 
-                <programlisting> 
+                <programlisting role = ""><![CDATA[ 
 subroutine costf(ind,n,x,f,g,ti,tr,td)
-    </programlisting>
+ ]]></programlisting>
 
                 <para>with the following declarations:</para>
 
-                <programlisting>      
+                <programlisting role = ""><![CDATA[ 
 integer ind,n ti(*)
 double precision x(n),f,g(n),td(*)
 real tr(*)
-    </programlisting>
+ ]]></programlisting>
 
                 <para>The argument <literal>ind</literal> is described
                 below.</para>
@@ -434,9 +434,9 @@ real tr(*)
                 <para>The interface of the C function computing the objective
                 must be :</para>
 
-                <programlisting>      
+                <programlisting role = ""><![CDATA[ 
 void costf(int *ind, int *n, double *x, double *f, double *g, int *ti, float *tr, double *td)
-    </programlisting>
+ ]]></programlisting>
 
                 <para>The argument <literal>ind</literal> is described
                 below.</para>
@@ -473,7 +473,7 @@ void costf(int *ind, int *n, double *x, double *f, double *g, int *ti, float *tr
     issues so that a direct optimization may be to use the value of "ind" to
     compute "f" and "g" only when needed.</para>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 // External function written in Scilab
 xref=[1;2;3];x0=[1;-1;1]
 deff('[f,g,ind]=cost(x,ind)','f=0.5*norm(x-xref)^2,g=x-xref');
@@ -518,7 +518,7 @@ deff('[f,g,ind]=cost(x,ind)','f=my_f(x); ...
 // Simplest call
 xref=[1;2;3];x0=[1;-1;1]
 [f,xopt]=optim(cost,x0)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
@@ -535,10 +535,10 @@ xref=[1;2;3];x0=[1;-1;1]
     arrays ti and td are the same that the content of the Scilab variable, as
     expected.</para>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 // External function written in C (C compiler required)
 // write down the C code (Rosenbrock problem)
-C=['#include &lt;math.h&gt;'
+C=['#include <math.h>'
    'double sq(double x)'
    '{ return x*x;}'
    'void rosenc(int *ind, int *n, double *x, double *f, double *g, '
@@ -549,12 +549,12 @@ C=['#include &lt;math.h&gt;'
    '  p=td[0];'
    '  if (*ind==2||*ind==4) {'
    '    *f=1.0;'
-   '    for (i=1;i&lt;*n;i++)'
+   '    for (i=1;i<*n;i++)'
    '      *f+=p*sq(x[i]-sq(x[i-1]))+sq(1.0-x[i]);'
    '  }'
    '  if (*ind==3||*ind==4) {'
    '    g[0]=-4.0*p*(x[1]-sq(x[0]))*x[0];'
-   '    for (i=1;i&lt;*n-1;i++)'
+   '    for (i=1;i<*n-1;i++)'
    '      g[i]=2.0*p*(x[i]-sq(x[i-1]))-4.0*p*(x[i+1]-sq(x[i]))*x[i]-2.0*(1.0-x[i]);'
    '    g[*n-1]=2.0*p*(x[*n-1]-sq(x[*n-2]))-2.0*(1.0-x[*n-1]);'
    '  }'
@@ -571,7 +571,7 @@ link(l,'rosenc','c')
 x0=[40;10;50];
 p=100;
 [f,xo,go]=optim('rosenc',x0,'td',p)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
@@ -579,7 +579,7 @@ p=100;
 
     <para>The following is an example with a Fortran function.</para>
 
-    <programlisting role="example">    
+    <programlisting role="example"><![CDATA[ 
 // External function written in Fortran (Fortran compiler required)
 // write down the Fortran  code (Rosenbrock problem)
 F=[ '      subroutine rosenf(ind, n, x, f, g, ti, tr, td)'
@@ -600,7 +600,7 @@ F=[ '      subroutine rosenf(ind, n, x, f, g, ti, tr, td)'
     '        if(n.gt.2) then'
     '          do i=2,n-1'
     '            g(i)=2.0d0*p*(x(i)-x(i-1)**2)-4.0d0*p*(x(i+1)-x(i)**2)*x(i)'
-    '     &amp;           -2.0d0*(1.0d0-x(i))'
+    '     &           -2.0d0*(1.0d0-x(i))'
     '          enddo'
     '        endif'
     '        g(n)=2.0d0*p*(x(n)-x(n-1)**2)-2.0d0*(1.0d0-x(n))'
@@ -620,7 +620,7 @@ link(l,'rosenf','f')
 x0=[40;10;50];
 p=100;
 [f,xo,go]=optim('rosenf',x0,'td',p)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
@@ -646,14 +646,14 @@ p=100;
     Whenever the objective function is called, the izs, rzs and dzs arrays
     have the values that have been previously initialized.</para>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 // 
 // Define a fortran source code and compile it (fortran compiler required)
 //
 fortransource=['      subroutine rosenf(ind,n,x,f,g,izs,rzs,dzs)'
                'C     -------------------------------------------'
                'c     Example of cost function given by a subroutine'
-               'c     if n&lt;=2 returns ind=0'
+               'c     if n<=2 returns ind=0'
                'c     f.bonnans, oct 86'
                '      implicit double precision (a-h,o-z)'
                '      real rzs(1)'
@@ -693,7 +693,7 @@ fortransource=['      subroutine rosenf(ind,n,x,f,g,izs,rzs,dzs)'
                '        ip1=i+1'
                '        g(i)=2.0d+0*dzs(2)*(x(i)-x(im1)**2)'
                '30      g(i)=g(i) -4.0d+0*dzs(2)*(x(ip1)-x(i)**2)*x(i) - '
-               '     &amp;        2.0d+0*(1.0d+0-x(i))'
+               '     &        2.0d+0*(1.0d+0-x(i))'
                '      g(n)=2.0d+0*dzs(2)*(x(n)-x(nm1)**2) - 2.0d+0*(1.0d+0-x(n))'
                '      return'
                '      end'];
@@ -710,7 +710,7 @@ x0=1.2*ones(1,5);
 // Solve the problem
 //
 [f,x,g]=optim('rosenf',x0,'in');
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
@@ -731,18 +731,18 @@ x0=1.2*ones(1,5);
     instructions, which allows the compiler to import the "nird"
     symbol.</para>
 
-    <programlisting role="example">    
+    <programlisting role="example"><![CDATA[ 
 fortransource=['subroutine rosenf(ind,n,x,f,g,izs,rzs,dzs)'
                'cDEC$ IF DEFINED (FORDLL)'
                'cDEC$ ATTRIBUTES DLLIMPORT:: /nird/'
                'cDEC$ ENDIF'
                'C     -------------------------------------------'
                'c     Example of cost function given by a subroutine'
-               'c     if n&lt;=2 returns ind=0'
+               'c     if n<=2 returns ind=0'
                'c     f.bonnans, oct 86'
                '      implicit double precision (a-h,o-z)'
 [etc...]
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index b353806..deb0afa 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 //Find x in R^6 such that:
 //C1*x = b1 (3 equality constraints i.e me=3)
 C1= [1,-1,1,0,3,1;
@@ -174,7 +174,7 @@ C1= [1,-1,1,0,3,1;
      2,5,3,0,1,0];
 b1=[1;2;3];
 
-//C2*x &lt;= b2 (2 inequality constraints)
+//C2*x <= b2 (2 inequality constraints)
 C2=[0,1,0,1,2,-1;
     -1,0,2,1,1,0];
 b2=[-1;2.5];
@@ -191,7 +191,7 @@ b=[b1;b2];
 me=3;
 [x,lagr]=qld(Q,p,C,b,ci,cs,me)
 //Only linear constraints (1 to 4) are active (lagr(1:6)=0):
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index a1d4ab7..a980d35 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 // Find x in R^6 such that:
 // x'*C1 = b1 (3 equality constraints i.e me=3)
 C1= [ 1,-1, 2;
@@ -129,7 +129,7 @@ C1= [ 1,-1, 2;
       1, 6, 0];
 b1=[1;2;3];
 
-// x'*C2 &gt;= b2 (2 inequality constraints)
+// x'*C2 >= b2 (2 inequality constraints)
 C2= [ 0 ,1;
      -1, 0;
       0,-2;
@@ -144,7 +144,7 @@ p=[-1;-2;-3;-4;-5;-6]; Q=eye(6,6);
 me=3;
 [x,iact,iter,f]=qp_solve(Q,p,[C1 C2],[b1;b2],me)
 // Only linear constraints (1 to 4) are active 
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 2297f03..b1b8c4f 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 //Find x in R^6 such that:
 //C1*x = b1 (3 equality constraints i.e me=3)
 C1= [1,-1,1,0,3,1;
@@ -155,7 +155,7 @@ C1= [1,-1,1,0,3,1;
      2,5,3,0,1,0];
 b1=[1;2;3];
 
-//C2*x &lt;= b2 (2 inequality constraints)
+//C2*x <= b2 (2 inequality constraints)
 C2=[0,1,0,1,2,-1;
     -1,0,2,1,1,0];
 b2=[-1;2.5];
@@ -173,7 +173,7 @@ b=[b1;b2];
 me=3;
 [x,iact,iter,f]=qpsolve(Q,p,C,b,ci,cs,me)
 //Only linear constraints (1 to 4) are active 
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
@@ -196,16 +196,16 @@ me=3;
 
     <para>Let r be</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[  
 r=min(m,n)
- </programlisting>
+ ]]></programlisting>
 
     <para>Then the memory required by qpsolve during the computations
     is</para>
 
-    <programlisting> 
+    <programlisting role =""><![CDATA[ 
 2*n+r*(r+5)/2 + 2*m +1
- </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 3bd5382..b2f7890 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example">
-        [lf,ind]=aplat(list(1,2,list([3,1],'xxx',list([3,2,1]))));
-        recons(lf,ind)
-    </programlisting>
+    <programlisting role="example"><![CDATA[ 
+[lf,ind]=aplat(list(1,2,list([3,1],'xxx',list([3,2,1]))));
+recons(lf,ind)
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index cb84b30..380c034 100644 (file)
 
     <para>Convergence criterion:</para>
 
-    <programlisting> 
+    <programlisting role = ""><![CDATA[ 
 (1) maxiters is exceeded
 (2) duality gap is less than abstol
 (3) primal and dual objective are both positive and
 (4) reltol is negative and
     primal objective is less than tv or dual objective is greater
     than tv
-    </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example"> 
+    <programlisting role="example"><![CDATA[ 
 F0=[2,1,0,0;
     1,2,0,0;
     0,0,3,1
@@ -235,7 +235,7 @@ c'*x+trace(F0*Z)
 spec(F0+F1*x(1)+F2*x(2))
 trace(F1*Z)-c(1)
 trace(F2*Z)-c(2)
-  </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 0268fe3..ca45aee 100644 (file)
   <refsection>
     <title>Examples</title>
 
-    <programlisting role="example">
-        vec2list(1:4,ones(4,2))
-        vec2list(1:4,[2 1;1 2])
-        vec2list(1:4,ones(4,2),list(1,2,[3,1],[3,2,1]))
-    </programlisting>
+    <programlisting role="example"><![CDATA[ 
+vec2list(1:4,ones(4,2))
+vec2list(1:4,[2 1;1 2])
+vec2list(1:4,ones(4,2),list(1,2,[3,1],[3,2,1]))
+ ]]></programlisting>
   </refsection>
 
   <refsection>
index 502b40c..1448da7 100644 (file)
     algorithme du type méthode hybride de Powell. La Jacobienne peut être
     fournie (c'est fortement conseillé).</para>
 
-    <programlisting>
+    <programlisting role = ""><![CDATA[ 
 0 = fct(x) 
-      </programlisting>
+ ]]></programlisting>
 
     <para><literal>fct</literal> est une fonction "externe" Cette fonction
     renvoie <literal>v=fct(x)</literal> pour <literal>x</literal>
 
     <para>La séquence d'appel de <literal>fct</literal> est :</para>
 
-    <programlisting>
+    <programlisting role = ""><![CDATA[ 
 [v]=fct(x).
-      </programlisting>
+ ]]></programlisting>
 
     <para>Si <literal>fct</literal> est une chaîne de caractères, elle désigne
     le nom d'une subroutine Fortran ou C liée dynamiquement à Scilab, avec
     comme liste d'appel Fortran :</para>
 
-    <programlisting>
+    <programlisting role = ""><![CDATA[ 
 fct(n,x,v,iflag)
 integer n,iflag
 double precision x(n),v(n)
-      </programlisting>
+ ]]></programlisting>
 
     <para>ou alors pour une routine C :</para>
 
-    <programlisting>
+    <programlisting role = ""><![CDATA[ 
 fct(int *n, double x[],double v[],int *iflag)
-      </programlisting>
+ ]]></programlisting>
 
     <para>(voir <literal>link</literal>).</para>
 
@@ -177,9 +177,9 @@ fct(int *n, double x[],double v[],int *iflag)
 
     <para>La séquence d'appel de <literal>jac</literal> est :</para>
 
-    <programlisting>
+    <programlisting role = ""><![CDATA[ 
 [v]=jac(x).
-      </programlisting>
+ ]]></programlisting>
 
     <para>Si <literal>jac</literal> est une chaîne de caractères, elle désigne
     le nom d'une subroutine Fortran ou C liée dynamiquement à Scilab. Les
@@ -190,7 +190,7 @@ fct(int *n, double x[],double v[],int *iflag)
   <refsection>
     <title>Exemples</title>
 
-    <programlisting role="example">
+    <programlisting role="example"><![CDATA[ 
 // un exemple simple
 a=[1,7;2,8];b=[10;11];
 deff('[y]=fsol1(x)','y=a*x+b');
@@ -199,10 +199,11 @@ deff('[y]=fsolj1(x)','y=a');
 a*xres+b
 [xres]=fsolve([100;100],fsol1,fsolj1);
 a*xres+b
+
 // voir routines/default/Ex-fsolve.f
 [xres]=fsolve([100;100],'fsol1','fsolj1',1.e-7);
 a*xres+b
-    </programlisting>
+ ]]></programlisting>
   </refsection>
 
   <refsection>