Skip to content

coplt/Coplt.Mathematics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jan 7, 2025
cd67389 · Jan 7, 2025
Dec 26, 2024
Dec 26, 2024
Jan 2, 2025
Jan 7, 2025
Jan 2, 2025
Jan 2, 2025
Apr 28, 2024
Jan 2, 2025
Dec 26, 2024
Apr 28, 2024
Dec 31, 2024
Dec 26, 2024

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