C Library of Mathematical Odds & Ends

Brahe Logo


Open Source (Simplified BSD)
Closed Source / Commercial

Brahe is where I put all sorts of useful mathematical functions that don't seem to fit anywhere else. Among the bits and pieces here, you'll find:

  • A function, brahe_sigdig, that rounds floating-point values to a specific number of significant digits -- very useful in scientific and engineering applications.
  • Several pseudorandom number generators, including the Marsenne Twister, various algorithms by Marsaglia, and ISAAC.
  • Least common multiple and greatest common denominator functions.
  • A few trigonometry functions for finding the inversions of hyperbolic sine, cosine, and tangent.
  • Functions to turn boring binary integers into pretty comma-delimited or human readable text (as in "two hundred ninety-nine thousand, seven hundred ninety-two").

I implemented Brahe as a static link C library for portability. This only causes problems under Microsoft's .NET platform, which is somewhat antagonistic toward traditional C code. When time permits, I'll write a "safe" wrapper for Brahe. In the mean time, PInvoke works reasonably well if you're working with managed code.

As always, I'm interested in your comments.

Syraqua Logo


Software Engineer



© 2013 Scott Robert Ladd
All rights reserved.

The grey-and-purple dragon logo, the blue coyote logo, Coyote Gulch Productions, Itzam, SigScope, Evocosm, and Acovea are all Trademarks of Scott Robert Ladd.