About News Download Benchmark Documentation FAQ Links

What is it?

einspline is a C library for the creation and evaluation of interpolating cubic basis splines (B-splines) in 1, 2, and 3 dimensions. Fortran 77 wrappers are also included.


  • Basis-splines require storage of only a single coefficient per mesh point. Standard tricubic spline representation requires 8 coefficients per mesh point.
  • Uses a simple interface to create B-spline objects.
  • Supports both uniform and nonuniform grids.
  • Uses periodic, fixed first-derivative, or fixed second derivative boundary conditions.
  • Works with four types:
    • Single-precision real
    • Double-precision real
    • Single-precsion complex
    • Double-precision complex
  • Four evaluation functions per type:
    • Value only
    • Value and gradient
    • Value, gradient, and Laplacian
    • Value, gradient, and Hessian matrix
  • Hand-coded SSE versions of evaluation routines for high-speed
    • SIMD operations to increase FLOPS
    • Data-prefetch to reduce memory latency
  • Easy installation with autoconf/automake/libtool
For more information and downloading, please go to the SourceForge project page.


Kenneth P. Esler, Jr., Ph.D.
Carnegie Institution of Washington
Geophysical Laboratory
kesler AT ciw DOT edu

SourceForge.net Logo