
Research
Malicious fezbox npm Package Steals Browser Passwords from Cookies via Innovative QR Code Steganographic Technique
A malicious package uses a QR code as steganography in an innovative technique.
@stdlib/complex
Advanced tools
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-2023. The Stdlib Authors.
FAQs
Complex numbers.
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.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.
Application Security
/Research
/Security News
Socket detected multiple compromised CrowdStrike npm packages, continuing the "Shai-Hulud" supply chain attack that has now impacted nearly 500 packages.