Matt's Source Code Portal

Home About Links Problems My Graphics BaseCode Contact

Math Structures is just a folder that contains source and headers included by Engine.cpp or Engine.h; files in the directory are not directly compiled and linked into the project. It contains All forms of mathematical structures and functions.

Vector

Defines 3D and 4D vectors, which are the most used structure anywhere in the project. See "Independent Structures" for more information and examples.

x Vector.h, Web Version
x Vector.cpp, Web Version

Plane

A standard 3D plane (space plane.) Essentially just the surface defined by a*x + b*y + c*z + d = 0.

x Plane.h, Web Version
x Plane.cpp, Web Version

Quaternion

A quaternion structure (a quaternion is used to reprsent rotations.) Currently, I haven't implemented this structure.

x Quaternion.h, Web Version
x Quaternion.cpp, Web Version

Matrix

A 4x4 matrix structure. Used very often for affine vector transformations. See "Independent Structures" for more information and examples.

x Matrix.h, Web Version
x Matrix.cpp, Web Version

Perlin Noise

Perlin noise functions. Something I wrote a very long time ago; while functional it is both poorly written and inefficent. Note that Perlin.cpp includes the Perlin1D, Perlin2D, and Perlin3D source files.

x Perlin.h, Web Version
x Perlin.cpp, Web Version
x Perlin1D.cpp, Web Version
x Perlin2D.cpp, Web Version
x Perlin3D.cpp, Web Version

Sparse Matrix

Sparse matrix class to store and manipulate matrices where most entries are 0. Used mostly in the LinearSolver class. See "Independent Structures" for more information and examples.

x Optimizer.h, Web Version
x Optimizer.cpp, Web Version

Linear Solver

Generic linear solver that solves the equation Ax = b, where A is a large sparse matrix and x and b are vectors. Uses bi-conjugate gradient descent. See "Independent Structures" for more information and examples.

x Optimizer.h, Web Version
x Optimizer.cpp, Web Version

Non-Linear Optimizer

Generic non-linear optimizer. Uses conjugate gradient descent (or other inferior/sub-component algorithms like line search.) See "Independent Structures" for more information and examples.

x Optimizer.h, Web Version
x Optimizer.cpp, Web Version


last updated: May 13th 2005   © 2005 by Matthew Fisher