diff --git a/lib/node_modules/@stdlib/math/base/special/sind/README.md b/lib/node_modules/@stdlib/math/base/special/sind/README.md new file mode 100644 index 000000000000..42da08c87032 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/README.md @@ -0,0 +1,189 @@ + + +# sind + +> Computes the [sine][trigonometric-functions] of an angle measured in degrees, for a double-precision floating-point number. + +
+ +
+ +
+ +## Usage + +```javascript +var sind = require( '@stdlib/math/base/special/sind' ); +``` + +#### sind( x ) + +Computes the [sine][trigonometric-functions] of an angle measured in degrees, for a double-precision floating-point number. + +```javascript +var v = sind( 0.0 ); +// returns 0.0 + +v = sind( 30.0 ); +// returns 0.5 + +v = sind( 90.0 ); +// returns 1.0 + +v = sind( NaN ); +// returns NaN +``` + +
+ + + +
+ +## Examples + + + +```javascript +var linspace = require( '@stdlib/array/base/linspace' ); +var sind = require( '@stdlib/math/base/special/sind' ); + +var x = linspace( -180, 180, 100 ); + +var i; +for ( i = 0; i < x.length; i++ ) { + console.log( sind( x[ i ] ) ); +} +``` + +
+ + + + + +* * * + +
+ +## C APIs + + + +
+ +
+ + + + + +
+ +### Usage + +```c +#include "stdlib/math/base/special/sind.h" +``` + +#### stdlib_base_sind( x ) + +Computes the [sine][trigonometric-functions] of an angle measured in degrees, for a double-precision floating-point number. + +```c +double out = stdlib_base_sind( 0.0 ); +// returns 0.0 + +out = stdlib_base_sind( 30.0 ); +// returns 0.5 +``` + +The function accepts the following arguments: + +- **x**: `[in] double` input value. + +```c +double stdlib_base_sind( const double x ); +``` + +
+ + + + + +
+ +
+ + + + + +
+ +### Examples + +```c +#include "stdlib/math/base/special/sind.h" +#include + +int main( void ) { + const double x[] = { 0.0, 30.0, 45.0, 60.0, 90.0 }; + + double y; + int i; + for ( i = 0; i < 5; i++ ) { + y = stdlib_base_sind( x[ i ] ); + printf( "sind(%lf) = %lf\n", x[ i ], y ); + } +} +``` + +
+ + + +
+ + + + + + + + + + + + + + diff --git a/lib/node_modules/@stdlib/math/base/special/sind/benchmark/benchmark.js b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/benchmark.js new file mode 100644 index 000000000000..4fcdda678e4e --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/benchmark.js @@ -0,0 +1,52 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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 bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/array/uniform' ); +var isnan = require( '@stdlib/math/base/assert/is-nan' ); +var pkg = require( './../package.json' ).name; +var sind = require( './../lib' ); + + +// MAIN // + +bench( pkg, function benchmark( b ) { + var x; + var y; + var i; + + x = randu( 100, -5.0, 5.0 ); + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + y = sind( x[ i % x.length ] ); + if ( isnan( y ) ) { + b.fail( 'should not return NaN' ); + } + } + b.toc(); + if ( isnan( y ) ) { + b.fail( 'should not return NaN' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); diff --git a/lib/node_modules/@stdlib/math/base/special/sind/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/benchmark.native.js new file mode 100644 index 000000000000..82c0a4e68841 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/benchmark.native.js @@ -0,0 +1,61 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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 resolve = require( 'path' ).resolve; +var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/array/uniform' ); +var isnan = require( '@stdlib/math/base/assert/is-nan' ); +var tryRequire = require( '@stdlib/utils/try-require' ); +var pkg = require( './../package.json' ).name; + + +// VARIABLES // + +var sind = tryRequire( resolve( __dirname, './../lib/native.js' ) ); +var opts = { + 'skip': ( sind instanceof Error ) +}; + + +// MAIN // + +bench( pkg+'::native', opts, function benchmark( b ) { + var x; + var y; + var i; + + x = randu( 100, -5.0, 5.0 ); + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + y = sind( x[ i % x.length ] ); + if ( isnan( y ) ) { + b.fail( 'should not return NaN' ); + } + } + b.toc(); + if ( isnan( y ) ) { + b.fail( 'should not return NaN' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); diff --git a/lib/node_modules/@stdlib/math/base/special/sind/benchmark/c/native/Makefile b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/c/native/Makefile new file mode 100644 index 000000000000..f69e9da2b4d3 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/c/native/Makefile @@ -0,0 +1,146 @@ +#/ +# @license Apache-2.0 +# +# Copyright (c) 2024 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/math/base/special/sind/benchmark/c/native/benchmark.c b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/c/native/benchmark.c new file mode 100644 index 000000000000..ccd1b5e5efbd --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/benchmark/c/native/benchmark.c @@ -0,0 +1,136 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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/math/base/special/sind.h" +#include +#include +#include +#include +#include + +#define NAME "sind" +#define ITERATIONS 1000000 +#define REPEATS 3 + +/** +* Prints the TAP version. +*/ +static void print_version( void ) { + printf( "TAP version 13\n" ); +} + +/** +* Prints the TAP summary. +* +* @param total total number of tests +* @param passing total number of passing tests +*/ +static void print_summary( int total, int passing ) { + printf( "#\n" ); + printf( "1..%d\n", total ); // TAP plan + printf( "# total %d\n", total ); + printf( "# pass %d\n", passing ); + printf( "#\n" ); + printf( "# ok\n" ); +} + +/** +* Prints benchmarks results. +* +* @param elapsed elapsed time in seconds +*/ +static void print_results( double elapsed ) { + double rate = (double)ITERATIONS / elapsed; + printf( " ---\n" ); + printf( " iterations: %d\n", ITERATIONS ); + printf( " elapsed: %0.9f\n", elapsed ); + printf( " rate: %0.9f\n", rate ); + printf( " ...\n" ); +} + +/** +* Returns a clock time. +* +* @return clock time +*/ +static double tic( void ) { + struct timeval now; + gettimeofday( &now, NULL ); + return (double)now.tv_sec + (double)now.tv_usec/1.0e6; +} + +/** +* Generates a random number on the interval [0,1). +* +* @return random number +*/ +static double rand_double( void ) { + int r = rand(); + return (double)r / ( (double)RAND_MAX + 1.0 ); +} + +/** +* Runs a benchmark. +* +* @return elapsed time in seconds +*/ +static double benchmark( void ) { + double elapsed; + double x[ 100 ]; + double y; + double t; + int i; + + for ( i = 0; i < 100; i++ ) { + x[ i ] = ( 10.0 * rand_double() ) - 5.0; + } + + t = tic(); + for ( i = 0; i < ITERATIONS; i++ ) { + y = stdlib_base_sind( x[ i % 100 ] ); + if ( y != y ) { + printf( "should not return NaN\n" ); + break; + } + } + elapsed = tic() - t; + if ( y != y ) { + printf( "should not return NaN\n" ); + } + return elapsed; +} + +/** +* Main execution sequence. +*/ +int main( void ) { + double elapsed; + int i; + + // Use the current time to seed the random number generator: + srand( time( NULL ) ); + + print_version(); + for ( i = 0; i < REPEATS; i++ ) { + printf( "# c::native::%s\n", NAME ); + elapsed = benchmark(); + print_results( elapsed ); + printf( "ok %d benchmark finished\n", i+1 ); + } + print_summary( REPEATS, REPEATS ); +} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/binding.gyp b/lib/node_modules/@stdlib/math/base/special/sind/binding.gyp new file mode 100644 index 000000000000..ec3992233442 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/binding.gyp @@ -0,0 +1,170 @@ +# @license Apache-2.0 +# +# Copyright (c) 2024 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': [], + + # 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', + ], + + # 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/math/base/special/sind/docs/repl.txt b/lib/node_modules/@stdlib/math/base/special/sind/docs/repl.txt new file mode 100644 index 000000000000..da68ff652c48 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/docs/repl.txt @@ -0,0 +1,29 @@ + +{{alias}}( x ) + Computes the sine of an angle measured in degrees, for a double-precision + floating-point number. + + Parameters + ---------- + x: number + Input value (in degrees). + + Returns + ------- + y: number + Sine. + + Examples + -------- + > var y = {{alias}}( 0.0 ) + 0.0 + > y = {{alias}}( 30.0 ) + 0.5 + > y = {{alias}}( 90.0 ) + 1.0 + > y = {{alias}}( NaN ) + NaN + + See Also + -------- + diff --git a/lib/node_modules/@stdlib/math/base/special/sind/docs/types/index.d.ts b/lib/node_modules/@stdlib/math/base/special/sind/docs/types/index.d.ts new file mode 100644 index 000000000000..38647b94b4c1 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/docs/types/index.d.ts @@ -0,0 +1,48 @@ +/* +* @license Apache-2.0 +* +* Copyright (c) 2024 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 + +/** +* Computes the sine of an angle measured in degrees, for a double-precision floating-point number. +* +* @param x - input value (in degrees) +* @returns sine +* +* @example +* var v = sind( 0.0 ); +* // returns 0.0 +* +* @example +* var v = sind( 30.0 ); +* // returns 0.5 +* +* @example +* var v = sind( 90.0); +* // returns 1.0 +* +* @example +* var v = sind( NaN ); +* // returns NaN +*/ +declare function sind( x: number ): number; + + +// EXPORTS // + +export = sind; diff --git a/lib/node_modules/@stdlib/math/base/special/sind/docs/types/test.ts b/lib/node_modules/@stdlib/math/base/special/sind/docs/types/test.ts new file mode 100644 index 000000000000..f46aaf582726 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/docs/types/test.ts @@ -0,0 +1,44 @@ +/* +* @license Apache-2.0 +* +* Copyright (c) 2024 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 sind = require( './index' ); + + +// TESTS // + +// The function returns a number... +{ + sind( 60.0 ); // $ExpectType number +} + +// The compiler throws an error if the function is provided a value other than a number... +{ + sind( true ); // $ExpectError + sind( false ); // $ExpectError + sind( null ); // $ExpectError + sind( undefined ); // $ExpectError + sind( '5' ); // $ExpectError + sind( [] ); // $ExpectError + sind( {} ); // $ExpectError + sind( ( x: number ): number => x ); // $ExpectError +} + +// The compiler throws an error if the function is provided insufficient arguments... +{ + sind(); // $ExpectError +} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/examples/c/Makefile b/lib/node_modules/@stdlib/math/base/special/sind/examples/c/Makefile new file mode 100644 index 000000000000..6aed70daf167 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/examples/c/Makefile @@ -0,0 +1,146 @@ +#/ +# @license Apache-2.0 +# +# Copyright (c) 2024 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/math/base/special/sind/examples/c/example.c b/lib/node_modules/@stdlib/math/base/special/sind/examples/c/example.c new file mode 100644 index 000000000000..c34f203d2fdf --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/examples/c/example.c @@ -0,0 +1,31 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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/math/base/special/sind.h" +#include + +int main( void ) { + const double x[] = { 0.0, 30.0, 45.0, 60.0, 90.0 }; + + double y; + int i; + for ( i = 0; i < 5; i++ ) { + y = stdlib_base_sind( x[ i ] ); + printf( "sind(%lf) = %lf\n", x[ i ], y ); + } +} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/examples/index.js b/lib/node_modules/@stdlib/math/base/special/sind/examples/index.js new file mode 100644 index 000000000000..c6d47dd77035 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/examples/index.js @@ -0,0 +1,29 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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 linspace = require( '@stdlib/array/base/linspace' ); +var sind = require( './../lib' ); + +var x = linspace( -180, 180, 100 ); + +var i; +for ( i = 0; i < x.length; i++ ) { + console.log( 'sind(%d) = %d', x[ i ], sind( x[ i ] ) ); +} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/include.gypi b/lib/node_modules/@stdlib/math/base/special/sind/include.gypi new file mode 100644 index 000000000000..575cb043c0bf --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/include.gypi @@ -0,0 +1,53 @@ +# @license Apache-2.0 +# +# Copyright (c) 2024 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': [ + '=0.10.0", + "npm": ">2.7.0" + }, + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "keywords": [ + "stdlib", + "stdmath", + "mathematics", + "math", + "degree", + "sin", + "sine", + "trig", + "trigonometry" + ] +} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/src/Makefile b/lib/node_modules/@stdlib/math/base/special/sind/src/Makefile new file mode 100644 index 000000000000..bcf18aa46655 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/src/Makefile @@ -0,0 +1,70 @@ +#/ +# @license Apache-2.0 +# +# Copyright (c) 2024 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/math/base/special/sind/src/addon.c b/lib/node_modules/@stdlib/math/base/special/sind/src/addon.c new file mode 100644 index 000000000000..8d8a6b7bcaa0 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/src/addon.c @@ -0,0 +1,23 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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/math/base/special/sind.h" +#include "stdlib/math/base/napi/unary.h" + +// cppcheck-suppress shadowFunction +STDLIB_MATH_BASE_NAPI_MODULE_D_D( stdlib_base_sind ) diff --git a/lib/node_modules/@stdlib/math/base/special/sind/src/main.c b/lib/node_modules/@stdlib/math/base/special/sind/src/main.c new file mode 100644 index 000000000000..0091a8f79240 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/src/main.c @@ -0,0 +1,45 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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/math/base/special/sind.h" +#include "stdlib/math/base/special/sin.h" +#include "stdlib/math/base/special/deg2rad.h" +#include "stdlib/math/base/assert/is_integer.h" +#include "stdlib/math/base/assert/is_infinite.h" + +/** +* Computes the sine of an angle measured in degrees, for a double-precision floating-point number. +* +* @param x input value (in degrees) +* @return sine +* +* @example +* double y = stdlib_base_sind( 90.0 ); +* // returns 1.0 +*/ +double stdlib_base_sind( const double x ) { + double xRad; + if ( stdlib_base_is_infinite( x ) ) { + return 0.0 / 0.0; // NaN + } + if ( stdlib_base_is_integer( x / 180.0 ) ) { + return 0.0; + } + xRad = stdlib_base_deg2rad( x ); + return stdlib_base_sin( xRad ); +} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/REQUIRE b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/REQUIRE new file mode 100644 index 000000000000..ae40bf736408 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/REQUIRE @@ -0,0 +1,2 @@ +julia 1.5 +JSON 0.21 \ No newline at end of file diff --git a/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/negative.json b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/negative.json new file mode 100644 index 000000000000..67c1867bc8b4 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/negative.json @@ -0,0 +1 @@ +{"expected":[-0.17364817766693036,-0.17347612158637143,-0.17330406021084302,-0.1731319935455969,-0.17295992159588505,-0.17278784436695957,-0.17261576186407268,-0.1724436740924769,-0.17227158105742477,-0.17209948276416903,-0.17192737921796264,-0.17175527042405864,-0.17158315638771027,-0.17141103711417094,-0.17123891260869417,-0.17106678287653374,-0.17089464792294345,-0.17072250775317738,-0.17055036237248972,-0.1703782117861348,-0.17020605599936714,-0.17003389501744143,-0.16986172884561246,-0.16968955748913525,-0.1695173809532649,-0.16934519924325678,-0.1691730123643663,-0.16900082032184907,-0.16882862312096092,-0.16865642076695772,-0.1684842132650956,-0.16831200062063081,-0.16813978283881972,-0.16796755992491894,-0.16779533188418516,-0.16762309872187525,-0.16745086044324625,-0.16727861705355535,-0.16710636855805985,-0.16693411496201732,-0.1667618562706854,-0.16658959248932187,-0.16641732362318468,-0.166245049677532,-0.16607277065762208,-0.16590048656871337,-0.16572819741606443,-0.165555903204934,-0.165383603940581,-0.16521129962826445,-0.16503899027324356,-0.16486667588077772,-0.1646943564561264,-0.16452203200454926,-0.16434970253130615,-0.16417736804165703,-0.164005028540862,-0.16383268403418136,-0.16366033452687553,-0.16348798002420512,-0.1633156205314308,-0.16314325605381352,-0.16297088659661432,-0.16279851216509433,-0.16262613276451496,-0.16245374840013765,-0.1622813590772241,-0.16210896480103607,-0.1619365655768355,-0.1617641614098845,-0.16159175230544537,-0.16141933826878044,-0.16124691930515228,-0.16107449541982363,-0.16090206661805728,-0.1607296329051163,-0.1605571942862638,-0.1603847507667631,-0.1602123023518776,-0.160039849046871,-0.15986739085700696,-0.15969492778754943,-0.15952245984376243,-0.1593499870309102,-0.159177509354257,-0.15900502681906742,-0.15883253943060605,-0.1586600471941377,-0.1584875501149273,-0.15831504819823994,-0.15814254144934084,-0.1579700298734954,-0.15779751347596913,-0.15762499226202772,-0.157452466236937,-0.15727993540596294,-0.15710739977437163,-0.15693485934742937,-0.15676231413040254,-0.15658976412855768,-0.15641720934716155,-0.15624464979148098,-0.15607208546678292,-0.15589951637833455,-0.15572694253140312,-0.1555543639312561,-0.15538178058316104,-0.15520919249238566,-0.15503659966419783,-0.15486400210386558,-0.15469139981665703,-0.1545187928078405,-0.1543461810826844,-0.15417356464645735,-0.15400094350442808,-0.15382831766186544,-0.15365568712403843,-0.15348305189621628,-0.15331041198366824,-0.15313776739166374,-0.15296511812547242,-0.15279246419036396,-0.1526198055916083,-0.1524471423344754,-0.15227447442423542,-0.15210180186615868,-0.15192912466551564,-0.15175644282757683,-0.15158375635761304,-0.1514110652608951,-0.151238369542694,-0.15106566920828093,-0.15089296426292717,-0.15072025471190414,-0.15054754056048342,-0.15037482181393672,-0.15020209847753588,-0.1500293705565529,-0.14985663805625996,-0.14968390098192924,-0.14951115933883322,-0.1493384131322444,-0.14916566236743556,-0.14899290704967943,-0.14882014718424902,-0.14864738277641745,-0.14847461383145794,-0.1483018403546439,-0.14812906235124884,-0.1479562798265464,-0.14778349278581043,-0.1476107012343148,-0.14743790517733366,-0.14726510462014117,-0.14709229956801168,-0.1469194900262197,-0.14674667600003985,-0.14657385749474688,-0.14640103451561567,-0.1462282070679213,-0.14605537515693892,-0.1458825387879438,-0.14570969796621144,-0.14553685269701738,-0.14536400298563737,-0.1451911488373472,-0.1450182902574229,-0.1448454272511406,-0.14467255982377653,-0.14449968798060708,-0.14432681172690878,-0.14415393106795832,-0.14398104600903244,-0.1438081565554081,-0.14363526271236235,-0.1434623644851724,-0.1432894618791156,-0.14311655489946937,-0.14294364355151132,-0.1427707278405192,-0.14259780777177086,-0.1424248833505443,-0.14225195458211765,-0.14207902147176918,-0.14190608402477728,-0.14173314224642045,-0.1415601961419774,-0.1413872457167269,-0.14121429097594784,-0.14104133192491933,-0.14086836856892054,-0.14069540091323077,-0.1405224289631295,-0.14034945272389626,-0.1401764722008108,-0.140003487399153,-0.13983049832420275,-0.13965750498124022,-0.1394845073755456,-0.13931150551239926,-0.1391384993970817,-0.13896548903487357,-0.1387924744310556,-0.13861945559090866,-0.1384464325197138,-0.13827340522275214,-0.13810037370530492,-0.13792733797265358,-0.13775429803007963,-0.13758125388286474,-0.13740820553629068,-0.13723515299563938,-0.13706209626619284,-0.13688903535323327,-0.13671597026204296,-0.13654290099790434,-0.13636982756609992,-0.13619674997191242,-0.13602366822062462,-0.13585058231751948,-0.13567749226788,-0.13550439807698947,-0.13533129975013108,-0.13515819729258838,-0.13498509070964484,-0.13481198000658423,-0.1346388651886903,-0.13446574626124702,-0.13429262322953847,-0.13411949609884882,-0.1339463648744624,-0.13377322956166365,-0.13360009016573715,-0.13342694669196756,-0.1332537991456397,-0.13308064753203855,-0.13290749185644912,-0.13273433212415667,-0.13256116834044643,-0.1323880005106039,-0.1322148286399146,-0.13204165273366422,-0.1318684727971386,-0.13169528883562362,-0.13152210085440535,-0.13134890885876999,-0.1311757128540038,-0.13100251284539324,-0.1308293088382248,-0.1306561008377852,-0.13048288884936118,-0.13030967287823966,-0.13013645292970769,-0.12996322900905238,-0.12979000112156105,-0.12961676927252108,-0.12944353346721993,-0.1292702937109453,-0.12909705000898494,-0.12892380236662668,-0.12875055078915856,-0.12857729528186868,-0.12840403585004526,-0.12823077249897666,-0.12805750523395137,-0.127884234060258,-0.12771095898318524,-0.12753768000802193,-0.12736439714005698,-0.12719111038457953,-0.12701781974687876,-0.12684452523224393,-0.1266712268459645,-0.12649792459332998,-0.12632461847963009,-0.12615130851015458,-0.12597799469019336,-0.1258046770250364,-0.1256313555199739,-0.12545803018029605,-0.12528470101129324,-0.12511136801825598,-0.12493803120647486,-0.12476469058124057,-0.12459134614784396,-0.12441799791157598,-0.12424464587772771,-0.1240712900515903,-0.12389793043845508,-0.12372456704361344,-0.12355119987235692,-0.12337782892997717,-0.12320445422176594,-0.12303107575301511,-0.12285769352901665,-0.1226843075550627,-0.12251091783644544,-0.12233752437845721,-0.12216412718639048,-0.1219907262655378,-0.12181732162119181,-0.12164391325864535,-0.1214705011831913,-0.12129708540012267,-0.12112366591473259,-0.12095024273231429,-0.12077681585816115,-0.12060338529756662,-0.12042995105582427,-0.1202565131382278,-0.12008307155007103,-0.11990962629664785,-0.11973617738325229,-0.11956272481517852,-0.11938926859772074,-0.11921580873617336,-0.11904234523583082,-0.11886887810198772,-0.11869540733993876,-0.11852193295497873,-0.11834845495240255,-0.11817497333750525,-0.11800148811558198,-0.11782799929192797,-0.11765450687183858,-0.11748101086060928,-0.11730751126353564,-0.11713400808591336,-0.11696050133303823,-0.11678699101020615,-0.11661347712271312,-0.1164399596758553,-0.11626643867492889,-0.11609291412523023,-0.11591938603205579,-0.1157458544007021,-0.11557231923646584,-0.11539878054464377,-0.11522523833053278,-0.11505169259942985,-0.11487814335663209,-0.11470459060743667,-0.11453103435714092,-0.11435747461104226,-0.1141839113744382,-0.11401034465262637,-0.11383677445090451,-0.11366320077457046,-0.11348962362892215,-0.11331604301925766,-0.11314245895087514,-0.11296887142907285,-0.11279528045914916,-0.11262168604640253,-0.11244808819613158,-0.11227448691363497,-0.11210088220421147,-0.11192727407316001,-0.11175366252577958,-0.11158004756736926,-0.11140642920322828,-0.11123280743865595,-0.11105918227895167,-0.11088555372941498,-0.11071192179534549,-0.11053828648204292,-0.1103646477948071,-0.11019100573893799,-0.11001736031973558,-0.10984371154250003,-0.10967005941253158,-0.10949640393513056,-0.10932274511559742,-0.10914908295923272,-0.10897541747133709,-0.10880174865721128,-0.10862807652215614,-0.10845440107147264,-0.10828072231046183,-0.10810704024442484,-0.10793335487866296,-0.10775966621847752,-0.10758597426916999,-0.10741227903604192,-0.10723858052439496,-0.10706487873953088,-0.10689117368675155,-0.1067174653713589,-0.106543753798655,-0.10637003897394201,-0.10619632090252216,-0.10602259958969784,-0.10584887504077149,-0.10567514726104565,-0.10550141625582299,-0.10532768203040625,-0.10515394459009827,-0.10498020394020201,-0.1048064600860205,-0.1046327130328569,-0.10445896278601442,-0.10428520935079642,-0.10411145273250634,-0.10393769293644768,-0.10376392996792409,-0.1035901638322393,-0.10341639453469713,-0.10324262208060148,-0.10306884647525637,-0.10289506772396592,-0.10272128583203434,-0.1025475008047659,-0.10237371264746506,-0.10219992136543625,-0.1020261269639841,-0.10185232944841327,-0.10167852882402856,-0.10150472509613483,-0.10133091827003704,-0.10115710835104028,-0.10098329534444969,-0.10080947925557052,-0.10063566008970813,-0.10046183785216795,-0.10028801254825552,-0.10011418418327646,-0.09994035276253649,-0.09976651829134144,-0.0995926807749972,-0.09941884021880977,-0.09924499662808525,-0.09907115000812984,-0.09889730036424979,-0.09872344770175148,-0.0985495920259414,-0.09837573334212606,-0.09820187165561213,-0.09802800697170634,-0.09785413929571554,-0.09768026863294663,-0.09750639498870663,-0.09733251836830263,-0.09715863877704184,-0.09698475622023153,-0.09681087070317909,-0.09663698223119198,-0.09646309080957775,-0.09628919644364406,-0.09611529913869864,-0.0959413989000493,-0.09576749573300396,-0.09559358964287064,-0.09541968063495741,-0.09524576871457248,-0.0950718538870241,-0.09489793615762064,-0.09472401553167054,-0.09455009201448235,-0.09437616561136468,-0.09420223632762625,-0.09402830416857587,-0.09385436913952241,-0.09368043124577487,-0.09350649049264229,-0.09333254688543384,-0.09315860042945874,-0.09298465113002634,-0.09281069899244603,-0.09263674402202732,-0.0924627862240798,-0.09228882560391313,-0.09211486216683706,-0.09194089591816147,-0.09176692686319625,-0.09159295500725143,-0.09141898035563711,-0.09124500291366348,-0.09107102268664082,-0.09089703967987946,-0.09072305389868986,-0.09054906534838254,-0.09037507403426812,-0.09020107996165727,-0.0900270831358608,-0.08985308356218956,-0.08967908124595449,-0.08950507619246661,-0.08933106840703706,-0.08915705789497703,-0.08898304466159779,-0.08880902871221072,-0.08863501005212725,-0.08846098868665891,-0.08828696462111732,-0.08811293786081419,-0.08793890841106125,-0.0877648762771704,-0.08759084146445358,-0.08741680397822278,-0.08724276382379013,-0.08706872100646781,-0.0868946755315681,-0.08672062740440332,-0.08654657663028592,-0.08637252321452839,-0.08619846716244334,-0.08602440847934342,-0.08585034717054141,-0.08567628324135011,-0.08550221669708247,-0.08532814754305143,-0.0851540757845701,-0.0849800014269516,-0.08480592447550919,-0.08463184493555616,-0.08445776281240591,-0.08428367811137188,-0.08410959083776764,-0.08393550099690682,-0.0837614085941031,-0.08358731363467027,-0.08341321612392218,-0.08323911606717278,-0.08306501346973608,-0.08289090833692615,-0.08271680067405719,-0.08254269048644343,-0.0823685777793992,-0.08219446255823888,-0.08202034482827697,-0.08184622459482802,-0.08167210186320664,-0.08149797663872757,-0.08132384892670556,-0.08114971873245548,-0.08097558606129227,-0.08080145091853091,-0.08062731330948654,-0.08045317323947426,-0.08027903071380935,-0.0801048857378071,-0.07993073831678288,-0.07975658845605219,-0.07958243616093051,-0.07940828143673351,-0.07923412428877682,-0.07905996472237622,-0.07888580274284754,-0.07871163835550668,-0.07853747156566962,-0.07836330237865241,-0.07818913079977116,-0.07801495683434209,-0.07784078048768146,-0.0776666017651056,-0.07749242067193095,-0.07731823721347397,-0.07714405139505125,-0.07696986322197938,-0.0767956726995751,-0.07662147983315518,-0.07644728462803645,-0.07627308708953583,-0.07609888722297031,-0.07592468503365697,-0.07575048052691292,-0.07557627370805538,-0.0754020645824016,-0.07522785315526893,-0.0750536394319748,-0.07487942341783667,-0.07470520511817211,-0.07453098453829872,-0.07435676168353422,-0.07418253655919636,-0.07400830917060297,-0.07383407952307194,-0.07365984762192127,-0.07348561347246896,-0.07331137708003314,-0.07313713844993198,-0.07296289758748374,-0.0727886544980067,-0.07261440918681926,-0.07244016165923985,-0.07226591192058701,-0.07209165997617929,-0.07191740583133538,-0.07174314949137396,-0.07156889096161384,-0.07139463024737386,-0.07122036735397293,-0.07104610228673004,-0.07087183505096425,-0.07069756565199467,-0.07052329409514048,-0.07034902038572093,-0.07017474452905532,-0.07000046653046305,-0.06982618639526356,-0.06965190412877635,-0.06947761973632101,-0.06930333322321718,-0.06912904459478454,-0.06895475385634289,-0.06878046101321204,-0.06860616607071192,-0.06843186903416246,-0.06825756990888371,-0.06808326870019572,-0.0679089654134187,-0.06773466005387282,-0.06756035262687839,-0.06738604313775573,-0.06721173159182527,-0.06703741799440746,-0.06686310235082284,-0.06668878466639198,-0.06651446494643559,-0.06634014319627433,-0.06616581942122902,-0.0659914936266205,-0.06581716581776965,-0.06564283599999746,-0.06546850417862493,-0.06529417035897317,-0.06511983454636332,-0.06494549674611659,-0.06477115696355426,-0.06459681520399764,-0.06442247147276814,-0.06424812577518721,-0.06407377811657634,-0.06389942850225713,-0.06372507693755121,-0.06355072342778023,-0.06337636797826599,-0.06320201059433027,-0.06302765128129495,-0.06285329004448195,-0.06267892688921325,-0.06250456182081092,-0.06233019484459703,-0.06215582596589376,-0.06198145519002332,-0.061807082522308,-0.06163270796807012,-0.06145833153263208,-0.06128395322131633,-0.06110957303944537,-0.06093519099234177,-0.060760807085328154,-0.060586421323727185,-0.060412033712861614,-0.060237644258054224,-0.06006325296462786,-0.05988885983790543,-0.05971446488320989,-0.059540068105864256,-0.0593656695111916,-0.05919126910451504,-0.05901686689115777,-0.05884246287644301,-0.058668057065694064,-0.05849364946423428,-0.05831924007738705,-0.05814482891047583,-0.057970415968824136,-0.05779600125775553,-0.057621584782593625,-0.057447166548662096,-0.05727274656128467,-0.05709832482578513,-0.056923901347487295,-0.056749476131715056,-0.05657504918379236,-0.05640062050904319,-0.056226190112791584,-0.056051758000361655,-0.05587732417707754,-0.05570288864826344,-0.05552845141924362,-0.055354012495342365,-0.055179571881884056,-0.05500512958419308,-0.05483068560759391,-0.05465623995741105,-0.05448179263896906,-0.054307343657592565,-0.05413289301860622,-0.05395844072733475,-0.05378398678910291,-0.053609531209235506,-0.05343507399305742,-0.05326061514589356,-0.053086154673068896,-0.05291169257990844,-0.05273722887173724,-0.05256276355388044,-0.05238829663166318,-0.05221382811041068,-0.05203935799544819,-0.05186488629210104,-0.05169041300569457,-0.05151593814155418,-0.051341461705005344,-0.051166983701373556,-0.05099250413598436,-0.050818023014163355,-0.050643540341236186,-0.050469056122528555,-0.05029457036336619,-0.050120083069074874,-0.049945594244980455,-0.049771103896408805,-0.049596612028685844,-0.04942211864713756,-0.04924762375708996,-0.04907312736386911,-0.048898629472801124,-0.04872413008921216,-0.04854962921842842,-0.04837512686577614,-0.04820062303658164,-0.04802611773617123,-0.047851610969871304,-0.04767710274300829,-0.04750259306090866,-0.04732808192889894,-0.04715356935230567,-0.046979055336455466,-0.04680453988667498,-0.0466300230082909,-0.046455504706629965,-0.04628098498701896,-0.04610646385478469,-0.045931941315254035,-0.045757417373753904,-0.04558289203561125,-0.04540836530615306,-0.04523383719070637,-0.045059307694598275,-0.04488477682315588,-0.04471024458170635,-0.0445357109755769,-0.04436117601009477,-0.04418663969058725,-0.04401210202238166,-0.043837563010805394,-0.04366302266118584,-0.04348848097885046,-0.043313937969126755,-0.04313939363734224,-0.04296484798882451,-0.04279030102890117,-0.04261575276289987,-0.04244120319614831,-0.04226665233397422,-0.04209210018170537,-0.0419175467446696,-0.041742992028194724,-0.04156843603760865,-0.041393878778239315,-0.04121932025541468,-0.04104476047446275,-0.04087019944071158,-0.04069563715948925,-0.040521073636123874,-0.04034650887594362,-0.04017194288427668,-0.039997375666451306,-0.03982280722779575,-0.03964823757363833,-0.039473666709307395,-0.03929909464013132,-0.03912452137143854,-0.038949946908557506,-0.03877537125681672,-0.03860079442154469,-0.03842621640807,-0.038251637221721244,-0.03807705686782707,-0.03790247535171615,-0.03772789267871718,-0.03755330885415892,-0.037378723883370144,-0.03720413777167966,-0.037029550524416324,-0.036854962146909025,-0.036680372644486675,-0.03650578202247823,-0.03633119028621267,-0.03615659744101902,-0.03598200349222634,-0.03580740844516372,-0.035632812305160265,-0.03545821507754515,-0.03528361676764755,-0.035109017380796706,-0.03493441692232185,-0.034759815397552275,-0.03458521281181731,-0.034410609170446305,-0.03423600447876864,-0.03406139874211374,-0.033886791965811035,-0.03371218415519002,-0.03353757531558021,-0.033362965452311134,-0.03318835457071238,-0.033013742676113546,-0.032839129773844275,-0.032664515869234224,-0.032489900967613096,-0.03231528507431062,-0.03214066819465655,-0.031966050333980686,-0.031791431497612835,-0.031616811690882846,-0.03144219091912061,-0.03126756918765601,-0.031092946501819006,-0.030918322866939553,-0.03074369828834765,-0.030569072771373315,-0.030394446321346604,-0.0302198189435976,-0.030045190643456406,-0.029870561426253165,-0.029695931297318037,-0.02952130026198122,-0.029346668325572926,-0.029172035493423412,-0.028997401770862952,-0.02882276716322185,-0.028648131675830427,-0.02847349531401905,-0.028298858083118092,-0.028124219988457974,-0.027949581035369125,-0.027774941229182008,-0.027600300575227114,-0.02742565907883495,-0.027251016745336063,-0.02707637358006102,-0.026901729588340407,-0.026727084775504843,-0.026552439146884967,-0.026377792707811445,-0.026203145463614973,-0.02602849741962626,-0.025853848581176047,-0.0256791989535951,-0.025504548542214206,-0.025329897352364177,-0.025155245389375847,-0.02498059265858008,-0.024805939165307756,-0.024631284914889782,-0.024456629912657086,-0.02428197416394062,-0.02410731767407136,-0.023932660448380303,-0.02375800249219847,-0.023583343810856902,-0.023408684409686666,-0.023234024294018843,-0.023059363469184548,-0.022884701940514906,-0.02271003971334107,-0.022535376792994215,-0.022360713184805533,-0.022186048894106237,-0.022011383926227562,-0.02183671828650077,-0.021662051980257134,-0.021487385012827948,-0.021312717389544537,-0.021138049115738234,-0.020963380196740395,-0.020788710637882398,-0.020614040444495642,-0.020439369621911542,-0.020264698175461532,-0.020090026110477062,-0.019915353432289614,-0.01974068014623067,-0.01956600625763175,-0.019391331771824373,-0.01921665669414009,-0.019041981029910473,-0.018867304784467093,-0.018692627963141556,-0.01851795057126548,-0.018343272614170503,-0.018168594097188275,-0.017993915025650467,-0.01781923540488876,-0.01764455524023487,-0.017469874537020504,-0.017295193300577407,-0.017120511536237327,-0.01694582924933204,-0.016771146445193324,-0.016596463129152982,-0.01642177930654283,-0.016247094982694704,-0.016072410162940445,-0.015897724852611917,-0.015723039057040998,-0.015548352781559582,-0.015373666031499575,-0.015198978812192895,-0.015024291128971481,-0.01484960298716728,-0.014674914392112258,-0.014500225349138392,-0.014325535863577673,-0.014150845940762104,-0.013976155586023706,-0.013801464804694508,-0.013626773602106554,-0.013452081983591902,-0.013277389954482624,-0.013102697520110798,-0.012928004685808523,-0.012753311456907904,-0.01257861783874106,-0.012403923836640119,-0.012229229455937228,-0.012054534701964539,-0.01187983958005422,-0.011705144095538442,-0.011530448253749399,-0.011355752060019287,-0.011181055519680313,-0.011006358638064703,-0.01083166142050468,-0.010656963872332493,-0.010482265998880386,-0.010307567805480623,-0.010132869297465473,-0.009958170480167217,-0.009783471358918145,-0.009608771939050556,-0.009434072225896756,-0.009259372224789062,-0.009084671941059802,-0.008909971380041308,-0.008735270547065924,-0.008560569447466,-0.008385868086573897,-0.00821116646972198,-0.008036464602242626,-0.007861762489468217,-0.007687060136731142,-0.007512357549363799,-0.0073376547326985935,-0.007162951692067936,-0.006988248432804245,-0.006813544960239946,-0.006638841279707472,-0.006464137396539258,-0.006289433316067751,-0.0061147290436253995,-0.0059400245845446595,-0.005765319944157994,-0.005590615127797869,-0.0054159101407967565,-0.005241204988487137,-0.005066499676201491,-0.0048917942092723075,-0.004717088593032079,-0.004542382832813301,-0.004367676933948477,-0.004192970901770111,-0.0040182647416107135,-0.0038435584588027982,-0.0036688520586788827,-0.0034941455465714883,-0.0033194389278131376,-0.0031447322077363606,-0.0029700253916736864,-0.0027953184849576493,-0.002620611492920786,-0.002445904420895635,-0.0022711972742147377,-0.0020964900582106385,-0.0019217827782158825,-0.0017470754395630184,-0.0015723680475845949,-0.0013976606076131642,-0.0012229531249812785,-0.0010482456050214916,-0.0008735380530663592,-0.000698830474448437,-0.0005241228745002822,-0.0003494152585544523,-0.00017470763194350547,0.0],"x":[-10.0,-9.98998998998999,-9.97997997997998,-9.96996996996997,-9.95995995995996,-9.94994994994995,-9.93993993993994,-9.92992992992993,-9.91991991991992,-9.90990990990991,-9.8998998998999,-9.88988988988989,-9.87987987987988,-9.86986986986987,-9.85985985985986,-9.84984984984985,-9.83983983983984,-9.82982982982983,-9.81981981981982,-9.80980980980981,-9.7997997997998,-9.78978978978979,-9.77977977977978,-9.76976976976977,-9.75975975975976,-9.74974974974975,-9.73973973973974,-9.72972972972973,-9.71971971971972,-9.70970970970971,-9.6996996996997,-9.68968968968969,-9.67967967967968,-9.66966966966967,-9.65965965965966,-9.64964964964965,-9.63963963963964,-9.62962962962963,-9.61961961961962,-9.60960960960961,-9.5995995995996,-9.58958958958959,-9.57957957957958,-9.56956956956957,-9.55955955955956,-9.54954954954955,-9.53953953953954,-9.52952952952953,-9.51951951951952,-9.50950950950951,-9.4994994994995,-9.48948948948949,-9.47947947947948,-9.46946946946947,-9.45945945945946,-9.44944944944945,-9.43943943943944,-9.42942942942943,-9.41941941941942,-9.40940940940941,-9.3993993993994,-9.38938938938939,-9.37937937937938,-9.36936936936937,-9.35935935935936,-9.34934934934935,-9.33933933933934,-9.32932932932933,-9.31931931931932,-9.30930930930931,-9.2992992992993,-9.28928928928929,-9.27927927927928,-9.26926926926927,-9.25925925925926,-9.24924924924925,-9.23923923923924,-9.22922922922923,-9.21921921921922,-9.20920920920921,-9.1991991991992,-9.18918918918919,-9.17917917917918,-9.16916916916917,-9.15915915915916,-9.14914914914915,-9.13913913913914,-9.12912912912913,-9.11911911911912,-9.10910910910911,-9.0990990990991,-9.08908908908909,-9.07907907907908,-9.06906906906907,-9.05905905905906,-9.04904904904905,-9.03903903903904,-9.02902902902903,-9.01901901901902,-9.00900900900901,-8.998998998999,-8.98898898898899,-8.97897897897898,-8.96896896896897,-8.95895895895896,-8.94894894894895,-8.93893893893894,-8.92892892892893,-8.91891891891892,-8.90890890890891,-8.8988988988989,-8.88888888888889,-8.87887887887888,-8.86886886886887,-8.85885885885886,-8.84884884884885,-8.83883883883884,-8.82882882882883,-8.81881881881882,-8.80880880880881,-8.7987987987988,-8.78878878878879,-8.77877877877878,-8.76876876876877,-8.75875875875876,-8.74874874874875,-8.73873873873874,-8.72872872872873,-8.71871871871872,-8.70870870870871,-8.6986986986987,-8.68868868868869,-8.67867867867868,-8.66866866866867,-8.65865865865866,-8.64864864864865,-8.63863863863864,-8.62862862862863,-8.618618618618619,-8.608608608608609,-8.598598598598599,-8.588588588588589,-8.578578578578579,-8.568568568568569,-8.558558558558559,-8.548548548548549,-8.538538538538539,-8.528528528528529,-8.518518518518519,-8.508508508508509,-8.498498498498499,-8.488488488488489,-8.478478478478479,-8.468468468468469,-8.458458458458459,-8.448448448448449,-8.438438438438439,-8.428428428428429,-8.418418418418419,-8.408408408408409,-8.398398398398399,-8.388388388388389,-8.378378378378379,-8.368368368368369,-8.358358358358359,-8.348348348348349,-8.338338338338339,-8.328328328328329,-8.318318318318319,-8.308308308308309,-8.298298298298299,-8.288288288288289,-8.278278278278279,-8.268268268268269,-8.258258258258259,-8.248248248248249,-8.238238238238239,-8.228228228228229,-8.218218218218219,-8.208208208208209,-8.198198198198199,-8.188188188188189,-8.178178178178179,-8.168168168168169,-8.158158158158159,-8.148148148148149,-8.138138138138139,-8.128128128128129,-8.118118118118119,-8.108108108108109,-8.098098098098099,-8.088088088088089,-8.078078078078079,-8.068068068068069,-8.058058058058059,-8.048048048048049,-8.038038038038039,-8.028028028028029,-8.018018018018019,-8.008008008008009,-7.997997997997998,-7.987987987987988,-7.977977977977978,-7.967967967967968,-7.957957957957958,-7.947947947947948,-7.937937937937938,-7.927927927927928,-7.917917917917918,-7.907907907907908,-7.897897897897898,-7.887887887887888,-7.877877877877878,-7.867867867867868,-7.857857857857858,-7.847847847847848,-7.837837837837838,-7.827827827827828,-7.817817817817818,-7.807807807807808,-7.797797797797798,-7.787787787787788,-7.777777777777778,-7.767767767767768,-7.757757757757758,-7.747747747747748,-7.737737737737738,-7.727727727727728,-7.717717717717718,-7.707707707707708,-7.697697697697698,-7.687687687687688,-7.677677677677678,-7.667667667667668,-7.657657657657658,-7.647647647647648,-7.637637637637638,-7.627627627627628,-7.617617617617618,-7.607607607607608,-7.597597597597598,-7.587587587587588,-7.5775775775775776,-7.5675675675675675,-7.5575575575575575,-7.5475475475475475,-7.5375375375375375,-7.5275275275275275,-7.5175175175175175,-7.5075075075075075,-7.4974974974974975,-7.4874874874874875,-7.4774774774774775,-7.4674674674674675,-7.4574574574574575,-7.4474474474474475,-7.4374374374374375,-7.4274274274274275,-7.4174174174174174,-7.407407407407407,-7.397397397397397,-7.387387387387387,-7.377377377377377,-7.367367367367367,-7.357357357357357,-7.347347347347347,-7.337337337337337,-7.327327327327327,-7.317317317317317,-7.307307307307307,-7.297297297297297,-7.287287287287287,-7.277277277277277,-7.267267267267267,-7.257257257257257,-7.247247247247247,-7.237237237237237,-7.227227227227227,-7.217217217217217,-7.207207207207207,-7.197197197197197,-7.187187187187187,-7.177177177177177,-7.167167167167167,-7.157157157157157,-7.147147147147147,-7.137137137137137,-7.127127127127127,-7.117117117117117,-7.107107107107107,-7.097097097097097,-7.087087087087087,-7.077077077077077,-7.067067067067067,-7.057057057057057,-7.047047047047047,-7.037037037037037,-7.027027027027027,-7.017017017017017,-7.007007007007007,-6.996996996996997,-6.986986986986987,-6.976976976976977,-6.966966966966967,-6.956956956956957,-6.946946946946947,-6.936936936936937,-6.926926926926927,-6.916916916916917,-6.906906906906907,-6.896896896896897,-6.886886886886887,-6.876876876876877,-6.866866866866867,-6.856856856856857,-6.846846846846847,-6.836836836836837,-6.826826826826827,-6.816816816816817,-6.806806806806807,-6.796796796796797,-6.786786786786787,-6.776776776776777,-6.766766766766767,-6.756756756756757,-6.746746746746747,-6.736736736736737,-6.726726726726727,-6.716716716716717,-6.706706706706707,-6.696696696696697,-6.686686686686687,-6.676676676676677,-6.666666666666667,-6.656656656656657,-6.646646646646647,-6.636636636636637,-6.626626626626627,-6.616616616616617,-6.606606606606607,-6.596596596596597,-6.586586586586587,-6.576576576576577,-6.566566566566567,-6.556556556556557,-6.546546546546547,-6.536536536536537,-6.526526526526527,-6.516516516516517,-6.506506506506507,-6.496496496496497,-6.486486486486487,-6.476476476476477,-6.466466466466467,-6.456456456456457,-6.446446446446447,-6.436436436436437,-6.426426426426427,-6.416416416416417,-6.406406406406407,-6.396396396396397,-6.386386386386387,-6.376376376376377,-6.366366366366367,-6.356356356356357,-6.346346346346347,-6.336336336336337,-6.326326326326327,-6.316316316316317,-6.306306306306307,-6.296296296296297,-6.286286286286287,-6.276276276276277,-6.266266266266267,-6.256256256256257,-6.246246246246246,-6.236236236236236,-6.226226226226226,-6.216216216216216,-6.206206206206206,-6.196196196196196,-6.186186186186186,-6.176176176176176,-6.166166166166166,-6.156156156156156,-6.146146146146146,-6.136136136136136,-6.126126126126126,-6.116116116116116,-6.106106106106106,-6.096096096096096,-6.086086086086086,-6.076076076076076,-6.066066066066066,-6.056056056056056,-6.046046046046046,-6.036036036036036,-6.026026026026026,-6.016016016016016,-6.006006006006006,-5.995995995995996,-5.985985985985986,-5.975975975975976,-5.965965965965966,-5.955955955955956,-5.945945945945946,-5.935935935935936,-5.925925925925926,-5.915915915915916,-5.905905905905906,-5.895895895895896,-5.885885885885886,-5.875875875875876,-5.865865865865866,-5.8558558558558556,-5.8458458458458455,-5.8358358358358355,-5.8258258258258255,-5.8158158158158155,-5.8058058058058055,-5.7957957957957955,-5.7857857857857855,-5.7757757757757755,-5.7657657657657655,-5.7557557557557555,-5.7457457457457455,-5.7357357357357355,-5.7257257257257255,-5.7157157157157155,-5.7057057057057055,-5.6956956956956954,-5.685685685685685,-5.675675675675675,-5.665665665665665,-5.655655655655655,-5.645645645645645,-5.635635635635635,-5.625625625625625,-5.615615615615615,-5.605605605605605,-5.595595595595595,-5.585585585585585,-5.575575575575575,-5.565565565565565,-5.555555555555555,-5.545545545545545,-5.535535535535535,-5.525525525525525,-5.515515515515515,-5.505505505505505,-5.495495495495495,-5.485485485485485,-5.475475475475475,-5.465465465465465,-5.455455455455455,-5.445445445445445,-5.435435435435435,-5.425425425425425,-5.415415415415415,-5.405405405405405,-5.395395395395395,-5.385385385385385,-5.375375375375375,-5.365365365365365,-5.355355355355355,-5.345345345345345,-5.335335335335335,-5.325325325325325,-5.315315315315315,-5.305305305305305,-5.295295295295295,-5.285285285285285,-5.275275275275275,-5.265265265265265,-5.255255255255255,-5.245245245245245,-5.235235235235235,-5.225225225225225,-5.215215215215215,-5.205205205205205,-5.195195195195195,-5.185185185185185,-5.175175175175175,-5.165165165165165,-5.155155155155155,-5.145145145145145,-5.135135135135135,-5.125125125125125,-5.115115115115115,-5.105105105105105,-5.095095095095095,-5.085085085085085,-5.075075075075075,-5.065065065065065,-5.055055055055055,-5.045045045045045,-5.035035035035035,-5.025025025025025,-5.015015015015015,-5.005005005005005,-4.994994994994995,-4.984984984984985,-4.974974974974975,-4.964964964964965,-4.954954954954955,-4.944944944944945,-4.934934934934935,-4.924924924924925,-4.914914914914915,-4.904904904904905,-4.894894894894895,-4.884884884884885,-4.874874874874875,-4.864864864864865,-4.854854854854855,-4.844844844844845,-4.834834834834835,-4.824824824824825,-4.814814814814815,-4.804804804804805,-4.794794794794795,-4.784784784784785,-4.774774774774775,-4.764764764764765,-4.754754754754755,-4.744744744744745,-4.734734734734735,-4.724724724724725,-4.714714714714715,-4.704704704704705,-4.694694694694695,-4.684684684684685,-4.674674674674675,-4.664664664664665,-4.654654654654655,-4.644644644644645,-4.634634634634635,-4.624624624624625,-4.614614614614615,-4.604604604604605,-4.594594594594595,-4.584584584584585,-4.574574574574575,-4.564564564564565,-4.554554554554555,-4.544544544544545,-4.534534534534535,-4.524524524524525,-4.514514514514515,-4.504504504504505,-4.494494494494495,-4.484484484484485,-4.474474474474475,-4.464464464464465,-4.454454454454455,-4.444444444444445,-4.434434434434435,-4.424424424424425,-4.414414414414415,-4.404404404404405,-4.394394394394395,-4.384384384384385,-4.374374374374375,-4.364364364364365,-4.354354354354355,-4.344344344344345,-4.334334334334335,-4.324324324324325,-4.314314314314315,-4.3043043043043046,-4.2942942942942945,-4.2842842842842845,-4.2742742742742745,-4.2642642642642645,-4.2542542542542545,-4.2442442442442445,-4.2342342342342345,-4.2242242242242245,-4.2142142142142145,-4.2042042042042045,-4.1941941941941945,-4.1841841841841845,-4.1741741741741745,-4.1641641641641645,-4.1541541541541545,-4.1441441441441444,-4.134134134134134,-4.124124124124124,-4.114114114114114,-4.104104104104104,-4.094094094094094,-4.084084084084084,-4.074074074074074,-4.064064064064064,-4.054054054054054,-4.044044044044044,-4.034034034034034,-4.024024024024024,-4.014014014014014,-4.004004004004004,-3.993993993993994,-3.983983983983984,-3.973973973973974,-3.963963963963964,-3.953953953953954,-3.943943943943944,-3.933933933933934,-3.923923923923924,-3.913913913913914,-3.903903903903904,-3.893893893893894,-3.883883883883884,-3.873873873873874,-3.863863863863864,-3.853853853853854,-3.843843843843844,-3.833833833833834,-3.823823823823824,-3.813813813813814,-3.803803803803804,-3.793793793793794,-3.7837837837837838,-3.7737737737737738,-3.7637637637637638,-3.7537537537537538,-3.7437437437437437,-3.7337337337337337,-3.7237237237237237,-3.7137137137137137,-3.7037037037037037,-3.6936936936936937,-3.6836836836836837,-3.6736736736736737,-3.6636636636636637,-3.6536536536536537,-3.6436436436436437,-3.6336336336336337,-3.6236236236236237,-3.6136136136136137,-3.6036036036036037,-3.5935935935935936,-3.5835835835835836,-3.5735735735735736,-3.5635635635635636,-3.5535535535535536,-3.5435435435435436,-3.5335335335335336,-3.5235235235235236,-3.5135135135135136,-3.5035035035035036,-3.4934934934934936,-3.4834834834834836,-3.4734734734734736,-3.4634634634634636,-3.4534534534534536,-3.4434434434434436,-3.4334334334334335,-3.4234234234234235,-3.4134134134134135,-3.4034034034034035,-3.3933933933933935,-3.3833833833833835,-3.3733733733733735,-3.3633633633633635,-3.3533533533533535,-3.3433433433433435,-3.3333333333333335,-3.3233233233233235,-3.3133133133133135,-3.3033033033033035,-3.2932932932932935,-3.2832832832832834,-3.2732732732732734,-3.2632632632632634,-3.2532532532532534,-3.2432432432432434,-3.2332332332332334,-3.2232232232232234,-3.2132132132132134,-3.2032032032032034,-3.1931931931931934,-3.1831831831831834,-3.1731731731731734,-3.1631631631631634,-3.1531531531531534,-3.1431431431431434,-3.1331331331331334,-3.123123123123123,-3.113113113113113,-3.103103103103103,-3.093093093093093,-3.083083083083083,-3.073073073073073,-3.063063063063063,-3.053053053053053,-3.043043043043043,-3.033033033033033,-3.023023023023023,-3.013013013013013,-3.003003003003003,-2.992992992992993,-2.982982982982983,-2.972972972972973,-2.962962962962963,-2.952952952952953,-2.942942942942943,-2.932932932932933,-2.9229229229229228,-2.9129129129129128,-2.9029029029029028,-2.8928928928928928,-2.8828828828828827,-2.8728728728728727,-2.8628628628628627,-2.8528528528528527,-2.8428428428428427,-2.8328328328328327,-2.8228228228228227,-2.8128128128128127,-2.8028028028028027,-2.7927927927927927,-2.7827827827827827,-2.7727727727727727,-2.7627627627627627,-2.7527527527527527,-2.7427427427427427,-2.7327327327327327,-2.7227227227227226,-2.7127127127127126,-2.7027027027027026,-2.6926926926926926,-2.6826826826826826,-2.6726726726726726,-2.6626626626626626,-2.6526526526526526,-2.6426426426426426,-2.6326326326326326,-2.6226226226226226,-2.6126126126126126,-2.6026026026026026,-2.5925925925925926,-2.5825825825825826,-2.5725725725725725,-2.5625625625625625,-2.5525525525525525,-2.5425425425425425,-2.5325325325325325,-2.5225225225225225,-2.5125125125125125,-2.5025025025025025,-2.4924924924924925,-2.4824824824824825,-2.4724724724724725,-2.4624624624624625,-2.4524524524524525,-2.4424424424424425,-2.4324324324324325,-2.4224224224224224,-2.4124124124124124,-2.4024024024024024,-2.3923923923923924,-2.3823823823823824,-2.3723723723723724,-2.3623623623623624,-2.3523523523523524,-2.3423423423423424,-2.3323323323323324,-2.3223223223223224,-2.3123123123123124,-2.3023023023023024,-2.2922922922922924,-2.2822822822822824,-2.2722722722722724,-2.2622622622622623,-2.2522522522522523,-2.2422422422422423,-2.2322322322322323,-2.2222222222222223,-2.2122122122122123,-2.2022022022022023,-2.1921921921921923,-2.1821821821821823,-2.1721721721721723,-2.1621621621621623,-2.1521521521521523,-2.1421421421421423,-2.1321321321321323,-2.1221221221221223,-2.1121121121121122,-2.1021021021021022,-2.0920920920920922,-2.0820820820820822,-2.0720720720720722,-2.062062062062062,-2.052052052052052,-2.042042042042042,-2.032032032032032,-2.022022022022022,-2.012012012012012,-2.002002002002002,-1.991991991991992,-1.981981981981982,-1.971971971971972,-1.961961961961962,-1.951951951951952,-1.941941941941942,-1.931931931931932,-1.921921921921922,-1.911911911911912,-1.901901901901902,-1.8918918918918919,-1.8818818818818819,-1.8718718718718719,-1.8618618618618619,-1.8518518518518519,-1.8418418418418419,-1.8318318318318318,-1.8218218218218218,-1.8118118118118118,-1.8018018018018018,-1.7917917917917918,-1.7817817817817818,-1.7717717717717718,-1.7617617617617618,-1.7517517517517518,-1.7417417417417418,-1.7317317317317318,-1.7217217217217218,-1.7117117117117118,-1.7017017017017018,-1.6916916916916918,-1.6816816816816818,-1.6716716716716717,-1.6616616616616617,-1.6516516516516517,-1.6416416416416417,-1.6316316316316317,-1.6216216216216217,-1.6116116116116117,-1.6016016016016017,-1.5915915915915917,-1.5815815815815817,-1.5715715715715717,-1.5615615615615615,-1.5515515515515514,-1.5415415415415414,-1.5315315315315314,-1.5215215215215214,-1.5115115115115114,-1.5015015015015014,-1.4914914914914914,-1.4814814814814814,-1.4714714714714714,-1.4614614614614614,-1.4514514514514514,-1.4414414414414414,-1.4314314314314314,-1.4214214214214214,-1.4114114114114114,-1.4014014014014013,-1.3913913913913913,-1.3813813813813813,-1.3713713713713713,-1.3613613613613613,-1.3513513513513513,-1.3413413413413413,-1.3313313313313313,-1.3213213213213213,-1.3113113113113113,-1.3013013013013013,-1.2912912912912913,-1.2812812812812813,-1.2712712712712713,-1.2612612612612613,-1.2512512512512513,-1.2412412412412412,-1.2312312312312312,-1.2212212212212212,-1.2112112112112112,-1.2012012012012012,-1.1911911911911912,-1.1811811811811812,-1.1711711711711712,-1.1611611611611612,-1.1511511511511512,-1.1411411411411412,-1.1311311311311312,-1.1211211211211212,-1.1111111111111112,-1.1011011011011012,-1.0910910910910911,-1.0810810810810811,-1.0710710710710711,-1.0610610610610611,-1.0510510510510511,-1.0410410410410411,-1.031031031031031,-1.021021021021021,-1.011011011011011,-1.001001001001001,-0.990990990990991,-0.980980980980981,-0.970970970970971,-0.960960960960961,-0.950950950950951,-0.9409409409409409,-0.9309309309309309,-0.9209209209209209,-0.9109109109109109,-0.9009009009009009,-0.8908908908908909,-0.8808808808808809,-0.8708708708708709,-0.8608608608608609,-0.8508508508508509,-0.8408408408408409,-0.8308308308308309,-0.8208208208208209,-0.8108108108108109,-0.8008008008008008,-0.7907907907907908,-0.7807807807807807,-0.7707707707707707,-0.7607607607607607,-0.7507507507507507,-0.7407407407407407,-0.7307307307307307,-0.7207207207207207,-0.7107107107107107,-0.7007007007007007,-0.6906906906906907,-0.6806806806806807,-0.6706706706706707,-0.6606606606606606,-0.6506506506506506,-0.6406406406406406,-0.6306306306306306,-0.6206206206206206,-0.6106106106106106,-0.6006006006006006,-0.5905905905905906,-0.5805805805805806,-0.5705705705705706,-0.5605605605605606,-0.5505505505505506,-0.5405405405405406,-0.5305305305305306,-0.5205205205205206,-0.5105105105105106,-0.5005005005005005,-0.4904904904904905,-0.4804804804804805,-0.47047047047047047,-0.46046046046046046,-0.45045045045045046,-0.44044044044044045,-0.43043043043043044,-0.42042042042042044,-0.41041041041041043,-0.4004004004004004,-0.39039039039039036,-0.38038038038038036,-0.37037037037037035,-0.36036036036036034,-0.35035035035035034,-0.34034034034034033,-0.3303303303303303,-0.3203203203203203,-0.3103103103103103,-0.3003003003003003,-0.2902902902902903,-0.2802802802802803,-0.2702702702702703,-0.2602602602602603,-0.2502502502502503,-0.24024024024024024,-0.23023023023023023,-0.22022022022022023,-0.21021021021021022,-0.2002002002002002,-0.19019019019019018,-0.18018018018018017,-0.17017017017017017,-0.16016016016016016,-0.15015015015015015,-0.14014014014014015,-0.13013013013013014,-0.12012012012012012,-0.11011011011011011,-0.1001001001001001,-0.09009009009009009,-0.08008008008008008,-0.07007007007007007,-0.06006006006006006,-0.05005005005005005,-0.04004004004004004,-0.03003003003003003,-0.02002002002002002,-0.01001001001001001,0.0]} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/positive.json b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/positive.json new file mode 100644 index 000000000000..155d4b2e6037 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/positive.json @@ -0,0 +1 @@ +{"expected":[0.17364817766693036,0.17347612158637143,0.17330406021084302,0.1731319935455969,0.17295992159588505,0.17278784436695957,0.17261576186407268,0.1724436740924769,0.17227158105742477,0.17209948276416903,0.17192737921796264,0.17175527042405864,0.17158315638771027,0.17141103711417094,0.17123891260869417,0.17106678287653374,0.17089464792294345,0.17072250775317738,0.17055036237248972,0.1703782117861348,0.17020605599936714,0.17003389501744143,0.16986172884561246,0.16968955748913525,0.1695173809532649,0.16934519924325678,0.1691730123643663,0.16900082032184907,0.16882862312096092,0.16865642076695772,0.1684842132650956,0.16831200062063081,0.16813978283881972,0.16796755992491894,0.16779533188418516,0.16762309872187525,0.16745086044324625,0.16727861705355535,0.16710636855805985,0.16693411496201732,0.1667618562706854,0.16658959248932187,0.16641732362318468,0.166245049677532,0.16607277065762208,0.16590048656871337,0.16572819741606443,0.165555903204934,0.165383603940581,0.16521129962826445,0.16503899027324356,0.16486667588077772,0.1646943564561264,0.16452203200454926,0.16434970253130615,0.16417736804165703,0.164005028540862,0.16383268403418136,0.16366033452687553,0.16348798002420512,0.1633156205314308,0.16314325605381352,0.16297088659661432,0.16279851216509433,0.16262613276451496,0.16245374840013765,0.1622813590772241,0.16210896480103607,0.1619365655768355,0.1617641614098845,0.16159175230544537,0.16141933826878044,0.16124691930515228,0.16107449541982363,0.16090206661805728,0.1607296329051163,0.1605571942862638,0.1603847507667631,0.1602123023518776,0.160039849046871,0.15986739085700696,0.15969492778754943,0.15952245984376243,0.1593499870309102,0.159177509354257,0.15900502681906742,0.15883253943060605,0.1586600471941377,0.1584875501149273,0.15831504819823994,0.15814254144934084,0.1579700298734954,0.15779751347596913,0.15762499226202772,0.157452466236937,0.15727993540596294,0.15710739977437163,0.15693485934742937,0.15676231413040254,0.15658976412855768,0.15641720934716155,0.15624464979148098,0.15607208546678292,0.15589951637833455,0.15572694253140312,0.1555543639312561,0.15538178058316104,0.15520919249238566,0.15503659966419783,0.15486400210386558,0.15469139981665703,0.1545187928078405,0.1543461810826844,0.15417356464645735,0.15400094350442808,0.15382831766186544,0.15365568712403843,0.15348305189621628,0.15331041198366824,0.15313776739166374,0.15296511812547242,0.15279246419036396,0.1526198055916083,0.1524471423344754,0.15227447442423542,0.15210180186615868,0.15192912466551564,0.15175644282757683,0.15158375635761304,0.1514110652608951,0.151238369542694,0.15106566920828093,0.15089296426292717,0.15072025471190414,0.15054754056048342,0.15037482181393672,0.15020209847753588,0.1500293705565529,0.14985663805625996,0.14968390098192924,0.14951115933883322,0.1493384131322444,0.14916566236743556,0.14899290704967943,0.14882014718424902,0.14864738277641745,0.14847461383145794,0.1483018403546439,0.14812906235124884,0.1479562798265464,0.14778349278581043,0.1476107012343148,0.14743790517733366,0.14726510462014117,0.14709229956801168,0.1469194900262197,0.14674667600003985,0.14657385749474688,0.14640103451561567,0.1462282070679213,0.14605537515693892,0.1458825387879438,0.14570969796621144,0.14553685269701738,0.14536400298563737,0.1451911488373472,0.1450182902574229,0.1448454272511406,0.14467255982377653,0.14449968798060708,0.14432681172690878,0.14415393106795832,0.14398104600903244,0.1438081565554081,0.14363526271236235,0.1434623644851724,0.1432894618791156,0.14311655489946937,0.14294364355151132,0.1427707278405192,0.14259780777177086,0.1424248833505443,0.14225195458211765,0.14207902147176918,0.14190608402477728,0.14173314224642045,0.1415601961419774,0.1413872457167269,0.14121429097594784,0.14104133192491933,0.14086836856892054,0.14069540091323077,0.1405224289631295,0.14034945272389626,0.1401764722008108,0.140003487399153,0.13983049832420275,0.13965750498124022,0.1394845073755456,0.13931150551239926,0.1391384993970817,0.13896548903487357,0.1387924744310556,0.13861945559090866,0.1384464325197138,0.13827340522275214,0.13810037370530492,0.13792733797265358,0.13775429803007963,0.13758125388286474,0.13740820553629068,0.13723515299563938,0.13706209626619284,0.13688903535323327,0.13671597026204296,0.13654290099790434,0.13636982756609992,0.13619674997191242,0.13602366822062462,0.13585058231751948,0.13567749226788,0.13550439807698947,0.13533129975013108,0.13515819729258838,0.13498509070964484,0.13481198000658423,0.1346388651886903,0.13446574626124702,0.13429262322953847,0.13411949609884882,0.1339463648744624,0.13377322956166365,0.13360009016573715,0.13342694669196756,0.1332537991456397,0.13308064753203855,0.13290749185644912,0.13273433212415667,0.13256116834044643,0.1323880005106039,0.1322148286399146,0.13204165273366422,0.1318684727971386,0.13169528883562362,0.13152210085440535,0.13134890885876999,0.1311757128540038,0.13100251284539324,0.1308293088382248,0.1306561008377852,0.13048288884936118,0.13030967287823966,0.13013645292970769,0.12996322900905238,0.12979000112156105,0.12961676927252108,0.12944353346721993,0.1292702937109453,0.12909705000898494,0.12892380236662668,0.12875055078915856,0.12857729528186868,0.12840403585004526,0.12823077249897666,0.12805750523395137,0.127884234060258,0.12771095898318524,0.12753768000802193,0.12736439714005698,0.12719111038457953,0.12701781974687876,0.12684452523224393,0.1266712268459645,0.12649792459332998,0.12632461847963009,0.12615130851015458,0.12597799469019336,0.1258046770250364,0.1256313555199739,0.12545803018029605,0.12528470101129324,0.12511136801825598,0.12493803120647486,0.12476469058124057,0.12459134614784396,0.12441799791157598,0.12424464587772771,0.1240712900515903,0.12389793043845508,0.12372456704361344,0.12355119987235692,0.12337782892997717,0.12320445422176594,0.12303107575301511,0.12285769352901665,0.1226843075550627,0.12251091783644544,0.12233752437845721,0.12216412718639048,0.1219907262655378,0.12181732162119181,0.12164391325864535,0.1214705011831913,0.12129708540012267,0.12112366591473259,0.12095024273231429,0.12077681585816115,0.12060338529756662,0.12042995105582427,0.1202565131382278,0.12008307155007103,0.11990962629664785,0.11973617738325229,0.11956272481517852,0.11938926859772074,0.11921580873617336,0.11904234523583082,0.11886887810198772,0.11869540733993876,0.11852193295497873,0.11834845495240255,0.11817497333750525,0.11800148811558198,0.11782799929192797,0.11765450687183858,0.11748101086060928,0.11730751126353564,0.11713400808591336,0.11696050133303823,0.11678699101020615,0.11661347712271312,0.1164399596758553,0.11626643867492889,0.11609291412523023,0.11591938603205579,0.1157458544007021,0.11557231923646584,0.11539878054464377,0.11522523833053278,0.11505169259942985,0.11487814335663209,0.11470459060743667,0.11453103435714092,0.11435747461104226,0.1141839113744382,0.11401034465262637,0.11383677445090451,0.11366320077457046,0.11348962362892215,0.11331604301925766,0.11314245895087514,0.11296887142907285,0.11279528045914916,0.11262168604640253,0.11244808819613158,0.11227448691363497,0.11210088220421147,0.11192727407316001,0.11175366252577958,0.11158004756736926,0.11140642920322828,0.11123280743865595,0.11105918227895167,0.11088555372941498,0.11071192179534549,0.11053828648204292,0.1103646477948071,0.11019100573893799,0.11001736031973558,0.10984371154250003,0.10967005941253158,0.10949640393513056,0.10932274511559742,0.10914908295923272,0.10897541747133709,0.10880174865721128,0.10862807652215614,0.10845440107147264,0.10828072231046183,0.10810704024442484,0.10793335487866296,0.10775966621847752,0.10758597426916999,0.10741227903604192,0.10723858052439496,0.10706487873953088,0.10689117368675155,0.1067174653713589,0.106543753798655,0.10637003897394201,0.10619632090252216,0.10602259958969784,0.10584887504077149,0.10567514726104565,0.10550141625582299,0.10532768203040625,0.10515394459009827,0.10498020394020201,0.1048064600860205,0.1046327130328569,0.10445896278601442,0.10428520935079642,0.10411145273250634,0.10393769293644768,0.10376392996792409,0.1035901638322393,0.10341639453469713,0.10324262208060148,0.10306884647525637,0.10289506772396592,0.10272128583203434,0.1025475008047659,0.10237371264746506,0.10219992136543625,0.1020261269639841,0.10185232944841327,0.10167852882402856,0.10150472509613483,0.10133091827003704,0.10115710835104028,0.10098329534444969,0.10080947925557052,0.10063566008970813,0.10046183785216795,0.10028801254825552,0.10011418418327646,0.09994035276253649,0.09976651829134144,0.0995926807749972,0.09941884021880977,0.09924499662808525,0.09907115000812984,0.09889730036424979,0.09872344770175148,0.0985495920259414,0.09837573334212606,0.09820187165561213,0.09802800697170634,0.09785413929571554,0.09768026863294663,0.09750639498870663,0.09733251836830263,0.09715863877704184,0.09698475622023153,0.09681087070317909,0.09663698223119198,0.09646309080957775,0.09628919644364406,0.09611529913869864,0.0959413989000493,0.09576749573300396,0.09559358964287064,0.09541968063495741,0.09524576871457248,0.0950718538870241,0.09489793615762064,0.09472401553167054,0.09455009201448235,0.09437616561136468,0.09420223632762625,0.09402830416857587,0.09385436913952241,0.09368043124577487,0.09350649049264229,0.09333254688543384,0.09315860042945874,0.09298465113002634,0.09281069899244603,0.09263674402202732,0.0924627862240798,0.09228882560391313,0.09211486216683706,0.09194089591816147,0.09176692686319625,0.09159295500725143,0.09141898035563711,0.09124500291366348,0.09107102268664082,0.09089703967987946,0.09072305389868986,0.09054906534838254,0.09037507403426812,0.09020107996165727,0.0900270831358608,0.08985308356218956,0.08967908124595449,0.08950507619246661,0.08933106840703706,0.08915705789497703,0.08898304466159779,0.08880902871221072,0.08863501005212725,0.08846098868665891,0.08828696462111732,0.08811293786081419,0.08793890841106125,0.0877648762771704,0.08759084146445358,0.08741680397822278,0.08724276382379013,0.08706872100646781,0.0868946755315681,0.08672062740440332,0.08654657663028592,0.08637252321452839,0.08619846716244334,0.08602440847934342,0.08585034717054141,0.08567628324135011,0.08550221669708247,0.08532814754305143,0.0851540757845701,0.0849800014269516,0.08480592447550919,0.08463184493555616,0.08445776281240591,0.08428367811137188,0.08410959083776764,0.08393550099690682,0.0837614085941031,0.08358731363467027,0.08341321612392218,0.08323911606717278,0.08306501346973608,0.08289090833692615,0.08271680067405719,0.08254269048644343,0.0823685777793992,0.08219446255823888,0.08202034482827697,0.08184622459482802,0.08167210186320664,0.08149797663872757,0.08132384892670556,0.08114971873245548,0.08097558606129227,0.08080145091853091,0.08062731330948654,0.08045317323947426,0.08027903071380935,0.0801048857378071,0.07993073831678288,0.07975658845605219,0.07958243616093051,0.07940828143673351,0.07923412428877682,0.07905996472237622,0.07888580274284754,0.07871163835550668,0.07853747156566962,0.07836330237865241,0.07818913079977116,0.07801495683434209,0.07784078048768146,0.0776666017651056,0.07749242067193095,0.07731823721347397,0.07714405139505125,0.07696986322197938,0.0767956726995751,0.07662147983315518,0.07644728462803645,0.07627308708953583,0.07609888722297031,0.07592468503365697,0.07575048052691292,0.07557627370805538,0.0754020645824016,0.07522785315526893,0.0750536394319748,0.07487942341783667,0.07470520511817211,0.07453098453829872,0.07435676168353422,0.07418253655919636,0.07400830917060297,0.07383407952307194,0.07365984762192127,0.07348561347246896,0.07331137708003314,0.07313713844993198,0.07296289758748374,0.0727886544980067,0.07261440918681926,0.07244016165923985,0.07226591192058701,0.07209165997617929,0.07191740583133538,0.07174314949137396,0.07156889096161384,0.07139463024737386,0.07122036735397293,0.07104610228673004,0.07087183505096425,0.07069756565199467,0.07052329409514048,0.07034902038572093,0.07017474452905532,0.07000046653046305,0.06982618639526356,0.06965190412877635,0.06947761973632101,0.06930333322321718,0.06912904459478454,0.06895475385634289,0.06878046101321204,0.06860616607071192,0.06843186903416246,0.06825756990888371,0.06808326870019572,0.0679089654134187,0.06773466005387282,0.06756035262687839,0.06738604313775573,0.06721173159182527,0.06703741799440746,0.06686310235082284,0.06668878466639198,0.06651446494643559,0.06634014319627433,0.06616581942122902,0.0659914936266205,0.06581716581776965,0.06564283599999746,0.06546850417862493,0.06529417035897317,0.06511983454636332,0.06494549674611659,0.06477115696355426,0.06459681520399764,0.06442247147276814,0.06424812577518721,0.06407377811657634,0.06389942850225713,0.06372507693755121,0.06355072342778023,0.06337636797826599,0.06320201059433027,0.06302765128129495,0.06285329004448195,0.06267892688921325,0.06250456182081092,0.06233019484459703,0.06215582596589376,0.06198145519002332,0.061807082522308,0.06163270796807012,0.06145833153263208,0.06128395322131633,0.06110957303944537,0.06093519099234177,0.060760807085328154,0.060586421323727185,0.060412033712861614,0.060237644258054224,0.06006325296462786,0.05988885983790543,0.05971446488320989,0.059540068105864256,0.0593656695111916,0.05919126910451504,0.05901686689115777,0.05884246287644301,0.058668057065694064,0.05849364946423428,0.05831924007738705,0.05814482891047583,0.057970415968824136,0.05779600125775553,0.057621584782593625,0.057447166548662096,0.05727274656128467,0.05709832482578513,0.056923901347487295,0.056749476131715056,0.05657504918379236,0.05640062050904319,0.056226190112791584,0.056051758000361655,0.05587732417707754,0.05570288864826344,0.05552845141924362,0.055354012495342365,0.055179571881884056,0.05500512958419308,0.05483068560759391,0.05465623995741105,0.05448179263896906,0.054307343657592565,0.05413289301860622,0.05395844072733475,0.05378398678910291,0.053609531209235506,0.05343507399305742,0.05326061514589356,0.053086154673068896,0.05291169257990844,0.05273722887173724,0.05256276355388044,0.05238829663166318,0.05221382811041068,0.05203935799544819,0.05186488629210104,0.05169041300569457,0.05151593814155418,0.051341461705005344,0.051166983701373556,0.05099250413598436,0.050818023014163355,0.050643540341236186,0.050469056122528555,0.05029457036336619,0.050120083069074874,0.049945594244980455,0.049771103896408805,0.049596612028685844,0.04942211864713756,0.04924762375708996,0.04907312736386911,0.048898629472801124,0.04872413008921216,0.04854962921842842,0.04837512686577614,0.04820062303658164,0.04802611773617123,0.047851610969871304,0.04767710274300829,0.04750259306090866,0.04732808192889894,0.04715356935230567,0.046979055336455466,0.04680453988667498,0.0466300230082909,0.046455504706629965,0.04628098498701896,0.04610646385478469,0.045931941315254035,0.045757417373753904,0.04558289203561125,0.04540836530615306,0.04523383719070637,0.045059307694598275,0.04488477682315588,0.04471024458170635,0.0445357109755769,0.04436117601009477,0.04418663969058725,0.04401210202238166,0.043837563010805394,0.04366302266118584,0.04348848097885046,0.043313937969126755,0.04313939363734224,0.04296484798882451,0.04279030102890117,0.04261575276289987,0.04244120319614831,0.04226665233397422,0.04209210018170537,0.0419175467446696,0.041742992028194724,0.04156843603760865,0.041393878778239315,0.04121932025541468,0.04104476047446275,0.04087019944071158,0.04069563715948925,0.040521073636123874,0.04034650887594362,0.04017194288427668,0.039997375666451306,0.03982280722779575,0.03964823757363833,0.039473666709307395,0.03929909464013132,0.03912452137143854,0.038949946908557506,0.03877537125681672,0.03860079442154469,0.03842621640807,0.038251637221721244,0.03807705686782707,0.03790247535171615,0.03772789267871718,0.03755330885415892,0.037378723883370144,0.03720413777167966,0.037029550524416324,0.036854962146909025,0.036680372644486675,0.03650578202247823,0.03633119028621267,0.03615659744101902,0.03598200349222634,0.03580740844516372,0.035632812305160265,0.03545821507754515,0.03528361676764755,0.035109017380796706,0.03493441692232185,0.034759815397552275,0.03458521281181731,0.034410609170446305,0.03423600447876864,0.03406139874211374,0.033886791965811035,0.03371218415519002,0.03353757531558021,0.033362965452311134,0.03318835457071238,0.033013742676113546,0.032839129773844275,0.032664515869234224,0.032489900967613096,0.03231528507431062,0.03214066819465655,0.031966050333980686,0.031791431497612835,0.031616811690882846,0.03144219091912061,0.03126756918765601,0.031092946501819006,0.030918322866939553,0.03074369828834765,0.030569072771373315,0.030394446321346604,0.0302198189435976,0.030045190643456406,0.029870561426253165,0.029695931297318037,0.02952130026198122,0.029346668325572926,0.029172035493423412,0.028997401770862952,0.02882276716322185,0.028648131675830427,0.02847349531401905,0.028298858083118092,0.028124219988457974,0.027949581035369125,0.027774941229182008,0.027600300575227114,0.02742565907883495,0.027251016745336063,0.02707637358006102,0.026901729588340407,0.026727084775504843,0.026552439146884967,0.026377792707811445,0.026203145463614973,0.02602849741962626,0.025853848581176047,0.0256791989535951,0.025504548542214206,0.025329897352364177,0.025155245389375847,0.02498059265858008,0.024805939165307756,0.024631284914889782,0.024456629912657086,0.02428197416394062,0.02410731767407136,0.023932660448380303,0.02375800249219847,0.023583343810856902,0.023408684409686666,0.023234024294018843,0.023059363469184548,0.022884701940514906,0.02271003971334107,0.022535376792994215,0.022360713184805533,0.022186048894106237,0.022011383926227562,0.02183671828650077,0.021662051980257134,0.021487385012827948,0.021312717389544537,0.021138049115738234,0.020963380196740395,0.020788710637882398,0.020614040444495642,0.020439369621911542,0.020264698175461532,0.020090026110477062,0.019915353432289614,0.01974068014623067,0.01956600625763175,0.019391331771824373,0.01921665669414009,0.019041981029910473,0.018867304784467093,0.018692627963141556,0.01851795057126548,0.018343272614170503,0.018168594097188275,0.017993915025650467,0.01781923540488876,0.01764455524023487,0.017469874537020504,0.017295193300577407,0.017120511536237327,0.01694582924933204,0.016771146445193324,0.016596463129152982,0.01642177930654283,0.016247094982694704,0.016072410162940445,0.015897724852611917,0.015723039057040998,0.015548352781559582,0.015373666031499575,0.015198978812192895,0.015024291128971481,0.01484960298716728,0.014674914392112258,0.014500225349138392,0.014325535863577673,0.014150845940762104,0.013976155586023706,0.013801464804694508,0.013626773602106554,0.013452081983591902,0.013277389954482624,0.013102697520110798,0.012928004685808523,0.012753311456907904,0.01257861783874106,0.012403923836640119,0.012229229455937228,0.012054534701964539,0.01187983958005422,0.011705144095538442,0.011530448253749399,0.011355752060019287,0.011181055519680313,0.011006358638064703,0.01083166142050468,0.010656963872332493,0.010482265998880386,0.010307567805480623,0.010132869297465473,0.009958170480167217,0.009783471358918145,0.009608771939050556,0.009434072225896756,0.009259372224789062,0.009084671941059802,0.008909971380041308,0.008735270547065924,0.008560569447466,0.008385868086573897,0.00821116646972198,0.008036464602242626,0.007861762489468217,0.007687060136731142,0.007512357549363799,0.0073376547326985935,0.007162951692067936,0.006988248432804245,0.006813544960239946,0.006638841279707472,0.006464137396539258,0.006289433316067751,0.0061147290436253995,0.0059400245845446595,0.005765319944157994,0.005590615127797869,0.0054159101407967565,0.005241204988487137,0.005066499676201491,0.0048917942092723075,0.004717088593032079,0.004542382832813301,0.004367676933948477,0.004192970901770111,0.0040182647416107135,0.0038435584588027982,0.0036688520586788827,0.0034941455465714883,0.0033194389278131376,0.0031447322077363606,0.0029700253916736864,0.0027953184849576493,0.002620611492920786,0.002445904420895635,0.0022711972742147377,0.0020964900582106385,0.0019217827782158825,0.0017470754395630184,0.0015723680475845949,0.0013976606076131642,0.0012229531249812785,0.0010482456050214916,0.0008735380530663592,0.000698830474448437,0.0005241228745002822,0.0003494152585544523,0.00017470763194350547,0.0],"x":[10.0,9.98998998998999,9.97997997997998,9.96996996996997,9.95995995995996,9.94994994994995,9.93993993993994,9.92992992992993,9.91991991991992,9.90990990990991,9.8998998998999,9.88988988988989,9.87987987987988,9.86986986986987,9.85985985985986,9.84984984984985,9.83983983983984,9.82982982982983,9.81981981981982,9.80980980980981,9.7997997997998,9.78978978978979,9.77977977977978,9.76976976976977,9.75975975975976,9.74974974974975,9.73973973973974,9.72972972972973,9.71971971971972,9.70970970970971,9.6996996996997,9.68968968968969,9.67967967967968,9.66966966966967,9.65965965965966,9.64964964964965,9.63963963963964,9.62962962962963,9.61961961961962,9.60960960960961,9.5995995995996,9.58958958958959,9.57957957957958,9.56956956956957,9.55955955955956,9.54954954954955,9.53953953953954,9.52952952952953,9.51951951951952,9.50950950950951,9.4994994994995,9.48948948948949,9.47947947947948,9.46946946946947,9.45945945945946,9.44944944944945,9.43943943943944,9.42942942942943,9.41941941941942,9.40940940940941,9.3993993993994,9.38938938938939,9.37937937937938,9.36936936936937,9.35935935935936,9.34934934934935,9.33933933933934,9.32932932932933,9.31931931931932,9.30930930930931,9.2992992992993,9.28928928928929,9.27927927927928,9.26926926926927,9.25925925925926,9.24924924924925,9.23923923923924,9.22922922922923,9.21921921921922,9.20920920920921,9.1991991991992,9.18918918918919,9.17917917917918,9.16916916916917,9.15915915915916,9.14914914914915,9.13913913913914,9.12912912912913,9.11911911911912,9.10910910910911,9.0990990990991,9.08908908908909,9.07907907907908,9.06906906906907,9.05905905905906,9.04904904904905,9.03903903903904,9.02902902902903,9.01901901901902,9.00900900900901,8.998998998999,8.98898898898899,8.97897897897898,8.96896896896897,8.95895895895896,8.94894894894895,8.93893893893894,8.92892892892893,8.91891891891892,8.90890890890891,8.8988988988989,8.88888888888889,8.87887887887888,8.86886886886887,8.85885885885886,8.84884884884885,8.83883883883884,8.82882882882883,8.81881881881882,8.80880880880881,8.7987987987988,8.78878878878879,8.77877877877878,8.76876876876877,8.75875875875876,8.74874874874875,8.73873873873874,8.72872872872873,8.71871871871872,8.70870870870871,8.6986986986987,8.68868868868869,8.67867867867868,8.66866866866867,8.65865865865866,8.64864864864865,8.63863863863864,8.62862862862863,8.618618618618619,8.608608608608609,8.598598598598599,8.588588588588589,8.578578578578579,8.568568568568569,8.558558558558559,8.548548548548549,8.538538538538539,8.528528528528529,8.518518518518519,8.508508508508509,8.498498498498499,8.488488488488489,8.478478478478479,8.468468468468469,8.458458458458459,8.448448448448449,8.438438438438439,8.428428428428429,8.418418418418419,8.408408408408409,8.398398398398399,8.388388388388389,8.378378378378379,8.368368368368369,8.358358358358359,8.348348348348349,8.338338338338339,8.328328328328329,8.318318318318319,8.308308308308309,8.298298298298299,8.288288288288289,8.278278278278279,8.268268268268269,8.258258258258259,8.248248248248249,8.238238238238239,8.228228228228229,8.218218218218219,8.208208208208209,8.198198198198199,8.188188188188189,8.178178178178179,8.168168168168169,8.158158158158159,8.148148148148149,8.138138138138139,8.128128128128129,8.118118118118119,8.108108108108109,8.098098098098099,8.088088088088089,8.078078078078079,8.068068068068069,8.058058058058059,8.048048048048049,8.038038038038039,8.028028028028029,8.018018018018019,8.008008008008009,7.997997997997998,7.987987987987988,7.977977977977978,7.967967967967968,7.957957957957958,7.947947947947948,7.937937937937938,7.927927927927928,7.917917917917918,7.907907907907908,7.897897897897898,7.887887887887888,7.877877877877878,7.867867867867868,7.857857857857858,7.847847847847848,7.837837837837838,7.827827827827828,7.817817817817818,7.807807807807808,7.797797797797798,7.787787787787788,7.777777777777778,7.767767767767768,7.757757757757758,7.747747747747748,7.737737737737738,7.727727727727728,7.717717717717718,7.707707707707708,7.697697697697698,7.687687687687688,7.677677677677678,7.667667667667668,7.657657657657658,7.647647647647648,7.637637637637638,7.627627627627628,7.617617617617618,7.607607607607608,7.597597597597598,7.587587587587588,7.5775775775775776,7.5675675675675675,7.5575575575575575,7.5475475475475475,7.5375375375375375,7.5275275275275275,7.5175175175175175,7.5075075075075075,7.4974974974974975,7.4874874874874875,7.4774774774774775,7.4674674674674675,7.4574574574574575,7.4474474474474475,7.4374374374374375,7.4274274274274275,7.4174174174174174,7.407407407407407,7.397397397397397,7.387387387387387,7.377377377377377,7.367367367367367,7.357357357357357,7.347347347347347,7.337337337337337,7.327327327327327,7.317317317317317,7.307307307307307,7.297297297297297,7.287287287287287,7.277277277277277,7.267267267267267,7.257257257257257,7.247247247247247,7.237237237237237,7.227227227227227,7.217217217217217,7.207207207207207,7.197197197197197,7.187187187187187,7.177177177177177,7.167167167167167,7.157157157157157,7.147147147147147,7.137137137137137,7.127127127127127,7.117117117117117,7.107107107107107,7.097097097097097,7.087087087087087,7.077077077077077,7.067067067067067,7.057057057057057,7.047047047047047,7.037037037037037,7.027027027027027,7.017017017017017,7.007007007007007,6.996996996996997,6.986986986986987,6.976976976976977,6.966966966966967,6.956956956956957,6.946946946946947,6.936936936936937,6.926926926926927,6.916916916916917,6.906906906906907,6.896896896896897,6.886886886886887,6.876876876876877,6.866866866866867,6.856856856856857,6.846846846846847,6.836836836836837,6.826826826826827,6.816816816816817,6.806806806806807,6.796796796796797,6.786786786786787,6.776776776776777,6.766766766766767,6.756756756756757,6.746746746746747,6.736736736736737,6.726726726726727,6.716716716716717,6.706706706706707,6.696696696696697,6.686686686686687,6.676676676676677,6.666666666666667,6.656656656656657,6.646646646646647,6.636636636636637,6.626626626626627,6.616616616616617,6.606606606606607,6.596596596596597,6.586586586586587,6.576576576576577,6.566566566566567,6.556556556556557,6.546546546546547,6.536536536536537,6.526526526526527,6.516516516516517,6.506506506506507,6.496496496496497,6.486486486486487,6.476476476476477,6.466466466466467,6.456456456456457,6.446446446446447,6.436436436436437,6.426426426426427,6.416416416416417,6.406406406406407,6.396396396396397,6.386386386386387,6.376376376376377,6.366366366366367,6.356356356356357,6.346346346346347,6.336336336336337,6.326326326326327,6.316316316316317,6.306306306306307,6.296296296296297,6.286286286286287,6.276276276276277,6.266266266266267,6.256256256256257,6.246246246246246,6.236236236236236,6.226226226226226,6.216216216216216,6.206206206206206,6.196196196196196,6.186186186186186,6.176176176176176,6.166166166166166,6.156156156156156,6.146146146146146,6.136136136136136,6.126126126126126,6.116116116116116,6.106106106106106,6.096096096096096,6.086086086086086,6.076076076076076,6.066066066066066,6.056056056056056,6.046046046046046,6.036036036036036,6.026026026026026,6.016016016016016,6.006006006006006,5.995995995995996,5.985985985985986,5.975975975975976,5.965965965965966,5.955955955955956,5.945945945945946,5.935935935935936,5.925925925925926,5.915915915915916,5.905905905905906,5.895895895895896,5.885885885885886,5.875875875875876,5.865865865865866,5.8558558558558556,5.8458458458458455,5.8358358358358355,5.8258258258258255,5.8158158158158155,5.8058058058058055,5.7957957957957955,5.7857857857857855,5.7757757757757755,5.7657657657657655,5.7557557557557555,5.7457457457457455,5.7357357357357355,5.7257257257257255,5.7157157157157155,5.7057057057057055,5.6956956956956954,5.685685685685685,5.675675675675675,5.665665665665665,5.655655655655655,5.645645645645645,5.635635635635635,5.625625625625625,5.615615615615615,5.605605605605605,5.595595595595595,5.585585585585585,5.575575575575575,5.565565565565565,5.555555555555555,5.545545545545545,5.535535535535535,5.525525525525525,5.515515515515515,5.505505505505505,5.495495495495495,5.485485485485485,5.475475475475475,5.465465465465465,5.455455455455455,5.445445445445445,5.435435435435435,5.425425425425425,5.415415415415415,5.405405405405405,5.395395395395395,5.385385385385385,5.375375375375375,5.365365365365365,5.355355355355355,5.345345345345345,5.335335335335335,5.325325325325325,5.315315315315315,5.305305305305305,5.295295295295295,5.285285285285285,5.275275275275275,5.265265265265265,5.255255255255255,5.245245245245245,5.235235235235235,5.225225225225225,5.215215215215215,5.205205205205205,5.195195195195195,5.185185185185185,5.175175175175175,5.165165165165165,5.155155155155155,5.145145145145145,5.135135135135135,5.125125125125125,5.115115115115115,5.105105105105105,5.095095095095095,5.085085085085085,5.075075075075075,5.065065065065065,5.055055055055055,5.045045045045045,5.035035035035035,5.025025025025025,5.015015015015015,5.005005005005005,4.994994994994995,4.984984984984985,4.974974974974975,4.964964964964965,4.954954954954955,4.944944944944945,4.934934934934935,4.924924924924925,4.914914914914915,4.904904904904905,4.894894894894895,4.884884884884885,4.874874874874875,4.864864864864865,4.854854854854855,4.844844844844845,4.834834834834835,4.824824824824825,4.814814814814815,4.804804804804805,4.794794794794795,4.784784784784785,4.774774774774775,4.764764764764765,4.754754754754755,4.744744744744745,4.734734734734735,4.724724724724725,4.714714714714715,4.704704704704705,4.694694694694695,4.684684684684685,4.674674674674675,4.664664664664665,4.654654654654655,4.644644644644645,4.634634634634635,4.624624624624625,4.614614614614615,4.604604604604605,4.594594594594595,4.584584584584585,4.574574574574575,4.564564564564565,4.554554554554555,4.544544544544545,4.534534534534535,4.524524524524525,4.514514514514515,4.504504504504505,4.494494494494495,4.484484484484485,4.474474474474475,4.464464464464465,4.454454454454455,4.444444444444445,4.434434434434435,4.424424424424425,4.414414414414415,4.404404404404405,4.394394394394395,4.384384384384385,4.374374374374375,4.364364364364365,4.354354354354355,4.344344344344345,4.334334334334335,4.324324324324325,4.314314314314315,4.3043043043043046,4.2942942942942945,4.2842842842842845,4.2742742742742745,4.2642642642642645,4.2542542542542545,4.2442442442442445,4.2342342342342345,4.2242242242242245,4.2142142142142145,4.2042042042042045,4.1941941941941945,4.1841841841841845,4.1741741741741745,4.1641641641641645,4.1541541541541545,4.1441441441441444,4.134134134134134,4.124124124124124,4.114114114114114,4.104104104104104,4.094094094094094,4.084084084084084,4.074074074074074,4.064064064064064,4.054054054054054,4.044044044044044,4.034034034034034,4.024024024024024,4.014014014014014,4.004004004004004,3.993993993993994,3.983983983983984,3.973973973973974,3.963963963963964,3.953953953953954,3.943943943943944,3.933933933933934,3.923923923923924,3.913913913913914,3.903903903903904,3.893893893893894,3.883883883883884,3.873873873873874,3.863863863863864,3.853853853853854,3.843843843843844,3.833833833833834,3.823823823823824,3.813813813813814,3.803803803803804,3.793793793793794,3.7837837837837838,3.7737737737737738,3.7637637637637638,3.7537537537537538,3.7437437437437437,3.7337337337337337,3.7237237237237237,3.7137137137137137,3.7037037037037037,3.6936936936936937,3.6836836836836837,3.6736736736736737,3.6636636636636637,3.6536536536536537,3.6436436436436437,3.6336336336336337,3.6236236236236237,3.6136136136136137,3.6036036036036037,3.5935935935935936,3.5835835835835836,3.5735735735735736,3.5635635635635636,3.5535535535535536,3.5435435435435436,3.5335335335335336,3.5235235235235236,3.5135135135135136,3.5035035035035036,3.4934934934934936,3.4834834834834836,3.4734734734734736,3.4634634634634636,3.4534534534534536,3.4434434434434436,3.4334334334334335,3.4234234234234235,3.4134134134134135,3.4034034034034035,3.3933933933933935,3.3833833833833835,3.3733733733733735,3.3633633633633635,3.3533533533533535,3.3433433433433435,3.3333333333333335,3.3233233233233235,3.3133133133133135,3.3033033033033035,3.2932932932932935,3.2832832832832834,3.2732732732732734,3.2632632632632634,3.2532532532532534,3.2432432432432434,3.2332332332332334,3.2232232232232234,3.2132132132132134,3.2032032032032034,3.1931931931931934,3.1831831831831834,3.1731731731731734,3.1631631631631634,3.1531531531531534,3.1431431431431434,3.1331331331331334,3.123123123123123,3.113113113113113,3.103103103103103,3.093093093093093,3.083083083083083,3.073073073073073,3.063063063063063,3.053053053053053,3.043043043043043,3.033033033033033,3.023023023023023,3.013013013013013,3.003003003003003,2.992992992992993,2.982982982982983,2.972972972972973,2.962962962962963,2.952952952952953,2.942942942942943,2.932932932932933,2.9229229229229228,2.9129129129129128,2.9029029029029028,2.8928928928928928,2.8828828828828827,2.8728728728728727,2.8628628628628627,2.8528528528528527,2.8428428428428427,2.8328328328328327,2.8228228228228227,2.8128128128128127,2.8028028028028027,2.7927927927927927,2.7827827827827827,2.7727727727727727,2.7627627627627627,2.7527527527527527,2.7427427427427427,2.7327327327327327,2.7227227227227226,2.7127127127127126,2.7027027027027026,2.6926926926926926,2.6826826826826826,2.6726726726726726,2.6626626626626626,2.6526526526526526,2.6426426426426426,2.6326326326326326,2.6226226226226226,2.6126126126126126,2.6026026026026026,2.5925925925925926,2.5825825825825826,2.5725725725725725,2.5625625625625625,2.5525525525525525,2.5425425425425425,2.5325325325325325,2.5225225225225225,2.5125125125125125,2.5025025025025025,2.4924924924924925,2.4824824824824825,2.4724724724724725,2.4624624624624625,2.4524524524524525,2.4424424424424425,2.4324324324324325,2.4224224224224224,2.4124124124124124,2.4024024024024024,2.3923923923923924,2.3823823823823824,2.3723723723723724,2.3623623623623624,2.3523523523523524,2.3423423423423424,2.3323323323323324,2.3223223223223224,2.3123123123123124,2.3023023023023024,2.2922922922922924,2.2822822822822824,2.2722722722722724,2.2622622622622623,2.2522522522522523,2.2422422422422423,2.2322322322322323,2.2222222222222223,2.2122122122122123,2.2022022022022023,2.1921921921921923,2.1821821821821823,2.1721721721721723,2.1621621621621623,2.1521521521521523,2.1421421421421423,2.1321321321321323,2.1221221221221223,2.1121121121121122,2.1021021021021022,2.0920920920920922,2.0820820820820822,2.0720720720720722,2.062062062062062,2.052052052052052,2.042042042042042,2.032032032032032,2.022022022022022,2.012012012012012,2.002002002002002,1.991991991991992,1.981981981981982,1.971971971971972,1.961961961961962,1.951951951951952,1.941941941941942,1.931931931931932,1.921921921921922,1.911911911911912,1.901901901901902,1.8918918918918919,1.8818818818818819,1.8718718718718719,1.8618618618618619,1.8518518518518519,1.8418418418418419,1.8318318318318318,1.8218218218218218,1.8118118118118118,1.8018018018018018,1.7917917917917918,1.7817817817817818,1.7717717717717718,1.7617617617617618,1.7517517517517518,1.7417417417417418,1.7317317317317318,1.7217217217217218,1.7117117117117118,1.7017017017017018,1.6916916916916918,1.6816816816816818,1.6716716716716717,1.6616616616616617,1.6516516516516517,1.6416416416416417,1.6316316316316317,1.6216216216216217,1.6116116116116117,1.6016016016016017,1.5915915915915917,1.5815815815815817,1.5715715715715717,1.5615615615615615,1.5515515515515514,1.5415415415415414,1.5315315315315314,1.5215215215215214,1.5115115115115114,1.5015015015015014,1.4914914914914914,1.4814814814814814,1.4714714714714714,1.4614614614614614,1.4514514514514514,1.4414414414414414,1.4314314314314314,1.4214214214214214,1.4114114114114114,1.4014014014014013,1.3913913913913913,1.3813813813813813,1.3713713713713713,1.3613613613613613,1.3513513513513513,1.3413413413413413,1.3313313313313313,1.3213213213213213,1.3113113113113113,1.3013013013013013,1.2912912912912913,1.2812812812812813,1.2712712712712713,1.2612612612612613,1.2512512512512513,1.2412412412412412,1.2312312312312312,1.2212212212212212,1.2112112112112112,1.2012012012012012,1.1911911911911912,1.1811811811811812,1.1711711711711712,1.1611611611611612,1.1511511511511512,1.1411411411411412,1.1311311311311312,1.1211211211211212,1.1111111111111112,1.1011011011011012,1.0910910910910911,1.0810810810810811,1.0710710710710711,1.0610610610610611,1.0510510510510511,1.0410410410410411,1.031031031031031,1.021021021021021,1.011011011011011,1.001001001001001,0.990990990990991,0.980980980980981,0.970970970970971,0.960960960960961,0.950950950950951,0.9409409409409409,0.9309309309309309,0.9209209209209209,0.9109109109109109,0.9009009009009009,0.8908908908908909,0.8808808808808809,0.8708708708708709,0.8608608608608609,0.8508508508508509,0.8408408408408409,0.8308308308308309,0.8208208208208209,0.8108108108108109,0.8008008008008008,0.7907907907907908,0.7807807807807807,0.7707707707707707,0.7607607607607607,0.7507507507507507,0.7407407407407407,0.7307307307307307,0.7207207207207207,0.7107107107107107,0.7007007007007007,0.6906906906906907,0.6806806806806807,0.6706706706706707,0.6606606606606606,0.6506506506506506,0.6406406406406406,0.6306306306306306,0.6206206206206206,0.6106106106106106,0.6006006006006006,0.5905905905905906,0.5805805805805806,0.5705705705705706,0.5605605605605606,0.5505505505505506,0.5405405405405406,0.5305305305305306,0.5205205205205206,0.5105105105105106,0.5005005005005005,0.4904904904904905,0.4804804804804805,0.47047047047047047,0.46046046046046046,0.45045045045045046,0.44044044044044045,0.43043043043043044,0.42042042042042044,0.41041041041041043,0.4004004004004004,0.39039039039039036,0.38038038038038036,0.37037037037037035,0.36036036036036034,0.35035035035035034,0.34034034034034033,0.3303303303303303,0.3203203203203203,0.3103103103103103,0.3003003003003003,0.2902902902902903,0.2802802802802803,0.2702702702702703,0.2602602602602603,0.2502502502502503,0.24024024024024024,0.23023023023023023,0.22022022022022023,0.21021021021021022,0.2002002002002002,0.19019019019019018,0.18018018018018017,0.17017017017017017,0.16016016016016016,0.15015015015015015,0.14014014014014015,0.13013013013013014,0.12012012012012012,0.11011011011011011,0.1001001001001001,0.09009009009009009,0.08008008008008008,0.07007007007007007,0.06006006006006006,0.05005005005005005,0.04004004004004004,0.03003003003003003,0.02002002002002002,0.01001001001001001,0.0]} diff --git a/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/runner.jl b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/runner.jl new file mode 100644 index 000000000000..932c7032b3e5 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/test/fixtures/julia/runner.jl @@ -0,0 +1,70 @@ +#!/usr/bin/env julia +# +# @license Apache-2.0 +# +# Copyright (c) 2024 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 JSON + +""" + gen( domain, name ) + +Generate fixture data and write to file. + +# Arguments + +* `domain`: domain +* `name::AbstractString`: output filename + +# Examples + +``` julia +julia> x = range( -1, stop = 1, length = 2001 ); +julia> gen( x, \"data.json\" ); +``` +""" +function gen( domain, name ) + x = collect( domain ); + y = sind.( x ); + + # Store data to be written to file as a collection: + data = Dict([ + ("x", x), + ("expected", y) + ]); + + # Based on the script directory, create an output filepath: + filepath = joinpath( dir, name ); + + # Write the data to the output filepath as JSON: + outfile = open( filepath, "w" ); + write( outfile, JSON.json(data) ); + write( outfile, "\n" ); + close( outfile ); +end + +# Get the filename: +file = @__FILE__; + +# Extract the directory in which this file resides: +dir = dirname( file ); + +# Generate fixture data for negative values: +x = range( -10.0, stop = 0, length = 1000 ); +gen( x, "negative.json" ); + +# Generate fixture data for positive values: +x = range( 10.0, stop = 0, length = 1000 ); +gen( x, "positive.json" ); diff --git a/lib/node_modules/@stdlib/math/base/special/sind/test/test.js b/lib/node_modules/@stdlib/math/base/special/sind/test/test.js new file mode 100644 index 000000000000..9723ecf15e48 --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/test/test.js @@ -0,0 +1,116 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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 tape = require( 'tape' ); +var isnan = require( '@stdlib/math/base/assert/is-nan' ); +var abs = require( '@stdlib/math/base/special/abs' ); +var EPS = require( '@stdlib/constants/float64/eps' ); +var PINF = require( '@stdlib/constants/float64/pinf' ); +var NINF = require( '@stdlib/constants/float64/ninf' ); +var sind = require( './../lib' ); + + +// FIXTURES // + +var negative = require( './fixtures/julia/negative.json' ); +var positive = require( './fixtures/julia/positive.json' ); + + +// TESTS // + +tape( 'main export is a function', function test( t ) { + t.ok( true, __filename ); + t.true( typeof sind, 'function', 'main export is a function' ); + t.end(); +}); + +tape( 'if provided a `NaN`, the function returns `NaN`', function test( t ) { + var v = sind( NaN ); + t.equal( isnan( v ), true, 'returns expected value' ); + t.end(); +}); + +tape( 'the function computes the sine of an angle measured in degrees (negative values)', function test( t ) { + var expected; + var delta; + var tol; + var x; + var y; + var i; + + x = negative.x; + expected = negative.expected; + + for ( i = 0; i < x.length; i++ ) { + y = sind( x[ i ] ); + if ( y === expected[ i ] ) { + t.equal( y, expected[ i ], 'x: '+x[ i ]+'. E: '+expected[ i ] ); + } else { + delta = abs( y - expected[ i ] ); + tol = EPS * abs( expected[ i ] ); + t.ok( delta <= tol, 'within tolerance. x: '+x[ i ]+'. y: '+y+'. E: '+expected[ i ]+'. tol: '+tol+'. Δ: '+delta+'.' ); + } + } + t.end(); +}); + +tape( 'the function computes the sine of an angle measured in degrees (positive values)', function test( t ) { + var expected; + var delta; + var tol; + var x; + var y; + var i; + + x = positive.x; + expected = positive.expected; + + for ( i = 0; i < x.length; i++ ) { + y = sind( x[ i ] ); + if ( y === expected[ i ] ) { + t.equal( y, expected[ i ], 'x: '+x[ i ]+'. E: '+expected[ i ] ); + } else { + delta = abs( y - expected[ i ] ); + tol = EPS * abs( expected[ i ] ); + t.ok( delta <= tol, 'within tolerance. x: '+x[ i ]+'. y: '+y+'. E: '+expected[ i ]+'. tol: '+tol+'. Δ: '+delta+'.' ); + } + } + t.end(); +}); + +tape( 'if provided `+infinity`, the function returns `NaN`', function test( t ) { + var v = sind( PINF ); + t.equal( isnan( v ), true, 'returns NaN' ); + t.end(); +}); + +tape( 'if provided `-infinity`, the function returns `NaN`', function test( t ) { + var v = sind( NINF ); + t.equal( isnan( v ), true, 'returns NaN' ); + t.end(); +}); + +tape( 'if provided `90.0`, the function returns `1.0`', function test( t ) { + var v = sind( 90.0 ); + t.equal( v, 1.0, 'returns expected value' ); + t.end(); +}); diff --git a/lib/node_modules/@stdlib/math/base/special/sind/test/test.native.js b/lib/node_modules/@stdlib/math/base/special/sind/test/test.native.js new file mode 100644 index 000000000000..8e64a00063fa --- /dev/null +++ b/lib/node_modules/@stdlib/math/base/special/sind/test/test.native.js @@ -0,0 +1,125 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 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 resolve = require( 'path' ).resolve; +var tape = require( 'tape' ); +var isnan = require( '@stdlib/math/base/assert/is-nan' ); +var abs = require( '@stdlib/math/base/special/abs' ); +var EPS = require( '@stdlib/constants/float64/eps' ); +var PINF = require( '@stdlib/constants/float64/pinf' ); +var NINF = require( '@stdlib/constants/float64/ninf' ); +var tryRequire = require( '@stdlib/utils/try-require' ); + + +// VARIABLES // + +var sind = tryRequire( resolve( __dirname, './../lib/native.js' ) ); +var opts = { + 'skip': ( sind instanceof Error ) +}; + + +// FIXTURES // + +var negative = require( './fixtures/julia/negative.json' ); +var positive = require( './fixtures/julia/positive.json' ); + + +// TESTS // + +tape( 'main export is a function', opts, function test( t ) { + t.ok( true, __filename ); + t.true( typeof sind, 'function', 'main export is a function' ); + t.end(); +}); + +tape( 'if provided a `NaN`, the function returns `NaN`', opts, function test( t ) { + var v = sind( NaN ); + t.equal( isnan( v ), true, 'returns expected value' ); + t.end(); +}); + +tape( 'the function computes the sine of an angle measured in degrees (negative values)', opts, function test( t ) { + var expected; + var delta; + var tol; + var x; + var y; + var i; + + x = negative.x; + expected = negative.expected; + + for ( i = 0; i < x.length; i++ ) { + y = sind( x[ i ] ); + if ( y === expected[ i ] ) { + t.equal( y, expected[ i ], 'x: '+x[ i ]+'. E: '+expected[ i ] ); + } else { + delta = abs( y - expected[ i ] ); + tol = EPS * abs( expected[ i ] ); + t.ok( delta <= tol, 'within tolerance. x: '+x[ i ]+'. y: '+y+'. E: '+expected[ i ]+'. tol: '+tol+'. Δ: '+delta+'.' ); + } + } + t.end(); +}); + +tape( 'the function computes the sine of an angle measured in degrees (positive values)', opts, function test( t ) { + var expected; + var delta; + var tol; + var x; + var y; + var i; + + x = positive.x; + expected = positive.expected; + + for ( i = 0; i < x.length; i++ ) { + y = sind( x[ i ] ); + if ( y === expected[ i ] ) { + t.equal( y, expected[ i ], 'x: '+x[ i ]+'. E: '+expected[ i ] ); + } else { + delta = abs( y - expected[ i ] ); + tol = EPS * abs( expected[ i ] ); + t.ok( delta <= tol, 'within tolerance. x: '+x[ i ]+'. y: '+y+'. E: '+expected[ i ]+'. tol: '+tol+'. Δ: '+delta+'.' ); + } + } + t.end(); +}); + +tape( 'if provided `+infinity`, the function returns `NaN`', opts, function test( t ) { + var v = sind( PINF ); + t.equal( isnan( v ), true, 'returns expected value' ); + t.end(); +}); + +tape( 'if provided `-infinity`, the function returns `NaN`', opts, function test( t ) { + var v = sind( NINF ); + t.equal( isnan( v ), true, 'returns expected value' ); + t.end(); +}); + +tape( 'if provided `90.0`, the function returns `1.0`', opts, function test( t ) { + var v = sind( 90.0 ); + t.equal( v, 1.0, 'returns expected value' ); + t.end(); +});