Wyrm.Math 0.1.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Wyrm.Math --version 0.1.0
                    
NuGet\Install-Package Wyrm.Math -Version 0.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Wyrm.Math" Version="0.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Wyrm.Math" Version="0.1.0" />
                    
Directory.Packages.props
<PackageReference Include="Wyrm.Math" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Wyrm.Math --version 0.1.0
                    
#r "nuget: Wyrm.Math, 0.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Wyrm.Math@0.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Wyrm.Math&version=0.1.0
                    
Install as a Cake Addin
#tool nuget:?package=Wyrm.Math&version=0.1.0
                    
Install as a Cake Tool

Wyrm.Math

A collection of mathematical methods and algorithms.

Wyrm.Math.Matrix

Provides matrix arithmetic.

GeneralMatrixDouble

This class allows matrices with double values to be created, added, subtracted, and multiplied.

GeneralMatrixDecimal

This class allows matrices with decimal values to be created, added, subtracted, and multiplied.

Operations

Transpose

{M}' = {M}.Transpose()

Swaps the values of the matrix around the diagonal, creating a new matrix.

Trace

V = {M}.Trace()

Calculates the trace of a matrix.

The matrix must be square.

Determinant

|{M}| = {M}.Determinant()

Calculates the determinant of a matrix using Gaussian Elimination.

The matrix must be square.

Rank

V = {M}.Rank()

Calculates the rank of a matrix using Gaussian Elimination.

Nullity

V = {M}.Nullity()

Calculates the nullity of a matrix using Gaussian Elimination.

This is the number of columns minus the rank.

Inverse

{M}^-1 = {M}.Inverse()

Calculates the inverse of a matrix using Gaussian Elimination.

The matrix must be square and invertible (non-zero determinant).

Add a scalar

{Mv} = {M} + n

{Mv} = n + {M}

Adds a scalar value to every element in a matrix, creating a new matrix.

Add another matrix

{Mv} = {M1} + {M2}

Adds one matrix to another, creating a new matrix.

The matrices must be of the same dimensions.

Duplicate a matrix

{M} = + {M}

Duplicates a matrix.

Subtract a scalar

{Mv} = {M} - n

{Mv} = n - {M}

Subtracts a scalar value from every element in a matrix or subtracts each value in a matrix from a scalar, creating a new matrix.

Subtract another matrix

{Mv} = {M1} - {M2}

Subtracts one matrix from another, creating a new matrix.

The matrices must be of the same dimensions.

Negate a matrix

{Mv} = - {M}

Negates every value in a matrix, creating a new matrix.

Multiply by a scalar

{Mv} = {M} * n

{Mv} = n * {M}

Multiplies a scalar value with every element in a matrix, creating a new matrix.

Multiply another matrix

{Mv} = {M1} * {M2}

Multiplies one matrix with another using the naive algorithm, creating a new matrix.

The number of columns of the first matrix must be the same as the number of rows of the second matrix.

Divide by a scalar

{Mv} = {M} / n

{Mv} = n / {M}

Divides a scalar value into every element in a matrix or divides each value in a matrix into a scalar, creating a new matrix.

Wyrm.Math.ComplexNumbers

Provides complex number arithmetic.

GeneralComplexNumberDouble

This class allows complex numbers with double values to be created, added, subtracted, and multiplied.

GeneralComplexNumberDecimal

This class allows complex numbers with decimal values to be created, added, subtracted, and multiplied.

Operations

Cast

You can cast a complex number with no imaginary part to a scalar and cast a scalar to a complex number.

Complex Conjugate

Z' = Z.ComplexConjugate()

Calculates the complex conjugate of the complex number.

Abs

|Z| = Z.Abs()

Calculates the absolute value of the complex number.

Argument

P = Z.Argument()

Calculates the argument (or phase) of the complex number.

Inverse

1/Z = Z.Inverse()

Calculates the inverse of the complex number.

Add a scalar

Zv = Z + n

Zv = n + Z

Adds a scalar value to the complex number, creating a new complex number.

Add another complex number

Zv = Z1 + Z2

Adds one complex number to another, creating a new complex number.

Duplicate a complex number

Z = + Z

Duplicates a complex number.

Subtract a scalar

Zv = Z - n

Zv = n - Z

Subtracts a scalar value from a complex number or subtracts a complex number from a scalar, creating a new complex number.

Subtract another complex number

Zv = Z1 - Z2

Subtracts one complex number from another, creating a new complex number.

Negate a complex number

Zv = - Z

Negates the complex number, creating a new complex number.

Multiply by a scalar

Zv = Z * n

Zv = n * Z

Multiplies a scalar value with a complex number, creating a new complex number.

Multiply another complex number

Zv = Z1 * Z2

Multiplies one complex number with another, creating a new complex number.

Divide by a scalar

Zv = Z / n

Zv = n / Z

Divides a scalar value into a complex number or divides a complex number into a scalar, creating a new complex number.

Raise to a Power

Z^n = Z.Pow(n)

Z^z = Z.Pow(z)

Raises a complex number by a power either real or complex.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.6.0 319 11/17/2025
0.5.0 174 11/15/2025
0.4.0 188 8/14/2025
0.3.0 176 8/13/2025
0.2.0 194 8/8/2025
0.1.0 91 7/19/2025
0.1.0-alpha.8 81 10/4/2024
0.1.0-alpha.7 76 9/1/2024
0.1.0-alpha.6 90 8/18/2024
0.1.0-alpha.5 94 8/18/2024
0.1.0-alpha.4 100 8/18/2024
0.1.0-alpha.3 67 7/17/2024
0.1.0-alpha.2 76 7/17/2024