Security News
New Proposed CISA Mandate Would Require Critical Infrastructure to Report Ransom Payments Within 24 Hours
CISA has proposed a set of new rules that would require critical infrastructure to report cyber incidents and ransom payments.
@stdlib/complex
Advanced tools
Complex numbers.
Weekly downloads
Readme
We believe in a future in which the web is a preferred environment for numerical computation. To help realize this future, we've built stdlib. stdlib is a standard library, with an emphasis on numerical and scientific computation, written in JavaScript (and C) for execution in browsers and in Node.js.
The library is fully decomposable, being architected in such a way that you can swap out and mix and match APIs and functionality to cater to your exact preferences and use cases.
When you use stdlib, you can be absolutely certain that you are using the most thorough, rigorous, well-written, studied, documented, tested, measured, and high-quality code out there.
To join us in bringing numerical computing to the web, get started by checking us out on GitHub, and please consider financially supporting stdlib. We greatly appreciate your continued support!
Complex number data types.
npm install @stdlib/complex
var ns = require( '@stdlib/complex' );
Complex number data types.
var o = ns;
// returns {...}
The namespace constains complex number constructors.
base
: base (i.e., lower-level) complex number functions.complex( real, imag[, dtype] )
: create a complex number.complexCtors( dtype )
: complex number constructors.complexDataType( value )
: return the data type of a complex number.complexDataTypes()
: list of complex number data types.Complex64( real, imag )
: 64-bit complex number.Complex128( real, imag )
: 128-bit complex number.complexPromotionRules( [dtype1, dtype2] )
: return the complex number data type with the smallest size and closest "kind" to which data types can be safely cast.var z = ns.complex( 5.0, 3.0 );
// returns <Complex128>
var str = z.toString();
// returns '5 + 3i'
z = ns.complex( 5.0, 3.0, 'float32' );
// returns <Complex64>
z = new ns.Complex64( 5.0, 3.0 );
// returns <Complex64>
In addition, the namespace contains the following functions:
conj( z )
: return the complex conjugate of a double-precision complex floating-point number.conjf( z )
: return the complex conjugate of a single-precision complex floating-point number.imag( z )
: return the imaginary component of a double-precision complex floating-point number.imagf( z )
: return the imaginary component of a single-precision complex floating-point number.real( z )
: return the real component of a double-precision complex floating-point number.realf( z )
: return the real component of a single-precision complex floating-point number.reim( z )
: return the real and imaginary components of a double-precision complex floating-point number.reimf( z )
: return the real and imaginary components of a single-precision complex floating-point number.reviveComplex64( key, value )
: revive a JSON-serialized 64-bit complex number.reviveComplex128( key, value )
: revive a JSON-serialized 128-bit complex number.reviveComplex( key, value )
: revive a JSON-serialized complex number.var z = ns.complex( 5.0, 3.0 );
var str = z.toString();
// returns '5 + 3i'
var v = ns.conj( z );
str = v.toString();
// returns '5 - 3i'
var objectKeys = require( '@stdlib/utils/keys' );
var ns = require( '@stdlib/complex' );
console.log( objectKeys( ns ) );
This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.
For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.
See LICENSE.
Copyright © 2016-2024. The Stdlib Authors.
FAQs
Complex numbers.
The npm package @stdlib/complex receives a total of 33,256 weekly downloads. As such, @stdlib/complex popularity was classified as popular.
We found that @stdlib/complex demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CISA has proposed a set of new rules that would require critical infrastructure to report cyber incidents and ransom payments.
Security News
Redis is no longer OSS, breaking its explicit commitment to remain under the BSD 3-Clause License forever. This has angered contributors who are now working to fork the software.
Product
Socket AI now enables 'AI detected potential malware' alerts by default, ensuring users benefit from AI-powered state-of-the-art malware detection without needing to opt-in.