Redzen 15.0.0

dotnet add package Redzen --version 15.0.0                
NuGet\Install-Package Redzen -Version 15.0.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="Redzen" Version="15.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Redzen --version 15.0.0                
#r "nuget: Redzen, 15.0.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.
// Install Redzen as a Cake Addin
#addin nuget:?package=Redzen&version=15.0.0

// Install Redzen as a Cake Tool
#tool nuget:?package=Redzen&version=15.0.0                

Redzen

A general purpose C# code library.

Available in nuget form at nuget.org/packages/Redzen/

Much of the code in Redzen began life in SharpNEAT and other projects, and has found a new home in the Redzen library to allow for reuse of general purpose code.

This project endeavours to provide code that is high quality, well tested, clean, performant, efficient. The name alludes to an attempt to apply Zen philosophy to the creation of software.

Redzen top level namespaces

  • Collections
  • IO
  • Linq
  • Numerics
  • Random
  • Sorting
  • Structures

Redzen project map

  • Collections

    • IntStack
      • A stack of int32 values. A simpler alternative to Stack<int> that provides additional Poke() and TryPoke() methods. Optimised for stacks of Int32.
    • LightweightList
      • A simpler alternative to List<T> that provides an AsSpan() method for efficient access to the internal array element.
    • LightweightStack
      • A simpler alternative to Stack<T> that provides additional Poke() and TryPoke() methods.
  • IO

    • Base64EncodingOutputStream
      • Base64 stream encoder.
    • FileByteArray
      • Presents a 'byte array' backed by a file on disk.
    • MemoryBlockStream
      • A memory backed stream that stores byte data in blocks, this gives improved performance over System.IO.MemoryStream in some circumstances.
    • NonClosingStreamWrapper
      • Wraps a stream and prevents calls to Close() and Dispose() from being made on it.
    • StreamHelper
      • General purpose helper methods for working with streams.
  • Linq

    • EnumerableUtils
      • Utility methods related to LINQ and IEnumerable.
  • Numerics

    • Distributions
      • Double
        • BoxMullerGaussian
          • Static methods for taking samples from Gaussian distributions using the Box-Muller transform.
        • BoxMullerGaussianSampler
          • A Gaussian distribution sampler based on the Box-Muller transform.
        • BoxMullerGaussianStatelessSampler
          • A stateless Gaussian distribution sampler based on the Box-Muller transform.
        • UniformDistribution
          • Static methods for taking samples from uniform distributions.
        • UniformDistributionSampler
          • A uniform distribution sampler.
        • UniformDistributionStatelessSampler
          • A stateless uniform distribution sampler.
        • ZigguratGaussian
          • Static methods for taking samples from Gaussian distributions using the Ziggurat algorithm.
        • ZigguratGaussianSampler
          • A Gaussian distribution sampler based on the Ziggurat algorithm.
        • ZigguratGaussianStatelessSampler
          • A stateless Gaussian distribution sampler based on the Ziggurat algorithm.
      • Float
        • BoxMullerGaussian
          • Static methods for taking samples from Gaussian distributions using the Box-Muller transform.
        • BoxMullerGaussianSampler
          • A Gaussian distribution sampler based on the Box-Muller transform.
        • BoxMullerGaussianStatelessSampler
          • A stateless Gaussian distribution sampler based on the Box-Muller transform.
        • UniformDistribution
          • Static methods for taking samples from uniform distributions.
        • UniformDistributionSampler
          • A uniform distribution sampler.
        • UniformDistributionStatelessSampler
          • A stateless uniform distribution sampler.
        • ZigguratGaussian
          • Static methods for taking samples from Gaussian distributions using the Ziggurat algorithm.
        • ZigguratGaussianSampler
          • A Gaussian distribution sampler based on the Ziggurat algorithm.
        • ZigguratGaussianStatelessSampler
          • A stateless Gaussian distribution sampler based on the Ziggurat algorithm.
  • Random

    • DefaultRandomSeedSource
      • A default source of seed values for use by pseudo-random number generators (PRNGs).
    • RandomDefaults
      • Provides a means of creating default implementations of IRandomSource, and also a standard way of generating seed values for PRNGs generally.
    • Splitmix64Rng
      • Splitmix64 Pseudo Random Number Generator (PRNG).
    • WyRandom
    • XorShiftRandom
      • xor-shift pseudo random number generator (PRNG) devised by George Marsaglia.
    • Xoshiro256PlusPlusRandom
      • xoshiro256+ (xor, shift, rotate) pseudo-random number generator (PRNG).
    • Xoshiro256PlusRandom
      • xoshiro256++ (xor, shift, rotate) pseudo-random number generator (PRNG).
    • Xoshiro256StarStarRandom
      • xoshiro256** (xor, shift, rotate) pseudo-random number generator (PRNG).
    • Xoshiro512StarStarRandom
      • xoshiro512** (xor, shift, rotate) pseudo-random number generator (PRNG).
  • Sorting

    • IntroSort<K, V, W>
      • For sorting an array of key values, and two additional arrays based on the array of keys.
    • SortUtils
      • Helper methods related to sorting.
    • TimSort<T>
      • A timsort implementation.
    • TimSort<K,V>
      • A timsort implementation. This version accepts a secondary values array, the elements of which are repositioned in-line with their associated key values.
    • TimSort<K,V,W>
      • A timsort implementation. This version accepts two secondary values arrays, the elements of which are repositioned in-line with their associated key values.
  • Structures

    • Compact
      • CompactIntegerList
        • A compact list of sequential integer values.
      • FixedPointDecimal
        • A fixed point decimal data type that uses Int32 for its underlying state, i.e. 4 bytes versus the native decimal's 16 bytes.
    • BoolArray
      • A leaner faster alternative to System.Collections.BitArray.
    • CircularBuffer<T>
      • A generic circular buffer of items of type T.
    • CircularBufferWithStats
      • A circular buffer of double precision floating point values, that maintains a sum of the contained values, and therefore also the arithmetic mean.
    • Int32Sequence
      • Conveniently encapsulates a single Int32, which is incremented to produce new IDs.
    • KeyedCircularBuffer<K,V>
      • A generic circular buffer of KeyValuePairs. The values are retrievable by their key.
  • MathSpanUtils

    • Math utility methods for working with spans.
  • MathUtils

    • Math utility methods.
  • PrimeUtils

    • Utility methods related to prime numbers.
  • SearchUtils

    • Helper methods related to binary search.
  • SpanUtils

    • Span static utility methods.
  • VariableUtils

    • General purpose helper methods.
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 (2)

Showing the top 2 NuGet packages that depend on Redzen:

Package Downloads
SharpNeatLib

SharpNEAT - Evolution of Neural Networks.

SharpNeat

SharpNEAT - Evolution of Neural Networks.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Redzen:

Repository Stars
colgreen/sharpneat
SharpNEAT - Evolution of Neural Networks. A C# .NET Framework.
Version Downloads Last updated
15.0.0 1,591 7/22/2023
14.0.0 1,464 1/1/2023
13.0.0 1,242 1/9/2022
12.0.0 8,911 3/14/2021
11.0.0 3,728 8/2/2020
10.0.0 1,204 6/28/2020
9.1.3 1,155 12/30/2021
9.1.2 1,248 11/8/2020
9.1.1 7,403 7/5/2020
9.1.0 1,066 6/14/2020
9.0.0 2,502 4/24/2019
8.0.0 2,050 1/22/2019
7.2.3 2,205 6/23/2018
7.2.2 1,537 6/13/2018
7.2.1 1,788 5/20/2018
7.2.0 1,532 5/19/2018
7.1.0 1,503 5/18/2018
7.0.1 1,774 5/11/2018
7.0.0 1,741 5/10/2018
6.0.0 1,699 5/8/2018
5.0.0 1,552 4/23/2018
4.0.0 2,279 1/27/2018
3.0.2 7,675 4/23/2017
3.0.1 1,511 3/29/2017
3.0.0 1,536 3/29/2017
2.0.0 1,632 3/11/2017
1.0.5 2,822 3/9/2016
1.0.4 1,813 2/14/2016
1.0.3 1,825 2/6/2016
1.0.2 1,823 2/6/2016
1.0.1 1,795 2/5/2016
1.0.0.1 1,823 11/7/2015

- Target framework updated to net7.0.
- Generic Math
 - MathSpan: Use of generic math in method signatures and implementations.
 - FloatUtils supersedes DoubleUtils/SingleUtils.
 - DiscreteDistribution{T} supersedes Double/Single.DiscreteDistribution.
 - DiscreteDistribution{T}: added Sample() method, to replace DiscreteDistributionUtils/Sample() static method.
 - Added NumericsUtils.StochasticRound{T}()
 - IRandomSource: Added NextHalf(), NextHalfNonZero(), NextUnitInterval{T}(), NextUnitIntervalNonZero{T}().
 - CircularBufferWithStats{T} supersedes CircularBufferWithStats (that provided double precision stats only).