Commit 476a1e0f authored by Gaurav Kukreja's avatar Gaurav Kukreja

Swapped Pointers for u and uhelp after iteration

Copying of matrix uhelp to u each time is avoided, by swapping pointers.
Signed-off-by: 's avatarGaurav Kukreja <mailme.gaurav@gmail.com>
parent dea4cf6b
......@@ -26,6 +26,8 @@ int main( int argc, char *argv[] )
FILE *infile, *resfile;
char *resfilename;
double *tmp;
// algorithmic parameters
algoparam_t param;
int np;
......@@ -115,6 +117,9 @@ int main( int argc, char *argv[] )
case 0: // JACOBI
relax_jacobi(param.u, param.uhelp, np, np);
tmp = param.u;
param.u = param.uhelp;
param.uhelp = tmp;
residual = residual_jacobi( param.u, np, np);
break;
......
......@@ -58,6 +58,7 @@ int initialize( algoparam_t *param )
(param->heatsrcs[i].range-dist) /
param->heatsrcs[i].range *
param->heatsrcs[i].temp;
(param->uhelp)[j] = (param->u)[j];
}
}
......@@ -74,6 +75,7 @@ int initialize( algoparam_t *param )
(param->heatsrcs[i].range-dist) /
param->heatsrcs[i].range *
param->heatsrcs[i].temp;
(param->uhelp)[(np-1)*np+j] = (param->u)[(np-1)*np+j];
}
}
......@@ -90,6 +92,7 @@ int initialize( algoparam_t *param )
(param->heatsrcs[i].range-dist) /
param->heatsrcs[i].range *
param->heatsrcs[i].temp;
(param->uhelp)[ j*np ] = (param->u)[ j*np ];
}
}
......@@ -106,6 +109,7 @@ int initialize( algoparam_t *param )
(param->heatsrcs[i].range-dist) /
param->heatsrcs[i].range *
param->heatsrcs[i].temp;
(param->uhelp)[ j*np+(np-1) ] = (param->u)[ j*np+(np-1) ];
}
}
}
......
......@@ -53,14 +53,4 @@ void relax_jacobi( double *u, double *utmp,
u[ (i+1)*sizex + j ]); // bottom
}
}
// copy from utmp to u
for( i=1; i<sizey-1; i++ )
{
for( j=1; j<sizex-1; j++ )
{
u[ i*sizex+j ] = utmp[ i*sizex+j ];
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment