Skip to content

coplt/Coplt.Mathematics

Repository files navigation

Coplt.Mathematics

Nuget

hlsl-style linear algebra library

  • bool (b16 b32 b64)、half [1]、float、double、short、ushort、int、uint、long、ulong、decimal [2]
  • Vector2~4 (float3 double4 int2 ...)
  • Matrix2x2~4x4 (float3x3 double4x2 int2x3 ...)
  • Hlsl-like cartesian product swizzle (.yzx .abgr ...)
  • Full simd support
  • Simd accelerated [3] log, exp, pow, fmod, trigonometry

Note

  1. Very slow on CPU
  2. Cpu only
  3. Lower precision than C# system library

Function ULPs (vs C# system library)

function float double
log2 1 1
asin 2 2
acos 2 2
atan 2 2
atan2 2 2
  • The function that needs to be rewritten due to insufficient precision is not in the table

Todo

  • tests
  • rewrite the function with too low precision

Related Projects

Releases

No releases published

Packages

No packages published

Languages