Tavenem.Mathematics 2.1.0-preview.1

Prefix Reserved
This is a prerelease version of Tavenem.Mathematics.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Tavenem.Mathematics --version 2.1.0-preview.1                
NuGet\Install-Package Tavenem.Mathematics -Version 2.1.0-preview.1                
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="Tavenem.Mathematics" Version="2.1.0-preview.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Tavenem.Mathematics --version 2.1.0-preview.1                
#r "nuget: Tavenem.Mathematics, 2.1.0-preview.1"                
#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.
// Install Tavenem.Mathematics as a Cake Addin
#addin nuget:?package=Tavenem.Mathematics&version=2.1.0-preview.1&prerelease

// Install Tavenem.Mathematics as a Cake Tool
#tool nuget:?package=Tavenem.Mathematics&version=2.1.0-preview.1&prerelease                

build NuGet downloads

Tavenem.Mathematics

Tavenem.Mathematics is a collection of math utilities. It includes:

  • An assortment of mathematic and scientific constants, as double, decimal, and HugeNumber values (available in the DecimalConstants, DoubleConstants, and HugeNumberConstants static classes)

  • Versions of some types from the System.Numerics namespace, modified to use double, decimal, or HugeNumber as the base value type, for cases when greater precision is required.

    Includes:

    • Matrix3x2
    • Matrix4x4
    • Plane
    • Quaternion
    • Vector2
    • Vector3
    • Vector4

    Note that these types are not SIMD-enabled and will not benefit from the high performance of the native System.Numerics types. Those should be preferred whenever performance is valued over precision.

  • Classes defining geometric shapes, with versions based on decimal, double, and HugeNumber, including:

    • Capsule (a swept sphere)
    • Cone
    • Cuboid
    • Cylinder
    • Ellipsoid
    • Frustum
    • HollowSphere (a sphere with two radii, representing a shell with a thickness)
    • Line (2-dimensional)
    • SinglePoint (1-dimensional)
    • Sphere
    • Torus
  • Also includes the FloatRange struct, which specifies a floating point value as a minimum, maximum, and average value.

Installation

Tavenem.Mathematics is available as a NuGet package.

Roadmap

Tavenem.Mathematics' latest preview release targets .NET 7, which is also in preview. When a stable release of .NET 7 is published, a new stable release of Tavenem.Mathematics will follow shortly.

Contributing

Contributions are always welcome. Pull requests with well-tested code that improves the performance of the library are especially encouraged. Please carefully read the contributing document to learn more before submitting issues or pull requests.

Code of conduct

Please read the code of conduct before engaging with our community, including but not limited to submitting or replying to an issue or pull request.

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net7.0

    • No dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Tavenem.Mathematics:

Package Downloads
Tavenem.Universe

Classes to help model a universe.

Tavenem.HugeNumber

A class for representing extremely large (or small) numbers with high precision.

Tavenem.Chemistry

Model chemical formulae and physical substances.

Tavenem.Time

Provides classes capable of accurately representing extremely large and small time intervals, suitable for time scales such as the age of a universe, with precision down to Planck time.

Tavenem.Randomize

Random number generation with various distributions.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.2.11 396 11/24/2023
2.2.10-preview-0001 324 7/14/2023
2.1.2 567 11/8/2022
2.1.0-preview.11 127 9/16/2022
2.1.0-preview.1 191 9/13/2022
2.0.0 647 12/3/2021
2.0.0-preview.11 168 8/28/2021
2.0.0-preview.10 157 8/28/2021
2.0.0-preview.9 149 8/27/2021
2.0.0-preview.8 141 8/27/2021
2.0.0-preview.7 147 8/26/2021
2.0.0-preview.6 149 8/24/2021
2.0.0-preview.5 136 8/24/2021
2.0.0-preview.4 143 8/24/2021
2.0.0-preview.3 148 8/24/2021
2.0.0-preview.2 145 8/19/2021
2.0.0-preview.1 143 8/19/2021
1.1.2 711 5/3/2021
1.1.1 416 4/21/2021
1.1.0 377 4/10/2021
1.0.0 1,308 4/9/2021