m_qtlmap_solve_linear

[ Top ] [ TOOLS ] [ Modules ]

NAME

    m_qtlmap_solve_linear

DESCRIPTION

    set of functions to solve a general system of linear equations.

NOTES

SEE ALSO


solve_lin

[ Top ] [ m_qtlmap_solve_linear ] [ Subroutines ]

NAME

   solve_lin

DESCRIPTION

   general interface to solve a system of linear equations
   A * X = B

INPUTS

   A    : matrix
  LDA   : First dimension of A
  N     : the dimension of B
  B     : vector

OUTPUTS

  X     : the solution
 ERROR  : error message

 NOTE
  This module is not finalized. only the slatec method is defined....

SOURCE

49       subroutine solve_lin(A, LDA, N, B,X,ERROR)
50             integer                          , intent(in) ::   LDA,N
51             real(kind=dp)  , dimension(LDA,N), intent(in) ::   A
52             real(kind=dp)  , dimension(N)    , intent(in) ::   B
53             real(kind=dp)  ,dimension(N)    , intent(out) ::   X
54             integer                         , intent(out) ::   ERROR
55 
56             call solve_lin_dgefs(A, LDA, N, B,X,ERROR)
57 
58       end subroutine solve_lin

solve_lin_dgefs

[ Top ] [ m_qtlmap_solve_linear ] [ Subroutines ]

NAME

   solve_lin_dgefs

DESCRIPTION

   use the slatec function DGEFS (LU method) to solve a system of linear equations
   A * X = B

   *** Error Messages Printed ***

    IND=-1  terminal   N is greater than LDA.
    IND=-2  terminal   N is less than 1.
    IND=-3  terminal   ITASK is less than 1.
    IND=-4  terminal   The matrix A is computationally singular.
                         A solution has not been computed.
    IND=-10 warning    The solution has no apparent significance.
                         The solution may be inaccurate or the matrix
                         A may be poorly scaled.

INPUTS

   A    : matrix
  LDA   : First dimension of A
  N     : the dimension of B
  B     : vector

OUTPUTS

  X     : the solution
 ERROR  : error message

SOURCE

 88       subroutine solve_lin_dgefs(A, LDA, N, B,X,ERROR)
 89             integer                          , intent(in) ::   LDA,N
 90             real(kind=dp)  , dimension(LDA,N), intent(in) ::   A
 91             real(kind=dp)  , dimension(N)    , intent(in) ::   B
 92             real(kind=dp)  ,dimension(N)    , intent(out) ::   X
 93             integer                         , intent(out) ::   ERROR
 94 
 95             real (kind=dp) , dimension(N)           :: WORK
 96             integer, dimension(N)                   :: IWORK
 97 
 98             external :: DGEFS
 99 !
100            ERROR=0
101            X=B
102            ! Solve a general system of linear equations.
103            call DGEFS (A, LDA, N, X, 1 , ERROR, WORK, IWORK)
104       end subroutine solve_lin_dgefs