From 04b81a51413d81967fbe1ce6ddbfa5812c6a865b Mon Sep 17 00:00:00 2001 From: Benjamin Date: Fri, 2 Oct 2026 17:06:36 +0200 Subject: [PATCH] feat: add `lapack/base/dla-porpvgrw` Implement reciprocal Cholesky pivot growth with JavaScript and C kernels, optional Node-API execution, strided scratch views and independent finite Reference LAPACK regression coverage. Add the complete package surface for accepted RFC #2464. Assisted-by: OpenAI Codex --- .../@stdlib/lapack/base/dla-porpvgrw/NOTICE | 48 + .../lapack/base/dla-porpvgrw/README.md | 169 + .../base/dla-porpvgrw/benchmark/benchmark.js | 73 + .../benchmark/benchmark.native.js | 78 + .../base/dla-porpvgrw/benchmark/c/Makefile | 146 + .../base/dla-porpvgrw/benchmark/c/benchmark.c | 86 + .../lapack/base/dla-porpvgrw/binding.gyp | 176 + .../lapack/base/dla-porpvgrw/docs/repl.txt | 75 + .../base/dla-porpvgrw/docs/types/index.d.ts | 79 + .../base/dla-porpvgrw/docs/types/test.ts | 56 + .../base/dla-porpvgrw/examples/c/Makefile | 146 + .../base/dla-porpvgrw/examples/c/example.c | 36 + .../base/dla-porpvgrw/examples/index.js | 29 + .../lapack/base/dla-porpvgrw/include.gypi | 53 + .../include/stdlib/lapack/base/dla_porpvgrw.h | 46 + .../lapack/base/dla-porpvgrw/lib/base.js | 99 + .../base/dla-porpvgrw/lib/can_use_native.js | 122 + .../lapack/base/dla-porpvgrw/lib/factory.js | 156 + .../lapack/base/dla-porpvgrw/lib/index.js | 34 + .../lapack/base/dla-porpvgrw/lib/main.js | 26 + .../lapack/base/dla-porpvgrw/lib/native.js | 42 + .../lapack/base/dla-porpvgrw/manifest.json | 108 + .../lapack/base/dla-porpvgrw/package.json | 77 + .../lapack/base/dla-porpvgrw/src/Makefile | 70 + .../lapack/base/dla-porpvgrw/src/addon.c | 93 + .../base/dla-porpvgrw/src/dla_porpvgrw.c | 46 + .../dla-porpvgrw/src/dla_porpvgrw_ndarray.c | 112 + .../lapack/base/dla-porpvgrw/test/common.js | 259 + .../dla-porpvgrw/test/fixtures/lapack.json | 8186 +++++++++++++++++ .../lapack/base/dla-porpvgrw/test/test.js | 31 + .../base/dla-porpvgrw/test/test.native.js | 82 + 31 files changed, 10839 insertions(+) create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/NOTICE create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/README.md create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.native.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/Makefile create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/benchmark.c create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/binding.gyp create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/repl.txt create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/index.d.ts create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/test.ts create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/Makefile create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/example.c create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/index.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/include.gypi create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/include/stdlib/lapack/base/dla_porpvgrw.h create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/base.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/can_use_native.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/factory.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/index.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/main.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/native.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/manifest.json create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/package.json create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/Makefile create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/addon.c create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw.c create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw_ndarray.c create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/common.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/fixtures/lapack.json create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.js create mode 100644 lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.native.js diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/NOTICE b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/NOTICE new file mode 100644 index 000000000000..8d59524fac5f --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/NOTICE @@ -0,0 +1,48 @@ +Copyright (c) 1992-2025 The University of Tennessee and The University + of Tennessee Research Foundation. All rights + reserved. +Copyright (c) 2000-2025 The University of California Berkeley. All + rights reserved. +Copyright (c) 2006-2025 The University of Colorado Denver. All rights + reserved. + +$COPYRIGHT$ + +Additional copyrights may follow + +$HEADER$ + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer listed + in this license in the documentation and/or other materials + provided with the distribution. + +- Neither the name of the copyright holders nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +The copyright holders provide no reassurances that the source code +provided does not infringe any patent, copyright, or any other +intellectual property rights of third parties. The copyright holders +disclaim any liability to any recipient for claims brought against +recipient by any third party for infringement of that parties +intellectual property rights. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/README.md b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/README.md new file mode 100644 index 000000000000..75c9d75c00aa --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/README.md @@ -0,0 +1,169 @@ + + + +# dlaPorpvgrw + +> Compute the reciprocal Cholesky pivot-growth factor. + +The routine inspects the selected stored triangle of the leading `NCOLS`-by-`NCOLS` square prefix of an original matrix `A` and a supplied Cholesky factor `AF`. For each stored column, it computes maximum absolute entries of `A` and `AF`, then returns the minimum of their ratios and `1`. Columns with zero factor maxima are ignored. Both inputs are read-only; no factorization or symmetric completion is performed. + +
+ +## Usage + +```javascript +var dlaPorpvgrw = require( '@stdlib/lapack/base/dla-porpvgrw' ); +``` + +#### dlaPorpvgrw( order, uplo, NCOLS, A, LDA, AF, LDAF, WORK ) + +Computes reciprocal pivot growth for finite entries in a supplied original matrix and triangular factor. + +- `order`: `'row-major'` or `'column-major'` storage. +- `uplo`: `'upper'` or `'lower'` stored triangle. +- `NCOLS`: nonnegative safe integer specifying both dimensions of the inspected leading prefix. +- `A`: original `Float64Array` matrix storage. +- `LDA`: safe integer leading dimension of `A`, at least `NCOLS` for positive prefixes. +- `AF`: `Float64Array` containing the supplied upper or lower Cholesky factor, or a corresponding leading factor prefix. +- `LDAF`: independent safe integer leading dimension of `AF`, at least `NCOLS` for positive prefixes. +- `WORK`: `Float64Array` scratch storage containing at least `2*NCOLS` indexed entries. + +For column-major storage, element `(i,j)` is at `i+j*LD`; for row-major storage it is at `i*LD+j`. Upper storage reads rows `0..j` of column `j`; lower storage reads rows `j..NCOLS-1`. The unused triangle, padding and trailing submatrix are never read. Upper and lower results need not coincide. + +`WORK[0..NCOLS-1]` receives factor column maxima; `WORK[NCOLS..2*NCOLS-1]` receives original stored-column maxima. All maxima start at positive zero. Zero factor columns are ignored, even when their original maxima are nonzero; if all denominators are zero the result is `1`. A zero original maximum with a positive denominator yields `0`. + +```javascript +var Float64Array = require( '@stdlib/array/float64' ); + +var A = new Float64Array( [ 0.25, 0.0, 0.0, 4.0 ] ); +var AF = new Float64Array( [ 0.5, 0.0, 0.0, 2.0 ] ); +var WORK = new Float64Array( 4 ); + +var v = dlaPorpvgrw( 'row-major', 'upper', 2, A, 2, AF, 2, WORK ); +// returns 0.5 + +// WORK => [ 0.5, 2.0, 0.25, 4.0 ] +``` + +Invalid layout or triangle selectors throw a `TypeError`. Invalid prefix sizes or active integer metadata throw a `RangeError`. After validating selectors and `NCOLS`, an empty prefix returns `1` without inspecting any input, scratch storage, leading dimension, stride or offset. + +#### dlaPorpvgrw.ndarray( uplo, NCOLS, A, ... ) + +Uses independent element strides and offsets for both matrices and scratch storage. Matrix indices are `offsetA+i*strideA1+j*strideA2` and `offsetAF+i*strideAF1+j*strideAF2`. Logical scratch entry `k` is at `offsetWork+k*strideWork`. + +For positive prefixes, all strides and offsets must be signed safe integers and `strideWork` must be nonzero. Negative and nonunit strides are supported; input read strides may also be zero. Only the exact `2*NCOLS` logical scratch entries are written. + +```javascript +var Float64Array = require( '@stdlib/array/float64' ); + +var A = new Float64Array( [ 4.0, 0.0, 0.0, 0.25 ] ); +var AF = new Float64Array( [ 2.0, 0.0, 0.0, 0.5 ] ); +var WORK = new Float64Array( 8 ); + +var v = dlaPorpvgrw.ndarray( 'upper', 2, A, -2, -1, 3, AF, -2, -1, 3, WORK, -2, 6 ); +// returns 0.5 + +// WORK => [ 4.0, 0.0, 0.25, 0.0, 2.0, 0.0, 0.5, 0.0 ] +``` + +All referenced matrix and scratch indices must be in bounds. The two read-only inputs may alias each other. Written scratch entries must not overlap either provided input view. These are caller preconditions; exhaustive JavaScript bounds or overlap validation is not promised. + +### Notes + +- The supported reference-equivalence domain is finite selected entries in the original matrix and supplied Cholesky factor. Synthetic matrix/factor pairs are useful kernel checks but do not establish a successful factorization. +- The implementation scans columns in increasing order, updates maxima only when `abs(value) > maximum`, and updates the ratio only when `ratio < result`. These explicit comparisons define its own special-value behavior. Portable parity with every LAPACK NaN/Infinity observation is not claimed; unchanged reference Fortran produced different Inf/Inf results at different optimization levels. +- The optional native addon uses safe typed views and conservatively requires scalars, indexed arithmetic and scratch counts representable in signed 32-bit integers, including with its ILP64 build. Wider legitimate JavaScript metadata uses the JavaScript implementation. Native bounds checks use intrinsic typed-array metadata and respect typed-array byte offsets. +- The exact package signature and validation choices follow neighboring matrix/scratch conventions and are proposed by this contribution; an accepted routine tracking RFC does not itself adopt this API. +- The algorithm is adapted from [Reference LAPACK DLA_PORPVGRW][lapack-reference]. Its copyright and BSD redistribution terms are retained in `NOTICE`. + +
+ + + +
+ +## Examples + +```javascript +var Float64Array = require( '@stdlib/array/float64' ); +var dlaPorpvgrw = require( '@stdlib/lapack/base/dla-porpvgrw' ); + +var A = new Float64Array( [ 0.25, 0.0, 0.0, 4.0 ] ); +var AF = new Float64Array( [ 0.5, 0.0, 0.0, 2.0 ] ); +var WORK = new Float64Array( 4 ); + +console.log( dlaPorpvgrw( 'column-major', 'lower', 2, A, 2, AF, 2, WORK ) ); +// => 0.5 +``` + +
+ + + +* * * + +## C APIs + +```c +#include "stdlib/lapack/base/dla_porpvgrw.h" +``` + +#### c_dla_porpvgrw( layout, uplo, NCOLS, \*A, LDA, \*AF, LDAF, \*WORK ) + +Computes reciprocal pivot growth using `LAPACK_ROW_MAJOR` or `LAPACK_COL_MAJOR` storage and `LAPACK_UPPER_TRIANGLE` or `LAPACK_LOWER_TRIANGLE`. Inputs are `const double *`; workspace is `double *`. Dimensions, strides and offsets use `LAPACK_INT`. + +```c +double API_SUFFIX(c_dla_porpvgrw)( const LAPACK_LAYOUT layout, const LAPACK_UPLO uplo, const LAPACK_INT NCOLS, const double *A, const LAPACK_INT LDA, const double *AF, const LAPACK_INT LDAF, double *WORK ); +``` + +#### c_dla_porpvgrw_ndarray( uplo, NCOLS, \*A, ... ) + +Uses independent matrix element strides/offsets and nonzero strided scratch. + +```c +double API_SUFFIX(c_dla_porpvgrw_ndarray)( const LAPACK_UPLO uplo, const LAPACK_INT NCOLS, const double *A, const LAPACK_INT sa1, const LAPACK_INT sa2, const LAPACK_INT oa, const double *AF, const LAPACK_INT sf1, const LAPACK_INT sf2, const LAPACK_INT of, double *WORK, const LAPACK_INT sw, const LAPACK_INT ow ); +``` + +All indexed element arithmetic, products and scratch counts must fit the configured `LAPACK_INT`, and storage/alias preconditions apply. Invalid selector, negative prefix, oversized scratch count or active zero scratch stride returns NaN. Valid empty prefixes return `1` without accessing pointers or unused metadata. `LAPACK_ILP64` selects 64-bit indices; `CBLAS_API64` independently enables suffixed symbols through `API_SUFFIX`. + +```c +#include "stdlib/lapack/base/dla_porpvgrw.h" +#include + +int main( void ) { + const double A[] = { 0.25, 0.0, 0.0, 4.0 }; + const double AF[] = { 0.5, 0.0, 0.0, 2.0 }; + double WORK[ 4 ]; + double value; + + value = API_SUFFIX(c_dla_porpvgrw)( LAPACK_ROW_MAJOR, LAPACK_UPPER_TRIANGLE, 2, A, 2, AF, 2, WORK ); + printf( "%g\n", value ); + return value != 0.5; +} +``` + + + + diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.js new file mode 100644 index 000000000000..9d28f7b5d15c --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.js @@ -0,0 +1,73 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var bench = require( '@stdlib/bench' ); +var Float64Array = require( '@stdlib/array/float64' ); +var format = require( '@stdlib/string/format' ); +var pkg = require( './../package.json' ).name; +var routine = require( './../lib/main.js' ); + +/** +* Creates a diagonal positive-definite matrix benchmark. +* +* @private +* @param {integer} N - matrix order +* @param {string} uplo - stored triangle +* @returns {Function} benchmark function +*/ +function createBenchmark( N, uplo ) { + var WORK = new Float64Array( 2*N ); + var AF = new Float64Array( N*N ); + var A = new Float64Array( N*N ); + var i; + + for ( i = 0; i < N; i++ ) { + A[i*(N+1)] = 0.25; + AF[i*(N+1)] = 0.5; + } + return benchmark; + + /** + * Measures reciprocal pivot growth. + * + * @private + * @param {Benchmark} b - benchmark instance + */ + function benchmark( b ) { + var value; + var i; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + value = routine( 'row-major', uplo, N, A, N, AF, N, WORK ); + if ( value !== 0.5 ) { + b.fail( 'unexpected growth factor' ); + } + } + b.toc(); + b.pass( 'benchmark finished' ); + b.end(); + } +} + +bench( format( '%s:N=4,uplo=upper', pkg ), createBenchmark( 4, 'upper' ) ); +bench( format( '%s:N=4,uplo=lower', pkg ), createBenchmark( 4, 'lower' ) ); +bench( format( '%s:N=32,uplo=upper', pkg ), createBenchmark( 32, 'upper' ) ); +bench( format( '%s:N=32,uplo=lower', pkg ), createBenchmark( 32, 'lower' ) ); diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.native.js new file mode 100644 index 000000000000..b9610d1926ff --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/benchmark.native.js @@ -0,0 +1,78 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var resolve = require( 'path' ).resolve; +var bench = require( '@stdlib/bench' ); +var Float64Array = require( '@stdlib/array/float64' ); +var format = require( '@stdlib/string/format' ); +var tryRequire = require( '@stdlib/utils/try-require' ); +var pkg = require( './../package.json' ).name; +var routine = tryRequire( resolve( __dirname, './../lib/native.js' ) ); +var opts = { + 'skip': routine instanceof Error +}; + +/** +* Creates a diagonal positive-definite matrix benchmark. +* +* @private +* @param {integer} N - matrix order +* @param {string} uplo - stored triangle +* @returns {Function} benchmark function +*/ +function createBenchmark( N, uplo ) { + var WORK = new Float64Array( 2*N ); + var AF = new Float64Array( N*N ); + var A = new Float64Array( N*N ); + var i; + + for ( i = 0; i < N; i++ ) { + A[i*(N+1)] = 0.25; + AF[i*(N+1)] = 0.5; + } + return benchmark; + + /** + * Measures reciprocal pivot growth. + * + * @private + * @param {Benchmark} b - benchmark instance + */ + function benchmark( b ) { + var value; + var i; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + value = routine( 'row-major', uplo, N, A, N, AF, N, WORK ); + if ( value !== 0.5 ) { + b.fail( 'unexpected growth factor' ); + } + } + b.toc(); + b.pass( 'benchmark finished' ); + b.end(); + } +} + +bench( format( '%s:N=4,uplo=upper', pkg ), opts, createBenchmark( 4, 'upper' ) ); +bench( format( '%s:N=4,uplo=lower', pkg ), opts, createBenchmark( 4, 'lower' ) ); +bench( format( '%s:N=32,uplo=upper', pkg ), opts, createBenchmark( 32, 'upper' ) ); +bench( format( '%s:N=32,uplo=lower', pkg ), opts, createBenchmark( 32, 'lower' ) ); diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/Makefile b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/Makefile new file mode 100644 index 000000000000..979768abbcec --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/Makefile @@ -0,0 +1,146 @@ +#/ +# @license Apache-2.0 +# +# Copyright (c) 2026 The Stdlib Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +#/ + +# VARIABLES # + +ifndef VERBOSE + QUIET := @ +else + QUIET := +endif + +# Determine the OS ([1][1], [2][2]). +# +# [1]: https://en.wikipedia.org/wiki/Uname#Examples +# [2]: http://stackoverflow.com/a/27776822/2225624 +OS ?= $(shell uname) +ifneq (, $(findstring MINGW,$(OS))) + OS := WINNT +else +ifneq (, $(findstring MSYS,$(OS))) + OS := WINNT +else +ifneq (, $(findstring CYGWIN,$(OS))) + OS := WINNT +else +ifneq (, $(findstring Windows_NT,$(OS))) + OS := WINNT +endif +endif +endif +endif + +# Define the program used for compiling C source files: +ifdef C_COMPILER + CC := $(C_COMPILER) +else + CC := gcc +endif + +# Define the command-line options when compiling C files: +CFLAGS ?= \ + -std=c99 \ + -O3 \ + -Wall \ + -pedantic + +# Determine whether to generate position independent code ([1][1], [2][2]). +# +# [1]: https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#Code-Gen-Options +# [2]: http://stackoverflow.com/questions/5311515/gcc-fpic-option +ifeq ($(OS), WINNT) + fPIC ?= +else + fPIC ?= -fPIC +endif + +# List of includes (e.g., `-I /foo/bar -I /beep/boop/include`): +INCLUDE ?= + +# List of source files: +SOURCE_FILES ?= + +# List of libraries (e.g., `-lopenblas -lpthread`): +LIBRARIES ?= + +# List of library paths (e.g., `-L /foo/bar -L /beep/boop`): +LIBPATH ?= + +# List of C targets: +c_targets := benchmark.out + + +# RULES # + +#/ +# Compiles source files. +# +# @param {string} [C_COMPILER] - C compiler (e.g., `gcc`) +# @param {string} [CFLAGS] - C compiler options +# @param {(string|void)} [fPIC] - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} [INCLUDE] - list of includes (e.g., `-I /foo/bar -I /beep/boop/include`) +# @param {string} [SOURCE_FILES] - list of source files +# @param {string} [LIBPATH] - list of library paths (e.g., `-L /foo/bar -L /beep/boop`) +# @param {string} [LIBRARIES] - list of libraries (e.g., `-lopenblas -lpthread`) +# +# @example +# make +# +# @example +# make all +#/ +all: $(c_targets) + +.PHONY: all + +#/ +# Compiles C source files. +# +# @private +# @param {string} CC - C compiler (e.g., `gcc`) +# @param {string} CFLAGS - C compiler options +# @param {(string|void)} fPIC - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} INCLUDE - list of includes (e.g., `-I /foo/bar`) +# @param {string} SOURCE_FILES - list of source files +# @param {string} LIBPATH - list of library paths (e.g., `-L /foo/bar`) +# @param {string} LIBRARIES - list of libraries (e.g., `-lopenblas`) +#/ +$(c_targets): %.out: %.c + $(QUIET) $(CC) $(CFLAGS) $(fPIC) $(INCLUDE) -o $@ $(SOURCE_FILES) $< $(LIBPATH) -lm $(LIBRARIES) + +#/ +# Runs compiled benchmarks. +# +# @example +# make run +#/ +run: $(c_targets) + $(QUIET) ./$< + +.PHONY: run + +#/ +# Removes generated files. +# +# @example +# make clean +#/ +clean: + $(QUIET) -rm -f *.o *.out + +.PHONY: clean diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/benchmark.c b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/benchmark.c new file mode 100644 index 000000000000..baaf6a5cd1f4 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/benchmark/c/benchmark.c @@ -0,0 +1,86 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +#include "stdlib/lapack/base/dla_porpvgrw.h" +#include +#include +#include + +#define REPEATS 2 +#define ITERATIONS 1000 + +/** +* Benchmarks the growth routine on diagonal positive-definite matrices. +* +* @param N matrix order +* @return elapsed seconds +*/ +static double benchmark( const LAPACK_INT N ) { + double *A; + double *AF; + double *WORK; + double result; + LAPACK_INT i; + clock_t time; + + A = (double *)calloc( N*N, sizeof( double ) ); + AF = (double *)calloc( N*N, sizeof( double ) ); + WORK = (double *)malloc( 2*N*sizeof( double ) ); + if ( A == NULL || AF == NULL || WORK == NULL ) { + free( A ); free( AF ); free( WORK ); + exit( 1 ); + } + for ( i = 0; i < N; i++ ) { + A[ i*(N+1) ] = 0.25; + AF[ i*(N+1) ] = 0.5; + } + time = clock(); + for ( i = 0; i < ITERATIONS; i++ ) { + result = API_SUFFIX(c_dla_porpvgrw)( LAPACK_ROW_MAJOR, LAPACK_UPPER_TRIANGLE, N, A, N, AF, N, WORK ); + if ( result != 0.5 ) { + free( A ); free( AF ); free( WORK ); + exit( 1 ); + } + } + time = clock()-time; + free( A ); free( AF ); free( WORK ); + return (double)time/CLOCKS_PER_SEC; +} + +int main( void ) { + const LAPACK_INT sizes[] = { 1, 16, 64 }; + double elapsed; + int count; + int i; + int j; + + printf( "TAP version 13\n" ); + count = 0; + for ( i = 0; i < 3; i++ ) { + for ( j = 0; j < REPEATS; j++ ) { + elapsed = benchmark( sizes[i] ); + count += 1; + printf( "# c::dla-porpvgrw:N=%" LAPACK_IFMT "\n", sizes[i] ); + printf( " ---\n iterations: %d\n elapsed: %.9f\n ...\n", ITERATIONS, elapsed ); + printf( "ok %d benchmark finished\n", count ); + } + } + printf( "1..%d\n# pass %d\n# ok\n", count, count ); + return 0; +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/binding.gyp b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/binding.gyp new file mode 100644 index 000000000000..0b87babf0f03 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/binding.gyp @@ -0,0 +1,176 @@ +# @license Apache-2.0 +# +# Copyright (c) 2026 The Stdlib Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# A `.gyp` file for building a Node.js native add-on. +# +# [1]: https://gyp.gsrc.io/docs/InputFormatReference.md +# [2]: https://gyp.gsrc.io/docs/UserDocumentation.md +{ + # List of files to include in this file: + 'includes': [ + './include.gypi', + ], + + # Define variables to be used throughout the configuration for all targets: + 'variables': { + # Target name should match the add-on export name: + 'addon_target_name%': 'addon', + + # Set variables based on the host OS: + 'conditions': [ + [ + 'OS=="win"', + { + # Define the object file suffix: + 'obj': 'obj', + }, + { + # Define the object file suffix: + 'obj': 'o', + } + ], # end condition (OS=="win") + ], # end conditions + }, # end variables + + # Define compile targets: + 'targets': [ + + # Target to generate an add-on: + { + # The target name should match the add-on export name: + 'target_name': '<(addon_target_name)', + + # Define dependencies: + 'dependencies': [], + + # Match Node-API integer arguments without narrowing indices: + 'defines': [ 'LAPACK_ILP64' ], + + # Define directories which contain relevant include headers: + 'include_dirs': [ + # Local include directory: + '<@(include_dirs)', + ], + + # List of source files: + 'sources': [ + '<@(src_files)', + ], + + # Settings which should be applied when a target's object files are used as linker input: + 'link_settings': { + # Define libraries: + 'libraries': [ + '<@(libraries)', + ], + + # Define library directories: + 'library_dirs': [ + '<@(library_dirs)', + ], + }, + + # C/C++ compiler flags: + 'cflags': [ + # Enable commonly used warning options: + '-Wall', + + # Aggressive optimization: + '-O3', + + # Keep separate comparison operations consistent with JavaScript: + '-ffp-contract=off', + ], + + # C specific compiler flags: + 'cflags_c': [ + # Specify the C standard to which a program is expected to conform: + '-std=c99', + ], + + # C++ specific compiler flags: + 'cflags_cpp': [ + # Specify the C++ standard to which a program is expected to conform: + '-std=c++11', + ], + + # Linker flags: + 'ldflags': [], + + # Apply conditions based on the host OS: + 'conditions': [ + [ + 'OS=="mac"', + { + # Linker flags: + 'ldflags': [ + '-undefined dynamic_lookup', + '-Wl,-no-pie', + '-Wl,-search_paths_first', + ], + }, + ], # end condition (OS=="mac") + [ + 'OS!="win"', + { + # C/C++ flags: + 'cflags': [ + # Generate platform-independent code: + '-fPIC', + ], + }, + ], # end condition (OS!="win") + ], # end conditions + }, # end target <(addon_target_name) + + # Target to copy a generated add-on to a standard location: + { + 'target_name': 'copy_addon', + + # Declare that the output of this target is not linked: + 'type': 'none', + + # Define dependencies: + 'dependencies': [ + # Require that the add-on be generated before building this target: + '<(addon_target_name)', + ], + + # Define a list of actions: + 'actions': [ + { + 'action_name': 'copy_addon', + 'message': 'Copying addon...', + + # Explicitly list the inputs in the command-line invocation below: + 'inputs': [], + + # Declare the expected outputs: + 'outputs': [ + '<(addon_output_dir)/<(addon_target_name).node', + ], + + # Define the command-line invocation: + 'action': [ + 'cp', + '<(PRODUCT_DIR)/<(addon_target_name).node', + '<(addon_output_dir)/<(addon_target_name).node', + ], + }, + ], # end actions + }, # end target copy_addon + ], # end targets +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/repl.txt b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/repl.txt new file mode 100644 index 000000000000..d943971b82eb --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/repl.txt @@ -0,0 +1,75 @@ +{{alias}}( order, uplo, NCOLS, A, LDA, AF, LDAF, WORK ) + Computes reciprocal Cholesky pivot growth using a supplied factor. + + Parameters + ---------- + order: string + Storage layout: 'row-major' or 'column-major'. + uplo: string + Stored triangle: 'upper' or 'lower'. + NCOLS: integer + Nonnegative leading square prefix order. + A: Float64Array + Read-only original matrix. + LDA: integer + Leading dimension of A. + AF: Float64Array + Read-only supplied Cholesky factor. + LDAF: integer + Leading dimension of AF. + WORK: Float64Array + Scratch storage for 2*NCOLS maxima, disjoint from both inputs. + + Returns + ------- + v: number + Reciprocal pivot growth, capped at 1. + + Examples + -------- + > var A = new Float64Array( [ 0.25, 0.0, 0.0, 4.0 ] ); + > var AF = new Float64Array( [ 0.5, 0.0, 0.0, 2.0 ] ); + > var WORK = new Float64Array( 4 ); + > {{alias}}( 'row-major', 'upper', 2, A, 2, AF, 2, WORK ) + 0.5 + + +{{alias}}.ndarray( uplo, NCOLS, A, a1, a2, oa, AF, f1, f2, of, W, sw, ow ) + Uses independent matrix and scratch strides and offsets. + + Parameters + ---------- + uplo: string + Stored triangle: 'upper' or 'lower'. + NCOLS: integer + Nonnegative leading square prefix order. + A: Float64Array + Original matrix. + a1: integer + Row stride of A. + a2: integer + Column stride of A. + oa: integer + Starting index of A. + AF: Float64Array + Supplied factor. + f1: integer + Row stride of AF. + f2: integer + Column stride of AF. + oaF: integer + Starting index of AF. + W: Float64Array + Scratch storage, disjoint from both inputs. + sw: integer + Nonzero workspace stride. + ow: integer + Workspace starting index. + + Returns + ------- + v: number + Reciprocal pivot growth. + + See Also + -------- diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/index.d.ts b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/index.d.ts new file mode 100644 index 000000000000..2cfcd3c50183 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/index.d.ts @@ -0,0 +1,79 @@ +/* +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +// TypeScript Version: 4.1 + +/// + +import { Layout } from '@stdlib/types/blas'; + +/** +* Stored triangle selector. +*/ +type Triangle = 'upper' | 'lower'; + +/** +* Interface describing reciprocal Cholesky pivot growth. +*/ +interface Routine { + /** + * Computes reciprocal pivot growth from a supplied matrix and factor. + * + * @param order - storage layout + * @param uplo - stored triangle + * @param NCOLS - leading square prefix order + * @param A - original matrix + * @param LDA - leading dimension of A + * @param AF - supplied Cholesky factor + * @param LDAF - leading dimension of AF + * @param WORK - scratch storage with 2*NCOLS indexed entries + * @returns reciprocal pivot growth + */ + ( order: Layout, uplo: Triangle, NCOLS: number, A: Float64Array, LDA: number, AF: Float64Array, LDAF: number, WORK: Float64Array ): number; + + /** + * Computes reciprocal pivot growth using independent view indexing. + * + * @param uplo - stored triangle + * @param NCOLS - leading square prefix order + * @param A - original matrix + * @param strideA1 - row stride of A + * @param strideA2 - column stride of A + * @param offsetA - starting index of A + * @param AF - supplied factor + * @param strideAF1 - row stride of AF + * @param strideAF2 - column stride of AF + * @param offsetAF - starting index of AF + * @param WORK - scratch storage, disjoint from inputs + * @param strideWork - nonzero scratch stride + * @param offsetWork - starting scratch index + * @returns reciprocal pivot growth + */ + readonly ndarray: ( uplo: Triangle, NCOLS: number, A: Float64Array, strideA1: number, strideA2: number, offsetA: number, AF: Float64Array, strideAF1: number, strideAF2: number, offsetAF: number, WORK: Float64Array, strideWork: number, offsetWork: number ) => number; +} + +/** +* Computes the reciprocal Cholesky pivot-growth factor. +*/ +declare var dlaPorpvgrw: Routine; + + +// EXPORTS // + +export = dlaPorpvgrw; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/test.ts b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/test.ts new file mode 100644 index 000000000000..2e06cbaa9ecf --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/docs/types/test.ts @@ -0,0 +1,56 @@ +/* +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +import routine = require( './index' ); + +const A = new Float64Array( 4 ); +const AF = new Float64Array( 4 ); +const WORK = new Float64Array( 4 ); + +routine( 'row-major', 'upper', 2, A, 2, AF, 2, WORK ); // $ExpectType number +routine.ndarray( 'lower', 2, A, -2, -1, 3, AF, 1, 2, 0, WORK, -1, 3 ); // $ExpectType number + +routine( 'other', 'upper', 2, A, 2, AF, 2, WORK ); // $ExpectError +routine( 101, 'upper', 2, A, 2, AF, 2, WORK ); // $ExpectError +routine( 'row-major', 'all', 2, A, 2, AF, 2, WORK ); // $ExpectError +routine( 'row-major', 121, 2, A, 2, AF, 2, WORK ); // $ExpectError +routine( 'row-major', 'upper', '2', A, 2, AF, 2, WORK ); // $ExpectError +routine( 'row-major', 'upper', 2, [], 2, AF, 2, WORK ); // $ExpectError +routine( 'row-major', 'upper', 2, A, '2', AF, 2, WORK ); // $ExpectError +routine( 'row-major', 'upper', 2, A, 2, [], 2, WORK ); // $ExpectError +routine( 'row-major', 'upper', 2, A, 2, AF, '2', WORK ); // $ExpectError +routine( 'row-major', 'upper', 2, A, 2, AF, 2, [] ); // $ExpectError +routine( 'row-major', 'upper', 2, A, 2, AF, 2 ); // $ExpectError +routine( 'row-major', 'upper', 2, A, 2, AF, 2, WORK, 1 ); // $ExpectError + +routine.ndarray( 'all', 2, A, 1, 2, 0, AF, 1, 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', '2', A, 1, 2, 0, AF, 1, 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, [], 1, 2, 0, AF, 1, 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, '1', 2, 0, AF, 1, 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, '2', 0, AF, 1, 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, '0', AF, 1, 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, [], 1, 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, AF, '1', 2, 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, AF, 1, '2', 0, WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, AF, 1, 2, '0', WORK, 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, AF, 1, 2, 0, [], 1, 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, AF, 1, 2, 0, WORK, '1', 0 ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, AF, 1, 2, 0, WORK, 1, '0' ); // $ExpectError +routine.ndarray( 'upper', 2, A, 1, 2, 0, AF, 1, 2, 0, WORK, 1 ); // $ExpectError +routine.ndarray = function replacement() { return 1; }; // $ExpectError diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/Makefile b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/Makefile new file mode 100644 index 000000000000..c8f8e9a1517b --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/Makefile @@ -0,0 +1,146 @@ +#/ +# @license Apache-2.0 +# +# Copyright (c) 2026 The Stdlib Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +#/ + +# VARIABLES # + +ifndef VERBOSE + QUIET := @ +else + QUIET := +endif + +# Determine the OS ([1][1], [2][2]). +# +# [1]: https://en.wikipedia.org/wiki/Uname#Examples +# [2]: http://stackoverflow.com/a/27776822/2225624 +OS ?= $(shell uname) +ifneq (, $(findstring MINGW,$(OS))) + OS := WINNT +else +ifneq (, $(findstring MSYS,$(OS))) + OS := WINNT +else +ifneq (, $(findstring CYGWIN,$(OS))) + OS := WINNT +else +ifneq (, $(findstring Windows_NT,$(OS))) + OS := WINNT +endif +endif +endif +endif + +# Define the program used for compiling C source files: +ifdef C_COMPILER + CC := $(C_COMPILER) +else + CC := gcc +endif + +# Define the command-line options when compiling C files: +CFLAGS ?= \ + -std=c99 \ + -O3 \ + -Wall \ + -pedantic + +# Determine whether to generate position independent code ([1][1], [2][2]). +# +# [1]: https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#Code-Gen-Options +# [2]: http://stackoverflow.com/questions/5311515/gcc-fpic-option +ifeq ($(OS), WINNT) + fPIC ?= +else + fPIC ?= -fPIC +endif + +# List of includes (e.g., `-I /foo/bar -I /beep/boop/include`): +INCLUDE ?= + +# List of source files: +SOURCE_FILES ?= + +# List of libraries (e.g., `-lopenblas -lpthread`): +LIBRARIES ?= + +# List of library paths (e.g., `-L /foo/bar -L /beep/boop`): +LIBPATH ?= + +# List of C targets: +c_targets := example.out + + +# RULES # + +#/ +# Compiles source files. +# +# @param {string} [C_COMPILER] - C compiler (e.g., `gcc`) +# @param {string} [CFLAGS] - C compiler options +# @param {(string|void)} [fPIC] - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} [INCLUDE] - list of includes (e.g., `-I /foo/bar -I /beep/boop/include`) +# @param {string} [SOURCE_FILES] - list of source files +# @param {string} [LIBPATH] - list of library paths (e.g., `-L /foo/bar -L /beep/boop`) +# @param {string} [LIBRARIES] - list of libraries (e.g., `-lopenblas -lpthread`) +# +# @example +# make +# +# @example +# make all +#/ +all: $(c_targets) + +.PHONY: all + +#/ +# Compiles C source files. +# +# @private +# @param {string} CC - C compiler (e.g., `gcc`) +# @param {string} CFLAGS - C compiler options +# @param {(string|void)} fPIC - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} INCLUDE - list of includes (e.g., `-I /foo/bar`) +# @param {string} SOURCE_FILES - list of source files +# @param {string} LIBPATH - list of library paths (e.g., `-L /foo/bar`) +# @param {string} LIBRARIES - list of libraries (e.g., `-lopenblas`) +#/ +$(c_targets): %.out: %.c + $(QUIET) $(CC) $(CFLAGS) $(fPIC) $(INCLUDE) -o $@ $(SOURCE_FILES) $< $(LIBPATH) -lm $(LIBRARIES) + +#/ +# Runs compiled examples. +# +# @example +# make run +#/ +run: $(c_targets) + $(QUIET) ./$< + +.PHONY: run + +#/ +# Removes generated files. +# +# @example +# make clean +#/ +clean: + $(QUIET) -rm -f *.o *.out + +.PHONY: clean diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/example.c b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/example.c new file mode 100644 index 000000000000..114aa0e60de0 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/c/example.c @@ -0,0 +1,36 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +#include "stdlib/lapack/base/dla_porpvgrw.h" +#include + +int main( void ) { + const double A[] = { 0.25, 0.0, 0.0, 4.0 }; + const double AF[] = { 0.5, 0.0, 0.0, 2.0 }; + double WORK[ 4 ]; + double value; + LAPACK_INT i; + + value = API_SUFFIX(c_dla_porpvgrw)( LAPACK_ROW_MAJOR, LAPACK_UPPER_TRIANGLE, 2, A, 2, AF, 2, WORK ); + printf( "reciprocal pivot growth: %g\n", value ); + for ( i = 0; i < 4; i++ ) { + printf( "WORK[%" LAPACK_IFMT "]: %g\n", i, WORK[ i ] ); + } + return value != 0.5; +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/index.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/index.js new file mode 100644 index 000000000000..f21ddc6ecf02 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/examples/index.js @@ -0,0 +1,29 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var Float64Array = require( '@stdlib/array/float64' ); +var dlaPorpvgrw = require( './../lib' ); + +var A = new Float64Array( [ 0.25, 0.0, 0.0, 4.0 ] ); +var AF = new Float64Array( [ 0.5, 0.0, 0.0, 2.0 ] ); +var WORK = new Float64Array( 4 ); +var value = dlaPorpvgrw( 'row-major', 'upper', 2, A, 2, AF, 2, WORK ); +console.log( 'reciprocal pivot growth: %d', value ); +console.log( WORK ); diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/include.gypi b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/include.gypi new file mode 100644 index 000000000000..bee8d41a2caf --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/include.gypi @@ -0,0 +1,53 @@ +# @license Apache-2.0 +# +# Copyright (c) 2026 The Stdlib Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# A GYP include file for building a Node.js native add-on. +# +# Main documentation: +# +# [1]: https://gyp.gsrc.io/docs/InputFormatReference.md +# [2]: https://gyp.gsrc.io/docs/UserDocumentation.md +{ + # Define variables to be used throughout the configuration for all targets: + 'variables': { + # Source directory: + 'src_dir': './src', + + # Include directories: + 'include_dirs': [ + ' WORK[ index ] ) { + WORK[ index ] = value; + } + } + } + for ( j = 0; j < NCOLS; j++ ) { + start = ( uplo === 121 ) ? 0 : j; + stop = ( uplo === 121 ) ? j+1 : NCOLS; + index = ow + (j*sw); + for ( i = start; i < stop; i++ ) { + value = abs( AF[ of+(i*sf1)+(j*sf2) ] ); + if ( value > WORK[ index ] ) { + WORK[ index ] = value; + } + } + } + for ( j = 0; j < NCOLS; j++ ) { + denom = WORK[ ow+(j*sw) ]; + if ( denom !== 0.0 ) { + ratio = WORK[ ow+((NCOLS+j)*sw) ] / denom; + if ( ratio < result ) { + result = ratio; + } + } + } + return result; +} + + +// EXPORTS // + +module.exports = base; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/can_use_native.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/can_use_native.js new file mode 100644 index 000000000000..44c953776676 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/can_use_native.js @@ -0,0 +1,122 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var Float64Array = require( '@stdlib/array/float64' ); +var getPrototypeOf = require( '@stdlib/utils/get-prototype-of' ); +var isFloat64Array = require( '@stdlib/assert/is-float64array' ); +var isSafeInteger = require( '@stdlib/assert/is-safe-integer' ).isPrimitive; +var hasOwn = require( '@stdlib/assert/has-own-property' ); +var descriptor = require( '@stdlib/utils/property-descriptor' ); + + +// VARIABLES // + +var typedArrayPrototype = getPrototypeOf( Float64Array.prototype ); +var getLength = descriptor( typedArrayPrototype, 'length' ).get; +var getBuffer = descriptor( typedArrayPrototype, 'buffer' ).get; +var getByteOffset = descriptor( typedArrayPrototype, 'byteOffset' ).get; +var getByteLength = descriptor( typedArrayPrototype, 'byteLength' ).get; + + +// FUNCTIONS // + +/** +* Checks safe physical matrix bounds without invoking untrusted metadata. +* +* @private +* @param {Float64Array} data - typed view +* @param {integer} N - square order +* @param {integer} s1 - row stride +* @param {integer} s2 - column stride +* @param {integer} offset - starting index +* @returns {boolean} whether the view is compatible +*/ +function isView( data, N, s1, s2, offset ) { + var length; + var proto; + var lo; + var hi; + var a; + var b; + + if ( !isFloat64Array( data ) ) { + return false; + } + proto = getPrototypeOf( data ); + if ( proto !== Float64Array.prototype ) { + return false; + } + if ( hasOwn( data, 'length' ) || hasOwn( data, 'buffer' ) || hasOwn( data, 'byteOffset' ) || hasOwn( data, 'byteLength' ) || hasOwn( proto, 'length' ) || hasOwn( proto, 'buffer' ) || hasOwn( proto, 'byteOffset' ) || hasOwn( proto, 'byteLength' ) ) { + return false; + } + a = (N-1)*s1; + b = (N-1)*s2; + lo = offset + ( (a < 0) ? a : 0 ) + ( (b < 0) ? b : 0 ); + hi = offset + ( (a > 0) ? a : 0 ) + ( (b > 0) ? b : 0 ); + length = getLength.call( data ); + if ( s1 < -2147483647 || s1 > 2147483647 || s2 < -2147483647 || s2 > 2147483647 || offset > 2147483647 || a < -2147483647 || a > 2147483647 || b < -2147483647 || b > 2147483647 || hi > 2147483647 ) { + return false; + } + return isSafeInteger( a ) && isSafeInteger( b ) && isSafeInteger( lo ) && isSafeInteger( hi ) && lo >= 0 && hi < length; +} + + +// MAIN // + +/** +* Checks whether normalized arguments can use the native interface. +* +* @private +* @param {ArrayLike} args - normalized ndarray arguments +* @returns {boolean} whether arguments are safely marshalable +*/ +function canUseNative( args ) { + var buffer; + var offset; + var length; + var data; + var N; + var i; + + N = args[ 1 ]; + if ( N <= 0 || N > 1073741823 ) { + return false; + } + if ( !isView( args[2], N, args[3], args[4], args[5] ) || !isView( args[6], N, args[7], args[8], args[9] ) || !isView( args[10], 2*N, args[11], 0, args[12] ) ) { + return false; + } + buffer = getBuffer.call( args[10] ); + offset = getByteOffset.call( args[10] ); + length = getByteLength.call( args[10] ); + for ( i = 2; i <= 6; i += 4 ) { + data = args[ i ]; + if ( getBuffer.call( data ) === buffer && getByteOffset.call( data ) < offset+length && offset < getByteOffset.call( data )+getByteLength.call( data ) ) { + return false; + } + } + return true; +} + + +// EXPORTS // + +module.exports = canUseNative; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/factory.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/factory.js new file mode 100644 index 000000000000..003e44a8c71e --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/factory.js @@ -0,0 +1,156 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var isSafeInteger = require( '@stdlib/assert/is-safe-integer' ).isPrimitive; +var setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' ); + + +// FUNCTIONS // + +/** +* Validates the triangle and leading prefix dimensions. +* +* @private +* @param {string} uplo - triangle +* @param {NonNegativeInteger} NCOLS - prefix size +* @throws {TypeError} invalid triangle +* @throws {RangeError} invalid prefix size +* @returns {integer} triangle enum +*/ +function validate( uplo, NCOLS ) { + if ( uplo !== 'upper' && uplo !== 'lower' ) { + throw new TypeError( 'invalid argument. Triangle must be upper or lower.' ); + } + if ( !isSafeInteger( NCOLS ) || NCOLS < 0 ) { + throw new RangeError( 'invalid argument. NCOLS must be a nonnegative safe integer.' ); + } + return ( uplo === 'upper' ) ? 121 : 122; +} + + +// MAIN // + +/** +* Creates the public main and ndarray interfaces. +* +* @private +* @param {Function} base - numerical kernel +* @returns {Function} public interfaces +*/ +function factory( base ) { + setReadOnly( dlaPorpvgrw, 'ndarray', ndarray ); + return dlaPorpvgrw; + + /** + * Computes the reciprocal Cholesky pivot-growth factor. + * + * @private + * @param {string} order - row-major or column-major + * @param {string} uplo - upper or lower + * @param {NonNegativeInteger} NCOLS - leading square order + * @param {Float64Array} A - original matrix + * @param {PositiveInteger} LDA - leading dimension of A + * @param {Float64Array} AF - supplied Cholesky factor + * @param {PositiveInteger} LDAF - leading dimension of AF + * @param {Float64Array} WORK - 2*NCOLS scratch entries + * @throws {TypeError} invalid order or triangle + * @throws {RangeError} invalid dimension or leading dimension + * @returns {number} reciprocal pivot growth + */ + function dlaPorpvgrw( order, uplo, NCOLS, A, LDA, AF, LDAF, WORK ) { + var sa1; + var sa2; + var sf1; + var sf2; + var u; + + if ( order !== 'row-major' && order !== 'column-major' ) { + throw new TypeError( 'invalid argument. Order must be row-major or column-major.' ); + } + u = validate( uplo, NCOLS ); + if ( NCOLS === 0 ) { + return 1.0; + } + if ( !isSafeInteger( LDA ) || LDA < NCOLS || !isSafeInteger( LDAF ) || LDAF < NCOLS ) { + throw new RangeError( 'invalid argument. Leading dimensions must be safe integers at least NCOLS.' ); + } + if ( order === 'column-major' ) { + sa1 = 1; + sa2 = LDA; + sf1 = 1; + sf2 = LDAF; + } else { + sa1 = LDA; + sa2 = 1; + sf1 = LDAF; + sf2 = 1; + } + return base( u, NCOLS, A, sa1, sa2, 0, AF, sf1, sf2, 0, WORK, 1, 0 ); + } + + /** + * Computes reciprocal Cholesky pivot growth using alternative indexing. + * + * @private + * @param {string} uplo - upper or lower + * @param {NonNegativeInteger} NCOLS - leading square order + * @param {Float64Array} A - original matrix + * @param {integer} strideA1 - row stride of A + * @param {integer} strideA2 - column stride of A + * @param {integer} offsetA - offset of A + * @param {Float64Array} AF - supplied factor + * @param {integer} strideAF1 - row stride of AF + * @param {integer} strideAF2 - column stride of AF + * @param {integer} offsetAF - offset of AF + * @param {Float64Array} WORK - scratch storage + * @param {NonZeroInteger} strideWork - scratch stride + * @param {integer} offsetWork - scratch offset + * @throws {TypeError} invalid triangle + * @throws {RangeError} invalid dimension or integer metadata + * @returns {number} reciprocal pivot growth + */ + function ndarray( uplo, NCOLS, A, strideA1, strideA2, offsetA, AF, strideAF1, strideAF2, offsetAF, WORK, strideWork, offsetWork ) { // eslint-disable-line max-params + var metadata; + var u; + var i; + + u = validate( uplo, NCOLS ); + if ( NCOLS === 0 ) { + return 1.0; + } + metadata = [ strideA1, strideA2, offsetA, strideAF1, strideAF2, offsetAF, strideWork, offsetWork ]; + for ( i = 0; i < metadata.length; i++ ) { + if ( !isSafeInteger( metadata[ i ] ) ) { + throw new RangeError( 'invalid argument. Strides and offsets must be safe integers.' ); + } + } + if ( strideWork === 0 ) { + throw new RangeError( 'invalid argument. Workspace stride must be nonzero.' ); + } + return base( u, NCOLS, A, strideA1, strideA2, offsetA, AF, strideAF1, strideAF2, offsetAF, WORK, strideWork, offsetWork ); + } +} + + +// EXPORTS // + +module.exports = factory; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/index.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/index.js new file mode 100644 index 000000000000..b5ccda7b5903 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/index.js @@ -0,0 +1,34 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +/** +* Compute the reciprocal Cholesky pivot-growth factor. +* +* @module @stdlib/lapack/base/dla-porpvgrw +*/ + +'use strict'; + +var resolve = require( 'path' ).resolve; +var tryRequire = require( '@stdlib/utils/try-require' ); + +var main = tryRequire( resolve( __dirname, './native.js' ) ); +if ( main instanceof Error ) { + main = require( './main.js' ); +} +module.exports = main; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/main.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/main.js new file mode 100644 index 000000000000..72ce4a14cc58 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/main.js @@ -0,0 +1,26 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var factory = require( './factory.js' ); +var base = require( './base.js' ); + +var main = factory( base ); + +module.exports = main; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/native.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/native.js new file mode 100644 index 000000000000..65da4038866b --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/lib/native.js @@ -0,0 +1,42 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var factory = require( './factory.js' ); +var base = require( './base.js' ); +var canUseNative = require( './can_use_native.js' ); +var addon = require( './../src/addon.node' ); +var main; + +/** +* Dispatches safe typed views to the addon. +* +* @private +* @returns {number} reciprocal pivot growth +*/ +function dispatch() { + if ( canUseNative( arguments ) ) { + return addon.apply( null, arguments ); + } + return base.apply( null, arguments ); +} + +main = factory( dispatch ); + +module.exports = main; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/manifest.json b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/manifest.json new file mode 100644 index 000000000000..c2780b0fb572 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/manifest.json @@ -0,0 +1,108 @@ +{ + "options": { + "task": "build", + "wasm": false + }, + "fields": [ + { + "field": "src", + "resolve": true, + "relative": true + }, + { + "field": "include", + "resolve": true, + "relative": true + }, + { + "field": "libraries", + "resolve": false, + "relative": false + }, + { + "field": "libpath", + "resolve": true, + "relative": false + } + ], + "confs": [ + { + "task": "build", + "wasm": false, + "src": [ + "./src/dla_porpvgrw.c", + "./src/dla_porpvgrw_ndarray.c" + ], + "include": [ + "./include" + ], + "libraries": [], + "libpath": [], + "dependencies": [ + "@stdlib/lapack/base/shared", + "@stdlib/math/base/special/abs", + "@stdlib/constants/float64/nan", + "@stdlib/napi/export", + "@stdlib/napi/argv", + "@stdlib/napi/argv-int64", + "@stdlib/napi/argv-int32", + "@stdlib/napi/argv-float64array", + "@stdlib/napi/create-double" + ] + }, + { + "task": "benchmark", + "wasm": false, + "src": [ + "./src/dla_porpvgrw.c", + "./src/dla_porpvgrw_ndarray.c" + ], + "include": [ + "./include" + ], + "libraries": [], + "libpath": [], + "dependencies": [ + "@stdlib/lapack/base/shared", + "@stdlib/math/base/special/abs", + "@stdlib/constants/float64/nan" + ] + }, + { + "task": "examples", + "wasm": false, + "src": [ + "./src/dla_porpvgrw.c", + "./src/dla_porpvgrw_ndarray.c" + ], + "include": [ + "./include" + ], + "libraries": [], + "libpath": [], + "dependencies": [ + "@stdlib/lapack/base/shared", + "@stdlib/math/base/special/abs", + "@stdlib/constants/float64/nan" + ] + }, + { + "task": "", + "wasm": true, + "src": [ + "./src/dla_porpvgrw.c", + "./src/dla_porpvgrw_ndarray.c" + ], + "include": [ + "./include" + ], + "libraries": [], + "libpath": [], + "dependencies": [ + "@stdlib/lapack/base/shared", + "@stdlib/math/base/special/abs", + "@stdlib/constants/float64/nan" + ] + } + ] +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/package.json b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/package.json new file mode 100644 index 000000000000..e877c90fce65 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/package.json @@ -0,0 +1,77 @@ +{ + "name": "@stdlib/lapack/base/dla-porpvgrw", + "version": "0.0.0", + "description": "Compute the reciprocal Cholesky pivot-growth factor.", + "license": "Apache-2.0", + "author": { + "name": "The Stdlib Authors", + "url": "https://github.com/stdlib-js/stdlib/graphs/contributors" + }, + "contributors": [ + { + "name": "The Stdlib Authors", + "url": "https://github.com/stdlib-js/stdlib/graphs/contributors" + } + ], + "main": "./lib", + "browser": "./lib/main.js", + "gypfile": true, + "directories": { + "benchmark": "./benchmark", + "doc": "./docs", + "example": "./examples", + "include": "./include", + "lib": "./lib", + "src": "./src", + "test": "./test" + }, + "types": "./docs/types", + "scripts": {}, + "homepage": "https://github.com/stdlib-js/stdlib", + "repository": { + "type": "git", + "url": "git://github.com/stdlib-js/stdlib.git" + }, + "bugs": { + "url": "https://github.com/stdlib-js/stdlib/issues" + }, + "dependencies": {}, + "devDependencies": {}, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "keywords": [ + "stdlib", + "stdmath", + "mathematics", + "math", + "lapack", + "dla-porpvgrw", + "cholesky", + "pivot", + "growth", + "factor", + "linear", + "algebra", + "subroutines", + "array", + "ndarray", + "matrix", + "float64", + "double", + "float64array" + ], + "__stdlib__": {} +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/Makefile b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/Makefile new file mode 100644 index 000000000000..2caf905cedbe --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/Makefile @@ -0,0 +1,70 @@ +#/ +# @license Apache-2.0 +# +# Copyright (c) 2026 The Stdlib Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +#/ + +# VARIABLES # + +ifndef VERBOSE + QUIET := @ +else + QUIET := +endif + +# Determine the OS ([1][1], [2][2]). +# +# [1]: https://en.wikipedia.org/wiki/Uname#Examples +# [2]: http://stackoverflow.com/a/27776822/2225624 +OS ?= $(shell uname) +ifneq (, $(findstring MINGW,$(OS))) + OS := WINNT +else +ifneq (, $(findstring MSYS,$(OS))) + OS := WINNT +else +ifneq (, $(findstring CYGWIN,$(OS))) + OS := WINNT +else +ifneq (, $(findstring Windows_NT,$(OS))) + OS := WINNT +endif +endif +endif +endif + + +# RULES # + +#/ +# Removes generated files for building an add-on. +# +# @example +# make clean-addon +#/ +clean-addon: + $(QUIET) -rm -f *.o *.node + +.PHONY: clean-addon + +#/ +# Removes generated files. +# +# @example +# make clean +#/ +clean: clean-addon + +.PHONY: clean diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/addon.c b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/addon.c new file mode 100644 index 000000000000..a35b885ea6ba --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/addon.c @@ -0,0 +1,93 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "stdlib/lapack/base/dla_porpvgrw.h" +#include "stdlib/napi/export.h" +#include "stdlib/napi/argv.h" +#include "stdlib/napi/argv_int32.h" +#include "stdlib/napi/argv_int64.h" +#include "stdlib/napi/argv_float64array.h" +#include "stdlib/napi/create_double.h" +#include +#include +#include + +/** +* Checks physical indexed bounds before executing the C kernel. +* +* @param N square order +* @param s1 row stride +* @param s2 column stride +* @param offset offset +* @param length typed view length +* @return whether the indexed view is safe +*/ +static int bounds( int64_t N, int64_t s1, int64_t s2, int64_t offset, size_t length ) { + long double lo; + long double hi; + long double a; + long double b; + if ( offset < 0 || offset > INT64_C(2147483647) || s1 < -INT64_C(2147483647) || s1 > INT64_C(2147483647) || s2 < -INT64_C(2147483647) || s2 > INT64_C(2147483647) ) { + return 0; + } + a = (long double)(N-1) * (long double)s1; + b = (long double)(N-1) * (long double)s2; + lo = (long double)offset + ((a < 0.0L) ? a : 0.0L) + ((b < 0.0L) ? b : 0.0L); + hi = (long double)offset + ((a > 0.0L) ? a : 0.0L) + ((b > 0.0L) ? b : 0.0L); + return lo >= 0.0L && hi <= 2147483647.0L && hi < (long double)length; +} + +/** +* Invokes the native reciprocal pivot-growth routine. +* +* @param env Node-API environment +* @param info invocation data +* @return numeric growth factor +*/ +static napi_value addon( napi_env env, napi_callback_info info ) { + STDLIB_NAPI_ARGV( env, info, argv, argc, 13 ); + STDLIB_NAPI_ARGV_INT32( env, uplo, argv, 0 ); + STDLIB_NAPI_ARGV_INT64( env, N, argv, 1 ); + if ( N < 0 || N > 1073741823 || (uplo != LAPACK_UPPER_TRIANGLE && uplo != LAPACK_LOWER_TRIANGLE) ) { + napi_throw_range_error( env, NULL, "invalid argument. Unsupported prefix or triangle." ); + return NULL; + } + if ( N == 0 ) { + STDLIB_NAPI_CREATE_DOUBLE( env, 1.0, empty ); + return empty; + } + STDLIB_NAPI_ARGV_FLOAT64ARRAY( env, A, alen, argv, 2 ); + STDLIB_NAPI_ARGV_INT64( env, sa1, argv, 3 ); + STDLIB_NAPI_ARGV_INT64( env, sa2, argv, 4 ); + STDLIB_NAPI_ARGV_INT64( env, oa, argv, 5 ); + STDLIB_NAPI_ARGV_FLOAT64ARRAY( env, AF, flen, argv, 6 ); + STDLIB_NAPI_ARGV_INT64( env, sf1, argv, 7 ); + STDLIB_NAPI_ARGV_INT64( env, sf2, argv, 8 ); + STDLIB_NAPI_ARGV_INT64( env, of, argv, 9 ); + STDLIB_NAPI_ARGV_FLOAT64ARRAY( env, WORK, wlen, argv, 10 ); + STDLIB_NAPI_ARGV_INT64( env, sw, argv, 11 ); + STDLIB_NAPI_ARGV_INT64( env, ow, argv, 12 ); + if ( sw == 0 || !bounds( N, sa1, sa2, oa, alen ) || !bounds( N, sf1, sf2, of, flen ) || !bounds( 2*N, sw, 0, ow, wlen ) ) { + napi_throw_range_error( env, NULL, "invalid argument. Insufficient indexed storage." ); + return NULL; + } + STDLIB_NAPI_CREATE_DOUBLE( env, API_SUFFIX(c_dla_porpvgrw_ndarray)( (LAPACK_UPLO)uplo, N, A, sa1, sa2, oa, AF, sf1, sf2, of, WORK, sw, ow ), out ); + return out; +} + +STDLIB_NAPI_MODULE_EXPORT_FCN( addon ) diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw.c b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw.c new file mode 100644 index 000000000000..ab5cbf50a3af --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw.c @@ -0,0 +1,46 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "stdlib/lapack/base/dla_porpvgrw.h" +#include "stdlib/constants/float64/nan.h" + +/** +* Computes reciprocal Cholesky pivot growth using a matrix storage layout. +* +* @param layout storage layout +* @param uplo stored triangle +* @param NCOLS leading square order +* @param A original matrix +* @param LDA leading dimension of A +* @param AF supplied Cholesky factor +* @param LDAF leading dimension of AF +* @param WORK scratch storage with 2*NCOLS entries +* @return reciprocal pivot growth or NaN for invalid options +*/ +double API_SUFFIX(c_dla_porpvgrw)( const LAPACK_LAYOUT layout, const LAPACK_UPLO uplo, const LAPACK_INT NCOLS, const double *A, const LAPACK_INT LDA, const double *AF, const LAPACK_INT LDAF, double *WORK ) { + if ( layout != LAPACK_ROW_MAJOR && layout != LAPACK_COL_MAJOR ) { + return STDLIB_CONSTANT_FLOAT64_NAN; + } + if ( NCOLS > 0 && (LDA < NCOLS || LDAF < NCOLS) ) { + return STDLIB_CONSTANT_FLOAT64_NAN; + } + if ( layout == LAPACK_COL_MAJOR ) { + return API_SUFFIX(c_dla_porpvgrw_ndarray)( uplo, NCOLS, A, 1, LDA, 0, AF, 1, LDAF, 0, WORK, 1, 0 ); + } + return API_SUFFIX(c_dla_porpvgrw_ndarray)( uplo, NCOLS, A, LDA, 1, 0, AF, LDAF, 1, 0, WORK, 1, 0 ); +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw_ndarray.c b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw_ndarray.c new file mode 100644 index 000000000000..a2d27142de10 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/src/dla_porpvgrw_ndarray.c @@ -0,0 +1,112 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#include "stdlib/lapack/base/dla_porpvgrw.h" +#include "stdlib/math/base/special/abs.h" +#include "stdlib/constants/float64/nan.h" +#include + +/** +* Caller must provide in-bounds disjoint workspace and index arithmetic representable in LAPACK_INT. +* +* Computes reciprocal Cholesky pivot growth for a supplied triangular factor. +* +* ## Notes +* +* - Adapted from Reference LAPACK DLA_PORPVGRW; see NOTICE for its BSD terms. +* - Scans only stored triangular column entries of the leading square prefix. +* - Explicit comparisons define this package's special-value ordering. +* +* @param uplo stored triangle +* @param NCOLS leading square order +* @param A original matrix +* @param sa1 row stride of A +* @param sa2 column stride of A +* @param oa offset of A +* @param AF supplied Cholesky factor +* @param sf1 row stride of AF +* @param sf2 column stride of AF +* @param of offset of AF +* @param WORK scratch storage for 2*NCOLS maxima +* @param sw nonzero scratch stride +* @param ow scratch offset +* @return reciprocal pivot growth or NaN for invalid options +*/ +double API_SUFFIX(c_dla_porpvgrw_ndarray)( const LAPACK_UPLO uplo, const LAPACK_INT NCOLS, const double *A, const LAPACK_INT sa1, const LAPACK_INT sa2, const LAPACK_INT oa, const double *AF, const LAPACK_INT sf1, const LAPACK_INT sf2, const LAPACK_INT of, double *WORK, const LAPACK_INT sw, const LAPACK_INT ow ) { + LAPACK_INT start; + LAPACK_INT stop; + LAPACK_INT index; + LAPACK_INT i; + LAPACK_INT j; + double result; + double value; + double ratio; + double denom; + + if ( NCOLS < 0 || (uplo != LAPACK_UPPER_TRIANGLE && uplo != LAPACK_LOWER_TRIANGLE) ) { + return STDLIB_CONSTANT_FLOAT64_NAN; + } + if ( NCOLS == 0 ) { + return 1.0; + } + // The scratch index NCOLS+j must fit the configured integer ABI. +#ifdef LAPACK_ILP64 + if ( NCOLS > INT64_MAX/2 || sw == 0 ) { +#else + if ( NCOLS > INT32_MAX/2 || sw == 0 ) { +#endif + return STDLIB_CONSTANT_FLOAT64_NAN; + } + result = 1.0; + for ( i = 0; i < NCOLS; i++ ) { + WORK[ ow+(i*sw) ] = 0.0; + WORK[ ow+((NCOLS+i)*sw) ] = 0.0; + } + for ( j = 0; j < NCOLS; j++ ) { + start = ( uplo == LAPACK_UPPER_TRIANGLE ) ? 0 : j; + stop = ( uplo == LAPACK_UPPER_TRIANGLE ) ? j+1 : NCOLS; + index = ow + ((NCOLS+j)*sw); + for ( i = start; i < stop; i++ ) { + value = stdlib_base_abs( A[ oa+(i*sa1)+(j*sa2) ] ); + if ( value > WORK[ index ] ) { + WORK[ index ] = value; + } + } + } + for ( j = 0; j < NCOLS; j++ ) { + start = ( uplo == LAPACK_UPPER_TRIANGLE ) ? 0 : j; + stop = ( uplo == LAPACK_UPPER_TRIANGLE ) ? j+1 : NCOLS; + index = ow + (j*sw); + for ( i = start; i < stop; i++ ) { + value = stdlib_base_abs( AF[ of+(i*sf1)+(j*sf2) ] ); + if ( value > WORK[ index ] ) { + WORK[ index ] = value; + } + } + } + for ( j = 0; j < NCOLS; j++ ) { + denom = WORK[ ow+(j*sw) ]; + if ( denom != 0.0 ) { + ratio = WORK[ ow+((NCOLS+j)*sw) ] / denom; + if ( ratio < result ) { + result = ratio; + } + } + } + return result; +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/common.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/common.js new file mode 100644 index 000000000000..eb6adca629d1 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/common.js @@ -0,0 +1,259 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var Float64Array = require( '@stdlib/array/float64' ); +var abs = require( '@stdlib/math/base/special/abs' ); +var min = require( '@stdlib/math/base/special/min' ); +var max = require( '@stdlib/math/base/special/max' ); +var data = require( './fixtures/lapack.json' ).cases; + + +// FUNCTIONS // + +/** +* Packs selected entries into a padded typed view with a byte offset. +* +* @private +* @param {Array} matrix - logical square matrix +* @param {integer} N - prefix order +* @param {string} uplo - triangle +* @param {integer} s1 - row stride +* @param {integer} s2 - column stride +* @param {integer} extra - leading guard length +* @returns {Object} view and offset +*/ +function pack( matrix, N, uplo, s1, s2, extra ) { + var offset; + var length; + var value; + var view; + var high; + var low; + var i; + var j; + + low = min( 0, (N-1)*s1 ) + min( 0, (N-1)*s2 ); + high = max( 0, (N-1)*s1 ) + max( 0, (N-1)*s2 ); + offset = extra-low; + length = extra+high-low+9; + view = new Float64Array( length+8 ).subarray( 3, length+3 ); + for ( i = 0; i < view.length; i++ ) { + view[ i ] = Infinity; + } + for ( j = 0; j < N; j++ ) { + for ( i = 0; i < N; i++ ) { + if ( (uplo === 'upper' && i <= j) || (uplo === 'lower' && i >= j) ) { + value = matrix[ i ][ j ]; + view[ offset+(i*s1)+(j*s2) ] = ( value === '-0' ) ? -0.0 : value; + } + } + } + return { + 'view': view, + 'offset': offset + }; +} + + +// MAIN // + +/** +* Registers mathematical and public contract checks for an implementation. +* +* @param {Function} tape - test registration +* @param {Function} fn - public numerical implementation +* @param {string} name - implementation label +*/ +function register( tape, fn, name ) { + tape( name+': signature, validated empty prefix and errors', function test( t ) { + var invalid; + var i; + + t.strictEqual( fn.length, 8, 'main arity' ); + t.strictEqual( fn.ndarray.length, 13, 'ndarray arity' ); + t.strictEqual( Object.getOwnPropertyDescriptor( fn, 'ndarray' ).writable, false, 'read-only method' ); + t.strictEqual( Object.getOwnPropertyDescriptor( fn, 'ndarray' ).enumerable, false, 'non-enumerable method' ); + t.strictEqual( fn( 'row-major', 'upper', 0, null, NaN, null, Infinity, null ), 1, 'empty main ignores unused storage/LD' ); + t.strictEqual( fn.ndarray( 'lower', 0, null, NaN, Infinity, null, null, 'x', undefined, null, null, 0, NaN ), 1, 'empty ndarray ignores all unused arguments' ); + t.throws( function badOrder() { + fn( 'bad', 'upper', 0 ); + }, TypeError, 'layout validated before empty return' ); + t.throws( function badTriangle() { + fn( 'row-major', 'all', 0 ); + }, TypeError, 'triangle validated before empty return' ); + invalid = [ -1, 0.5, NaN, Infinity, '1', null, undefined, 9007199254740992 ]; + for ( i = 0; i < invalid.length; i++ ) { + ( function check( value ) { + t.throws( function badN() { + fn( 'row-major', 'upper', value ); + }, RangeError, 'invalid prefix' ); + t.throws( function badND() { + fn.ndarray( 'upper', value ); + }, RangeError, 'invalid ndarray prefix' ); + })( invalid[ i ] ); + } + t.throws( function badLD() { + fn( 'row-major', 'upper', 2, [], 1, [], 2, [] ); + }, RangeError, 'leading dimension' ); + t.throws( function badLD() { + fn( 'column-major', 'upper', 2, [], 2, [], 1.5, [] ); + }, RangeError, 'factor leading dimension' ); + t.throws( function badStride() { + fn.ndarray( 'upper', 1, [], 0.5, 1, 0, [], 1, 1, 0, [], 1, 0 ); + }, RangeError, 'fractional stride' ); + t.throws( function badOffset() { + fn.ndarray( 'upper', 1, [], 1, 1, NaN, [], 1, 1, 0, [], 1, 0 ); + }, RangeError, 'nonfinite offset' ); + t.throws( function badScratch() { + fn.ndarray( 'upper', 1, [], 1, 1, 0, [], 1, 1, 0, [], 0, 0 ); + }, RangeError, 'zero scratch stride' ); + t.end(); + }); + + tape( name+': actual finite LAPACK fixtures in both storage orders', function test( t ) { + var expected; + var beforeA; + var beforeF; + var matrixA; + var matrixF; + var order; + var value; + var uplo; + var work; + var ld; + var lf; + var f; + var N; + var k; + var z; + var i; + + for ( k = 0; k < data.length; k++ ) { + f = data[ k ]; + N = f.ncols; + uplo = ( f.uplo.toUpperCase() === 'U' ) ? 'upper' : 'lower'; + for ( z = 0; z < 2; z++ ) { + order = ( z === 0 ) ? 'row-major' : 'column-major'; + ld = N+3; + lf = N+5; + matrixA = pack( f.A, N, uplo, (z === 0) ? ld : 1, (z === 0) ? 1 : ld, 0 ).view; + matrixF = pack( f.AF, N, uplo, (z === 0) ? lf : 1, (z === 0) ? 1 : lf, 0 ).view; + beforeA = new Float64Array( matrixA ); + beforeF = new Float64Array( matrixF ); + work = new Float64Array( (2*N)+5 ); + for ( i = 0; i < work.length; i++ ) { + work[i] = -123; + } + value = fn( order, uplo, N, matrixA, ld, matrixF, lf, work ); + expected = new Float64Array( f.workspace ); + t.strictEqual( value, f.result, f.name+': reference value' ); + t.deepEqual( work.subarray( 0, 2*N ), expected, 'reference scratch maxima' ); + t.deepEqual( matrixA, beforeA, 'A byte-view entries unchanged' ); + t.deepEqual( matrixF, beforeF, 'AF byte-view entries unchanged' ); + t.deepEqual( Array.prototype.slice.call( work, 2*N ), [ -123, -123, -123, -123, -123 ], 'scratch suffix guard' ); + } + } + t.end(); + }); + + tape( name+': independent views, stored-column counterexample and scratch guards', function test( t ) { + var expected; + var choices; + var matrixA; + var matrixF; + var beforeA; + var beforeF; + var offset; + var value; + var work; + var a; + var b; + var c; + var i; + + choices = [ [ 7, 2 ], [ -7, 2 ], [ 2, -7 ], [ -2, -7 ] ]; + for ( a = 0; a < choices.length; a++ ) { + for ( b = 0; b < choices.length; b++ ) { + for ( c = -3; c <= 3; c += 2 ) { + matrixA = pack( [ [1, 1000, 3], [0, 2, 2], [0, 0, 3] ], 3, 'upper', choices[a][0], choices[a][1], 4 ); + matrixF = pack( [ [2, 4, 6], [0, 4, 5], [0, 0, 6] ], 3, 'upper', choices[b][0], choices[b][1], 6 ); + beforeA = new Float64Array( matrixA.view ); + beforeF = new Float64Array( matrixF.view ); + offset = ( c < 0 ) ? 4+(5*abs(c)) : 4; + work = new Float64Array( 12+(5*abs(c)) ).subarray( 2 ); + expected = new Float64Array( work.length ); + for ( i = 0; i < work.length; i++ ) { + work[i] = -71; + expected[i] = -71; + } + for ( i = 0; i < 6; i++ ) { + expected[ offset+(i*c) ] = [ 2, 4, 6, 1, 1000, 3 ][i]; + } + value = fn.ndarray( 'upper', 3, matrixA.view, choices[a][0], choices[a][1], matrixA.offset, matrixF.view, choices[b][0], choices[b][1], matrixF.offset, work, c, offset ); + t.strictEqual( value, 0.5, 'column-wise ratio differs from global-max ratio' ); + t.deepEqual( work, expected, 'all strided scratch entries and guards' ); + t.deepEqual( matrixA.view, beforeA, 'independent A view unchanged' ); + t.deepEqual( matrixF.view, beforeF, 'independent AF view unchanged' ); + } + } + } + t.end(); + }); + + tape( name+': zero read strides, readonly input alias and explicit comparison semantics', function test( t ) { + var work; + var AF; + var sa; + var sf; + var A; + var i; + var j; + + for ( i = 0; i < 3; i++ ) { + for ( j = 0; j < 3; j++ ) { + sa = [ [0, 0], [0, 1], [1, 0] ][i]; + sf = [ [0, 0], [0, 1], [1, 0] ][j]; + A = new Float64Array( [1, 1, 1] ); + AF = new Float64Array( [2, 2, 2] ); + work = new Float64Array( 6 ); + t.strictEqual( fn.ndarray( 'lower', 3, A, sa[0], sa[1], 0, AF, sf[0], sf[1], 0, work, 1, 0 ), 0.5, 'zero-stride read view formula' ); + t.deepEqual( work, new Float64Array( [2, 2, 2, 1, 1, 1] ), 'zero-stride maxima' ); + } + } + A = new Float64Array( [1, 2, 3, 4] ); + work = new Float64Array( 4 ); + t.strictEqual( fn( 'row-major', 'lower', 2, A, 2, A, 2, work ), 1, 'readonly input alias supported' ); + t.deepEqual( A, new Float64Array( [1, 2, 3, 4] ), 'aliased inputs unchanged' ); + work = new Float64Array( 2 ); + t.strictEqual( fn( 'row-major', 'upper', 1, new Float64Array([NaN]), 1, new Float64Array([2]), 1, work ), 0, 'own NaN comparison policy, not universal reference parity' ); + t.deepEqual( work, new Float64Array([2, 0]), 'NaN ignored by explicit greater comparison' ); + t.strictEqual( fn( 'row-major', 'upper', 1, new Float64Array([Infinity]), 1, new Float64Array([Infinity]), 1, work ), 1, 'unordered ratio leaves cap unchanged' ); + t.strictEqual( fn( 'row-major', 'upper', 1, new Float64Array([-0.0]), 1, new Float64Array([-0.0]), 1, work ), 1, 'zero denominator ignored' ); + t.strictEqual( 1/work[0], Infinity, 'maxima have positive zero' ); + t.end(); + }); +} + + +// EXPORTS // + +module.exports = register; diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/fixtures/lapack.json b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/fixtures/lapack.json new file mode 100644 index 000000000000..d2c412b2ab38 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/fixtures/lapack.json @@ -0,0 +1,8186 @@ +{ + "reference": "Reference-LAPACK/lapack@74d4d63747bf1770bb60e1110c2075227baa324e SRC/dla_porpvgrw.f", + "oracle": "Unchanged pinned Fortran executed at O0 and O3; finite results/workspaces equal. Includes actual SciPy 1.17 DPOTRF factors; synthetic cases are kernel checks.", + "cases": [ + { + "name": "zero-prefix-0", + "uplo": "U", + "n_total": 0, + "ncols": 0, + "lda": 3, + "ldaf": 5, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [], + "AF": [], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-1", + "uplo": "U", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-3", + "uplo": "U", + "n_total": 3, + "ncols": 0, + "lda": 6, + "ldaf": 8, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "AF": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0.25-0.5", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.5, + "workspace": [ + 0.5, + 0.25 + ], + "A": [ + [ + 0.25 + ] + ], + "AF": [ + [ + 0.5 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-4-2", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + 4.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-0", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-3-0", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 3.0 + ], + "A": [ + [ + 3.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-2", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 2.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--0.0--0.0", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + "-0" + ] + ], + "AF": [ + [ + "-0" + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--4--2", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + -4.0 + ] + ], + "AF": [ + [ + -2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e-300-1e+150", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 1e+150, + 1e-300 + ], + "A": [ + [ + 1e-300 + ] + ], + "AF": [ + [ + 1e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e+300-1e-150", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1e-150, + 1e+300 + ], + "A": [ + [ + 1e+300 + ] + ], + "AF": [ + [ + 1e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-5e-324-1", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 5e-324, + "workspace": [ + 1.0, + 5e-324 + ], + "A": [ + [ + 5e-324 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1-5e-324", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 5e-324, + 1.0 + ], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 5e-324 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-0", + "uplo": "L", + "n_total": 0, + "ncols": 0, + "lda": 3, + "ldaf": 5, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [], + "AF": [], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-1", + "uplo": "L", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-3", + "uplo": "L", + "n_total": 3, + "ncols": 0, + "lda": 6, + "ldaf": 8, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "AF": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0.25-0.5", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.5, + "workspace": [ + 0.5, + 0.25 + ], + "A": [ + [ + 0.25 + ] + ], + "AF": [ + [ + 0.5 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-4-2", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + 4.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-0", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-3-0", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 3.0 + ], + "A": [ + [ + 3.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-2", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 2.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--0.0--0.0", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + "-0" + ] + ], + "AF": [ + [ + "-0" + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--4--2", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + -4.0 + ] + ], + "AF": [ + [ + -2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e-300-1e+150", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 1e+150, + 1e-300 + ], + "A": [ + [ + 1e-300 + ] + ], + "AF": [ + [ + 1e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e+300-1e-150", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1e-150, + 1e+300 + ], + "A": [ + [ + 1e+300 + ] + ], + "AF": [ + [ + 1e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-5e-324-1", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 5e-324, + "workspace": [ + 1.0, + 5e-324 + ], + "A": [ + [ + 5e-324 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1-5e-324", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 5e-324, + 1.0 + ], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 5e-324 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-0", + "uplo": "u", + "n_total": 0, + "ncols": 0, + "lda": 3, + "ldaf": 5, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [], + "AF": [], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-1", + "uplo": "u", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-3", + "uplo": "u", + "n_total": 3, + "ncols": 0, + "lda": 6, + "ldaf": 8, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "AF": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0.25-0.5", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.5, + "workspace": [ + 0.5, + 0.25 + ], + "A": [ + [ + 0.25 + ] + ], + "AF": [ + [ + 0.5 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-4-2", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + 4.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-0", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-3-0", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 3.0 + ], + "A": [ + [ + 3.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-2", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 2.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--0.0--0.0", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + "-0" + ] + ], + "AF": [ + [ + "-0" + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--4--2", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + -4.0 + ] + ], + "AF": [ + [ + -2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e-300-1e+150", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 1e+150, + 1e-300 + ], + "A": [ + [ + 1e-300 + ] + ], + "AF": [ + [ + 1e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e+300-1e-150", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1e-150, + 1e+300 + ], + "A": [ + [ + 1e+300 + ] + ], + "AF": [ + [ + 1e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-5e-324-1", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 5e-324, + "workspace": [ + 1.0, + 5e-324 + ], + "A": [ + [ + 5e-324 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1-5e-324", + "uplo": "u", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 5e-324, + 1.0 + ], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 5e-324 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-0", + "uplo": "l", + "n_total": 0, + "ncols": 0, + "lda": 3, + "ldaf": 5, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [], + "AF": [], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-1", + "uplo": "l", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-prefix-3", + "uplo": "l", + "n_total": 3, + "ncols": 0, + "lda": 6, + "ldaf": 8, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "AF": [ + [ + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.0 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0.25-0.5", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.5, + "workspace": [ + 0.5, + 0.25 + ], + "A": [ + [ + 0.25 + ] + ], + "AF": [ + [ + 0.5 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-4-2", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + 4.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-0", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-3-0", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 3.0 + ], + "A": [ + [ + 3.0 + ] + ], + "AF": [ + [ + 0.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-0-2", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 2.0, + 0.0 + ], + "A": [ + [ + 0.0 + ] + ], + "AF": [ + [ + 2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--0.0--0.0", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 0.0, + 0.0 + ], + "A": [ + [ + "-0" + ] + ], + "AF": [ + [ + "-0" + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar--4--2", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 2.0, + 4.0 + ], + "A": [ + [ + -4.0 + ] + ], + "AF": [ + [ + -2.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e-300-1e+150", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.0, + "workspace": [ + 1e+150, + 1e-300 + ], + "A": [ + [ + 1e-300 + ] + ], + "AF": [ + [ + 1e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1e+300-1e-150", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1e-150, + 1e+300 + ], + "A": [ + [ + 1e+300 + ] + ], + "AF": [ + [ + 1e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-5e-324-1", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 5e-324, + "workspace": [ + 1.0, + 5e-324 + ], + "A": [ + [ + 5e-324 + ] + ], + "AF": [ + [ + 1.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "scalar-1-5e-324", + "uplo": "l", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 5e-324, + 1.0 + ], + "A": [ + [ + 1.0 + ] + ], + "AF": [ + [ + 5e-324 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1.0-prefix0", + "uplo": "U", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 0.7980111385495191 + ] + ], + "AF": [ + [ + 0.8933146917797329 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1.0-prefix1", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.8933146917797328, + "workspace": [ + 0.8933146917797329, + 0.7980111385495191 + ], + "A": [ + [ + 0.7980111385495191 + ] + ], + "AF": [ + [ + 0.8933146917797329 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1.0-prefix0", + "uplo": "L", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 0.7980111385495191 + ] + ], + "AF": [ + [ + 0.8933146917797329 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1.0-prefix1", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.8933146917797328, + "workspace": [ + 0.8933146917797329, + 0.7980111385495191 + ], + "A": [ + [ + 0.7980111385495191 + ] + ], + "AF": [ + [ + 0.8933146917797329 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e-300-prefix0", + "uplo": "U", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 7.980111385495192e-301 + ] + ], + "AF": [ + [ + 8.93314691779733e-151 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e-300-prefix1", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 8.93314691779733e-151, + "workspace": [ + 8.93314691779733e-151, + 7.980111385495192e-301 + ], + "A": [ + [ + 7.980111385495192e-301 + ] + ], + "AF": [ + [ + 8.93314691779733e-151 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e-300-prefix0", + "uplo": "L", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 7.980111385495192e-301 + ] + ], + "AF": [ + [ + 8.93314691779733e-151 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e-300-prefix1", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 8.93314691779733e-151, + "workspace": [ + 8.93314691779733e-151, + 7.980111385495192e-301 + ], + "A": [ + [ + 7.980111385495192e-301 + ] + ], + "AF": [ + [ + 8.93314691779733e-151 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e+300-prefix0", + "uplo": "U", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 7.980111385495192e+299 + ] + ], + "AF": [ + [ + 8.93314691779733e+149 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e+300-prefix1", + "uplo": "U", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 8.93314691779733e+149, + 7.980111385495192e+299 + ], + "A": [ + [ + 7.980111385495192e+299 + ] + ], + "AF": [ + [ + 8.93314691779733e+149 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e+300-prefix0", + "uplo": "L", + "n_total": 1, + "ncols": 0, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 7.980111385495192e+299 + ] + ], + "AF": [ + [ + 8.93314691779733e+149 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-1-1e+300-prefix1", + "uplo": "L", + "n_total": 1, + "ncols": 1, + "lda": 4, + "ldaf": 6, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 8.93314691779733e+149, + 7.980111385495192e+299 + ], + "A": [ + [ + 7.980111385495192e+299 + ] + ], + "AF": [ + [ + 8.93314691779733e+149 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1.0-prefix0", + "uplo": "U", + "n_total": 2, + "ncols": 0, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 2.0000687972006403, + -0.9411164445271101 + ], + [ + -0.9411164445271101, + 1.852793752223712 + ] + ], + "AF": [ + [ + 1.4142378856474749, + -0.6654583744913908 + ], + [ + -0.9411164445271101, + 1.1874169040581273 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1.0-prefix1", + "uplo": "U", + "n_total": 2, + "ncols": 1, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749, + 2.0000687972006403 + ], + "A": [ + [ + 2.0000687972006403, + -0.9411164445271101 + ], + [ + -0.9411164445271101, + 1.852793752223712 + ] + ], + "AF": [ + [ + 1.4142378856474749, + -0.6654583744913908 + ], + [ + -0.9411164445271101, + 1.1874169040581273 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1.0-prefix2", + "uplo": "U", + "n_total": 2, + "ncols": 2, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749, + 1.1874169040581273, + 2.0000687972006403, + 1.852793752223712 + ], + "A": [ + [ + 2.0000687972006403, + -0.9411164445271101 + ], + [ + -0.9411164445271101, + 1.852793752223712 + ] + ], + "AF": [ + [ + 1.4142378856474749, + -0.6654583744913908 + ], + [ + -0.9411164445271101, + 1.1874169040581273 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1.0-prefix0", + "uplo": "L", + "n_total": 2, + "ncols": 0, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 2.0000687972006403, + -0.9411164445271101 + ], + [ + -0.9411164445271101, + 1.852793752223712 + ] + ], + "AF": [ + [ + 1.4142378856474749, + -0.9411164445271101 + ], + [ + -0.6654583744913908, + 1.1874169040581273 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1.0-prefix1", + "uplo": "L", + "n_total": 2, + "ncols": 1, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749, + 2.0000687972006403 + ], + "A": [ + [ + 2.0000687972006403, + -0.9411164445271101 + ], + [ + -0.9411164445271101, + 1.852793752223712 + ] + ], + "AF": [ + [ + 1.4142378856474749, + -0.9411164445271101 + ], + [ + -0.6654583744913908, + 1.1874169040581273 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1.0-prefix2", + "uplo": "L", + "n_total": 2, + "ncols": 2, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749, + 1.1874169040581273, + 2.0000687972006403, + 1.852793752223712 + ], + "A": [ + [ + 2.0000687972006403, + -0.9411164445271101 + ], + [ + -0.9411164445271101, + 1.852793752223712 + ] + ], + "AF": [ + [ + 1.4142378856474749, + -0.9411164445271101 + ], + [ + -0.6654583744913908, + 1.1874169040581273 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e-300-prefix0", + "uplo": "U", + "n_total": 2, + "ncols": 0, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 2.0000687972006403e-300, + -9.4111644452711e-301 + ], + [ + -9.4111644452711e-301, + 1.8527937522237118e-300 + ] + ], + "AF": [ + [ + 1.4142378856474748e-150, + -6.654583744913909e-151 + ], + [ + -9.4111644452711e-301, + 1.1874169040581271e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e-300-prefix1", + "uplo": "U", + "n_total": 2, + "ncols": 1, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.4142378856474748e-150, + "workspace": [ + 1.4142378856474748e-150, + 2.0000687972006403e-300 + ], + "A": [ + [ + 2.0000687972006403e-300, + -9.4111644452711e-301 + ], + [ + -9.4111644452711e-301, + 1.8527937522237118e-300 + ] + ], + "AF": [ + [ + 1.4142378856474748e-150, + -6.654583744913909e-151 + ], + [ + -9.4111644452711e-301, + 1.1874169040581271e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e-300-prefix2", + "uplo": "U", + "n_total": 2, + "ncols": 2, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.4142378856474748e-150, + "workspace": [ + 1.4142378856474748e-150, + 1.1874169040581271e-150, + 2.0000687972006403e-300, + 1.8527937522237118e-300 + ], + "A": [ + [ + 2.0000687972006403e-300, + -9.4111644452711e-301 + ], + [ + -9.4111644452711e-301, + 1.8527937522237118e-300 + ] + ], + "AF": [ + [ + 1.4142378856474748e-150, + -6.654583744913909e-151 + ], + [ + -9.4111644452711e-301, + 1.1874169040581271e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e-300-prefix0", + "uplo": "L", + "n_total": 2, + "ncols": 0, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 2.0000687972006403e-300, + -9.4111644452711e-301 + ], + [ + -9.4111644452711e-301, + 1.8527937522237118e-300 + ] + ], + "AF": [ + [ + 1.4142378856474748e-150, + -9.4111644452711e-301 + ], + [ + -6.654583744913909e-151, + 1.1874169040581271e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e-300-prefix1", + "uplo": "L", + "n_total": 2, + "ncols": 1, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.4142378856474748e-150, + "workspace": [ + 1.4142378856474748e-150, + 2.0000687972006403e-300 + ], + "A": [ + [ + 2.0000687972006403e-300, + -9.4111644452711e-301 + ], + [ + -9.4111644452711e-301, + 1.8527937522237118e-300 + ] + ], + "AF": [ + [ + 1.4142378856474748e-150, + -9.4111644452711e-301 + ], + [ + -6.654583744913909e-151, + 1.1874169040581271e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e-300-prefix2", + "uplo": "L", + "n_total": 2, + "ncols": 2, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.4142378856474748e-150, + "workspace": [ + 1.4142378856474748e-150, + 1.1874169040581271e-150, + 2.0000687972006403e-300, + 1.8527937522237118e-300 + ], + "A": [ + [ + 2.0000687972006403e-300, + -9.4111644452711e-301 + ], + [ + -9.4111644452711e-301, + 1.8527937522237118e-300 + ] + ], + "AF": [ + [ + 1.4142378856474748e-150, + -9.4111644452711e-301 + ], + [ + -6.654583744913909e-151, + 1.1874169040581271e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e+300-prefix0", + "uplo": "U", + "n_total": 2, + "ncols": 0, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 2.0000687972006404e+300, + -9.411164445271101e+299 + ], + [ + -9.411164445271101e+299, + 1.852793752223712e+300 + ] + ], + "AF": [ + [ + 1.4142378856474749e+150, + -6.654583744913908e+149 + ], + [ + -9.411164445271101e+299, + 1.1874169040581273e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e+300-prefix1", + "uplo": "U", + "n_total": 2, + "ncols": 1, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749e+150, + 2.0000687972006404e+300 + ], + "A": [ + [ + 2.0000687972006404e+300, + -9.411164445271101e+299 + ], + [ + -9.411164445271101e+299, + 1.852793752223712e+300 + ] + ], + "AF": [ + [ + 1.4142378856474749e+150, + -6.654583744913908e+149 + ], + [ + -9.411164445271101e+299, + 1.1874169040581273e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e+300-prefix2", + "uplo": "U", + "n_total": 2, + "ncols": 2, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749e+150, + 1.1874169040581273e+150, + 2.0000687972006404e+300, + 1.852793752223712e+300 + ], + "A": [ + [ + 2.0000687972006404e+300, + -9.411164445271101e+299 + ], + [ + -9.411164445271101e+299, + 1.852793752223712e+300 + ] + ], + "AF": [ + [ + 1.4142378856474749e+150, + -6.654583744913908e+149 + ], + [ + -9.411164445271101e+299, + 1.1874169040581273e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e+300-prefix0", + "uplo": "L", + "n_total": 2, + "ncols": 0, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 2.0000687972006404e+300, + -9.411164445271101e+299 + ], + [ + -9.411164445271101e+299, + 1.852793752223712e+300 + ] + ], + "AF": [ + [ + 1.4142378856474749e+150, + -9.411164445271101e+299 + ], + [ + -6.654583744913908e+149, + 1.1874169040581273e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e+300-prefix1", + "uplo": "L", + "n_total": 2, + "ncols": 1, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749e+150, + 2.0000687972006404e+300 + ], + "A": [ + [ + 2.0000687972006404e+300, + -9.411164445271101e+299 + ], + [ + -9.411164445271101e+299, + 1.852793752223712e+300 + ] + ], + "AF": [ + [ + 1.4142378856474749e+150, + -9.411164445271101e+299 + ], + [ + -6.654583744913908e+149, + 1.1874169040581273e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-2-1e+300-prefix2", + "uplo": "L", + "n_total": 2, + "ncols": 2, + "lda": 5, + "ldaf": 7, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 1.4142378856474749e+150, + 1.1874169040581273e+150, + 2.0000687972006404e+300, + 1.852793752223712e+300 + ], + "A": [ + [ + 2.0000687972006404e+300, + -9.411164445271101e+299 + ], + [ + -9.411164445271101e+299, + 1.852793752223712e+300 + ] + ], + "AF": [ + [ + 1.4142378856474749e+150, + -9.411164445271101e+299 + ], + [ + -6.654583744913908e+149, + 1.1874169040581273e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix0", + "uplo": "U", + "n_total": 4, + "ncols": 0, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 0.3893266159130267, + 0.3649689583313147, + 1.3560593170210689 + ], + [ + 1.2348833542909086, + 1.3430399587406963, + -0.029067056345442318, + -0.501703864375662 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 1.5197828028380125, + 1.9795258619797513 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix1", + "uplo": "U", + "n_total": 4, + "ncols": 1, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888, + 10.06059539609463 + ], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 0.3893266159130267, + 0.3649689583313147, + 1.3560593170210689 + ], + [ + 1.2348833542909086, + 1.3430399587406963, + -0.029067056345442318, + -0.501703864375662 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 1.5197828028380125, + 1.9795258619797513 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix2", + "uplo": "U", + "n_total": 4, + "ncols": 2, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888, + 1.3430399587406963, + 10.06059539609463, + 1.9553315446325004 + ], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 0.3893266159130267, + 0.3649689583313147, + 1.3560593170210689 + ], + [ + 1.2348833542909086, + 1.3430399587406963, + -0.029067056345442318, + -0.501703864375662 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 1.5197828028380125, + 1.9795258619797513 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix4", + "uplo": "U", + "n_total": 4, + "ncols": 4, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888, + 1.3430399587406963, + 1.5197828028380125, + 1.9795258619797513, + 10.06059539609463, + 1.9553315446325004, + 2.4437870021121997, + 9.420065750995967 + ], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 0.3893266159130267, + 0.3649689583313147, + 1.3560593170210689 + ], + [ + 1.2348833542909086, + 1.3430399587406963, + -0.029067056345442318, + -0.501703864375662 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 1.5197828028380125, + 1.9795258619797513 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix0", + "uplo": "L", + "n_total": 4, + "ncols": 0, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 0.3893266159130267, + 1.3430399587406963, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 0.3649689583313147, + -0.029067056345442318, + 1.5197828028380125, + 3.517951973673106 + ], + [ + 1.3560593170210689, + -0.501703864375662, + 1.9795258619797513, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix1", + "uplo": "L", + "n_total": 4, + "ncols": 1, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888, + 10.06059539609463 + ], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 0.3893266159130267, + 1.3430399587406963, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 0.3649689583313147, + -0.029067056345442318, + 1.5197828028380125, + 3.517951973673106 + ], + [ + 1.3560593170210689, + -0.501703864375662, + 1.9795258619797513, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix2", + "uplo": "L", + "n_total": 4, + "ncols": 2, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888, + 1.3430399587406963, + 10.06059539609463, + 1.9553315446325004 + ], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 0.3893266159130267, + 1.3430399587406963, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 0.3649689583313147, + -0.029067056345442318, + 1.5197828028380125, + 3.517951973673106 + ], + [ + 1.3560593170210689, + -0.501703864375662, + 1.9795258619797513, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1.0-prefix4", + "uplo": "L", + "n_total": 4, + "ncols": 4, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888, + 1.3430399587406963, + 1.9795258619797513, + 1.8468728905748142, + 10.06059539609463, + 1.9553315446325004, + 3.517951973673106, + 9.420065750995967 + ], + "A": [ + [ + 10.06059539609463, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 1.2348833542909086, + 1.9553315446325004, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 1.1576246602593314, + 0.10305391130553686, + 2.4437870021121997, + 3.517951973673106 + ], + [ + 4.301208829746452, + -0.14585835243799392, + 3.517951973673106, + 9.420065750995967 + ] + ], + "AF": [ + [ + 3.171844163273888, + 1.2348833542909086, + 1.1576246602593314, + 4.301208829746452 + ], + [ + 0.3893266159130267, + 1.3430399587406963, + 0.10305391130553686, + -0.14585835243799392 + ], + [ + 0.3649689583313147, + -0.029067056345442318, + 1.5197828028380125, + 3.517951973673106 + ], + [ + 1.3560593170210689, + -0.501703864375662, + 1.9795258619797513, + 1.8468728905748142 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix0", + "uplo": "U", + "n_total": 4, + "ncols": 0, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 3.8932661591302675e-151, + 3.649689583313147e-151, + 1.3560593170210688e-150 + ], + [ + 1.2348833542909086e-300, + 1.3430399587406963e-150, + -2.906705634544233e-152, + -5.0170386437566196e-151 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 1.5197828028380128e-150, + 1.9795258619797512e-150 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 1.8468728905748147e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix1", + "uplo": "U", + "n_total": 4, + "ncols": 1, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 3.171844163273888e-150, + "workspace": [ + 3.171844163273888e-150, + 1.006059539609463e-299 + ], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 3.8932661591302675e-151, + 3.649689583313147e-151, + 1.3560593170210688e-150 + ], + [ + 1.2348833542909086e-300, + 1.3430399587406963e-150, + -2.906705634544233e-152, + -5.0170386437566196e-151 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 1.5197828028380128e-150, + 1.9795258619797512e-150 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 1.8468728905748147e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix2", + "uplo": "U", + "n_total": 4, + "ncols": 2, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.455899753322247e-150, + "workspace": [ + 3.171844163273888e-150, + 1.3430399587406963e-150, + 1.006059539609463e-299, + 1.9553315446325006e-300 + ], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 3.8932661591302675e-151, + 3.649689583313147e-151, + 1.3560593170210688e-150 + ], + [ + 1.2348833542909086e-300, + 1.3430399587406963e-150, + -2.906705634544233e-152, + -5.0170386437566196e-151 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 1.5197828028380128e-150, + 1.9795258619797512e-150 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 1.8468728905748147e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix4", + "uplo": "U", + "n_total": 4, + "ncols": 4, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.455899753322247e-150, + "workspace": [ + 3.171844163273888e-150, + 1.3430399587406963e-150, + 1.5197828028380128e-150, + 1.9795258619797512e-150, + 1.006059539609463e-299, + 1.9553315446325006e-300, + 2.4437870021122e-300, + 9.420065750995968e-300 + ], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 3.8932661591302675e-151, + 3.649689583313147e-151, + 1.3560593170210688e-150 + ], + [ + 1.2348833542909086e-300, + 1.3430399587406963e-150, + -2.906705634544233e-152, + -5.0170386437566196e-151 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 1.5197828028380128e-150, + 1.9795258619797512e-150 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 1.8468728905748147e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix0", + "uplo": "L", + "n_total": 4, + "ncols": 0, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 3.8932661591302675e-151, + 1.3430399587406963e-150, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 3.649689583313147e-151, + -2.9067056345442325e-152, + 1.5197828028380128e-150, + 3.5179519736731064e-300 + ], + [ + 1.3560593170210688e-150, + -5.01703864375662e-151, + 1.9795258619797512e-150, + 1.8468728905748142e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix1", + "uplo": "L", + "n_total": 4, + "ncols": 1, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 3.171844163273888e-150, + "workspace": [ + 3.171844163273888e-150, + 1.006059539609463e-299 + ], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 3.8932661591302675e-151, + 1.3430399587406963e-150, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 3.649689583313147e-151, + -2.9067056345442325e-152, + 1.5197828028380128e-150, + 3.5179519736731064e-300 + ], + [ + 1.3560593170210688e-150, + -5.01703864375662e-151, + 1.9795258619797512e-150, + 1.8468728905748142e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix2", + "uplo": "L", + "n_total": 4, + "ncols": 2, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.455899753322247e-150, + "workspace": [ + 3.171844163273888e-150, + 1.3430399587406963e-150, + 1.006059539609463e-299, + 1.9553315446325006e-300 + ], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 3.8932661591302675e-151, + 1.3430399587406963e-150, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 3.649689583313147e-151, + -2.9067056345442325e-152, + 1.5197828028380128e-150, + 3.5179519736731064e-300 + ], + [ + 1.3560593170210688e-150, + -5.01703864375662e-151, + 1.9795258619797512e-150, + 1.8468728905748142e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e-300-prefix4", + "uplo": "L", + "n_total": 4, + "ncols": 4, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.455899753322247e-150, + "workspace": [ + 3.171844163273888e-150, + 1.3430399587406963e-150, + 1.9795258619797512e-150, + 1.8468728905748142e-150, + 1.006059539609463e-299, + 1.9553315446325006e-300, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ], + "A": [ + [ + 1.006059539609463e-299, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 1.2348833542909086e-300, + 1.9553315446325006e-300, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 1.1576246602593314e-300, + 1.0305391130553686e-301, + 2.4437870021122e-300, + 3.5179519736731064e-300 + ], + [ + 4.301208829746452e-300, + -1.4585835243799393e-301, + 3.5179519736731064e-300, + 9.420065750995968e-300 + ] + ], + "AF": [ + [ + 3.171844163273888e-150, + 1.2348833542909086e-300, + 1.1576246602593314e-300, + 4.301208829746452e-300 + ], + [ + 3.8932661591302675e-151, + 1.3430399587406963e-150, + 1.0305391130553686e-301, + -1.4585835243799393e-301 + ], + [ + 3.649689583313147e-151, + -2.9067056345442325e-152, + 1.5197828028380128e-150, + 3.5179519736731064e-300 + ], + [ + 1.3560593170210688e-150, + -5.01703864375662e-151, + 1.9795258619797512e-150, + 1.8468728905748142e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix0", + "uplo": "U", + "n_total": 4, + "ncols": 0, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 3.893266159130267e+149, + 3.6496895833131473e+149, + 1.3560593170210688e+150 + ], + [ + 1.2348833542909086e+300, + 1.3430399587406962e+150, + -2.906705634544233e+148, + -5.01703864375662e+149 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 1.5197828028380126e+150, + 1.979525861979751e+150 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix1", + "uplo": "U", + "n_total": 4, + "ncols": 1, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888e+150, + 1.0060595396094631e+301 + ], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 3.893266159130267e+149, + 3.6496895833131473e+149, + 1.3560593170210688e+150 + ], + [ + 1.2348833542909086e+300, + 1.3430399587406962e+150, + -2.906705634544233e+148, + -5.01703864375662e+149 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 1.5197828028380126e+150, + 1.979525861979751e+150 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix2", + "uplo": "U", + "n_total": 4, + "ncols": 2, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888e+150, + 1.3430399587406962e+150, + 1.0060595396094631e+301, + 1.9553315446325004e+300 + ], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 3.893266159130267e+149, + 3.6496895833131473e+149, + 1.3560593170210688e+150 + ], + [ + 1.2348833542909086e+300, + 1.3430399587406962e+150, + -2.906705634544233e+148, + -5.01703864375662e+149 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 1.5197828028380126e+150, + 1.979525861979751e+150 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix4", + "uplo": "U", + "n_total": 4, + "ncols": 4, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888e+150, + 1.3430399587406962e+150, + 1.5197828028380126e+150, + 1.979525861979751e+150, + 1.0060595396094631e+301, + 1.9553315446325004e+300, + 2.4437870021121997e+300, + 9.420065750995967e+300 + ], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 3.893266159130267e+149, + 3.6496895833131473e+149, + 1.3560593170210688e+150 + ], + [ + 1.2348833542909086e+300, + 1.3430399587406962e+150, + -2.906705634544233e+148, + -5.01703864375662e+149 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 1.5197828028380126e+150, + 1.979525861979751e+150 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix0", + "uplo": "L", + "n_total": 4, + "ncols": 0, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 3.893266159130267e+149, + 1.3430399587406962e+150, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 3.6496895833131473e+149, + -2.906705634544233e+148, + 1.5197828028380126e+150, + 3.517951973673106e+300 + ], + [ + 1.3560593170210688e+150, + -5.01703864375662e+149, + 1.979525861979751e+150, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix1", + "uplo": "L", + "n_total": 4, + "ncols": 1, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888e+150, + 1.0060595396094631e+301 + ], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 3.893266159130267e+149, + 1.3430399587406962e+150, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 3.6496895833131473e+149, + -2.906705634544233e+148, + 1.5197828028380126e+150, + 3.517951973673106e+300 + ], + [ + 1.3560593170210688e+150, + -5.01703864375662e+149, + 1.979525861979751e+150, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix2", + "uplo": "L", + "n_total": 4, + "ncols": 2, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888e+150, + 1.3430399587406962e+150, + 1.0060595396094631e+301, + 1.9553315446325004e+300 + ], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 3.893266159130267e+149, + 1.3430399587406962e+150, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 3.6496895833131473e+149, + -2.906705634544233e+148, + 1.5197828028380126e+150, + 3.517951973673106e+300 + ], + [ + 1.3560593170210688e+150, + -5.01703864375662e+149, + 1.979525861979751e+150, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-4-1e+300-prefix4", + "uplo": "L", + "n_total": 4, + "ncols": 4, + "lda": 7, + "ldaf": 9, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.171844163273888e+150, + 1.3430399587406962e+150, + 1.979525861979751e+150, + 1.8468728905748146e+150, + 1.0060595396094631e+301, + 1.9553315446325004e+300, + 3.517951973673106e+300, + 9.420065750995967e+300 + ], + "A": [ + [ + 1.0060595396094631e+301, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 1.2348833542909086e+300, + 1.9553315446325004e+300, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 1.1576246602593315e+300, + 1.0305391130553686e+299, + 2.4437870021121997e+300, + 3.517951973673106e+300 + ], + [ + 4.301208829746452e+300, + -1.4585835243799392e+299, + 3.517951973673106e+300, + 9.420065750995967e+300 + ] + ], + "AF": [ + [ + 3.171844163273888e+150, + 1.2348833542909086e+300, + 1.1576246602593315e+300, + 4.301208829746452e+300 + ], + [ + 3.893266159130267e+149, + 1.3430399587406962e+150, + 1.0305391130553686e+299, + -1.4585835243799392e+299 + ], + [ + 3.6496895833131473e+149, + -2.906705634544233e+148, + 1.5197828028380126e+150, + 3.517951973673106e+300 + ], + [ + 1.3560593170210688e+150, + -5.01703864375662e+149, + 1.979525861979751e+150, + 1.8468728905748146e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix0", + "uplo": "U", + "n_total": 7, + "ncols": 0, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.1267608001296869, + 1.2046661634488671, + 0.908151093666776, + 1.2989495472964205, + -1.2633506833891452, + 0.47407447108108447 + ], + [ + 0.4505718885341025, + 3.6686997492607465, + -1.27458365901504, + 1.3507661789144085, + -0.8479013642399009, + -0.6602618305556718, + 0.24306496757052357 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 2.022466946103932, + 0.006508267534568164, + 0.8144031931332525, + 0.6486649305131721, + 0.5009193722849531 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 3.583002759046898, + 1.539118630874461, + 1.006299797492864, + -0.43041525544668885 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 1.1595958011190624, + -0.19903947329322527, + -0.6389082656811436 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 2.2607631907834658, + -0.1542386974604719 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix1", + "uplo": "U", + "n_total": 7, + "ncols": 1, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.5545049263899386, + 12.634505271730342 + ], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.1267608001296869, + 1.2046661634488671, + 0.908151093666776, + 1.2989495472964205, + -1.2633506833891452, + 0.47407447108108447 + ], + [ + 0.4505718885341025, + 3.6686997492607465, + -1.27458365901504, + 1.3507661789144085, + -0.8479013642399009, + -0.6602618305556718, + 0.24306496757052357 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 2.022466946103932, + 0.006508267534568164, + 0.8144031931332525, + 0.6486649305131721, + 0.5009193722849531 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 3.583002759046898, + 1.539118630874461, + 1.006299797492864, + -0.43041525544668885 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 1.1595958011190624, + -0.19903947329322527, + -0.6389082656811436 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 2.2607631907834658, + -0.1542386974604719 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix3", + "uplo": "U", + "n_total": 7, + "ncols": 3, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.5545049263899386, + 3.6686997492607465, + 2.022466946103932, + 12.634505271730342, + 13.475426150675384, + 7.1661566172697455 + ], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.1267608001296869, + 1.2046661634488671, + 0.908151093666776, + 1.2989495472964205, + -1.2633506833891452, + 0.47407447108108447 + ], + [ + 0.4505718885341025, + 3.6686997492607465, + -1.27458365901504, + 1.3507661789144085, + -0.8479013642399009, + -0.6602618305556718, + 0.24306496757052357 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 2.022466946103932, + 0.006508267534568164, + 0.8144031931332525, + 0.6486649305131721, + 0.5009193722849531 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 3.583002759046898, + 1.539118630874461, + 1.006299797492864, + -0.43041525544668885 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 1.1595958011190624, + -0.19903947329322527, + -0.6389082656811436 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 2.2607631907834658, + -0.1542386974604719 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix7", + "uplo": "U", + "n_total": 7, + "ncols": 7, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.5545049263899386, + 3.6686997492607465, + 2.022466946103932, + 3.583002759046898, + 1.539118630874461, + 2.2607631907834658, + 1.9798067620697013, + 12.634505271730342, + 13.475426150675384, + 7.1661566172697455, + 15.487258807911175, + 6.783007792764935, + 8.616073025350666, + 5.071632855129364 + ], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.1267608001296869, + 1.2046661634488671, + 0.908151093666776, + 1.2989495472964205, + -1.2633506833891452, + 0.47407447108108447 + ], + [ + 0.4505718885341025, + 3.6686997492607465, + -1.27458365901504, + 1.3507661789144085, + -0.8479013642399009, + -0.6602618305556718, + 0.24306496757052357 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 2.022466946103932, + 0.006508267534568164, + 0.8144031931332525, + 0.6486649305131721, + 0.5009193722849531 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 3.583002759046898, + 1.539118630874461, + 1.006299797492864, + -0.43041525544668885 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 1.1595958011190624, + -0.19903947329322527, + -0.6389082656811436 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 2.2607631907834658, + -0.1542386974604719 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix0", + "uplo": "L", + "n_total": 7, + "ncols": 0, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.1267608001296869, + 3.6686997492607465, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 1.2046661634488671, + -1.27458365901504, + 2.022466946103932, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 0.908151093666776, + 1.3507661789144085, + 0.006508267534568109, + 3.583002759046898, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 1.2989495472964205, + -0.8479013642399009, + 0.8144031931332526, + 1.539118630874461, + 1.1595958011190624, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -1.2633506833891452, + -0.6602618305556718, + 0.6486649305131722, + 1.006299797492864, + -0.19903947329322538, + 2.2607631907834658, + -1.0891359871567852 + ], + [ + 0.47407447108108447, + 0.24306496757052357, + 0.5009193722849531, + -0.43041525544668885, + -0.6389082656811435, + -0.15423869746047195, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix1", + "uplo": "L", + "n_total": 7, + "ncols": 1, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.5545049263899386, + 12.634505271730342 + ], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.1267608001296869, + 3.6686997492607465, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 1.2046661634488671, + -1.27458365901504, + 2.022466946103932, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 0.908151093666776, + 1.3507661789144085, + 0.006508267534568109, + 3.583002759046898, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 1.2989495472964205, + -0.8479013642399009, + 0.8144031931332526, + 1.539118630874461, + 1.1595958011190624, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -1.2633506833891452, + -0.6602618305556718, + 0.6486649305131722, + 1.006299797492864, + -0.19903947329322538, + 2.2607631907834658, + -1.0891359871567852 + ], + [ + 0.47407447108108447, + 0.24306496757052357, + 0.5009193722849531, + -0.43041525544668885, + -0.6389082656811435, + -0.15423869746047195, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix3", + "uplo": "L", + "n_total": 7, + "ncols": 3, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.5545049263899386, + 3.6686997492607465, + 2.022466946103932, + 12.634505271730342, + 13.475426150675384, + 7.1661566172697455 + ], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.1267608001296869, + 3.6686997492607465, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 1.2046661634488671, + -1.27458365901504, + 2.022466946103932, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 0.908151093666776, + 1.3507661789144085, + 0.006508267534568109, + 3.583002759046898, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 1.2989495472964205, + -0.8479013642399009, + 0.8144031931332526, + 1.539118630874461, + 1.1595958011190624, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -1.2633506833891452, + -0.6602618305556718, + 0.6486649305131722, + 1.006299797492864, + -0.19903947329322538, + 2.2607631907834658, + -1.0891359871567852 + ], + [ + 0.47407447108108447, + 0.24306496757052357, + 0.5009193722849531, + -0.43041525544668885, + -0.6389082656811435, + -0.15423869746047195, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1.0-prefix7", + "uplo": "L", + "n_total": 7, + "ncols": 7, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.5545049263899386, + 3.6686997492607465, + 2.022466946103932, + 3.583002759046898, + 1.1595958011190624, + 2.2607631907834658, + 1.9798067620697013, + 12.634505271730342, + 13.475426150675384, + 7.1661566172697455, + 15.487258807911175, + 6.783007792764935, + 8.616073025350666, + 5.071632855129364 + ], + "A": [ + [ + 12.634505271730342, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.4505718885341025, + 13.475426150675384, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 4.281991812634265, + -4.5233603034723835, + 7.1661566172697455, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 3.228027536344966, + 5.070673501165039, + -0.6144828489899776, + 15.487258807911175, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 4.617122564997108, + -2.9460396384413805, + 4.292625329885459, + 5.554292620910159, + 6.783007792764935, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -4.490586227864813, + -2.582445755676829, + 0.6315465001084051, + 1.5706239810060998, + 0.765092328380912, + 8.616073025350666, + -1.0891359871567852 + ], + [ + 1.6851000429334193, + 0.9518264448553477, + 1.2743877116313387, + -0.7800637436483072, + -0.5856814425699446, + -1.0891359871567852, + 5.071632855129364 + ] + ], + "AF": [ + [ + 3.5545049263899386, + 0.4505718885341025, + 4.281991812634265, + 3.228027536344966, + 4.617122564997108, + -4.490586227864813, + 1.6851000429334193 + ], + [ + 0.1267608001296869, + 3.6686997492607465, + -4.5233603034723835, + 5.070673501165039, + -2.9460396384413805, + -2.582445755676829, + 0.9518264448553477 + ], + [ + 1.2046661634488671, + -1.27458365901504, + 2.022466946103932, + -0.6144828489899776, + 4.292625329885459, + 0.6315465001084051, + 1.2743877116313387 + ], + [ + 0.908151093666776, + 1.3507661789144085, + 0.006508267534568109, + 3.583002759046898, + 5.554292620910159, + 1.5706239810060998, + -0.7800637436483072 + ], + [ + 1.2989495472964205, + -0.8479013642399009, + 0.8144031931332526, + 1.539118630874461, + 1.1595958011190624, + 0.765092328380912, + -0.5856814425699446 + ], + [ + -1.2633506833891452, + -0.6602618305556718, + 0.6486649305131722, + 1.006299797492864, + -0.19903947329322538, + 2.2607631907834658, + -1.0891359871567852 + ], + [ + 0.47407447108108447, + 0.24306496757052357, + 0.5009193722849531, + -0.43041525544668885, + -0.6389082656811435, + -0.15423869746047195, + 1.9798067620697013 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix0", + "uplo": "U", + "n_total": 7, + "ncols": 0, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 1.2676080012968692e-151, + 1.204666163448867e-150, + 9.08151093666776e-151, + 1.2989495472964207e-150, + -1.2633506833891453e-150, + 4.740744710810845e-151 + ], + [ + 4.505718885341025e-301, + 3.6686997492607464e-150, + -1.2745836590150399e-150, + 1.3507661789144088e-150, + -8.479013642399008e-151, + -6.602618305556717e-151, + 2.4306496757052356e-151 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 2.0224669461039324e-150, + 6.508267534568426e-153, + 8.144031931332524e-151, + 6.486649305131722e-151, + 5.00919372284953e-151 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 3.583002759046898e-150, + 1.5391186308744608e-150, + 1.006299797492864e-150, + -4.304152554466889e-151 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 1.1595958011190632e-150, + -1.9903947329322464e-151, + -6.389082656811429e-151 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 2.2607631907834656e-150, + -1.5423869746047167e-151 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix1", + "uplo": "U", + "n_total": 7, + "ncols": 1, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 3.5545049263899387e-150, + "workspace": [ + 3.5545049263899387e-150, + 1.2634505271730343e-299 + ], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 1.2676080012968692e-151, + 1.204666163448867e-150, + 9.08151093666776e-151, + 1.2989495472964207e-150, + -1.2633506833891453e-150, + 4.740744710810845e-151 + ], + [ + 4.505718885341025e-301, + 3.6686997492607464e-150, + -1.2745836590150399e-150, + 1.3507661789144088e-150, + -8.479013642399008e-151, + -6.602618305556717e-151, + 2.4306496757052356e-151 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 2.0224669461039324e-150, + 6.508267534568426e-153, + 8.144031931332524e-151, + 6.486649305131722e-151, + 5.00919372284953e-151 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 3.583002759046898e-150, + 1.5391186308744608e-150, + 1.006299797492864e-150, + -4.304152554466889e-151 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 1.1595958011190632e-150, + -1.9903947329322464e-151, + -6.389082656811429e-151 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 2.2607631907834656e-150, + -1.5423869746047167e-151 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix3", + "uplo": "U", + "n_total": 7, + "ncols": 3, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 3.5432750241355415e-150, + "workspace": [ + 3.5545049263899387e-150, + 3.6686997492607464e-150, + 2.0224669461039324e-150, + 1.2634505271730343e-299, + 1.3475426150675383e-299, + 7.166156617269746e-300 + ], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 1.2676080012968692e-151, + 1.204666163448867e-150, + 9.08151093666776e-151, + 1.2989495472964207e-150, + -1.2633506833891453e-150, + 4.740744710810845e-151 + ], + [ + 4.505718885341025e-301, + 3.6686997492607464e-150, + -1.2745836590150399e-150, + 1.3507661789144088e-150, + -8.479013642399008e-151, + -6.602618305556717e-151, + 2.4306496757052356e-151 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 2.0224669461039324e-150, + 6.508267534568426e-153, + 8.144031931332524e-151, + 6.486649305131722e-151, + 5.00919372284953e-151 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 3.583002759046898e-150, + 1.5391186308744608e-150, + 1.006299797492864e-150, + -4.304152554466889e-151 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 1.1595958011190632e-150, + -1.9903947329322464e-151, + -6.389082656811429e-151 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 2.2607631907834656e-150, + -1.5423869746047167e-151 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix7", + "uplo": "U", + "n_total": 7, + "ncols": 7, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 2.5616807419262723e-150, + "workspace": [ + 3.5545049263899387e-150, + 3.6686997492607464e-150, + 2.0224669461039324e-150, + 3.583002759046898e-150, + 1.5391186308744608e-150, + 2.2607631907834656e-150, + 1.9798067620697017e-150, + 1.2634505271730343e-299, + 1.3475426150675383e-299, + 7.166156617269746e-300, + 1.5487258807911176e-299, + 6.783007792764936e-300, + 8.616073025350665e-300, + 5.071632855129364e-300 + ], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 1.2676080012968692e-151, + 1.204666163448867e-150, + 9.08151093666776e-151, + 1.2989495472964207e-150, + -1.2633506833891453e-150, + 4.740744710810845e-151 + ], + [ + 4.505718885341025e-301, + 3.6686997492607464e-150, + -1.2745836590150399e-150, + 1.3507661789144088e-150, + -8.479013642399008e-151, + -6.602618305556717e-151, + 2.4306496757052356e-151 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 2.0224669461039324e-150, + 6.508267534568426e-153, + 8.144031931332524e-151, + 6.486649305131722e-151, + 5.00919372284953e-151 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 3.583002759046898e-150, + 1.5391186308744608e-150, + 1.006299797492864e-150, + -4.304152554466889e-151 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 1.1595958011190632e-150, + -1.9903947329322464e-151, + -6.389082656811429e-151 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 2.2607631907834656e-150, + -1.5423869746047167e-151 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix0", + "uplo": "L", + "n_total": 7, + "ncols": 0, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 1.2676080012968692e-151, + 3.6686997492607464e-150, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 1.204666163448867e-150, + -1.2745836590150399e-150, + 2.0224669461039324e-150, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 9.08151093666776e-151, + 1.3507661789144088e-150, + 6.508267534568385e-153, + 3.583002759046898e-150, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 1.2989495472964207e-150, + -8.479013642399008e-151, + 8.144031931332524e-151, + 1.5391186308744608e-150, + 1.1595958011190634e-150, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -1.2633506833891453e-150, + -6.602618305556717e-151, + 6.486649305131722e-151, + 1.006299797492864e-150, + -1.9903947329322457e-151, + 2.2607631907834656e-150, + -1.0891359871567852e-300 + ], + [ + 4.740744710810845e-151, + 2.4306496757052356e-151, + 5.00919372284953e-151, + -4.304152554466889e-151, + -6.389082656811428e-151, + -1.5423869746047156e-151, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix1", + "uplo": "L", + "n_total": 7, + "ncols": 1, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 3.5545049263899387e-150, + "workspace": [ + 3.5545049263899387e-150, + 1.2634505271730343e-299 + ], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 1.2676080012968692e-151, + 3.6686997492607464e-150, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 1.204666163448867e-150, + -1.2745836590150399e-150, + 2.0224669461039324e-150, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 9.08151093666776e-151, + 1.3507661789144088e-150, + 6.508267534568385e-153, + 3.583002759046898e-150, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 1.2989495472964207e-150, + -8.479013642399008e-151, + 8.144031931332524e-151, + 1.5391186308744608e-150, + 1.1595958011190634e-150, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -1.2633506833891453e-150, + -6.602618305556717e-151, + 6.486649305131722e-151, + 1.006299797492864e-150, + -1.9903947329322457e-151, + 2.2607631907834656e-150, + -1.0891359871567852e-300 + ], + [ + 4.740744710810845e-151, + 2.4306496757052356e-151, + 5.00919372284953e-151, + -4.304152554466889e-151, + -6.389082656811428e-151, + -1.5423869746047156e-151, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix3", + "uplo": "L", + "n_total": 7, + "ncols": 3, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 3.5432750241355415e-150, + "workspace": [ + 3.5545049263899387e-150, + 3.6686997492607464e-150, + 2.0224669461039324e-150, + 1.2634505271730343e-299, + 1.3475426150675383e-299, + 7.166156617269746e-300 + ], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 1.2676080012968692e-151, + 3.6686997492607464e-150, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 1.204666163448867e-150, + -1.2745836590150399e-150, + 2.0224669461039324e-150, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 9.08151093666776e-151, + 1.3507661789144088e-150, + 6.508267534568385e-153, + 3.583002759046898e-150, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 1.2989495472964207e-150, + -8.479013642399008e-151, + 8.144031931332524e-151, + 1.5391186308744608e-150, + 1.1595958011190634e-150, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -1.2633506833891453e-150, + -6.602618305556717e-151, + 6.486649305131722e-151, + 1.006299797492864e-150, + -1.9903947329322457e-151, + 2.2607631907834656e-150, + -1.0891359871567852e-300 + ], + [ + 4.740744710810845e-151, + 2.4306496757052356e-151, + 5.00919372284953e-151, + -4.304152554466889e-151, + -6.389082656811428e-151, + -1.5423869746047156e-151, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e-300-prefix7", + "uplo": "L", + "n_total": 7, + "ncols": 7, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 2.5616807419262723e-150, + "workspace": [ + 3.5545049263899387e-150, + 3.6686997492607464e-150, + 2.0224669461039324e-150, + 3.583002759046898e-150, + 1.1595958011190634e-150, + 2.2607631907834656e-150, + 1.9798067620697017e-150, + 1.2634505271730343e-299, + 1.3475426150675383e-299, + 7.166156617269746e-300, + 1.5487258807911176e-299, + 6.783007792764936e-300, + 8.616073025350665e-300, + 5.071632855129364e-300 + ], + "A": [ + [ + 1.2634505271730343e-299, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 4.505718885341025e-301, + 1.3475426150675383e-299, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 4.281991812634265e-300, + -4.523360303472383e-300, + 7.166156617269746e-300, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 3.228027536344966e-300, + 5.070673501165039e-300, + -6.1448284898997765e-301, + 1.5487258807911176e-299, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 4.617122564997108e-300, + -2.9460396384413806e-300, + 4.2926253298854586e-300, + 5.554292620910159e-300, + 6.783007792764936e-300, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -4.490586227864813e-300, + -2.582445755676829e-300, + 6.315465001084051e-301, + 1.5706239810061e-300, + 7.65092328380912e-301, + 8.616073025350665e-300, + -1.0891359871567852e-300 + ], + [ + 1.6851000429334193e-300, + 9.518264448553478e-301, + 1.2743877116313387e-300, + -7.800637436483072e-301, + -5.856814425699446e-301, + -1.0891359871567852e-300, + 5.071632855129364e-300 + ] + ], + "AF": [ + [ + 3.5545049263899387e-150, + 4.505718885341025e-301, + 4.281991812634265e-300, + 3.228027536344966e-300, + 4.617122564997108e-300, + -4.490586227864813e-300, + 1.6851000429334193e-300 + ], + [ + 1.2676080012968692e-151, + 3.6686997492607464e-150, + -4.523360303472383e-300, + 5.070673501165039e-300, + -2.9460396384413806e-300, + -2.582445755676829e-300, + 9.518264448553478e-301 + ], + [ + 1.204666163448867e-150, + -1.2745836590150399e-150, + 2.0224669461039324e-150, + -6.1448284898997765e-301, + 4.2926253298854586e-300, + 6.315465001084051e-301, + 1.2743877116313387e-300 + ], + [ + 9.08151093666776e-151, + 1.3507661789144088e-150, + 6.508267534568385e-153, + 3.583002759046898e-150, + 5.554292620910159e-300, + 1.5706239810061e-300, + -7.800637436483072e-301 + ], + [ + 1.2989495472964207e-150, + -8.479013642399008e-151, + 8.144031931332524e-151, + 1.5391186308744608e-150, + 1.1595958011190634e-150, + 7.65092328380912e-301, + -5.856814425699446e-301 + ], + [ + -1.2633506833891453e-150, + -6.602618305556717e-151, + 6.486649305131722e-151, + 1.006299797492864e-150, + -1.9903947329322457e-151, + 2.2607631907834656e-150, + -1.0891359871567852e-300 + ], + [ + 4.740744710810845e-151, + 2.4306496757052356e-151, + 5.00919372284953e-151, + -4.304152554466889e-151, + -6.389082656811428e-151, + -1.5423869746047156e-151, + 1.9798067620697017e-150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix0", + "uplo": "U", + "n_total": 7, + "ncols": 0, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 1.2676080012968693e+149, + 1.2046661634488671e+150, + 9.081510936667762e+149, + 1.2989495472964208e+150, + -1.2633506833891454e+150, + 4.740744710810845e+149 + ], + [ + 4.5057188853410255e+299, + 3.668699749260747e+150, + -1.2745836590150398e+150, + 1.3507661789144083e+150, + -8.479013642399008e+149, + -6.602618305556715e+149, + 2.4306496757052356e+149 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 2.0224669461039322e+150, + 6.508267534567872e+147, + 8.144031931332526e+149, + 6.486649305131725e+149, + 5.00919372284953e+149 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 3.583002759046897e+150, + 1.5391186308744616e+150, + 1.0062997974928643e+150, + -4.30415255446689e+149 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 1.1595958011190623e+150, + -1.9903947329322574e+149, + -6.389082656811435e+149 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 2.2607631907834656e+150, + -1.5423869746047197e+149 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix1", + "uplo": "U", + "n_total": 7, + "ncols": 1, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.554504926389939e+150, + 1.2634505271730344e+301 + ], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 1.2676080012968693e+149, + 1.2046661634488671e+150, + 9.081510936667762e+149, + 1.2989495472964208e+150, + -1.2633506833891454e+150, + 4.740744710810845e+149 + ], + [ + 4.5057188853410255e+299, + 3.668699749260747e+150, + -1.2745836590150398e+150, + 1.3507661789144083e+150, + -8.479013642399008e+149, + -6.602618305556715e+149, + 2.4306496757052356e+149 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 2.0224669461039322e+150, + 6.508267534567872e+147, + 8.144031931332526e+149, + 6.486649305131725e+149, + 5.00919372284953e+149 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 3.583002759046897e+150, + 1.5391186308744616e+150, + 1.0062997974928643e+150, + -4.30415255446689e+149 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 1.1595958011190623e+150, + -1.9903947329322574e+149, + -6.389082656811435e+149 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 2.2607631907834656e+150, + -1.5423869746047197e+149 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix3", + "uplo": "U", + "n_total": 7, + "ncols": 3, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.554504926389939e+150, + 3.668699749260747e+150, + 2.0224669461039322e+150, + 1.2634505271730344e+301, + 1.3475426150675385e+301, + 7.166156617269745e+300 + ], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 1.2676080012968693e+149, + 1.2046661634488671e+150, + 9.081510936667762e+149, + 1.2989495472964208e+150, + -1.2633506833891454e+150, + 4.740744710810845e+149 + ], + [ + 4.5057188853410255e+299, + 3.668699749260747e+150, + -1.2745836590150398e+150, + 1.3507661789144083e+150, + -8.479013642399008e+149, + -6.602618305556715e+149, + 2.4306496757052356e+149 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 2.0224669461039322e+150, + 6.508267534567872e+147, + 8.144031931332526e+149, + 6.486649305131725e+149, + 5.00919372284953e+149 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 3.583002759046897e+150, + 1.5391186308744616e+150, + 1.0062997974928643e+150, + -4.30415255446689e+149 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 1.1595958011190623e+150, + -1.9903947329322574e+149, + -6.389082656811435e+149 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 2.2607631907834656e+150, + -1.5423869746047197e+149 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix7", + "uplo": "U", + "n_total": 7, + "ncols": 7, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.554504926389939e+150, + 3.668699749260747e+150, + 2.0224669461039322e+150, + 3.583002759046897e+150, + 1.5391186308744616e+150, + 2.2607631907834656e+150, + 1.979806762069701e+150, + 1.2634505271730344e+301, + 1.3475426150675385e+301, + 7.166156617269745e+300, + 1.5487258807911175e+301, + 6.783007792764936e+300, + 8.616073025350666e+300, + 5.071632855129364e+300 + ], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 1.2676080012968693e+149, + 1.2046661634488671e+150, + 9.081510936667762e+149, + 1.2989495472964208e+150, + -1.2633506833891454e+150, + 4.740744710810845e+149 + ], + [ + 4.5057188853410255e+299, + 3.668699749260747e+150, + -1.2745836590150398e+150, + 1.3507661789144083e+150, + -8.479013642399008e+149, + -6.602618305556715e+149, + 2.4306496757052356e+149 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 2.0224669461039322e+150, + 6.508267534567872e+147, + 8.144031931332526e+149, + 6.486649305131725e+149, + 5.00919372284953e+149 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 3.583002759046897e+150, + 1.5391186308744616e+150, + 1.0062997974928643e+150, + -4.30415255446689e+149 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 1.1595958011190623e+150, + -1.9903947329322574e+149, + -6.389082656811435e+149 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 2.2607631907834656e+150, + -1.5423869746047197e+149 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix0", + "uplo": "L", + "n_total": 7, + "ncols": 0, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 1.2676080012968693e+149, + 3.668699749260747e+150, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 1.2046661634488671e+150, + -1.2745836590150398e+150, + 2.0224669461039322e+150, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 9.081510936667762e+149, + 1.3507661789144083e+150, + 6.508267534567872e+147, + 3.583002759046897e+150, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 1.2989495472964208e+150, + -8.479013642399008e+149, + 8.144031931332528e+149, + 1.5391186308744616e+150, + 1.1595958011190618e+150, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -1.2633506833891454e+150, + -6.602618305556715e+149, + 6.486649305131725e+149, + 1.0062997974928641e+150, + -1.9903947329322545e+149, + 2.2607631907834656e+150, + -1.0891359871567852e+300 + ], + [ + 4.740744710810845e+149, + 2.4306496757052356e+149, + 5.00919372284953e+149, + -4.30415255446689e+149, + -6.3890826568114365e+149, + -1.5423869746047197e+149, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix1", + "uplo": "L", + "n_total": 7, + "ncols": 1, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.554504926389939e+150, + 1.2634505271730344e+301 + ], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 1.2676080012968693e+149, + 3.668699749260747e+150, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 1.2046661634488671e+150, + -1.2745836590150398e+150, + 2.0224669461039322e+150, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 9.081510936667762e+149, + 1.3507661789144083e+150, + 6.508267534567872e+147, + 3.583002759046897e+150, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 1.2989495472964208e+150, + -8.479013642399008e+149, + 8.144031931332528e+149, + 1.5391186308744616e+150, + 1.1595958011190618e+150, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -1.2633506833891454e+150, + -6.602618305556715e+149, + 6.486649305131725e+149, + 1.0062997974928641e+150, + -1.9903947329322545e+149, + 2.2607631907834656e+150, + -1.0891359871567852e+300 + ], + [ + 4.740744710810845e+149, + 2.4306496757052356e+149, + 5.00919372284953e+149, + -4.30415255446689e+149, + -6.3890826568114365e+149, + -1.5423869746047197e+149, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix3", + "uplo": "L", + "n_total": 7, + "ncols": 3, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.554504926389939e+150, + 3.668699749260747e+150, + 2.0224669461039322e+150, + 1.2634505271730344e+301, + 1.3475426150675385e+301, + 7.166156617269745e+300 + ], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 1.2676080012968693e+149, + 3.668699749260747e+150, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 1.2046661634488671e+150, + -1.2745836590150398e+150, + 2.0224669461039322e+150, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 9.081510936667762e+149, + 1.3507661789144083e+150, + 6.508267534567872e+147, + 3.583002759046897e+150, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 1.2989495472964208e+150, + -8.479013642399008e+149, + 8.144031931332528e+149, + 1.5391186308744616e+150, + 1.1595958011190618e+150, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -1.2633506833891454e+150, + -6.602618305556715e+149, + 6.486649305131725e+149, + 1.0062997974928641e+150, + -1.9903947329322545e+149, + 2.2607631907834656e+150, + -1.0891359871567852e+300 + ], + [ + 4.740744710810845e+149, + 2.4306496757052356e+149, + 5.00919372284953e+149, + -4.30415255446689e+149, + -6.3890826568114365e+149, + -1.5423869746047197e+149, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "SPD-7-1e+300-prefix7", + "uplo": "L", + "n_total": 7, + "ncols": 7, + "lda": 10, + "ldaf": 12, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 1.0, + "workspace": [ + 3.554504926389939e+150, + 3.668699749260747e+150, + 2.0224669461039322e+150, + 3.583002759046897e+150, + 1.1595958011190618e+150, + 2.2607631907834656e+150, + 1.979806762069701e+150, + 1.2634505271730344e+301, + 1.3475426150675385e+301, + 7.166156617269745e+300, + 1.5487258807911175e+301, + 6.783007792764936e+300, + 8.616073025350666e+300, + 5.071632855129364e+300 + ], + "A": [ + [ + 1.2634505271730344e+301, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 4.5057188853410255e+299, + 1.3475426150675385e+301, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 4.2819918126342654e+300, + -4.5233603034723836e+300, + 7.166156617269745e+300, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 3.2280275363449664e+300, + 5.0706735011650386e+300, + -6.1448284898997766e+299, + 1.5487258807911175e+301, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 4.617122564997108e+300, + -2.9460396384413805e+300, + 4.292625329885459e+300, + 5.55429262091016e+300, + 6.783007792764936e+300, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -4.490586227864813e+300, + -2.582445755676829e+300, + 6.315465001084051e+299, + 1.5706239810061e+300, + 7.650923283809121e+299, + 8.616073025350666e+300, + -1.0891359871567852e+300 + ], + [ + 1.6851000429334194e+300, + 9.518264448553478e+299, + 1.2743877116313387e+300, + -7.800637436483073e+299, + -5.856814425699446e+299, + -1.0891359871567852e+300, + 5.071632855129364e+300 + ] + ], + "AF": [ + [ + 3.554504926389939e+150, + 4.5057188853410255e+299, + 4.2819918126342654e+300, + 3.2280275363449664e+300, + 4.617122564997108e+300, + -4.490586227864813e+300, + 1.6851000429334194e+300 + ], + [ + 1.2676080012968693e+149, + 3.668699749260747e+150, + -4.5233603034723836e+300, + 5.0706735011650386e+300, + -2.9460396384413805e+300, + -2.582445755676829e+300, + 9.518264448553478e+299 + ], + [ + 1.2046661634488671e+150, + -1.2745836590150398e+150, + 2.0224669461039322e+150, + -6.1448284898997766e+299, + 4.292625329885459e+300, + 6.315465001084051e+299, + 1.2743877116313387e+300 + ], + [ + 9.081510936667762e+149, + 1.3507661789144083e+150, + 6.508267534567872e+147, + 3.583002759046897e+150, + 5.55429262091016e+300, + 1.5706239810061e+300, + -7.800637436483073e+299 + ], + [ + 1.2989495472964208e+150, + -8.479013642399008e+149, + 8.144031931332528e+149, + 1.5391186308744616e+150, + 1.1595958011190618e+150, + 7.650923283809121e+299, + -5.856814425699446e+299 + ], + [ + -1.2633506833891454e+150, + -6.602618305556715e+149, + 6.486649305131725e+149, + 1.0062997974928641e+150, + -1.9903947329322545e+149, + 2.2607631907834656e+150, + -1.0891359871567852e+300 + ], + [ + 4.740744710810845e+149, + 2.4306496757052356e+149, + 5.00919372284953e+149, + -4.30415255446689e+149, + -6.3890826568114365e+149, + -1.5423869746047197e+149, + 1.979806762069701e+150 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-factor-column", + "uplo": "U", + "n_total": 3, + "ncols": 3, + "lda": 6, + "ldaf": 8, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.5, + "workspace": [ + 0.5, + 0.0, + 3.0, + 0.25, + 4.0, + 9.0 + ], + "A": [ + [ + 0.25, + 0.5, + -1.0 + ], + [ + 0.5, + 4.0, + 2.0 + ], + [ + -1.0, + 2.0, + 9.0 + ] + ], + "AF": [ + [ + 0.5, + 0.0, + 2.0 + ], + [ + 0.0, + 0.0, + 0.0 + ], + [ + 2.0, + 0.0, + 3.0 + ] + ], + "finite_mathematical_check": true + }, + { + "name": "zero-factor-column", + "uplo": "L", + "n_total": 3, + "ncols": 3, + "lda": 6, + "ldaf": 8, + "input_offsets": [ + 5, + 7 + ], + "work_offset": 11, + "result": 0.5, + "workspace": [ + 2.0, + 0.0, + 3.0, + 1.0, + 4.0, + 9.0 + ], + "A": [ + [ + 0.25, + 0.5, + -1.0 + ], + [ + 0.5, + 4.0, + 2.0 + ], + [ + -1.0, + 2.0, + 9.0 + ] + ], + "AF": [ + [ + 0.5, + 0.0, + 2.0 + ], + [ + 0.0, + 0.0, + 0.0 + ], + [ + 2.0, + 0.0, + 3.0 + ] + ], + "finite_mathematical_check": true + } + ] +} diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.js new file mode 100644 index 000000000000..95ad29505708 --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.js @@ -0,0 +1,31 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var tape = require( 'tape' ); +var register = require( './common.js' ); +var fn = require( './../lib/main.js' ); + +tape( 'main export is a function', function test( t ) { + t.ok( true, __filename ); + t.strictEqual( typeof fn, 'function', 'main export is a function' ); + t.end(); +}); + +register( tape, fn, 'JavaScript' ); diff --git a/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.native.js b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.native.js new file mode 100644 index 000000000000..fa42ceadde5a --- /dev/null +++ b/lib/node_modules/@stdlib/lapack/base/dla-porpvgrw/test/test.native.js @@ -0,0 +1,82 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var resolve = require( 'path' ).resolve; +var tape = require( 'tape' ); +var tryRequire = require( '@stdlib/utils/try-require' ); +var Float64Array = require( '@stdlib/array/float64' ); +var register = require( './common.js' ); +var factory = require( './../lib/factory.js' ); +var canUseNative = require( './../lib/can_use_native.js' ); +var base = require( './../lib/base.js' ); +var publicFn = require( './../lib' ); +var jsFn = require( './../lib/main.js' ); +var native = tryRequire( resolve( __dirname, './../lib/native.js' ) ); +var addon = tryRequire( resolve( __dirname, './../src/addon.node' ) ); + +tape( 'main export is a function', function test( t ) { + t.ok( true, __filename ); + t.strictEqual( typeof publicFn, 'function', 'main export is a function' ); + t.end(); +}); + +if ( !(native instanceof Error) ) { + register( tape, native, 'native' ); +} +tape( 'public index selects available backend', function test( t ) { + var expected = ( native instanceof Error ) ? jsFn : native; + t.strictEqual( publicFn, expected, 'public backend identity' ); + t.end(); +}); +tape( 'compiled addon and conservative metadata dispatch actually execute', { + 'skip': addon instanceof Error +}, function test( t ) { + var offset; + var calls; + var work; + var fn; + var AF; + var A; + var i; + + calls = 0; + + fn = factory( function dispatch() { + if ( canUseNative( arguments ) ) { + calls += 1; + return addon.apply( null, arguments ); + } + return base.apply( null, arguments ); + }); + A = new Float64Array( [0.25] ); + AF = new Float64Array( [0.5] ); + work = new Float64Array( 2 ); + t.strictEqual( fn( 'row-major', 'upper', 1, A, 1, AF, 1, work ), 0.5, 'compiled typed call' ); + t.strictEqual( calls, 1, 'actual addon called' ); + t.strictEqual( fn.ndarray( 'upper', 1, A, 2147483648, 1, 0, AF, 1, -2147483648, 0, work, 1, 0 ), 0.5, 'wider unused metadata remains valid JS' ); + t.strictEqual( calls, 1, 'wider metadata falls back across integer ABIs' ); + for ( i = -3; i <= 3; i += 2 ) { + offset = ( i < 0 ) ? 6 : 3; + work = new Float64Array( 10 ); + t.strictEqual( fn.ndarray( 'upper', 1, A, 0, 0, 0, AF, 0, 0, 0, work, i, offset ), 0.5, 'actual strided scratch call' ); + } + t.strictEqual( calls, 5, 'five instrumented actual native calls' ); + t.end(); +});