Purpose
             =======
             
             DLAEDA computes the Z vector corresponding to the merge step in the
             CURLVLth step of the merge process with TLVLS steps for the CURPBMth
             problem.
             
            
Namespace: DotNumerics.LinearAlgebra.CSLapackAssembly: DWSIM.MathOps.DotNumerics (in DWSIM.MathOps.DotNumerics.dll) Version: 1.0.0.0 (1.0.0.0)
 Syntax
Syntaxpublic void Run(
	int N,
	int TLVLS,
	int CURLVL,
	int CURPBM,
	int[] PRMPTR,
	int offset_prmptr,
	int[] PERM,
	int offset_perm,
	int[] GIVPTR,
	int offset_givptr,
	int[] GIVCOL,
	int offset_givcol,
	double[] GIVNUM,
	int offset_givnum,
	double[] Q,
	int offset_q,
	int[] QPTR,
	int offset_qptr,
	ref double[] Z,
	int offset_z,
	ref double[] ZTEMP,
	int offset_ztemp,
	ref int INFO
)
Public Sub Run ( 
	N As Integer,
	TLVLS As Integer,
	CURLVL As Integer,
	CURPBM As Integer,
	PRMPTR As Integer(),
	offset_prmptr As Integer,
	PERM As Integer(),
	offset_perm As Integer,
	GIVPTR As Integer(),
	offset_givptr As Integer,
	GIVCOL As Integer(),
	offset_givcol As Integer,
	GIVNUM As Double(),
	offset_givnum As Integer,
	Q As Double(),
	offset_q As Integer,
	QPTR As Integer(),
	offset_qptr As Integer,
	ByRef Z As Double(),
	offset_z As Integer,
	ByRef ZTEMP As Double(),
	offset_ztemp As Integer,
	ByRef INFO As Integer
)
Parameters
- N  Int32
- 
             (input) INTEGER
             The dimension of the symmetric tridiagonal matrix.  N .GE. 0.
            
- TLVLS  Int32
- 
             (input) INTEGER
             The total number of merging levels in the overall divide and
             conquer tree.
            
- CURLVL  Int32
- 
             (input) INTEGER
             The current level in the overall merge routine,
             0 .LE. curlvl .LE. tlvls.
            
- CURPBM  Int32
- 
             (input) INTEGER
             The current problem in the current level in the overall
             merge routine (counting from upper left to lower right).
            
- PRMPTR  Int32
- 
             (input) INTEGER array, dimension (N lg N)
             Contains a list of pointers which indicate where in PERM a
             level's permutation is stored.  PRMPTR(i+1) - PRMPTR(i)
             indicates the size of the permutation and incidentally the
             size of the full, non-deflated problem.
            
- offset_prmptr  Int32
-  
- PERM  Int32
- 
             (input) INTEGER array, dimension (N lg N)
             Contains the permutations (from deflation and sorting) to be
             applied to each eigenblock.
            
- offset_perm  Int32
-  
- GIVPTR  Int32
- 
             (input) INTEGER array, dimension (N lg N)
             Contains a list of pointers which indicate where in GIVCOL a
             level's Givens rotations are stored.  GIVPTR(i+1) - GIVPTR(i)
             indicates the number of Givens rotations.
            
- offset_givptr  Int32
-  
- GIVCOL  Int32
- 
             (input) INTEGER array, dimension (2, N lg N)
             Each pair of numbers indicates a pair of columns to take place
             in a Givens rotation.
            
- offset_givcol  Int32
-  
- GIVNUM  Double
- 
             (input) DOUBLE PRECISION array, dimension (2, N lg N)
             Each number indicates the S value to be used in the
             corresponding Givens rotation.
            
- offset_givnum  Int32
-  
- Q  Double
- 
             (input) DOUBLE PRECISION array, dimension (N**2)
             Contains the square eigenblocks from previous levels, the
             starting positions for blocks are given by QPTR.
            
- offset_q  Int32
-  
- QPTR  Int32
- 
             (input) INTEGER array, dimension (N+2)
             Contains a list of pointers which indicate where in Q an
             eigenblock is stored.  SQRT( QPTR(i+1) - QPTR(i) ) indicates
             the size of the block.
            
- offset_qptr  Int32
-  
- Z  Double
- 
             (output) DOUBLE PRECISION array, dimension (N)
             On output this vector contains the updating vector (the last
             row of the first sub-eigenvector matrix and the first row of
             the second sub-eigenvector matrix).
            
- offset_z  Int32
-  
- ZTEMP  Double
- 
             (workspace) DOUBLE PRECISION array, dimension (N)
            
- offset_ztemp  Int32
-  
- INFO  Int32
- 
             (output) INTEGER
             = 0:  successful exit.
             .LT. 0:  if INFO = -i, the i-th argument had an illegal value.
            
 See Also
See Also