OSDN Git Service

new repo
[bytom/vapor.git] / vendor / gonum.org / v1 / gonum / lapack / internal / testdata / dlasqtest / Readme.md
1 This set of codes generates tests for the dlasq* routines.
2
3 The high level routines are testdlasq*.f90. The testdlasq*.f90 routines are intended in combination with the routines in gonum/lapack/testlapack. 
4 During execution, these high-level routines record the inputs and outputs
5 to the executed subroutines. For example, testdlasq3, when executed,
6 generates files gen4tests.txt and gen5tests.txt that record the inputs
7 and outputs to the evaluation of dlasq4 and dlasq5 respectively. The output 
8 format in gen*tests.txt is the struct literal that matches the respective test
9 in gonum/lapack/testlapack/dlasq*.go. Thus, these generated tests can be copied
10 into the testing routine to test the native implementation.
11
12 The testing routines in testlapack have code for generating inputs for these 
13 fortran routines. Typically, one would isolate the particular failing test,
14 and modify the testlapack routine to print it to the terminal, for example
15 in testlapack/dlasq3.go one might add
16
17     printDlasq3FortranInput(test)
18     os.Exit(1)
19
20 This prints variable initialization for dlasq3 routine to the terminal, which
21 can be copied and pasted into testdlasq3.f90. Please note that this process
22 is not completely automated. Some of the other initialization may need to
23 change, particularly the size allocation of the data array(s).