<?xml version="1.0" encoding="ISO-8859-1"?><refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" version="5.0-subset Scilab" xml:lang="en" xml:id="op_fitzinf"><info><pubdate>09-Jul-2008</pubdate></info><refnamediv><refname>op_fitzinf</refname><refpurpose>Evaluate the Fitzpatrick function of infinite order of an operator on a grid using Rockafellar functions.</refpurpose></refnamediv>
  
   
  
   
  
   
  
   
  
   

  
   <refsynopsisdiv><title>Calling Sequence</title><synopsis>F = op_fitzinf(B, x, xstar)</synopsis></refsynopsisdiv>

  
   <refsection><title>Parameters</title>
    
      <variablelist>
      
         <varlistentry>
        
            <term>B</term>
        
            <listitem>
          
               <para>matrix. An matrix [a;bm;bp] where a, bm (b-), and bp (b+) are row vectors as defined below.
          </para>
        
            </listitem>
      
         </varlistentry>
      
         <varlistentry>
        
            <term>x</term>
        
            <listitem>
          
               <para>column vector. The x values of the grid on which the Fitzpatrick function is evaluated.
          </para>
        
            </listitem>
      
         </varlistentry>
      
         <varlistentry>
        
            <term>xstar</term>
        
            <listitem>
          
               <para>column vector. The x* values of the grid on which the Fitzpatrick function is evaluated.
          </para>
        
            </listitem>
      
         </varlistentry>
    
      </variablelist>
  
   </refsection>

  
   <refsection><title>Description</title>
      
         <para>
        Evaluates the Fitzpatrick function of infinite order of an operator A on a grid (x,x*) using Rockafellar functions, where B is defined as:
<!--<programlisting><![CDATA[
    B : x -> conv(A*x):
          m
        union ( {a(i)} cross [bm(i),bp(i)] )
         i=1

    with a(1) < a(2) < ... < a(m),
         bm(1) <= bp(1) <= bm(2) <= bp(2) <= ... <= bm(m) <= bp(m),
         a(0) = bm(0) = bp(0) = -%inf,
         a(m+1) = bm(m+1) = bp(m+1) = %inf,
         m = size(B,2).
]]></programlisting>-->
			<para>
				<inlinemediaobject>
					<imageobject>
						<imagedata fileref="op_ImagesOfEquationsByLatex/op_fitzinf/op_fitzinf_1.png"/>
					</imageobject>
				</inlinemediaobject>
			</para>
      
         </para>
      
         <para>
        This function computes the Rockafellar functions R(A,a(k)) for all k=1..m, evaluates the functions at (x,x*), then uses LLT1d algorithm to find the maximum result.  It runs in O(m^2 + m*Nx + N) time, or O(m^2) when m==Nx==Nxstar.  See also <link linkend="plq_rock">plq_rock</link>, which returns PLQ Rockafellar functions, and <link linkend="plq_fitzinf0">plq_fitzinf0</link>, which returns PLQ Fitzpatrick functions.
<!--<programlisting><![CDATA[
    F(A, %inf, x, xstar) =    sup     [ a*xstar + R(A,a)(x) ]
                           a in Dom A

    R(A, k)(x) = { (x-a(i))*bm(i) + sum(j=i+1:k, (a(j-1)-a(j))*bm(j)) , if a(i-1) < x <= a(i) <= a(k)
                 { (x-a(i))*bp(i) + sum(j=k:i-1, (a(j+1)-a(j))*bp(j)) , if a(k) <= a(i) <= x <= a(i+1)

    m = size(A, 2);
    Nx = size(x, 1);
    Nxstar = size(xstar, 1);
    N = Nx * Nxstar;
]]></programlisting>-->
			<para>
				<inlinemediaobject>
					<imageobject>
						<imagedata fileref="op_ImagesOfEquationsByLatex/op_fitzinf/op_fitzinf_2.png"/>
					</imageobject>
				</inlinemediaobject>
			</para>
      
         </para>
    
   </refsection>

  
   <refsection><title>Examples</title><programlisting role="example"><![CDATA[
a = -4:4;
bm = [-15,-13,-10,-7,-6,-4,0.5,1,1];
bp = [-13,-11,- 8,-6,-5, 0,  1,1,2];
B = [a;bm;bp];
x = -10:10;
xstar = -10:10;
F = op_fitzinf(B, x, xstar),

clf(); alpha=30; theta=60;
plot3d(x, xstar, F, alpha=alpha, theta=theta);
  ]]></programlisting></refsection>

  
   <refsection><title>See Also</title><simplelist type="inline">
    
      <member>
         <link linkend="op_fitz_brute">op_fitz_brute</link>
      </member>
    
      <member>
         <link linkend="op_fitz_direct">op_fitz_direct</link>
      </member>
    
      <member>
         <link linkend="op_fitz">op_fitz</link>
      </member>
    
      <member>
         <link linkend="plq_fitzinf0">plq_fitzinf0</link>
      </member>
    
      <member>
         <link linkend="plq_fitzinf0_direct">plq_fitzinf0_direct</link>
      </member>
    
      <member>
         <link linkend="plq_rock">plq_rock</link>
      </member>
  
   </simplelist></refsection>

  
   <refsection><title>Authors</title><para>
    
      <literal>Bryan Gardiner</literal>, University of British Columbia, BC, Canada
  </para></refsection>

</refentry>