UNPKG

@stdlib/math-base-special-asecdf

Version:

Compute the arcsecant (in degrees) of a single-precision floating-point number.

72 lines (62 loc) 1.64 kB
/** * @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 rad2degf = require( '@stdlib/math-base-special-rad2degf' ); var asecf = require( '@stdlib/math-base-special-asecf' ); var float64ToFloat32 = require( '@stdlib/number-float64-base-to-float32' ); // MAIN // /** * Computes the arcsecant (in degrees) of a single-precision floating-point number. * * @param {number} x - input value * @returns {number} arcsecant (in degrees) * * @example * var v = asecdf( Infinity ); * // returns 90.0 * * @example * var v = asecdf( 2.0 ); * // returns ~60.0 * * @example * var sqrtf = require( '@stdlib/math-base-special-sqrtf' ); * * var v = asecdf( 2.0 * sqrtf( 3.0 ) / 3.0 ); * // returns ~30.0 * * @example * var sqrtf = require( '@stdlib/math-base-special-sqrtf' ); * * var v = asecdf( sqrtf( 2.0 ) ); * // returns 45.0 * * @example * var v = asecdf( 1.0 ); * // returns 0.0 * * @example * var v = asecdf( NaN ); * // returns NaN */ function asecdf( x ) { return rad2degf( asecf( float64ToFloat32( x ) ) ); } // EXPORTS // module.exports = asecdf;