[Master Index] [Index for PublicToolbox/regutools]

# deriv2

## (PublicToolbox/regutools/deriv2.m in BrainStorm 2.0 (Alpha))

### Function Synopsis

    [A,b,x] = deriv2(n,case)

### Help Text

    DERIV2 Test problem: computation of the second derivative.

     [A,b,x] = deriv2(n,case)

     This is a mildly ill-posed problem.  It is a discretization of a
     first kind Fredholm integral equation whose kernel K is the
     Green's function for the second derivative:
        K(s,t) = | s(t-1)  ,  s <  t .
                 | t(s-1)  ,  s >= t
     Both integration intervals are [0,1], and as right-hand side g
     and correspond solution f one can choose between the following:
        case = 1 : g(s) = (s^3 - s)/6          ,  f(t) = t
        case = 2 : g(s) = exp(s) + (1-e)s - 1  ,  f(t) = exp(t)
        case = 3 : g(s) = | (4s^3 - 3s)/24               ,  s <  0.5
                          | (-4s^3 + 12s^2 - 9s + 1)/24  ,  s >= 0.5
                   f(t) = | t    ,  t <  0.5
                          | 1-t  ,  t >= 0.5

### Listing of function C:\BrainStorm_2001\PublicToolbox\regutools\deriv2.m

    function [A,b,x] = deriv2(n,case)
    %DERIV2 Test problem: computation of the second derivative.
    %
    % [A,b,x] = deriv2(n,case)
    %
    % This is a mildly ill-posed problem.  It is a discretization of a
    % first kind Fredholm integral equation whose kernel K is the
    % Green's function for the second derivative:
    %    K(s,t) = | s(t-1)  ,  s <  t .
    %             | t(s-1)  ,  s >= t
    % Both integration intervals are [0,1], and as right-hand side g
    % and correspond solution f one can choose between the following:
    %    case = 1 : g(s) = (s^3 - s)/6          ,  f(t) = t
    %    case = 2 : g(s) = exp(s) + (1-e)s - 1  ,  f(t) = exp(t)
    %    case = 3 : g(s) = | (4s^3 - 3s)/24               ,  s <  0.5
    %                      | (-4s^3 + 12s^2 - 9s + 1)/24  ,  s >= 0.5
    %               f(t) = | t    ,  t <  0.5
    %                      | 1-t  ,  t >= 0.5

    % References.  The first two examples are from L. M. Delves & J. L.
    % Mohamed, "Computational Methods for Integral Equations", Cambridge
    % University Press, 1985; p. 310.  The third example is from A. K.
    % Louis & P. Maass, "A mollifier method for linear operator equations
    % of the first kind", Inverse Problems 6 (1990), 427-440.

    % Discretized by Galerkin method with orthonormal box functions.

    % Per Christian Hansen, UNI-C, 05/28/93.

    % Initialization.
    if (nargin==1), case = 1; end
    h = 1/n; sqh = sqrt(h); h32 = h*sqh; h2 = h^2; sqhi = 1/sqh;
    t = 2/3; A = zeros(n,n);

    % Compute the matrix A.
    for i=1:n
      A(i,i) = h2*((i^2 - i + 0.25)*h - (i - t));
      for j=1:i-1
        A(i,j) = h2*(j-0.5)*((i-0.5)*h-1);
      end
    end
    A = A + tril(A,-1)';

    % Compute the right-hand side vector b.
    if (nargout>1)
      b = zeros(n,1);
      if (case==1)
        for i=1:n
          b(i) = h32*(i-0.5)*((i^2 + (i-1)^2)*h2/2 - 1)/6;
        end
      elseif (case==2)
        ee = 1 - exp(1);
        for i=1:n
          b(i) = sqhi*(exp(i*h) - exp((i-1)*h) + ee*(i-0.5)*h2 - h);
        end
      elseif (case==3)
        if (rem(n,2)~=0), error('Order n must be even'), else
          for i=1:n/2
            s12 = (i*h)^2; s22 = ((i-1)*h)^2;
            b(i) = sqhi*(s12 + s22 - 1.5)*(s12 - s22)/24;
          end
          for i=n/2+1:n
            s1 = i*h; s12 = s1^2; s2 = (i-1)*h; s22 = s2^2;
            b(i) = sqhi*(-(s12+s22)*(s12-s22) + 4*(s1^3 - s2^3) - ...
                        4.5*(s12 - s22) + h)/24;
          end
        end
      else
        error('Illegal value of case')
      end
    end

    % Compute the solution vector x.
    if (nargout==3)
      x = zeros(n,1);
      if (case==1)
        for i=1:n, x(i) = h32*(i-0.5); end
      elseif(case==2)
        for i=1:n, x(i) = sqhi*(exp(i*h) - exp((i-1)*h)); end
      else
        for i=1:n/2,   x(i) = sqhi*((i*h)^2 - ((i-1)*h)^2)/2; end
        for i=n/2+1:n, x(i) = sqhi*(h - ((i*h)^2 - ((i-1)*h)^2)/2); end
      end
    end

Produced by color_mat2html, a customized BrainStorm 2.0 (Alpha) version of mat2html on Tue Nov 2 16:17:59 2004
Cross-Directory links are: ON