2920 Commits

Author SHA1 Message Date
Grzegorz Kowal
4ed091a899 Clean up a couple of lines. 2008-12-06 23:54:19 -06:00
Grzegorz Kowal
937f96aee2 The initial refinement completed.
I've added 'Z' configuration of the refined block, completed 'N', 'C',
'D', and 'U' configurations. Implemented pointers to the neighbors
correctly. Finally, I've implemented correct initial geometry
generation, by selection of the blocks to refine, their neightbors if of
the lower level, and finally performing the actual refinement.
2008-12-06 20:11:36 -06:00
Grzegorz Kowal
6abf81e77e Add neighbors pointers.
Neighbors pointers allow for quick access to the neighbors. It means
that we don't need to waste CPU time for searching neighbors by IDs.
2008-12-05 15:13:16 -06:00
Grzegorz Kowal
ae7b169f7a Problem initialization for refined blocks implemented.
Now, after refining a block, an initialization of children blocks is
performed, as well as the refinement checking.
2008-12-05 14:43:43 -06:00
Grzegorz Kowal
12bbf872c8 Reset the refinement flag while allocating a block. 2008-12-05 14:24:01 -06:00
Grzegorz Kowal
8c9877094f Set refinement level of refined blocks. 2008-12-05 14:22:02 -06:00
Grzegorz Kowal
603092368f Remove commented out junk. 2008-12-05 14:19:23 -06:00
Grzegorz Kowal
1cd5504a5a Use pointer array to specify children.
Usage of IDs to find children requires additional work, i.e. looking
through all blocks and comparing their IDs. Instead of IDs we use an
array of pointer for instantenous selection of children.
2008-12-05 14:13:21 -06:00
Grzegorz Kowal
00690ce344 Block refinement implemented.
Subroutine to refine a selected block has been implemented. This
subroutine creates 4 new blocks, and inserts them before the parent
block. It fills all block arguments like parent, neighbors, leaf flags,
bounds, next and previous pointers, etc.
2008-12-05 14:04:12 -06:00
Grzegorz Kowal
5187f4942d We can write some of the block attributes now.
I've implemented storing some of the block attributes in HDF5 files. I
shall complete this by writing down neighbors and children. Then I shall
implement storing data arrays.
2008-12-03 23:36:07 -06:00
Grzegorz Kowal
71625fd0bb Add more 'to-do' in io.F90. 2008-11-30 13:50:13 -06:00
Grzegorz Kowal
cd209ba785 Added a new module to handle the data input/output.
Initial implementation of subroutine 'write_data' to store all data.
This subroutine initially will support only HDF5 file format. The
block structure of the file is not decided yet.
2008-11-29 22:22:19 -06:00
Grzegorz Kowal
301619e296 Added a subroutine to check refinement criterion.
A new subroutine 'check_ref' to check the refinement criterion has been
added. I've added also a structure of the initial refinement of the
mesh.
2008-11-29 22:19:02 -06:00
Grzegorz Kowal
532cdf7b7e Generation of the initial mesh and problem setup.
Implemented the generation of initial blocks in N-configuration with
proper ataching to the list, pointer, neighbors and bounds
initialization, as well as the initial problem setup. Two new files has
been added: mesh.F90 - hadling the adaptive mesh structure, and
problem.F90 - handling the problem initialization.
2008-11-11 16:12:26 -06:00
Grzegorz Kowal
5c2d0c00c9 New subroutines to allocate/deallocate a block.
The new subroutines take care of allocating and deallocating the space
for one block. Allocation uses dimensions provided by configuration
file. The block dimensions and number of ghost cells have been added to
config.F90 as well.
2008-11-07 00:10:09 -06:00
Grzegorz Kowal
6b4c4693d7 Added parameters for the number of initial blocks.
The parameters iblocks, jblocks, and kblocks specify the number of
initial blocks along each direction. This creates the base domain for
further refinement.
2008-11-05 22:33:04 -06:00
Grzegorz Kowal
750fe27334 Added initial versions of config and error modules.
Config module takes care of the configuration file 'config.in'. It
reads the file line by line, parsing each line and extracting the name
and value of parameter. Then it substitutes the parameter with a new
value.

Error module handles error, warning and informative messages. So far it
only prints information on the screen.

There is some improvments for comments formating as well.
2008-11-05 22:16:24 -06:00
Grzegorz Kowal
46c6605a3e Add initialization of fields for the first created block.
Initialization of fields like id, level, parent, children, neighbors for
the first created block has been added.
2008-11-05 21:07:03 -06:00
Grzegorz Kowal
847009aafb Initial implementation of block structure.
Block structure has been implemented. Blocks contain pointers to the next
and previous blocks. This easily allows to create block lists. Two
functions are implemented, one for creating initial structure of blocks
with lists, and the second for destroying all blocks from the list.

File 'blocks.F90' has been added to makefile too.
2008-11-04 21:00:50 -06:00
Grzegorz Kowal
e6ae8fd2b0 Initial commit of Godunov-AMR code.
Initial commit includes driver, make system files, license and default
host configurations.
2008-11-04 13:08:01 -06:00