LongCalc 0.6.1

dotnet add package LongCalc --version 0.6.1
                    
NuGet\Install-Package LongCalc -Version 0.6.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="LongCalc" Version="0.6.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="LongCalc" Version="0.6.1" />
                    
Directory.Packages.props
<PackageReference Include="LongCalc" />
                    
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 LongCalc --version 0.6.1
                    
#r "nuget: LongCalc, 0.6.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.
#:package LongCalc@0.6.1
                    
#: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=LongCalc&version=0.6.1
                    
Install as a Cake Addin
#tool nuget:?package=LongCalc&version=0.6.1
                    
Install as a Cake Tool

This library, built with and accessible by Visual Studio (2022) and using Mpir.NET for the underlying integer math and requiring .NetFramework4.8, supplies a variety of math functions and utilities with precisions as large as 2,000,000 base 10 digits when running in x86 mode and much larger in x64 mode. The underlying objects are bf (for 'big float') real values comprised of an mpz_t extended integer part from Mpir.NET and a base 2 exponent of type mpz_t, bcr (for complex numbers expressed in the rectangular coordinates) comprised of a bf real part and a bf imaginary part, and bcp (for complex numbers expressed in the polar coordinates) comprised of a bf radius and a bf angle. Functions supported include real and complex versions of: basic arithmetic, trigonometric functions, log and exponential functions, hyperbolic functions and the inverses of all of these, base conversions between bases up to 64, conversions between rectangular and polar coordinates, and some special functions such as Euler, Bernoulli, Gamma, Zeta, and BesselJ. The library also includes a 'bd' (for bigdecimal) object with fractional base 10 digits up to 20686000000. Matrix algebra is also supported for matrices of bf, bd, or bcr objects. Use of the included Windows app LongCalcDemoApp.exe function assumes that the files LongCalcDemoApp.exe, LongCalc.dll, Mpir.NET.dll, xmpir32.dll, xmpir64.dll reside in a common folder/directory. LongCalc depends on package Mpir.NET and .Net Framework 4.8.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

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.1 154 9/3/2025
0.5.36 268 9/30/2024
0.5.35 172 8/28/2024
0.5.34 1,194 2/10/2023
0.5.33 1,258 12/28/2021
0.5.32 1,326 10/2/2021
0.5.31 1,188 8/1/2021
0.5.30 1,225 3/25/2021
0.5.29 1,384 10/15/2020
0.5.28 1,311 9/24/2020
0.5.27 1,361 9/18/2020
0.5.26 1,568 9/17/2020 0.5.26 is deprecated because it has critical bugs.
0.5.25 1,383 9/6/2020
0.5.24 1,308 8/25/2020
0.5.23 1,366 8/5/2020
0.5.22 1,911 7/31/2020
0.5.21 1,916 7/30/2020
0.5.20 1,363 7/29/2020
0.5.19 1,370 7/28/2020
0.5.18 1,398 5/22/2020
0.5.17 1,371 5/19/2020
0.5.16 1,426 5/17/2020
0.5.15 1,403 5/17/2020
0.5.14 1,415 5/11/2020
0.5.13 1,508 5/3/2020
0.5.12 1,500 4/4/2020
0.5.11 1,363 3/31/2020
0.5.10 1,425 2/13/2020
0.5.9 1,470 2/8/2020
0.5.8 1,436 2/5/2020
0.5.7 1,547 1/21/2020
0.5.6 1,434 11/27/2019
0.5.5 1,405 11/16/2019
0.5.4 1,391 11/7/2019
0.5.3 1,431 11/2/2019
0.5.2 1,432 10/21/2019
0.5.1 1,671 7/29/2019
0.4.12 1,652 6/15/2019
0.4.11 1,637 6/10/2019
0.4.10 1,667 5/13/2019
0.4.9 1,747 4/15/2019
0.4.8 1,630 4/7/2019
0.4.7 1,644 3/23/2019
0.4.6 1,616 3/4/2019
0.4.5 1,688 3/4/2019
0.4.4 1,730 2/10/2019
0.4.3 2,046 1/30/2019
0.4.2 1,996 1/29/2019
0.4.1 2,038 1/29/2019
0.3.25 1,672 3/25/2019
0.3.24 1,652 3/4/2019
0.3.23 2,024 1/25/2019
0.3.22 2,083 1/23/2019
0.3.21 2,105 1/12/2019
0.3.20 2,058 1/4/2019
0.3.19 2,038 1/3/2019
0.3.18 2,039 12/30/2018
0.1.25 1,692 3/25/2019
0.1.24 1,674 3/4/2019
0.1.23 2,095 1/12/2019
0.1.22 2,021 12/24/2018
0.1.21 2,457 4/20/2018
0.1.16 2,332 9/2/2017
0.1.15 2,289 8/23/2017
0.1.11 2,104 8/4/2017
0.1.10 2,316 8/1/2017
0.1.8 2,077 7/27/2017
0.1.7 2,146 6/14/2017
0.1.6 2,173 6/14/2017
0.1.5 2,317 6/10/2017
0.1.2 2,703 11/22/2016
0.1.1 2,159 11/12/2016

Unsigned Assembly

1) Starting with version 0.5.22, reapplied bug fixes through version 0.5.35,
  kept the 1000 digits of background precision data for bf, bcr, and bcp objects (except in
  the case of calculating Zeta), the limit of 1E+1000 on input to the natural exponential
  function and abandoned the use of the "Threshold" parameter.

2) Changed the objects bd, bf, bcr, bcp, bdMatrix, bfMatrix, and bcrMatrix from class to struct.
  Designating these objects as classes provided negligible advantage and had definite disadvantages.

3) Removed the data item BL (bitlength) from the bf object as it provided unnecessary complexity
  and little advantage. Users should instead use x.Bitlength or the function doBitlength.

4) Added an optimized bf function Binomial and further optimized the Factorial function.

5) For the bf toString and ToFile functions, for inputs less than one in absolute value,
  digits are counted to Precision output starting after the decimal point or dot and
  counting to the right. Thus a value of .0003142 output to a decimal Precision of 3 would
  be ".0" rather than ".000314" or ".314E-3".

6) In the creation of bf objects from string input, added code which accurately transforms inputs
  which have one-half as fractional parts. This is particularly useful for quickly finding
  the value of x.Gamma in the LongCalcDemoApp for those numbers.

Primary source code file is included.

Checks for arithmetic overflow or underflow are again compiler-included in this release.