I am currently working on a huge satellite project that requires at one point a gaussian elimination of matricies in the formulas. I am working mainly in C in my current areas (but I have been trained only in C++). I need to write a paralell version of this algorithm (which I also have been trained in), but would like to get an efficient C serial version first. Can anyone help me out? I don't need the whole block below to understand whats going on, I am just really unclear on C syntax with multidimensional matricies (the whole block was posted for clarity). As a note, the block is only for forward-tracking in the algorithm ... I can write the back-substitution from any help you can give me on this current pseudocode block. Thanks in advance.
Code:
// Read n from command line - function output arguements
// A is of size n by n
procedure GAUSSIAN_ELIMINATION()
begin
GET A, b FROM GIVEN FUNCTIONS
// Forward tracking
for k := 0 to n-1 do
begin
for j := k+1 to n-1 do
begin
A[k,j] := A[k,j]/A[k,k];
endfor;
b[k] := b[k]/A[k,k];
A[k,k] := 1;
for i := k+1 to n-1 do
begin
for j := k+1 to n-1 do
begin
A[i,j] := A[i,j] - A[i,k] * A[k,j];
endfor;
b[i] := b[i] - A[i,k] * b[k];
A[i, k] := 0;
endfor;
endfor;