Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 615120 Details for
Bug 831690
internal compiler error: Segmentation fault
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
fortran source code that reproduces the problem
stpt05.f (text/plain), 7.81 KB, created by
Mark Sienkiewicz
on 2012-09-20 20:52:52 UTC
(
hide
)
Description:
fortran source code that reproduces the problem
Filename:
MIME Type:
Creator:
Mark Sienkiewicz
Created:
2012-09-20 20:52:52 UTC
Size:
7.81 KB
patch
obsolete
> SUBROUTINE STPT05( UPLO, TRANS, DIAG, N, NRHS, AP, B, LDB, X, LDX, > $ XACT, LDXACT, FERR, BERR, RESLTS ) >* >* -- LAPACK test routine (version 3.1) -- >* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. >* November 2006 >* >* .. Scalar Arguments .. > CHARACTER DIAG, TRANS, UPLO > INTEGER LDB, LDX, LDXACT, N, NRHS >* .. >* .. Array Arguments .. > REAL AP( * ), B( LDB, * ), BERR( * ), FERR( * ), > $ RESLTS( * ), X( LDX, * ), XACT( LDXACT, * ) >* .. >* >* Purpose >* ======= >* >* STPT05 tests the error bounds from iterative refinement for the >* computed solution to a system of equations A*X = B, where A is a >* triangular matrix in packed storage format. >* >* RESLTS(1) = test of the error bound >* = norm(X - XACT) / ( norm(X) * FERR ) >* >* A large value is returned if this ratio is not less than one. >* >* RESLTS(2) = residual from the iterative refinement routine >* = the maximum of BERR / ( (n+1)*EPS + (*) ), where >* (*) = (n+1)*UNFL / (min_i (abs(A)*abs(X) +abs(b))_i ) >* >* Arguments >* ========= >* >* UPLO (input) CHARACTER*1 >* Specifies whether the matrix A is upper or lower triangular. >* = 'U': Upper triangular >* = 'L': Lower triangular >* >* TRANS (input) CHARACTER*1 >* Specifies the form of the system of equations. >* = 'N': A * X = B (No transpose) >* = 'T': A'* X = B (Transpose) >* = 'C': A'* X = B (Conjugate transpose = Transpose) >* >* DIAG (input) CHARACTER*1 >* Specifies whether or not the matrix A is unit triangular. >* = 'N': Non-unit triangular >* = 'U': Unit triangular >* >* N (input) INTEGER >* The number of rows of the matrices X, B, and XACT, and the >* order of the matrix A. N >= 0. >* >* NRHS (input) INTEGER >* The number of columns of the matrices X, B, and XACT. >* NRHS >= 0. >* >* AP (input) REAL array, dimension (N*(N+1)/2) >* The upper or lower triangular matrix A, packed columnwise in >* a linear array. The j-th column of A is stored in the array >* AP as follows: >* if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j; >* if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n. >* If DIAG = 'U', the diagonal elements of A are not referenced >* and are assumed to be 1. >* >* B (input) REAL array, dimension (LDB,NRHS) >* The right hand side vectors for the system of linear >* equations. >* >* LDB (input) INTEGER >* The leading dimension of the array B. LDB >= max(1,N). >* >* X (input) REAL array, dimension (LDX,NRHS) >* The computed solution vectors. Each vector is stored as a >* column of the matrix X. >* >* LDX (input) INTEGER >* The leading dimension of the array X. LDX >= max(1,N). >* >* XACT (input) REAL array, dimension (LDX,NRHS) >* The exact solution vectors. Each vector is stored as a >* column of the matrix XACT. >* >* LDXACT (input) INTEGER >* The leading dimension of the array XACT. LDXACT >= max(1,N). >* >* FERR (input) REAL array, dimension (NRHS) >* The estimated forward error bounds for each solution vector >* X. If XTRUE is the true solution, FERR bounds the magnitude >* of the largest entry in (X - XTRUE) divided by the magnitude >* of the largest entry in X. >* >* BERR (input) REAL array, dimension (NRHS) >* The componentwise relative backward error of each solution >* vector (i.e., the smallest relative change in any entry of A >* or B that makes X an exact solution). >* >* RESLTS (output) REAL array, dimension (2) >* The maximum over the NRHS solution vectors of the ratios: >* RESLTS(1) = norm(X - XACT) / ( norm(X) * FERR ) >* RESLTS(2) = BERR / ( (n+1)*EPS + (*) ) >* >* ===================================================================== >* >* .. Parameters .. > REAL ZERO, ONE > PARAMETER ( ZERO = 0.0E+0, ONE = 1.0E+0 ) >* .. >* .. Local Scalars .. > LOGICAL NOTRAN, UNIT, UPPER > INTEGER I, IFU, IMAX, J, JC, K > REAL AXBI, DIFF, EPS, ERRBND, OVFL, TMP, UNFL, XNORM >* .. >* .. External Functions .. > LOGICAL LSAME > INTEGER ISAMAX > REAL SLAMCH > EXTERNAL LSAME, ISAMAX, SLAMCH >* .. >* .. Intrinsic Functions .. > INTRINSIC ABS, MAX, MIN >* .. >* .. Executable Statements .. >* >* Quick exit if N = 0 or NRHS = 0. >* > IF( N.LE.0 .OR. NRHS.LE.0 ) THEN > RESLTS( 1 ) = ZERO > RESLTS( 2 ) = ZERO > RETURN > END IF >* > EPS = SLAMCH( 'Epsilon' ) > UNFL = SLAMCH( 'Safe minimum' ) > OVFL = ONE / UNFL > UPPER = LSAME( UPLO, 'U' ) > NOTRAN = LSAME( TRANS, 'N' ) > UNIT = LSAME( DIAG, 'U' ) >* >* Test 1: Compute the maximum of >* norm(X - XACT) / ( norm(X) * FERR ) >* over all the vectors X and XACT using the infinity-norm. >* > ERRBND = ZERO > DO 30 J = 1, NRHS > IMAX = ISAMAX( N, X( 1, J ), 1 ) > XNORM = MAX( ABS( X( IMAX, J ) ), UNFL ) > DIFF = ZERO > DO 10 I = 1, N > DIFF = MAX( DIFF, ABS( X( I, J )-XACT( I, J ) ) ) > 10 CONTINUE >* > IF( XNORM.GT.ONE ) THEN > GO TO 20 > ELSE IF( DIFF.LE.OVFL*XNORM ) THEN > GO TO 20 > ELSE > ERRBND = ONE / EPS > GO TO 30 > END IF >* > 20 CONTINUE > IF( DIFF / XNORM.LE.FERR( J ) ) THEN > ERRBND = MAX( ERRBND, ( DIFF / XNORM ) / FERR( J ) ) > ELSE > ERRBND = ONE / EPS > END IF > 30 CONTINUE > RESLTS( 1 ) = ERRBND >* >* Test 2: Compute the maximum of BERR / ( (n+1)*EPS + (*) ), where >* (*) = (n+1)*UNFL / (min_i (abs(A)*abs(X) +abs(b))_i ) >* > IFU = 0 > IF( UNIT ) > $ IFU = 1 > DO 90 K = 1, NRHS > DO 80 I = 1, N > TMP = ABS( B( I, K ) ) > IF( UPPER ) THEN > JC = ( ( I-1 )*I ) / 2 > IF( .NOT.NOTRAN ) THEN > DO 40 J = 1, I - IFU > TMP = TMP + ABS( AP( JC+J ) )*ABS( X( J, K ) ) > 40 CONTINUE > IF( UNIT ) > $ TMP = TMP + ABS( X( I, K ) ) > ELSE > JC = JC + I > IF( UNIT ) THEN > TMP = TMP + ABS( X( I, K ) ) > JC = JC + I > END IF > DO 50 J = I + IFU, N > TMP = TMP + ABS( AP( JC ) )*ABS( X( J, K ) ) > JC = JC + J > 50 CONTINUE > END IF > ELSE > IF( NOTRAN ) THEN > JC = I > DO 60 J = 1, I - IFU > TMP = TMP + ABS( AP( JC ) )*ABS( X( J, K ) ) > JC = JC + N - J > 60 CONTINUE > IF( UNIT ) > $ TMP = TMP + ABS( X( I, K ) ) > ELSE > JC = ( I-1 )*( N-I ) + ( I*( I+1 ) ) / 2 > IF( UNIT ) > $ TMP = TMP + ABS( X( I, K ) ) > DO 70 J = I + IFU, N > TMP = TMP + ABS( AP( JC+J-I ) )*ABS( X( J, K ) ) > 70 CONTINUE > END IF > END IF > IF( I.EQ.1 ) THEN > AXBI = TMP > ELSE > AXBI = MIN( AXBI, TMP ) > END IF > 80 CONTINUE > TMP = BERR( K ) / ( ( N+1 )*EPS+( N+1 )*UNFL / > $ MAX( AXBI, ( N+1 )*UNFL ) ) > IF( K.EQ.1 ) THEN > RESLTS( 2 ) = TMP > ELSE > RESLTS( 2 ) = MAX( RESLTS( 2 ), TMP ) > END IF > 90 CONTINUE >* > RETURN >* >* End of STPT05 >* > END
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 831690
:
591536
| 615120