Added GridSetPeriodic to driver.

This commit is contained in:
falgout 2001-02-09 07:48:41 +00:00
parent d548158cf3
commit e0fffb865b
3 changed files with 15 additions and 0 deletions

View File

@ -26,6 +26,8 @@ GridSetVariables: 1 2 [0 1]
# nbor_part nbor_ilower(ndim) nbor_iupper(ndim) \
# index_map[ndim]
# GridSetPeriodic: part periodic[ndim]
###########################################################
# StencilCreate: nstencils sizes[nstencils]

View File

@ -26,6 +26,8 @@ GridSetVariables: 1 2 [0 1]
# nbor_part nbor_ilower(ndim) nbor_iupper(ndim) \
# index_map[ndim]
# GridSetPeriodic: part periodic[ndim]
###########################################################
# StencilCreate: nstencils sizes[nstencils]

View File

@ -76,6 +76,8 @@ typedef struct
int *matrix_entries;
double *matrix_values;
Index periodic;
} ProblemPartData;
typedef struct
@ -312,6 +314,13 @@ ReadData( char *filename,
printf("GridSetNeighborBox not yet implemented!\n");
exit(1);
}
else if ( strcmp(key, "GridSetPeriodic:") == 0 )
{
part = strtol(sdata_ptr, &sdata_ptr, 10);
pdata = data.pdata[part];
SScanIntArray(sdata_ptr, &sdata_ptr, data.ndim, pdata.periodic);
data.pdata[part] = pdata;
}
else if ( strcmp(key, "StencilCreate:") == 0 )
{
data.nstencils = strtol(sdata_ptr, &sdata_ptr, 10);
@ -1315,6 +1324,8 @@ main( int argc,
/* GridAddVariabes */
/* GridSetNeighborBox */
HYPRE_SStructGridSetPeriodic(grid, part, pdata.periodic);
}
HYPRE_SStructGridAssemble(grid);