Compare commits

..

804 Commits

Author SHA1 Message Date
gsell ecb23b66dd libH5hutC.a added to ignore list 2011-04-07 11:05:22 +00:00
gsell 64de405353 libH5hut.a added to ignore list 2011-04-07 11:04:45 +00:00
gsell 0cce74dadb H5PartTest.cc adapted to H5hut API 2 2011-04-01 14:33:07 +00:00
gsell aa3462472d added include of stdarg.h 2011-04-01 14:29:43 +00:00
gsell af3601d2d9 test/H5Part/Makefile added to AC_CONFIG_FILES() 2011-04-01 14:27:56 +00:00
gsell 407bbe4d0c implementation of attachments continued 2011-03-31 15:30:16 +00:00
gsell 6661eca765 added extern "C" wrapper for C++ 2011-03-25 14:53:31 +00:00
gsell 1000240374 work in progress 2011-03-25 14:51:46 +00:00
gsell cea4a22f9b fixed warnings 2011-03-25 14:49:46 +00:00
gsell e4e78f713c attachment implementation 2011-03-24 09:07:12 +00:00
gsell 4b0d303ceb - h5_attachments.c added 2011-03-11 16:12:17 +00:00
gsell 4d348dbe0d - function hdf5_get_dataset_info_by_name() added
- args of function hdf5_get_npoints_of_dataset_by_name() are now const
2011-03-11 16:11:23 +00:00
gsell 745e2229e7 use function hdf5_get_datasetinfo_by_idx() in h5u_get_dataset_info() 2011-03-11 15:29:29 +00:00
gsell b0c321dd54 - renamed functions:
h5_get_num_hdf5_groups() -> hdf5_get_num_groups()
  h5_get_num_hdf5_groups_matching_prefix() -> hdf5_get_num_groups_matching_prefix()
  h5_get_hdf5_groupname_by_idx() -> h5_get_hdf5_groupname_by_idx()
  h5_get_hdf5_groupname_by_idx() -> hdf5_get_num_datasets()
  h5_get_hdf5_datasetname_by_idx() -> hdf5_get_name_of_dataset_by_idx()
  h5_get_objname() -> hdf5_get_objname()
- added functions:
  hdf5_get_dataset_info_by_idx()
- changed args:
  h5_get_dataset_type(): file handle removed
2011-03-11 15:08:02 +00:00
gsell a8dd08c5bf - added functions: H5Block3d{G,S}etFieldOrigin(), H5Block3d{G,S}etSpacing() 2011-02-24 16:34:51 +00:00
gsell 427c550993 - fixes for Intel C on Linux 2011-02-24 09:59:15 +00:00
gsell d3c09a61b2 - removed "h5_file_t f" argument where we don't need need (but not in API)
- removed arguments from macros h5_error_internal() h5_error_not_implemented()
- some coding style issues fixed
2011-02-24 08:18:45 +00:00
gsell 7e93a7ab2f - improved debugging
- abort error handler now terminates all processes in MPI_COMM_WORLD
- some formating issues fixed
- some minor (cosmetic) changes
2011-02-18 10:33:44 +00:00
gsell 05772223f5 - use specific data types for local IDs and indices (instead of h5_id_t) 2011-02-03 10:51:28 +00:00
gsell 2bc7cc1024 - local IDs and indices are now 32bit (in the future it will be possible
to compile the library with 32bit or 64bit IDs/indices.
- bugfixes
2011-02-03 10:40:40 +00:00
gsell d0ce31c8c0 - more generic private functions added to attrib API 2011-02-03 09:17:05 +00:00
gsell ea09184d53 output entities as n-tuple of vertex indices, not their ID 2011-01-21 13:15:13 +00:00
gsell eb5c31e80f build of trimesh_adjacencies added 2011-01-21 10:33:01 +00:00
gsell 607c084ac4 added 2011-01-21 10:32:19 +00:00
gsell b9eed5630c - reference elements revisited (extensions, bugfixes...)
- adjacency computation reviewed, bug fixes
- some reformating and refactoring
2011-01-21 10:27:48 +00:00
gsell 212c9b86a1 label in macro H5_API_RETURN renamed 2011-01-21 10:23:36 +00:00
gsell f6eeeca9b0 label in macro H5_API_RETURN renamed 2011-01-21 10:21:37 +00:00
gsell 54aaf846e7 - hash functions reviewed and optimzed 2011-01-06 12:05:20 +00:00
gsell a6ef33d66c - label "exit" renamed to "done" (as in hdf5) 2011-01-06 12:04:03 +00:00
gsell 4fdfc6e4dc - add -std=c99 to CFLAGS if compiler is gcc
- bugfix in AIX test
2011-01-06 12:02:40 +00:00
gsell 27c19efe59 bugfixes 2011-01-04 08:32:14 +00:00
gsell 12a2c7ef27 ID-list structure changed 2011-01-03 14:48:05 +00:00
gsell 6b4a664546 hcompute_loc_id_keyed() optimized 2011-01-03 14:45:53 +00:00
gsell f59fd40b34 'h5priv_alloc_idlist_items()' renamed to 'alloc_idlist_items()' 2010-12-16 15:27:39 +00:00
gsell db5fd1b01e 'h5priv_free_idlist_items()' removed from priv core API 2010-12-16 15:24:35 +00:00
gsell 81b488a8d2 changed 'marked_entities' to ptr type 2010-12-16 15:16:20 +00:00
gsell d1f6efa8c0 - missing memory release for te and td structure implemented 2010-12-16 15:09:28 +00:00
gsell ec8258e902 'num_levels', 'cur_level' and related functions refactored to 'num_leaf_levels' etc 2010-12-16 14:25:15 +00:00
gsell cb35755cf5 - refactored 'num_elems_on_level' to 'num_elems_on_leaf_level'
- introduced new refinement level
2010-12-16 12:25:28 +00:00
gsell b8a7e0686d - introduced macros for enter and return from API functions
- iterators revisited
2010-12-16 10:37:33 +00:00
gsell 2c865deb88 refactor memory allocation function as public core functions 2010-12-15 14:12:53 +00:00
gsell 912b776b83 core iterator API refactored 2010-12-15 10:14:31 +00:00
gsell aec44637d7 trimesh_write_dunetest added 2010-12-14 10:35:51 +00:00
gsell 8d21236264 - boundary mesh iterators implemented
- #pragma replaced with macro
- several minor changes
2010-12-14 10:24:33 +00:00
Christian Engwer f5ace232e8 - export h5tpriv_find_te2 via h5core/h5t_adjacencies.h
- method is called h5t_find_te2
2010-12-10 08:40:08 +00:00
gsell edcdd4ce0f h5b_test added to ignore list 2010-11-12 08:29:04 +00:00
gsell bd993eadf2 - boundary facets iterator added 2010-11-12 08:25:51 +00:00
gsell 0de4641ec5 - introducing types for local and globale IDs and indices
- different structurs for local elements and stored elements in file
- interator for border facets added
2010-11-12 08:23:00 +00:00
Marc Howison 1dd75f48e6 fixed problems with compiling on my Mac 2010-11-08 01:56:45 +00:00
gsell 6dc020da64 - introduced types for local and global indices and ID's
- bugfixes
2010-10-18 16:12:41 +00:00
gsell b6a5823e23 - bug fixed in write_tagset(): wrong limit in for loop 2010-09-06 15:47:51 +00:00
gsell 441915f443 - Removed some parallel tests from serial code
- fix some warnings
2010-09-06 15:45:47 +00:00
gsell 031cd58999 bugfixes 2010-08-25 16:32:54 +00:00
gsell de20cdd032 bugfixes 2010-08-25 16:32:35 +00:00
gsell 6d0600febf - handling of imported env.vars revised 2010-08-20 15:55:55 +00:00
gsell c47c0cfc6e - neighbor information management added to elements
- prefix 'global' removed form global element struct
- global and local element data now have the same struct
- and several other changes
2010-08-20 15:54:01 +00:00
gsell 21ba443bcd - new adjacency API implemented
- some minor fixes
2010-08-20 15:47:40 +00:00
gsell d745498f3c - use of type h5_size_t in H5Block functions
- several fixes to get rid of warnings with icc -Wall
2010-08-20 15:46:28 +00:00
gsell e5aa8e5703 added install-libs-local target 2010-08-20 15:42:25 +00:00
gsell 77d5f4feb8 - type casts added to printf args
- changed to new adjacency API
2010-08-20 15:41:07 +00:00
gsell 982bf089ac lib added to ignore list 2010-07-29 11:33:42 +00:00
gsell 0137e7ac2a use 'idx' in element structure as global index for global elements and level idx for local elements. We don't need to save the level index for globale elements and it makes no sense to store the local index of a local element. 2010-07-29 11:33:29 +00:00
gsell b0bacdc6a7 function h5t_map_global_elem_indices2local() added 2010-07-29 11:19:00 +00:00
gsell 5da74b94df some entries added to ignore list 2010-07-29 11:15:28 +00:00
Marc Howison 6568099f62 fixed errors found by regression tests:
the H5Fed file data structure can't be created by >1 MPI task, so it is disabled in parallel mode (for now)
the H5Block3dSetHalo function was inverting the halo radii
the h5b_test wasn't writing the correct data in the halo case
2010-07-28 21:55:00 +00:00
Marc Howison 377af10fb0 tested out packaging a tarball and compiling/install on Franklin
fixed several issues with the build system
2010-07-24 00:10:41 +00:00
Marc Howison 421a92630a refactored Fortran interface to use h5core calls instead of C API calls 2010-07-22 20:32:52 +00:00
gsell b920c0f9e8 - level_idx removed from element structure
- mesh type specific read methods
2010-07-22 20:02:48 +00:00
Marc Howison a1a90c8af0 corrections for IASDS paper 2010-07-22 18:52:40 +00:00
gsell 4a20cd715e - neighborhood informations added to elements (to be continued)
- several name changes in struct h5t_fdata
- refactoring according changes in struct h5t_fdata
2010-07-22 14:43:17 +00:00
gsell 56b1be9ddb define sub-dirs for src/Makefile via configure 2010-07-22 14:36:41 +00:00
gsell 3e1d5fbff0 ignore-list edited 2010-07-22 14:29:39 +00:00
gsell ff4fbc0835 ignore-list edited 2010-07-22 14:28:53 +00:00
gsell 64585bfcc2 ignore-list edited 2010-07-22 14:27:48 +00:00
gsell fb78efc6fa ignore-list edited 2010-07-22 14:27:26 +00:00
gsell 0960b906a9 ignore-list edited 2010-07-22 14:25:37 +00:00
gsell 1fd9ae1406 h5t_access_{tetm,trim}.c added to sources, h5t_XYZ_{tetm,trim}_private.h merged with h5t_XYZ_private.h 2010-07-22 12:53:14 +00:00
gsell 4ccd632e54 deleted 2010-07-22 12:39:07 +00:00
gsell 8c8de6e523 added 2010-07-22 12:06:06 +00:00
gsell b56c4246c9 reference element type renamed 2010-07-22 10:16:22 +00:00
Marc Howison 5f6808947a added h5hutcc wrapper
updated documentation
finished merging the Fortran interface and refactoring H5Block
started an H5Block regression test
2010-07-20 18:23:48 +00:00
Marc Howison 7ea00c38f8 Integrated H5Part regression test and fixed numerous errors that it discovered.
Finished integrating H5Block and the Fortran interface (untested).
Started adding an H5Block regression test with a few simple tests (all pass).
Added automatic detection of stripe information on lustre, and config option to compile against lustre API.
Moved buffers for H5Block ghost zone disolving out of the file handle and into the h5b_3d_set_view function.
Fixed bug with pointers in the H5Fed file data not being initialized to NULL.
2010-07-15 19:44:48 +00:00
Marc Howison 2c267f173a continued working on Fortran interface 2010-07-10 00:00:54 +00:00
Marc Howison 9f3fd3b053 continued merging H5Block: still some functionality missing (attribs, read, write); added H5Part regression tests; simplified several Makefile.am files and configure.ac; began merging new Fortran interface 2010-07-09 16:24:57 +00:00
gsell b2dbc55839 added 2010-07-08 10:09:06 +00:00
gsell 16738fdd6f fixed error in documentation 2010-07-08 10:08:29 +00:00
gsell 2a47df9875 removed obsolete H5PartSomeThing() declaration 2010-07-08 10:06:57 +00:00
gsell 77b1198151 h5_{s,g}et_debug_level() renamed to h5_{s,g}et_debuglevel() 2010-07-08 10:05:10 +00:00
gsell 362bb8d9a2 define ULLONG_MAX if not already defined 2010-07-06 15:17:44 +00:00
gsell c32853c3d4 h5priv_te_find() now return H5_NOK, if element not found 2010-07-02 11:54:39 +00:00
gsell 2f55e95381 typo fixed in call of H5Pset_fapl_mpiposix() 2010-07-02 08:25:13 +00:00
gsell 7a977e3cd1 leading underscore removed from static functions 2010-07-01 13:11:12 +00:00
gsell aaf37f791f typo in call of h5_get_debug_level() fixed 2010-07-01 13:01:02 +00:00
gsell fb557952e9 some type-cast added to fix Intel C warnings 2010-07-01 13:00:07 +00:00
Marc Howison e06dc187c7 added const to pass-by-value function parameters; worked more to attributes API 2010-06-29 15:27:25 +00:00
Marc Howison fa806cf273 forgot to add a file 2010-06-26 17:31:45 +00:00
Marc Howison 8783ac2cf2 first part of LBL merge: h5core and H5Part 2010-06-26 17:29:37 +00:00
gsell 6ea921eba4 - append Float64 to H5Block read/write function
- function H5Block3dReadScalarField() removed
- forgoten refactoring of h5priv_mpi_allgather() fixed
2010-06-24 13:45:53 +00:00
gsell 6ab3025c9f define ERR_XYZ as macro 2010-06-24 13:42:18 +00:00
gsell d76db8511c 2010-06-24 13:38:02 +00:00
gsell 0c5dd6cff3 more binaries added to ignore list 2010-06-24 13:36:23 +00:00
gsell c313f3da2a refactoring of H5hut types 2010-06-24 13:35:24 +00:00
gsell ff5aaf08a5 more binaries added to ignore list 2010-06-24 13:34:05 +00:00
gsell 04d8d30ed0 refactoring of H5hut types 2010-06-24 13:33:16 +00:00
gsell 06caa6dcb1 2010-06-10 21:00:25 +00:00
gsell 816b81a1c1 2010-06-10 15:46:08 +00:00
gsell 3a87865fc3 rename several variables, functions and struct members to make clear that deal with indices and not IDs 2010-05-28 15:55:39 +00:00
gsell 15455ad905 several files renamed to more consistent names 2010-05-28 14:23:57 +00:00
gsell 2f30c9fcb8 - update of internal data structures reviewed 2010-05-28 14:09:08 +00:00
gsell cb37690b83 renamed 'h5t_open_level()' to 'h5t_set_level()' 2010-05-28 09:43:00 +00:00
gsell 93c43c7cdd renamed 'h5t_open_level()' to 'h5t_set_level()' 2010-05-28 09:42:52 +00:00
gsell 47a7bab09f adapted to coding style 2010-05-28 09:39:31 +00:00
gsell 052041715d renamed 'rebuild_internal_structs()' to 'update_internal_structs()' 2010-05-28 09:12:40 +00:00
gsell d526ebb484 underscore prefix removed from static functions 2010-05-28 07:50:07 +00:00
gsell 22e45ec997 adapted to coding style 2010-05-28 07:43:38 +00:00
gsell 27763974e1 type fixed 2010-05-27 14:07:37 +00:00
gsell 6a9398ed19 adapted to coding style 2010-05-27 14:06:09 +00:00
gsell 2755e69636 adapted to coding style 2010-05-27 14:05:45 +00:00
gsell 010a605a3b removed, replacement functions are in h5_hdf5.c 2010-05-27 13:40:46 +00:00
gsell 4e7eb421c1 - obsolete hdf5_xyz() functions replaced 2010-05-27 13:40:02 +00:00
gsell 45637df399 - obsolete hdf5_xyz() functions replaced
- adapted to coding style
2010-05-27 13:38:57 +00:00
gsell f8f1590df8 adapted to coding style 2010-05-27 13:27:30 +00:00
gsell d3dc68d045 adapted to coding style 2010-05-27 13:26:51 +00:00
gsell 0ce6476aa6 adapted to coding style 2010-05-27 13:26:33 +00:00
gsell bd4908eeba adapted to coding style 2010-05-27 13:26:22 +00:00
gsell 01c729b290 adapted to coding style 2010-05-27 13:25:30 +00:00
gsell 7d91ce9b73 adapted to coding style 2010-05-27 13:25:05 +00:00
gsell 10f406da47 adapted to coding style 2010-05-27 13:24:37 +00:00
gsell e32b897b7a adapted to coding style 2010-05-27 13:23:40 +00:00
gsell e1767b3189 adapted to coding style 2010-05-27 13:15:30 +00:00
gsell eed6021c71 adapted to coding style 2010-05-27 13:14:40 +00:00
gsell eef07ed9ea adapted to coding style 2010-05-27 13:14:18 +00:00
gsell ff91c08950 adapted to coding style 2010-05-27 13:13:50 +00:00
gsell 3d2a804c63 adapted to coding style 2010-05-27 13:13:37 +00:00
gsell 3d1569ab01 adapted to coding style 2010-05-27 13:12:20 +00:00
gsell d084b153d8 adapted to coding style 2010-05-27 13:11:44 +00:00
gsell c1137a6e32 adapted to coding style 2010-05-27 13:10:43 +00:00
gsell 6db56d9f5b cleanup #include's 2010-05-21 13:04:58 +00:00
gsell 5d94a6ccd8 adapted to coding style 2010-05-21 11:59:11 +00:00
gsell 7e6e819ad9 - DUNE-style refinement implemented 2010-05-21 10:14:42 +00:00
gsell 4243deb2c4 ignore list edited 2010-05-19 07:37:35 +00:00
gsell 493ca7ab49 - use abort error handler
- polishing
- adapted to coding style
2010-05-19 07:35:02 +00:00
gsell 5ce0374892 h5t_close_mesh() is a public API function now 2010-05-19 07:31:45 +00:00
gsell 6bdf9d2117 h5t_openclose_private.h added to EXTRA_HEADERS 2010-05-19 07:30:44 +00:00
gsell 7010c7b864 declaration of private open/close function moved to this file 2010-05-19 07:29:34 +00:00
gsell c6cd77b523 - files added
- implement traversal function with iterators
2010-05-12 20:32:49 +00:00
gsell 538b0989eb - iterators implemented/debugged
- traversal functions with iterators debugged for triangle meshes
2010-05-12 19:51:57 +00:00
gsell 1c41ca12ce update ignore prop 2010-05-06 11:50:35 +00:00
gsell 0edf356fb4 - Use new travere/iterate functions
- Use new H5FedGetVertexIndicesOfXXX() functions
2010-05-06 11:49:38 +00:00
gsell bbc480fc80 - trimesh_read/_write added to Makefile.am 2010-05-06 11:47:56 +00:00
gsell f9111871fe - H5Fed_map.[ch] removed 2010-05-06 11:45:17 +00:00
gsell dda3cb98a4 - H5FedGetVertexIndicesOfEntity() added
- H5FedLMapXXX() renamed to H5FedGetVertexIndicesOfXXX
- function in H5Fed_map.c moved to H5Fed_retrieve.c
2010-05-06 11:42:13 +00:00
gsell 339c8b95db update ignore prop 2010-05-03 13:21:53 +00:00
gsell bde5ef3624 - adapted to new iterate/traverse functions 2010-05-03 13:19:37 +00:00
gsell 8a5afeae31 - argument types for partition definition changed from 'h5_int64_t' to 'h5_size_t' 2010-05-03 13:18:42 +00:00
gsell 24565cab22 - '--enable-64' removed
- bug in CFLAGS handling fixed
2010-05-03 13:16:30 +00:00
gsell c2539b6120 fixed wrong #include for reference elements 2010-05-03 07:27:38 +00:00
gsell e013cc9c31 - traverse function replaced with iterator functions 2010-05-02 21:25:22 +00:00
gsell fa2fdf2640 - rename h5t_get_local_vids_of_xxx() to h5t_get_vertex_indices_of_xxx() 2010-05-02 21:24:41 +00:00
gsell d8ba18d662 H5Fed_retrieve.c added 2010-05-02 21:23:14 +00:00
gsell 920a661d37 - traverse function replaced with iterator functions 2010-05-02 21:22:16 +00:00
gsell c72e04b302 added 2010-05-02 21:21:20 +00:00
gsell c9a9ebfc96 - h5t_get_vertex_indices_of_entity() added
- specific function declaration revised
2010-05-02 21:20:22 +00:00
gsell b0c436cb14 - typo in include of stdarg.h fixed
- H5_OID_MAX add to enum h5_oid
2010-05-02 21:18:00 +00:00
gsell dd21d78ce4 - definition of h5tpriv_get_face_id() renamed to h5tpriv_get_face_idx() 2010-05-02 21:16:41 +00:00
gsell 5c9a6fe9c2 - traverse function replaced with iterator functions 2010-05-02 21:16:06 +00:00
gsell 20e3399294 - definition of h5_error_not_implemented() and h5_error_internal() moved from private header 2010-05-02 21:14:53 +00:00
gsell 2375429556 reference elemets introduced 2010-05-02 21:12:57 +00:00
gsell 39df27c36a - traverse function replaced with iterator functions 2010-05-02 21:09:42 +00:00
gsell 5e8147a575 - change function name: h5tpriv_get_face_id() -> h5tpriv_get_face_idx() 2010-05-02 21:08:43 +00:00
gsell 60a67092ae - use reference element to determine number of vertices
- return an internal error if buffer to small
2010-05-02 21:07:12 +00:00
gsell 061778a800 - adaptions to changed h5t_find/search_xxx() functions
- use of reference elements where reasonable
2010-05-02 21:04:18 +00:00
gsell cdaf8ce6c9 - traverse function replaced with new iterator functions 2010-05-02 21:01:08 +00:00
gsell a35b845a80 - type of return argument changed to h5_idlist_t in h5t_find/search_xxx functions
- h5tpriv_get_face_id() renamed to h5tpriv_get_face_idx()
- face_id renamed to face_idx
2010-05-02 20:59:44 +00:00
gsell 4005b30e8e get number of vertices from reference element 2010-05-02 20:53:16 +00:00
gsell 88e146442c bugfix in function h5priv_hresize(), some comments added 2010-05-02 20:52:08 +00:00
gsell 612bc12796 definition of struct h5t_entity_iterator moved to other header file, build-in iterators removed, ptr to reference element added to struct h5t_fdata 2010-05-02 20:49:00 +00:00
gsell 8960d5c365 definition of h5_error_not_implemented() and h5_error_internal() to public header file 2010-05-02 20:45:52 +00:00
gsell 8a3840baae change return type of result to h5_id_list in h5t_find_xxx and h5t_search_xxx , use face_idx and elem_idx for face and element indices 2010-05-02 20:44:17 +00:00
gsell e44c3b5857 change return type of result to h5_id_list in h5t_find_xxx and h5t_search_xxx , use face_idx and elem_idx for face and element indices 2010-05-02 20:42:02 +00:00
gsell 55d81d3afa include of stdargs.h added 2010-04-28 15:35:15 +00:00
gsell c02c5f3666 prepended underscore removed from static function names 2010-04-23 09:13:59 +00:00
gsell 9be719e66d @H5P_LIB_LOC@ replaced with ${abs_top_builddir} 2010-04-22 15:38:48 +00:00
gsell a7e4cacd3c H5P_LIB_LOC removed, H5PartTest removed from TPTARGET if not parallel 2010-04-22 15:37:34 +00:00
gsell be01b8fa82 update ignore prop 2010-04-22 15:36:11 +00:00
gsell ab139ea9dc update ignore prop 2010-04-22 15:35:13 +00:00
gsell 46202cf1c3 @H5P_LIB_LOC@ replaced with ${abs_top_builddir} 2010-04-22 15:34:13 +00:00
gsell 2bfcfcac51 update ignore prop 2010-04-22 15:33:20 +00:00
gsell ecc22ea489 @H5P_LIB_LOC@ replaced with ${abs_top_builddir}, libstdc++ added to target H5test 2010-04-22 15:32:35 +00:00
gsell 5168a7ea04 change 'all' rule to build library in ../lib 2010-04-22 14:48:10 +00:00
gsell f2d3a7bbaa add 'all' rule to copy library to ../lib 2010-04-22 14:42:36 +00:00
gsell 3875c7c7ff Makefile.am for src dir added 2010-04-22 14:12:18 +00:00
gsell 239b2b632f update ignore prop 2010-04-22 14:09:37 +00:00
gsell dc3df38658 move license/copyright to file COPYING 2010-04-22 14:07:03 +00:00
gsell 5e9d7f56c1 update ignore prop 2010-04-22 14:01:52 +00:00
gsell 9b0c49ca52 path adapted 2010-04-22 14:00:56 +00:00
gsell 08fe1e8dfc update ignore prop 2010-04-22 13:59:13 +00:00
gsell f7ca3bdac5 path adapted 2010-04-22 13:58:17 +00:00
gsell bf5d529160 moved 2010-04-22 13:17:47 +00:00
gsell 63287b8fb6 header file renamed 2010-04-22 13:15:00 +00:00
gsell 6c9b34c9d5 update ignore prop 2010-04-22 12:08:27 +00:00
gsell 149f50628c rename h5_core to h5core 2010-04-22 12:07:19 +00:00
gsell f61185ddc4 public header files moved to ../include 2010-04-22 11:50:41 +00:00
gsell d24ae27e47 public header files moved to ../include/h5core 2010-04-22 11:49:38 +00:00
gsell 17426706fc paths adapted 2010-04-22 11:48:59 +00:00
gsell 0399e82580 moved 2010-04-22 11:47:17 +00:00
gsell 3b587676ef moved 2010-04-22 11:47:04 +00:00
gsell 7db65fab6e reorganize language bindings 2010-04-22 11:07:35 +00:00
gsell 50ba923191 reorganize language bindings 2010-04-22 11:06:39 +00:00
gsell 33f6fca514 reorganize language bindings 2010-04-22 11:04:59 +00:00
gsell 2a0211cb19 update ignore prop 2010-04-22 11:01:26 +00:00
gsell aa2c42a56b update ignore prop 2010-04-22 10:59:38 +00:00
gsell e3212420b4 update ignore prop 2010-04-22 10:59:01 +00:00
gsell 96683751bc update ignore prop 2010-04-22 10:58:05 +00:00
gsell 9df74f2f6a update ignore prop 2010-04-22 10:57:27 +00:00
gsell 7164fd6479 added 2010-04-22 10:56:47 +00:00
gsell a13e413fa5 rename Graphs to Examples 2010-04-22 10:55:19 +00:00
gsell b454e1fd93 rename Graphs to Examples 2010-04-22 10:51:51 +00:00
gsell 7062737caf update ignore prop 2010-04-22 10:42:13 +00:00
gsell b754c790a2 update ignore prop 2010-04-22 10:36:23 +00:00
gsell ea79d93e63 update ignore prop 2010-04-22 10:34:30 +00:00
gsell 1607ada0b7 files removed 2010-04-15 16:07:11 +00:00
gsell f027b16757 2010-04-15 16:06:07 +00:00
gsell 2bb4d67749 files added 2010-04-15 16:05:34 +00:00
gsell d2b696959c files removed 2010-04-15 16:05:16 +00:00
gsell 462fb26ba4 2010-04-15 16:00:41 +00:00
gsell 4cb0c1bcfe 2010-01-22 15:00:25 +00:00
gsell e833b1fd16 2009-12-08 00:03:44 +00:00
gsell 6e9cfa47e1 mesh examples added 2009-12-04 16:28:11 +00:00
gsell ce9205c368 tetmesh_write2.c added 2009-11-13 21:52:57 +00:00
gsell 5584086e40 tag test added 2009-11-13 21:51:38 +00:00
gsell 65186f2186 tag implementation, bugfixes ... 2009-11-13 21:50:38 +00:00
gsell 5eb841ecdf tag implementation, bugfixes ... 2009-11-13 21:48:01 +00:00
gsell 57a9c11948 tag implementation, bugfixes ... 2009-11-13 21:46:53 +00:00
gsell 22a1fa33eb tag implementation, bugfixes ... 2009-11-13 21:46:15 +00:00
gsell c4961753a9 Adapted to new API 2009-08-14 13:20:49 +00:00
gsell 75fcb2f68f Adapted to new API 2009-08-14 13:20:16 +00:00
gsell ee0f09de43 Some type cast warning fixed 2009-08-14 13:18:57 +00:00
gsell 9f189e7146 2009-08-14 13:18:04 +00:00
gsell 2ec6aad172 See H5Fed_inquiry.c 2009-08-14 13:15:45 +00:00
gsell 7e39956a36 - Query current level only
- Documentation updated
2009-08-14 13:15:08 +00:00
gsell 1665bc9703 H5FedStoreBoundaryfaceGlobalID() removed 2009-08-14 13:13:13 +00:00
gsell 3eac0d6264 see H5Fed_retrieve.c 2009-08-14 13:12:23 +00:00
gsell 3e4028de84 some type cast warning fixed 2009-08-14 13:10:18 +00:00
gsell 0cb95e9683 - Function for traversing elements now returns local ID and local vertex IDs only
- Function for traversing vertices returns local ID and coordinates only
- Doxygen documentation updated
2009-08-14 13:08:52 +00:00
gsell 4f78beabde added 2009-08-14 13:04:39 +00:00
gsell 0228c69cfa - refactored variable names local_ prefix removed in some files
- test existence of vertices while refining via adjecencies
2009-08-14 13:03:48 +00:00
gsell e047595885 set error handler to abort programm and removed all error checks 2009-07-27 15:17:51 +00:00
gsell 12722cebaf set error handler to abort programm and removed all error checks 2009-07-27 15:17:22 +00:00
gsell 0b9dcea258 set error handler to abort programm and removed all error checks 2009-07-27 15:16:30 +00:00
gsell 05061e09ae fixed empty line follows backslash warning 2009-07-27 15:15:08 +00:00
gsell da80c1736d binary tree replaced with hash-tables and several fixes 2009-07-27 15:12:34 +00:00
gsell 92a24b8890 bugfixes in start traverse functions 2009-07-16 08:42:53 +00:00
gsell 5b45cbce7a bugfixes in pointer calculation 2009-07-16 08:41:44 +00:00
gsell a65496cea3 include for hash search functions added 2009-07-16 08:40:30 +00:00
gsell 92adaf3509 _h5_calloc added 2009-07-16 08:39:35 +00:00
gsell f70dce9acc hash funktions added 2009-07-16 08:38:09 +00:00
gsell a4036b7b5d formating fix 2009-07-16 08:36:49 +00:00
gsell e38e7d1c8e error handler added 2009-07-16 08:35:32 +00:00
gsell d0daec98fa renamed 2009-07-11 08:07:44 +00:00
gsell 38a9e2ee90 renamed 2009-07-11 08:06:50 +00:00
gsell 3978da3963 renamed 2009-07-11 08:05:59 +00:00
gsell f4ea22a702 write TWiki-friendly output 2009-07-11 08:05:24 +00:00
gsell f1239351eb some tests added 2009-07-11 08:03:31 +00:00
gsell 5485eb2661 write TWiki-friendly output 2009-07-11 08:02:27 +00:00
gsell 639d91ee4e renamed 2009-07-03 12:40:38 +00:00
gsell 8f98ff0165 print all up- and downward adjacencies 2009-07-01 19:18:54 +00:00
gsell b6f2894ddb - up- and downward adjacencies implemented 2009-07-01 19:17:38 +00:00
gsell 607894f565 - read everything while opening mesh
- upward and downward adjacencies added
2009-07-01 19:16:24 +00:00
gsell 35bbbfb1a9 added 2009-07-01 19:15:14 +00:00
gsell 91b0543866 edge traversing added 2009-06-12 23:56:07 +00:00
gsell b3187bed21 edge traversing added 2009-06-12 23:55:29 +00:00
gsell 584ff25f33 some API function has been renamed 2009-06-11 23:14:27 +00:00
gsell 17556cbfab added 2009-06-11 23:12:24 +00:00
gsell eccbfc5a42 added 2009-06-11 23:11:06 +00:00
gsell 255da882f7 bugfixes, implementation of adjacency functions 2009-06-11 23:10:11 +00:00
gsell 5bd0617f59 bugfixes, implementation of adjacency functions 2009-06-11 23:09:47 +00:00
gsell 48618f0028 removed 2009-06-08 22:54:25 +00:00
gsell bf9dbef0c9 adapted to changed API 2009-05-14 16:41:29 +00:00
gsell 6f8757a27d bugfixes 2009-05-14 16:40:16 +00:00
gsell 6b5d9181e4 adaptions to element structurs: insteed of storeing the refinement level we save the global id of the first child 2009-05-14 16:39:17 +00:00
gsell e40565f8f0 macros to (dis-)assemble edge and triangle ids added 2009-05-14 16:35:04 +00:00
gsell 12a7988abc use macro to extract element id 2009-05-14 16:33:46 +00:00
gsell 8442f85127 same basic functionality added 2009-05-14 16:28:53 +00:00
gsell e0221ae1b7 member "global_child_eid" added to hdf5 datatype 2009-05-14 16:27:43 +00:00
gsell 9012551834 bugfixes in traversing refined elements 2009-05-14 16:26:06 +00:00
gsell 526e4cfc10 bugfixes, use macro to extract element id from triangle/edge id 2009-05-14 16:24:41 +00:00
gsell bf851824a2 bugfixes in refinement 2009-05-14 16:22:56 +00:00
gsell 6a60e90a43 bugfix in H5FedRefineElem() 2009-05-14 16:20:25 +00:00
gsell 8c22590be2 API changes 2009-04-16 15:24:29 +00:00
gsell e206c259a5 API changes 2009-04-16 15:23:57 +00:00
gsell 533f2d083b added 2009-04-16 15:22:50 +00:00
gsell 90b075b911 2009-04-16 15:22:00 +00:00
gsell 035ef4655c added 2009-04-16 15:21:31 +00:00
gsell 6623cc38ad 2009-04-16 15:20:53 +00:00
gsell 6231364157 API adaptions 2009-03-26 16:34:50 +00:00
gsell 0d7a0c737e API adaptions 2009-03-26 16:34:25 +00:00
gsell 09923dba23 - Bugfixes
- API adaptions
2009-03-26 14:24:12 +00:00
gsell b831965df9 - bugfixes
- API adaptions
2009-03-26 14:23:33 +00:00
gsell b3e7f433ee Added 2009-03-26 14:22:39 +00:00
gsell 25de55c54b Removed 2009-03-26 14:22:00 +00:00
gsell 6a0e624969 Added 2009-03-26 14:20:54 +00:00
gsell 6401b94f60 Adapted to new API 2009-03-26 14:18:59 +00:00
gsell a82888c2e8 configure.ac:
- split var for test target TTARGET into TPTARGET, TBTARGET, ...
2009-03-13 15:29:03 +00:00
gsell f405045b13 - adapted to new API 2009-03-13 15:26:04 +00:00
gsell 8921386b9b - adapted to new API 2009-03-13 15:25:27 +00:00
gsell b1b9c2190d - adapt to new API 2009-03-13 15:24:50 +00:00
gsell dc631ce508 - changes for revised API
- bugfixes
- ...
2009-03-13 15:23:52 +00:00
gsell 2006e4d5ff - start implementing wrappers for HDF5 calls
- bugfixes
- ...
2009-03-13 15:22:50 +00:00
gsell 199a9a56c2 added 2009-01-30 15:07:01 +00:00
gsell c1cec7234b 2009-01-30 15:06:15 +00:00
gsell 4fe83456f6 - do not run doxygen as default target. 2009-01-30 15:05:16 +00:00
gsell 3d0f8bab99 - moved intro from C-source to H5.dox
- add some new input-files to Doxydoc
2009-01-30 15:03:27 +00:00
gsell d8eb90d620 - merge changes from 1.4 branch 2009-01-30 15:00:06 +00:00
gsell 253708eab7 - several API changes
- refactoring
- ... and more
2009-01-30 14:57:13 +00:00
gsell caeefd811d - several API changes
- refactoring
- ... and more
2009-01-30 14:56:01 +00:00
gsell 35280e88e0 added 2008-10-01 15:46:06 +00:00
gsell 14ef15cf83 refactoring 2008-10-01 15:43:55 +00:00
gsell 828388c065 2008-09-25 15:52:26 +00:00
gsell c263b1557b added 2008-09-25 15:51:32 +00:00
gsell 2680653214 2008-09-25 15:50:49 +00:00
gsell b22f280da0 2008-09-25 15:50:18 +00:00
gsell a1d62018ff 2008-09-25 15:49:08 +00:00
gsell cd7ffd24e4 added 2008-09-25 15:47:55 +00:00
gsell b737d2cb14 refactoring 2008-09-25 15:47:26 +00:00
gsell ae72438ae3 added 2008-09-25 15:46:39 +00:00
gsell 07e57ff23a refactoring 2008-09-25 15:43:24 +00:00
gsell 7959742667 renamed 2008-08-27 13:56:59 +00:00
gsell de5f7c29d6 h5_core/h5_general.c
- use function to get debug level
- use of H5_ERR_INIT insteed H5PART_ERR_INIT
- function to get/set error number
2008-08-27 13:56:41 +00:00
gsell 0011e28251 directory h5 renamed to h5_core 2008-08-27 10:06:46 +00:00
gsell f09c47a6b2 include of H5Fed_boundaries added 2008-08-27 10:04:33 +00:00
gsell c5eb850b01 new source files H5Fed_boundaries.[ch] added 2008-08-27 10:03:33 +00:00
gsell 7465764861 declaration of function H5FedMapTriangle2GlobalID() added 2008-08-27 10:02:36 +00:00
gsell 58549852a6 files renamed: h5 prefix added 2008-08-27 09:59:36 +00:00
gsell 5b381c8def added 2008-08-27 09:56:14 +00:00
gsell 3f9da8b2bd Mappings of vertices and triangles 2008-08-27 09:54:24 +00:00
gsell 16a6792af4 file renamed 2008-08-27 09:28:55 +00:00
gsell 1a2ee0adf6 definition of H5_TET_MASK fixed 2008-08-27 09:28:07 +00:00
gsell bceb2c6b35 test map_triangle2globalid added 2008-08-20 15:08:33 +00:00
gsell 90e53a6e52 use of obsolete macro fixed 2008-08-20 15:07:45 +00:00
gsell 66f0bf6e4e use of obsolete macro fixed 2008-08-20 15:07:28 +00:00
gsell 657aee3049 autotools generated file removed 2008-08-20 14:46:44 +00:00
gsell ba01c980ac added 2008-08-20 14:37:57 +00:00
gsell 6def843cc3 renamed 2008-08-20 14:37:30 +00:00
gsell c98053870f some tests renamed and more added 2008-08-20 14:36:46 +00:00
gsell 774d60f9bb added 2008-08-20 14:35:56 +00:00
gsell 0f34916a56 mapping of tets and triangles to global and local id added 2008-08-20 14:30:57 +00:00
gsell 4f37dbe55a added 2008-08-20 14:30:31 +00:00
gsell a390b30fcb mapping of tets and triangles to global and local id added 2008-08-20 14:29:26 +00:00
Benedikt Oswald fb891c3e80 Corrected wrong directory names in automake files. 2008-08-06 09:09:51 +00:00
gsell 8175442f6b C files renamed 2008-07-30 08:26:52 +00:00
gsell 54546b8e84 h5b renamed to H5Block 2008-07-30 08:20:40 +00:00
gsell 7400597342 h5u renamed to H5Part 2008-07-30 08:20:14 +00:00
gsell a2a36999c9 h5t renamed to H5Fed 2008-07-30 08:19:23 +00:00
gsell 9681dbf3b1 mappings and bookkeeping functions we need for boundary triangles 2008-07-17 14:01:20 +00:00
gsell 5f79e622fc triangle tests added 2008-07-02 14:27:35 +00:00
gsell bd01dcc24b refactoring 2008-07-02 14:26:24 +00:00
gsell 309cf36f38 refactoring 2008-07-02 14:25:50 +00:00
gsell 1b9fb3302d added 2008-07-02 14:24:38 +00:00
gsell f6d203f6a7 added 2008-07-02 14:23:30 +00:00
gsell 55b5b5e7cc added 2008-07-02 14:22:51 +00:00
gsell 1790c475da refactoring and triangle meshes 2008-07-02 14:21:21 +00:00
gsell 5729fa420f can be recreated by autogen.sh 2008-06-19 15:37:24 +00:00
gsell 83012629ac refactoring 2008-06-19 15:34:06 +00:00
gsell 2457075f32 refactoring 2008-06-19 15:34:00 +00:00
gsell ad4ab87b6e refactoring 2008-06-19 15:33:47 +00:00
gsell 0e4151ae1f refactoring 2008-06-19 15:33:02 +00:00
gsell b55e29398f refactoring 2008-06-19 15:32:43 +00:00
gsell 0547eb1817 refactoring 2008-06-19 15:28:44 +00:00
gsell d0f262e755 refactoring 2008-06-19 15:16:48 +00:00
gsell 7829615f32 refactoring 2008-06-19 15:15:58 +00:00
gsell 11b105bc82 refactoring 2008-06-19 15:13:34 +00:00
gsell b51290f270 refactoring 2008-06-19 15:12:02 +00:00
gsell d828fb0364 refactoring 2008-06-19 15:11:23 +00:00
gsell 3efd4d64a5 refactoring 2008-06-19 15:10:43 +00:00
gsell 1d1dfdb883 refactoring 2008-06-19 15:10:29 +00:00
gsell 44d30257a4 refactoring 2008-06-19 15:10:21 +00:00
gsell e21d2af4ec refactoring 2008-06-19 15:10:15 +00:00
gsell d407f58b7c refactoring 2008-06-19 15:10:08 +00:00
gsell a768784821 refactoring 2008-06-19 15:09:00 +00:00
gsell 2e0dde14c4 refactoring 2008-06-19 15:08:10 +00:00
gsell 6781800ede refactoring 2008-06-19 15:06:16 +00:00
gsell d19eb1469e refactoring 2008-06-19 15:06:10 +00:00
gsell 13fee62afd refactoring 2008-06-19 15:06:05 +00:00
gsell b0bad95604 refactoring 2008-06-19 15:05:48 +00:00
gsell 275d279f8d refactoring 2008-06-19 15:05:43 +00:00
gsell d00ea580cd refactoring 2008-06-19 15:04:36 +00:00
gsell 4072560858 refactoring 2008-06-19 15:04:28 +00:00
gsell dddb0f8c2b refactoring 2008-06-19 15:04:07 +00:00
gsell f671df975d refactoring 2008-06-19 15:03:44 +00:00
gsell caeac4ef8b refactoring 2008-06-19 15:03:15 +00:00
gsell d06bef0854 refactoring 2008-06-19 15:03:01 +00:00
gsell 12ae632ac4 added 2008-06-05 12:48:52 +00:00
gsell fd43fea24e removed 2008-06-05 12:45:24 +00:00
gsell 0f271a745f added 2008-03-19 11:36:30 +00:00
gsell 4d4b21aac3 read_vertices()
read_tets()
	- leave loop as soon as we have read the expected number of objects
2008-02-22 14:39:33 +00:00
gsell 136b1df93e several funcion renamed and param types changed, read logs for include
files for more details
2008-02-22 14:23:19 +00:00
gsell 702a2b0398 _read_data()
- step id from error handling removed
2008-02-22 14:13:13 +00:00
gsell 68529915b3 H5FedGetNumMeshes()
H5FedOpenMesh()
H5FedGetNumLevels()
H5FedSetLevel()
	- added
H5FedGetVertex()
H5FedGetTetrahedron()
	- param type changed
2008-02-22 13:56:49 +00:00
gsell 5d5e49cd83 _h5t_init_fdata()
* init t->num_meshes;
2008-02-22 13:53:13 +00:00
gsell d52258a68a H5U_read_elems()
- #ifdef INDEPENDENT_IO removed, pass xfer_prop in both cases
2008-02-22 13:51:37 +00:00
gsell 33e37380d2 H5t_open_mesh()
- renamed, was H5t_set_mesh
	- parm id isn't const any more
H5t_open_level()
	- renamed, was H5t_set_level
H5t_get_vertex()
	- parm P type changed
H5t_get_tet
	- parm vertex_ids type changed
2008-02-22 13:49:03 +00:00
gsell 8cee40b22a reading of vertices and tets added 2008-02-22 13:45:25 +00:00
gsell 88ec6fd6d0 H5_ERR_INTERNAL
- added
struct h5t_fdata
       - last_retrieved_vertex_id and last_retrieved_tet_id added
2008-02-22 13:44:02 +00:00
gsell 17b5cf1a47 HANDLE_H5_INTERNAL_ERR
- added
HANDLE_H5D_READ_ERR
	- do not print step id any more
2008-02-22 13:42:34 +00:00
gsell f50381096a rules to compile read_tet added 2008-02-22 13:39:42 +00:00
gsell d7230920ed added 2008-02-22 13:38:54 +00:00
gsell 3b1b2075a5 struct vertex
* global_id added
add_level()
	* use global vertex id defined in struct
main()
	* add error handling after calls to add_level)
2008-02-22 13:38:28 +00:00
Benedikt Oswald 37a9b877aa Added include files. 2008-02-20 14:19:29 +00:00
gsell 6888d0cd6f - empty line removed 2008-02-20 14:07:58 +00:00
gsell 446e5dfcd8 H5t_store_tet()
- some debug output added
2008-02-20 14:07:18 +00:00
gsell 77ca64df60 H5t_get_num_meshes()
H5t_get_num_meshes()
H5t_get_num_levels()
H5t_set_level()
	- added
H5t_store_tet()
	- output of error messages added
2008-02-20 14:04:59 +00:00
gsell 6684a3cdfc - declaration of new functions added 2008-02-20 13:48:55 +00:00
gsell 5426e8267e HANDLE_H5_UNDEF_MESH_ERR
HANDLE_H5_UNDEF_LEVEL_ERR
HANDLE_H5_OVERFLOW_ERR
HANDLE_H5_PARENT_ID_ERR
HANDLE_H5_OUT_OF_RANGE_ERR
	- macros added
2008-02-20 13:48:13 +00:00
gsell c6dc048f25 H5FedGetNumLevels()
- moved to H5Fed_storeretrieve.c
2008-02-20 13:46:16 +00:00
gsell 9eb059e1ec struct h5t_fdata
- num_meshes added
2008-02-20 13:42:41 +00:00
gsell 8df79f3ee4 H5FedGetNumLevels()
H5FedSetLevel()
H5FedGetNumMeshes()
H5FedSetMesh()	
	- added
2008-02-20 13:41:12 +00:00
gsell 64b9441aed H5FedGetNumVertices()
- call H5t_get_num_vertices()
H5FedGetVertex()
- call H5t_get_vertex()
H5FedGetNumTetrahedras()
- call H5t_get_num_tets()
H5FedGetTetrahedra()
- call H5t_get_tet()
2008-02-20 10:32:23 +00:00
gsell 11921ff04c - declaration of new functions added 2008-02-20 10:25:54 +00:00
gsell a83d527326 _write_data()
* write of dataset H5T_TETMESH_NUM_ELEMS_ON_LEVEL_DSNAME added
H5_add_level()
H5_store_tet()
	* handling of num_tets_on_level added
_read_vertices()
H5t_get_num_vertices()
H5t_get_vertex_ids()
H5t_get_vertex()
H5t_get_num_tets()
H5t_get_tet()
	* added
2008-02-20 10:24:48 +00:00
gsell 3c69548d96 - macro H5T_TETMESH_NUM_ELEMS_ON_LEVEL_DSNAME added 2008-02-20 10:18:18 +00:00
gsell e1055a5241 - num_tets_on_level added to struct h5t_fdata 2008-02-20 10:17:11 +00:00
gsell 449e7b9465 trunk/src/H5Block.c
trunk/src/H5Fed.c
trunk/src/H5Fed_storeretrieve.c
- include <stdarg.h> added
2008-02-18 14:40:12 +00:00
gsell bac53ee2d2 test/h5t/Makefile.am
test/h5u/Makefile.am
test/h5b/H5BlockTestAttributes.c
test/h5b/Makefile.am
src/H5Part.c
src/H5Block.c
src/H5Part.h
src/Makefile.am
src/h5/errorhandling.c
src/h5/h5_types.h
src/h5/attribs.c
src/h5/t_readwrite.c
src/h5/u_readwrite.c
src/h5/t_openclose.c
src/h5/h5_private.h
src/h5/readwrite.c
src/h5/openclose.c
src/h5/Makefile.am
- changes due to removed H5PartTypes.h, H5BlockTyes.h and H5PartPrivate.h
2008-02-18 14:33:30 +00:00
gsell a805b54aac removed 2008-02-18 14:03:25 +00:00
gsell 91100da0d7 removed 2008-02-18 14:01:16 +00:00
gsell d658271487 removed 2008-02-18 14:00:16 +00:00
gsell 056ad4e54f added 2008-02-18 13:55:48 +00:00
gsell 1be1123b9a - typo in value of include_HEADERS fixed 2008-02-18 13:54:51 +00:00
gsell 1cec74a0b4 _h5b_open_file()
- we cannot call H5_check_filehandle() here
H5_open_file()
- Output of info-message changed
2008-02-18 13:52:38 +00:00
gsell 1597d075fd H5_write_data()
- output info-message with group and dataset name we are writing to
2008-02-18 13:45:59 +00:00
gsell 361bdbedc6 - calls of HANDLE_H5S_CREATE_SIMPLE_ERR() adapted to new definition 2008-02-18 13:43:52 +00:00
gsell 96f5a0ec45 - error handling added 2008-02-18 13:42:17 +00:00
gsell 2ab830d4f1 - error handling added
- output of informational messages
2008-02-18 13:41:41 +00:00
gsell 08424772cf - HANDLE_H5S_CREATE_SIMPLE_ERR() output rank now 2008-02-18 13:40:23 +00:00
gsell 551113e4a8 - H5_get_objname() added
- some log-macros added
2008-02-18 13:36:16 +00:00
gsell 08cb0e3e55 H5_get_objname()
- added
2008-02-18 13:35:16 +00:00
gsell 7651bbf900 - SET_FNAME() added to all functions 2008-02-18 13:34:26 +00:00
gsell e3f0a69e9d - reduce verbosity level to 4 2008-02-18 13:32:05 +00:00
gsell ee593dd338 src/H5Fed.c
- includes fixed
2008-02-14 15:43:10 +00:00
gsell 1c7df2a598 H5Part.c
H5Block.c
h5/u_readwrite.c
h5/attribs.c
h5/t_openclose.c
h5/readwrite.c
h5/openclose.c
- includes fixed
2008-02-14 15:41:50 +00:00
gsell bd3b9fa4f6 src/h5/t_readwrite.h
- declaration of new functions added
2008-02-14 15:38:56 +00:00
gsell 693c9ff72b src/h5/h5_private.h
- include of "errorhandling_private.h" added
- macros "CHECK_FILEHANDLE", "CHECK_WRITABLE_MODE", "CHECK_READONLY_MODE" and
   "CHECK_TIMEGROUP" added
2008-02-14 15:37:42 +00:00
gsell 99274bbec9 src/h5/t_readwrite.c
- includes fixed
- H5t_add_level()
  H5t_add_num_vertices()
  H5t_store_vertex()
  H5t_add_num_tets()
  H5t_store_tet()
  * added
2008-02-14 15:35:17 +00:00
gsell f163070d47 src/h5/h5_types.h
- macro H5_ERR_NOT_IMPLEMENTED added
2008-02-14 15:32:59 +00:00
gsell 9c48120cd9 src/h5/errorhandling.h
- maro "H5_warn" added
- declaration of "H5_set_funcname()" fixed
2008-02-14 15:31:53 +00:00
gsell bf9993808a src/h5/errorhandling.c
- includes fixed
- use "h5" types insteed of obsolete "h5part" types
- H5_set_funcname()
  * fix definition of parameter "fname"
  * fix cast in assignment to "__funcname"
2008-02-14 15:30:11 +00:00
gsell 8c35cd1bdf src/Makefile.am
- "H5PartErrors.h" and "H5BlockErrors.h" removed from "include_HEADERS"
2008-02-14 15:26:29 +00:00
gsell 13c206ef1a src/H5Fed_storeretrieve.c
- include files fixed
- SET_FNAME(__func__) added to all (?) functions
- move real implementation to "h5/t_readwrite.c"
2008-02-14 15:24:44 +00:00
gsell 4ad70757eb removed 2008-02-14 14:57:27 +00:00
gsell 35888e637f src/H5PartErrors.h
- removed, content moved to "h5/errorhandling_private.h"
2008-02-14 13:44:58 +00:00
gsell 4be57b410a src/H5BlockErrors.h
- removed, content added to "h5/errorhandling_private.h"
2008-02-14 13:41:23 +00:00
gsell 7deb9dff22 src/h5/h5.h
- renamed, was "_h5.h"
2008-02-14 13:22:14 +00:00
gsell a972f67eba src/h5/_h5.h
- renamed, was "H5.h"
2008-02-14 13:21:36 +00:00
gsell 4f28118033 src/h5/H5.h
- include of "h5_private.h" removed
2008-02-14 13:20:31 +00:00
gsell 091e228da1 Makefile.am
src/Makefile.am
- clean/distclean errors fixed
2008-02-14 09:15:08 +00:00
gsell 78c4e01ee1 removed 2008-02-14 09:13:12 +00:00
gsell 7de54ba17e src/H5Fed.c
- includes fixed
2008-02-13 16:11:35 +00:00
gsell a26d761d20 src/H5Fed_storeretrieve.c
- includes fixed
2008-02-13 16:11:05 +00:00
gsell 0561fc835e test/h5u/H5PartTest.cc
- format type error fixed
2008-02-13 16:09:48 +00:00
gsell ece99021bd configure.ac
- adaptions to new hierarchy in test dir
2008-02-13 15:42:05 +00:00
gsell 48c68c5fa7 src/H5Fed.h
- several API changes
2008-02-13 15:40:29 +00:00
gsell 8a39409161 src/H5PartErrors.h
- output of step id removed
2008-02-13 15:38:49 +00:00
gsell b7cd8ff3b6 removed 2008-02-13 15:36:57 +00:00
gsell bde413ad6c removed 2008-02-13 15:35:47 +00:00
gsell 87a40d2a73 added 2008-02-13 15:34:53 +00:00
gsell baf9487e12 removed 2008-02-13 15:33:44 +00:00
gsell b421bd27dc src/h5/H5.h
- include of "t_openclose.h" added
2008-02-13 15:32:07 +00:00
gsell a79bfceef8 added 2008-02-13 15:29:29 +00:00
gsell 5f40ae0ba6 src/h5/readwrite.c
- error handling of dataset write errors: output of step-id removed
2008-02-13 15:24:56 +00:00
gsell 29f928c69a src/h5/openclose.h
- several declarations added
2008-02-13 15:22:56 +00:00
gsell d42a441130 src/h5/h5_types.h
src/h5/t_readwrite.c
src/h5/t_openclose.c
- mesh write functions implemented
2008-02-13 15:21:51 +00:00
gsell 926723962a src/h5/openclose.c
- minor fixes
2008-02-13 15:18:56 +00:00
gsell 0222405291 removed 2008-02-13 15:16:47 +00:00
gsell bc10ebd64e tests moved to subdirectories 2008-02-13 15:15:11 +00:00
gsell b1f4233cb7 added 2008-02-13 15:09:50 +00:00
gsell 7cc4d11c37 added 2008-02-13 15:09:44 +00:00
gsell 69b9b6bb4b added 2008-02-13 15:09:35 +00:00
gsell 1da909b862 added 2008-02-13 15:09:26 +00:00
gsell 39be999eb6 added 2008-02-13 15:09:13 +00:00
gsell 4541d58a9c added 2008-02-13 15:09:05 +00:00
gsell b6f16a7648 added 2008-02-13 15:08:57 +00:00
gsell 25ca447c5a added 2008-02-13 15:08:36 +00:00
gsell aef14e1392 test/h5u/H5test.cc
test/h5u/H5testF.f
test/h5u/H5PartTest.cc
test/h5u/H5ParallelTest.cc
test/h5b/H5BlockParTestScalarField.pbs
- moved
2008-02-06 11:08:52 +00:00
gsell 1c0148668f test/h5b/H5BlockTestAttributes.c
test/h5b/H5BlockTestAttributesF.f90
test/h5b/H5BlockParTestScalarField.c
test/h5b/H5BlockParTestScalarFieldF.f90
test/h5b/H5BlockDissolveGhosts.c
- moved
2008-02-06 11:06:17 +00:00
gsell e7288533d6 test/h5u/Bench.c
- moved
2008-02-06 11:03:03 +00:00
gsell 447d800a1c added 2008-02-06 10:59:51 +00:00
gsell ca8decaf45 est/H5BlockTestAttributes.c
- adaption to renamed elements in struct h5_file
src/H5PartErrors.h
src/H5BlockTypes.h
src/H5Part.h
src/H5Block.c
- refactoring
src/H5Fed.h
src/H5Fed_statistics.c
src/Makefile.am
src/H5BlockErrors.h
src/h5/h5_types.h
src/h5/attribs.c
src/h5/t_readwrite.c
src/h5/u_readwrite.c
src/h5/t_openclose.c
src/h5/H5.h
src/h5/readwrite.c
src/h5/openclose.c
src/h5/openclose.h
src/H5Fed.c
- H5Fed write vertices and tets
2008-01-25 19:30:41 +00:00
gsell e581c105d6 src/H5PartErrors.h
* adaptions to renamed members in "struct h5_file"
2008-01-20 11:11:08 +00:00
gsell fe82dbc905 src/H5Fed.c
* coding
2008-01-20 11:09:20 +00:00
gsell 1dc9bd1a4b src/H5Parth
* new macros for file access modes
2008-01-20 11:07:55 +00:00
gsell f1400efd79 src/H5Fed_store.c
* rudimental write functions for vertices and tets added
2008-01-20 11:05:27 +00:00
gsell ec530077a8 src/H5Part.c
* adaptions to renamed member in "struct h5_file"
2008-01-20 11:01:58 +00:00
gsell 3ad5991be5 src/h5/Makefile.am
* some C files added to library source
2008-01-20 11:00:27 +00:00
gsell 1caf5a3a04 src/h5/t_openclose.c
src/h5/t_readwrite.c
* added
2008-01-20 10:58:56 +00:00
gsell ee30cb6123 src/h5/openclose.c
* adaption to renamed members in "struct h5_file"
* several changes and additions for H5Fed
2008-01-20 10:57:19 +00:00
gsell 720674a15f src/h5/readwrite.c
* adaptions to renamed members in "struct h5_file"
* several changes/additions for H5Fed
2008-01-20 10:55:19 +00:00
gsell 89b62f0306 src/h5/u_readwrite.c
* adaption to renamed members in "struct h5_file"
2008-01-20 10:53:59 +00:00
gsell 53d6c0cf0a src/h5/h5_types.h
* several members in "struct h5_file" renamed
* structures for H5Fed added
2008-01-20 10:52:34 +00:00
gsell efa9c1cd84 src/H5Block.c
* adaption to renamed members in "struct h5_file"
2008-01-20 10:49:28 +00:00
gsell 6df181d0c7 src/H5BlockTypes.h
* struct h5b_fdata
  - "timestep" renamed to "step_idx"
2008-01-20 10:45:35 +00:00
gsell 9940630e2c src/H5Fed.h
- API changes
2008-01-20 10:42:51 +00:00
adelmann 08d7c7fddd Full blown autogen, configure bla etc. 2008-01-08 21:37:28 +00:00
adelmann 3d2b121cf2 clean up before commit configure like H5PartMerge 2008-01-08 20:18:50 +00:00
adelmann 16615a96ba Initial commit of Christof's H5PartMerge 2008-01-05 13:52:05 +00:00
gsell c356139f6b src/h5/h5_types.h
- definition of h5_file added
2007-12-21 19:08:18 +00:00
gsell e46df85671 src/H5PartTypes.h
- definition of h5_file moved to h5/h5_types.h
2007-12-21 19:07:25 +00:00
gsell e4ed2a1ae6 src/H5Fed_adjacency.c
src/H5Fed_dof.c
src/H5Fed_retrieve.c
src/H5Fed_statistics.c
src/H5Fed_store.c
src/H5Fed.c
	- added
2007-12-21 19:06:25 +00:00
gsell b27695d751 src/Makefile.am
- H5Fed files added
2007-12-21 19:03:14 +00:00
gsell 35c5969094 src/H5Fed.h
- some fixes (typo's  etc)
	- Doxygen doc moved to .c files
2007-12-21 19:02:21 +00:00
gsell c1ddd1e8fc src/H5Fed.c
- added
2007-12-21 16:16:10 +00:00
gsell 452b1fd471 src/h5/h5_types.h
- added
2007-12-21 16:15:05 +00:00
gsell f7b2471701 src/H5Fed.h
src/H5BlockTypes.h
src/H5Part.c
src/H5PartPrivate.h
src/H5Block.c
src/H5Part.h
src/h5/u_readwrite.h
src/h5/H5.h
src/h5/readwrite.c
src/h5/openclose.c
src/h5/attribs.c
src/h5/u_readwrite.c
src/h5/readwrite.h
src/h5/openclose.h
src/h5/attribs.h
src/bindings/Fortran/H5PartF.c
src/bindings/Fortran/H5BlockF.c
src/H5Block.h
src/H5PartTypes.h
	- refactoring
	  * struct H5PartFile -> struct h5_file
	  * struct H5BlockStruct -> struct h5b_fdata
2007-12-21 16:14:08 +00:00
gsell b5b66ebed1 src/bindings/C++/Makefile.am
- CFLAGS/Include definitions revised
2007-12-21 16:06:41 +00:00
Benedikt Oswald 4009cb3f15 Added first write routines to C++ API of H5FED. 2007-12-19 08:59:45 +00:00
Benedikt Oswald 16a481c4fa Added first write routines to C++ API of H5FED. 2007-12-19 08:55:51 +00:00
Benedikt Oswald 3a350f975d Corrected C++ part. 2007-12-19 08:32:06 +00:00
gsell 1dd6e487be src/bindings/C++/Makefile.am
- definition of OBJEXT added
2007-12-17 23:18:35 +00:00
gsell 0858cca67d src/bindings/C++/Makefile.am
- rules added to build libH5XX.a
2007-12-17 23:16:26 +00:00
gsell 65c8f7de29 src/h5/Makefile.am
- minor change (some blank lines removed)
2007-12-17 23:15:14 +00:00
gsell cddb48ff47 src/Makefile.am
- minor change (blank line added somewhere)
2007-12-17 23:14:10 +00:00
gsell 607a398f87 configure.ac
- code to build C++ interface added
2007-12-17 16:37:42 +00:00
gsell fc87576807 added 2007-12-17 16:36:11 +00:00
gsell 4a6c4817ce src/Makefile.am
- rule to build "libpH5Part.a" removed
2007-12-17 16:35:24 +00:00
gsell 3c22a8c653 configure.ac
- option "--with-hdf5" prefered over env.variable
	- "TOOLS_H5PART_LIB" set to "-lH5Part" in serial *and* parallel mode
2007-12-17 14:58:59 +00:00
gsell c4c9eca143 src/h5/u_readwrite.c
- forgot to rename "H5Part_print_debug()" to "H5_print_debug()" in some lines.
2007-12-17 14:55:36 +00:00
gsell e919f34618 test/Makefile.am
- "-lH5Part" and "-lpH5Part" removed from build rules
2007-12-17 14:54:15 +00:00
Benedikt Oswald bfcacfddc8 Definition of H5Fed C++ interface, class definition and implementation, first material. 2007-12-17 12:41:37 +00:00
gsell 5e0c8a67cd src/h5/openclose.c
- _init_block()
	  fixed: check of file handle with non-existing function
2007-12-17 12:36:48 +00:00
gsell 69367a7713 src/h5/errorhandling.c
- "_err_handler" initialized with non-existing function
2007-12-17 12:35:13 +00:00
gsell 89bdeb1459 src/H5Block.c
- H5BlockGetFieldInfo()
	  * call of non-existing function "_H5Part_get_object_name()" new name of this function
	    is "H5_get_object_name()".
2007-12-17 12:33:16 +00:00
gsell 4e7f8be568 configure.ac
- some "echo" calls replaced with AC_MSG_... calls
2007-12-17 12:28:35 +00:00
Benedikt Oswald 317d1b6d9f Definition of H5Fed C++ interface, class definition and implementation, first material. 2007-12-17 11:11:00 +00:00
Benedikt Oswald 0235b61dc9 Definition of H5Fed C++ interface, class definition and implementation, first material. 2007-12-17 10:45:50 +00:00
Benedikt Oswald dfebe64c73 Definition of H5Fed C++ interface, class definition and implementation, first material. 2007-12-17 10:45:21 +00:00
gsell 921469eba8 src/H5Fed.h
- new type 'h5_id_t' for object id's
	- new type 'h5_size_t' for size of objects
	- parameter 'parent_id' added to Get/Store functions
	- various other changes
2007-12-16 23:56:00 +00:00
gsell 379de5735f added 2007-12-16 21:45:43 +00:00
gsell e474e78160 C API declaration for H5Fed 2007-12-10 14:28:12 +00:00
adelmann 7b43df2f79 add ierr to MPI_Finalize 2007-11-26 19:45:55 +00:00
gsell d9239fdd88 src/h5/errorhandling.c
src/h5/u_readwrite.h
src/h5/H5.h
src/h5/errorhandling.h
src/h5/readwrite.c
src/h5/openclose.c
src/h5/attribs.c
src/h5/Makefile.am
src/h5/u_readwrite.c
src/h5/readwrite.h
src/h5/openclose.h
src/h5/attribs.h
	* added
2007-11-22 11:08:23 +00:00
gsell 69600afb50 * Fortran bindings moved to src/bindings/Fortran 2007-11-22 11:05:10 +00:00
gsell 75de0e2754 src/bindings/Fortran
* dirs added
	* Fortran bindings moved to bindings/Fortran
2007-11-22 11:02:52 +00:00
gsell 535d18389c src/h5
* added
2007-11-22 11:01:48 +00:00
gsell 082724e233 src/H5PartTypes.h
* entry to keep the ID of the root group added to struct H5PartFile
	* name of current step/index added to struct H5PartFile
2007-11-22 10:52:34 +00:00
gsell b9e9b910f1 src/H5BlockErrors.h
* function to get nam of currengt function has been renamed to H5_get_funcname()
2007-11-22 10:48:06 +00:00
gsell 4ce50652bc src/Makefile.am
* Fortran bindings have been moved to another directory
2007-11-22 10:46:20 +00:00
gsell b2e2cf3b95 src/H5Block.c
* use of H5 kernel functions
	* INIT(f) removed, Block stuff will now be initialized during file opening.
2007-11-22 10:44:49 +00:00
gsell 698135bb91 src/H5PartErrors.h
* _H5Part_get_funcname() has been renamed to H5_get_funcname()
2007-11-22 10:42:19 +00:00
gsell 9a8a7a7fe9 src/H5PartPrivate.h
* declarations moved to corresponding files in libH5
2007-11-22 10:39:18 +00:00
gsell b4414ea058 src/H5Part.c
* mostly everything moved to libH5.
2007-11-22 10:36:20 +00:00
gsell 8abb105f2f configure.ac
* set version number in AC_INIT to 1.5.0
        * set AC_PREREQ to 2.59
        * --with-hdf5path renamed to --with-hdf5
        * we don't distinguish serial and paralell version in the library name any more
	* src/h5/Makefile added to AC_CONFIG_FILES
2007-11-22 10:34:26 +00:00
gsell 52fa2ad3ee Makefile.am
o src/h5 added to subdirs
2007-11-22 10:21:52 +00:00
gsell b9d3f8d2bd test/Makeffile.am
o libH5 added to H5LIB
2007-11-22 10:20:50 +00:00
Kurt Stockinger 607d1e86ab Corrected version number 2007-08-29 01:59:47 +00:00
Kurt Stockinger 3ebc9de7a9 Prepare new tag with updates on H5Block. 2007-08-29 01:26:50 +00:00
gsell d8ce890902 src/H5Block.c
_normalize_partition()
	* wrong type for 'x' fixed
_open_block_group()
_open_field_group()
	* 'herr' type error fixed
_select_hyperslab_for_reading()
	* 'herr' type error fixed
	* type cast boundaries to 'hsize_t'
_create_field_group()
	* 'herr' type error fixed
H5BlockWriteFieldAttrib()
	* type cast 'attrib_type' to 'hid_t'
H5Block3dSetFieldOrigin()
H5Block3dGetFieldSpacing()
	* type cast 'H5PART_FLOAT64' to 'hid_t'
2007-07-12 09:50:42 +00:00
gsell b191ac7a6a src/H5Part.c
- H5PartDefineStepName()
	* type cast 'width'
- _H5Part_iteration_operator()
	* type cast error return
- _H5Part_get_object_name()
	* type cast of arg 'idx' and 'len_obj_name' added
- H5PartGetDatasetInfo()
	* type of 'herr' changed from 'herr_t' to 'h5part_int64_t'
- _get_diskshape_for_reading()
 	* 'CHECK_FILEHANDLE()' removed
	* type cast error return to 'hid_t'
- _get_memshape_for_reading()
 	* 'CHECK_FILEHANDLE()' removed
	* type cast error return to 'hid_t'
2007-07-12 09:15:21 +00:00
gsell 356f7149c5 src/H5Part.c
- _read_data()
	* type error fixed
- H5PartAbortErrorHandler()
	* type cast exit code
- H5PartSetVerbosityLevel()
	* type cast 'level' to 'unsigned int'
2007-07-11 15:34:15 +00:00
gsell a0dd21b79e src/H5Part.c
- _H5Part_set_step()
	* revert use of 'snprintf()' (Windows doesn't have it!)
2007-07-11 15:10:06 +00:00
gsell 08ce0ee46a src/H5Part.c
- _H5Part_get_attrib_info():
	* type cast 'attrib_type' in call to '_H5Part_write_attrib()'
- H5PartWriteStepAttrib()
	* change type of 'herr' to 'h5part_int64_t'
	* type cast 'attrib_type' in call to '_H5Part_write_attrib()'
- H5PartWriteFileAttrib()
	* change type of 'herr' to 'h5part_int64_t'
	* type cast 'attrib_type' in call to '_H5Part_write_attrib()'
- H5PartGetStepAttribInfo()
  H5PartGetFileAttribInfo()
  H5PartReadStepAttrib()
  H5PartReadFileAttrib()
	* change type of 'herr' to 'h5part_int64_t'
- _H5Part_set_step()
	* use 'snprintf()' instead of 'sprintf()'
2007-07-11 15:06:49 +00:00
gsell 7085e22448 src/H5PartTypes.h
- revert last change
2007-07-11 14:58:20 +00:00
gsell 74a31f9b8f src/H5Part.c
- several implicit type conversions fixed
2007-07-11 14:37:39 +00:00
gsell a38a56865f src/H5PartTypes.h:
- change type 'stepno_width' in 'struct H5PartFile' from 'int' to
  'h5part_int64-t'
2007-07-11 14:35:51 +00:00
Kurt Stockinger 1a20e25a84 Added nSteps as command line parameter 2007-07-10 22:41:55 +00:00
gsell 43ff5d2ca0 src/H5PartF90.inc
- declarations for open in append mode functions added
2007-06-29 10:02:04 +00:00
gsell 8080f5e2e5 src/H5PartF.c
- h5pt_opena() open in append mode added
- h5pt_opena_par() open in append mode paralell version added
2007-06-29 10:01:06 +00:00
Kurt Stockinger 4f870ccbf7 Fixed H5PartGetDatasetInfo. 2007-06-27 23:12:51 +00:00
gsell e6364c637d src/H5BlockF.c
* correct macro definition of FORTRAN library names for field spacing/origin attribute
2007-06-16 21:35:37 +00:00
gsell 28c0ac78ad src/H5BlocF90.inc
* declaration of h5bl_3d_{g,s}et_field_origin() added
2007-06-14 15:13:26 +00:00
gsell a642074d85 src/H5Block.c
* Attribute name for field spacing renamed from "Spacing" to "__Spacing__"
* Attribute name for field origin renamed from "Origin" to "__Origin__"
2007-06-14 15:12:22 +00:00
gsell e962caf1b9 src/H5BlockF.c
* h5b_3d_set_field_origin() and h5b_3d_get_field_origin() added
* wrong types in h5b_3d_{g,s}et_field_spacing fixed
2007-06-14 15:10:37 +00:00
gsell 8cad5e3aea src/H5BlockF.c
* h5b_3d_set_field_spacing() and h5b_3d_get_field_spacing() added
2007-06-13 12:33:38 +00:00
gsell a2dfad7b69 src/H5BlockF90.inc
* Declarations to set/get field spacing functions added
2007-06-13 12:32:33 +00:00
Kurt Stockinger 15c2e1260a Removed trailing backslash. 2007-06-12 16:39:03 +00:00
gsell 655511a02a src/H5Block.c
* Documentation added
2007-06-12 09:59:35 +00:00
gsell 0231ece31b src/H5Block.h
* Obsolete declarations removed
2007-06-12 08:40:58 +00:00
Kurt Stockinger b64ddd03d1 Added MPI-IO for large block I/O + switch for COLLECTIVE/NON-COLLECTIVE IO. 2007-06-08 17:02:17 +00:00
Kurt Stockinger 853837477e Fixed wrong include file and variable types. 2007-06-07 00:35:31 +00:00
Kurt Stockinger 4956504d17 Fixed dataset name in _get_field_info 2007-06-06 23:47:27 +00:00
gsell e4c8f743ae src/H5Block.c
* doxygen documentation added
2007-06-06 09:30:05 +00:00
gsell df627138dc src/H5Part
* _H5Part_open_file()
	- set f->comm to 0 in serial caseI_COMM_WORLD;
2007-06-06 09:29:04 +00:00
gsell a4e77a138a doc/Makefile.am: web-pages removed 2007-05-21 13:29:31 +00:00
gsell 9a09f11631 undelete 2007-05-21 13:28:49 +00:00
gsell 783a1ce2b5 Web-pages moved to new repo "H5Webpages" 2007-05-21 12:57:37 +00:00
gsell c43f785ab0 src/H5Block.c
- more doxygen doc added
2007-05-17 16:30:37 +00:00
gsell e1a18b62e2 src/H5Part.h
- function H5PartHasStep() added
2007-05-17 16:29:08 +00:00
gsell 3ae60f8e46 src/H5Part.c
- _H5Part_open_file()
		* allocate mem for pnparticles in any case
	- H5PartHasStep()
		* function added
2007-05-17 16:28:24 +00:00
gsell 949505517c doc/H5X_File_Format.txt 2007-05-15 15:59:42 +00:00
gsell ae9fd98dac src/H5PartTypes.h
- "typdef" typo fixed in WIN32 section
2007-05-11 16:05:59 +00:00
gsell 70bc6af59f test/H5BlockTestAttributes.c
- include mpi.h removed if PARRALLEL_IO
	- typedef MPI_Comm removed if not PARALLEL_IO
2007-05-10 20:37:34 +00:00
gsell 825322c576 src/H5Part.c
- some type-casts added
	- internal error variable '_errno' renamed to '_h5part_errno'
2007-05-10 19:18:00 +00:00
gsell 58bd753fad src/H5Block.c
- type cast all malloc's
2007-05-10 19:15:22 +00:00
gsell 904e609377 src/H5Part.h
- don't wrap system include files in 'extern "C"'
2007-05-10 19:13:36 +00:00
gsell d1b594a788 src/H5Part/Types:
- tydef of int64_t added for Windows
2007-05-10 19:08:32 +00:00
gsell 3bafbc6029 continue writing 2007-05-10 15:03:37 +00:00
gsell 8d760dc264 configure.ac: incr version number to 1.3.3 and bug-report address changed 2007-04-25 07:21:56 +00:00
Kurt Stockinger 4546846f06 Delete all files are benchmark is done. 2007-04-24 22:48:53 +00:00
Kurt Stockinger 62c46dc8bf Minor documentation updates. 2007-04-24 21:57:28 +00:00
gsell 9516e493bc doc/Downloading
- fix links to software
	- HDF5 build instructions removed
2007-04-20 12:00:40 +00:00
gsell 9df1d56714 doc/BuildingHDF5.html
- SSI statements removed
	- bgcolor removed
2007-04-20 11:59:54 +00:00
gsell 98e1055b7b doc/UsingC.html
doc/UsingF.html
	- SSI statements removed
2007-04-20 11:58:58 +00:00
gsell 436cce16c7 doc/H5PartTools.html
- SSI statements removed
	- bgcolor removed
2007-04-20 11:57:57 +00:00
gsell ec6f30bbd8 - doc/H5X_File_Format.txt
* added
2007-04-20 08:33:47 +00:00
Kurt Stockinger d356142bc4 Commented out some dead links. 2007-04-19 22:06:53 +00:00
Kurt Stockinger 00c9b0804b Updated doxygen information. 2007-04-19 21:43:57 +00:00
gsell 172ceff05a doc/Downloading.html
- update H5Part download instructions
2007-04-19 15:17:57 +00:00
gsell 030985c9a4 test 2007-04-19 10:39:00 +00:00
gsell 359b699464 test 2007-04-19 10:31:09 +00:00
gsell 6e1ce25417 - testfile removed 2007-04-19 10:25:20 +00:00
gsell 4144c2b696 src/H5Part.c
* H5PartOpenFileParallel()
		- MPI hints removed, they are useless
		- delegate real work to new function "_H5Part_open_file()"
	* H5PartOpenFile()
		- delegate real work to new function "_H5Part_open_file()"
	* _H5Part_open_file()
		- new function perfoming the real work
		- set step name and number format in file structure
	* H5PartDefineStepName()
		- new function to define step name and format of step number
	* _H5Part_set_step()
	* H5PartGetNumDatasets()
	* H5PartGetDatasetName()
	* H5PartGetDatasetInfo()
	* _H5Part_get_num_particles()
		- use step name und step number format defined in file struct
2007-04-19 10:15:34 +00:00
gsell bad33a75d2 src/H5Part.h
- function declaration "H5PartDefineStepName()" added
2007-04-19 09:26:54 +00:00
gsell 7240f26378 - typdef for MPI_Comm add in non-parallel case
- "struct H5PartFile" extended:
	* new member for step name
	* new member to specify the format of the step number
	* new member to flag whether the file is still empty
2007-04-19 09:17:34 +00:00
gsell b9d82c2fda - build of "homdynToH5p" removed 2007-04-19 09:06:27 +00:00
gsell 1bdd5268ed - "homdynToH5p" from tools build list removed 2007-04-19 09:00:23 +00:00
adelmann 92e057e4cf Add MPI IO hints according to the Benchmark.c program by R. Geus given to me by Valerie 2007-02-13 04:30:55 +00:00
gsell aa72af797b testtest 2007-02-12 21:26:45 +00:00
gsell 9974b6b44c srv/H5Part.c
_H5Part_get_attrib_info():
		- code optimization
2007-01-25 13:09:42 +00:00
Christina Siegerist 82c594c17d Made the new api changes again. They were probably lost in overlapping
commits.
2006-12-07 18:48:41 +00:00
gsell c96b859f88 configure.ac
- forgot to check MPIPATH
2006-12-07 16:48:40 +00:00
gsell d580292235 configure.ac
- check in this order: MPIROOT, MPIHOME, --with-mpipath, other paths
- same for HDF5ROOT
2006-12-07 16:46:51 +00:00
gsell 4dd379ff2f src/H5Part.c
_H5Part_iteration_operator():
		- call H5Gget_objinfo() only if type != H5G_UNKNOWN
	H5PartGetNumSteps():
		- count all objects beginning with H5PART_GROUPNAME_STEP
		  not only groups
2006-12-06 10:50:26 +00:00
gsell e13c4e8d8d configure.ac
- more cosmetic changes (--enable-xxx and --with-xxx definitiona
  are now at the very top, so you see all available options all together)
2006-12-02 22:35:19 +00:00
gsell 4d0ffd58df configure.ac
- configure aborts, if HDF5 cannot be found
- ADDFLAFS merged into FFLAGS
- several cosmetic changes
2006-12-02 17:55:41 +00:00
gsell b105b19d4d src/H5Part.c
- _set_view(): "end" is now inclusive
2006-12-02 17:53:32 +00:00
gsell f0d51def4e test/Makefile.am
- ADDFLAGS removed: content of ADDFLAGS is now in FFLAGS
2006-12-02 17:51:46 +00:00
gsell 5325a7a24f Test 2006-12-01 13:02:39 +00:00
gsell 9c6d4e48a3 Test 2006-12-01 13:01:13 +00:00
gsell 150f623c03 Test 2006-12-01 12:56:37 +00:00
gsell 14536c6d84 Test 2006-12-01 12:56:26 +00:00
gsell 94779f185f Test 2006-12-01 09:46:39 +00:00
gsell 07ff9e52ef test bla 2006-12-01 09:43:03 +00:00
adelmann 4de6c55220 Add unit attributes and fix units 2006-11-28 09:22:27 +00:00
gsell e21e1bf4f4 "homdynToH5p" added to tools 2006-11-27 15:09:41 +00:00
gsell 42e023ea71 set version number to 1.3.1 2006-11-27 14:52:29 +00:00
adelmann 7a7a90b5df Initial update 2006-11-13 20:00:07 +00:00
gsell cf40adf301 src/addToDoxygenMainPage.h
- removed (content moved to "H5Part.c")
test/H5ecloudExample.cc
src/H5Units.h
src/H5Part.cc
src/H5Part++.hh
src/H5Part.hh
src/H5Part++.cc
tools/h5pToGNUplot.py
	- removed
doc/Makefile.am
	- added
doc/H5tools/H5tools.htm
	- renamed to "doc/H5tools/H5tools.html"
2006-10-27 15:13:31 +00:00
gsell cc383bff11 src/H5Block.c
- doxygen:
		* group "h5block_api" renamed to "h5block_c_api"
		* documentation added/revised
	- _allgather()
		* defined static
	- unused code "#if OLD_DISSOLVE_GHOSTZONES" removed
	- Macro "H5BLOCK_GROUP_NAME" replaced with "H5BLOCK_GROUPNAME_BLOCK"
2006-10-27 15:10:11 +00:00
gsell 712bbf30b2 src/H5Part.c
- doxygen group "h5part_api" renamed to "h5part_c_api"
	- default error-handler renamed to "H5PartReportErrorHandler"
	- macro "H5PART_PARTICLES_GROUP" replaced with "H5PART_GROUPNAME_STEP"
2006-10-27 15:00:13 +00:00
gsell 1b55e6c536 src/H5PartPrivate.h
- time-steps renamed from "Particles" to "Steps".
	- the macro defining the groupname of time-steps is now
	  "H5PART_GROUPNAME_STEP"
2006-10-27 14:57:02 +00:00
gsell 615cbf3bbd src/H5BlockPrivate.h
- "H5BLOCK_GROUP_NAME" renamed to "H5BLOCK_GROUPNAME_BLOCK"
2006-10-27 14:54:02 +00:00
gsell a5e5d3f2a8 test/H5BlockParTestScalarFieldF.f90
- interface definition for "IARGC()" added, pgi-fortran
	  complains about this (intrinsic!) function.
2006-10-27 14:52:54 +00:00
gsell 4d2b43576f test/Makefile.am
- several changes to "EXTRA_DIST"
2006-10-27 14:48:50 +00:00
gsell bcf06f51b1 src/H5Part.h
- H5PartDefaultErrorHandler:
		* renamed to "H5PartReportErrorHandler"
2006-10-27 14:46:57 +00:00
gsell f065eccdc4 src/Makefile.am
- several changes to "EXTRA_DIST", "include_HEADERS", "EXTRA_HEADERS",
	  "libH5PartF_a_SOURCES"
2006-10-27 14:14:38 +00:00
gsell 49df069686 configure.ac
- AC_INIT: Version number changed to "1.3.1"
	- AC_PROG_FC: "gfortran" added to list
	- option "--enable-mpipath" changed to "--with-mpipath"
	- option "--enable-hdf5path" changed to "--with-hdf5path"
	- set env.variable "FC" to "MPIFC" if "MPIFC" is set
	- "H5BlockDissolveGhosts" removed from TTARGET
	- AC_CONFIG_FILES: "doc/Makefile" added
2006-10-27 14:08:44 +00:00
gsell 6ad99f01cd Makefile.am
- doc added to list SUBDIRS
2006-10-27 14:02:35 +00:00
gsell 67ffffae9d src/H5BlockF.c
- h5bl_get_partition_of_proc()
		* bugfix: we have to increment the values by 1
2006-10-10 15:59:08 +00:00
gsell ddd7c0f0bd test/H5BlockParTestScalarFieldF.f90
- read_field()
		* bugfixes
2006-10-10 15:57:07 +00:00
gsell bef930c76b src/H5Block.c
- H5BlockDefine3dLayout()
		* debug-print user layout
2006-10-10 15:49:39 +00:00
Christina Siegerist 78add071f1 changed to September 2006 2006-10-02 20:50:00 +00:00
Christina Siegerist c7e88d59af Changed to email to andreas to avoid svn wrong addresses. 2006-10-02 20:47:52 +00:00
adelmann cb9ba14d80 delcared IARGC 2006-09-29 04:26:29 +00:00
gsell 791a9be790 test/H5BlockParTestScalarFieldF.f90
- read_field()
		* bugfix in calculation of expected value
2006-09-29 00:19:09 +00:00
gsell ac632c5ed4 src/H5PartF.c
- h5pt_set_verbosity_level()
		* bugfix: level was not a pointer
2006-09-29 00:01:41 +00:00
gsell 146d0cd28d test/H5BlockParTestScalarFieldF.f90
- more layout fixes
2006-09-28 23:44:35 +00:00
gsell 415c037076 test/H5BlockParTestScalarFieldF.f90
- more layout fixes
2006-09-28 23:39:19 +00:00
gsell 3653baecd0 test/H5BlockParTestScalarFieldF.f90
- more layout error fixed
2006-09-28 23:32:10 +00:00
gsell 2e6ec2fe01 test/H5BlockParTestScalarFieldF.f90
- bugfixes in layout
2006-09-28 23:22:07 +00:00
gsell cab19eece1 test/H5BlockParTestScalarFieldF.f90
- added
2006-09-28 22:47:51 +00:00
gsell 5b50d9b362 configure
- H5BlockParTestScalarFieldF
		* added to parallel, fortran TTARGET
2006-09-28 22:42:17 +00:00
gsell 6c4c222f4d src/H5BlockF.c
- h5bl_get_reduced_partition_of_proc()
		* bugfix: we have increment the value by one
	- h5bl_get_proc_of()
		* bugfix: we have to decrement the value by one
2006-09-28 22:41:15 +00:00
gsell e76b2ed356 src/H5BlockF90.inc
- h5bl_get_partition_of_proc()
	  h5bl_get_reduced_partition_of_proc()
		* bugfix in declaration, proc was missing
2006-09-28 22:38:18 +00:00
gsell b64f8ad80e test/Makefile.am
- rules to build "H5BlockParTestScalarFieldF" added
2006-09-28 22:36:41 +00:00
gsell de7c07e47f src/H5PartF.c
- attribute interface
		* bugfixes, was completly messed up, what did I do?
2006-09-28 19:02:41 +00:00
gsell 1b10ffe18b src/H5PartF90.inc
- declare dimensions of arrays as (*) not (:)
2006-09-28 16:59:49 +00:00
gsell 489110ba92 Hdf5fed moved to own repo 2006-09-27 20:55:14 +00:00
gsell 2c4d12b36c test 2006-09-27 19:57:35 +00:00
gsell dbdb76fff7 test 2006-09-27 19:57:05 +00:00
adelmann 634ed00d24 add merlin00 configure 2006-09-27 19:13:20 +00:00
gsell ac6f828fbc src/H5PartPrivate.h
- _H5Part_set_step()
		* was static and is public now
2006-09-27 04:45:49 +00:00
gsell 14f0702eee src/H5PartF.c
- h5pt_openpar_r()
	  h5pt_openpar_w()
		* bugfix: arg "comm" as been pass as pointer instead of value
2006-09-27 04:44:39 +00:00
gsell e4c712e067 src/H5Part.c
- _H5Part_set_step()
		* was static is public now
2006-09-27 04:42:09 +00:00
adelmann 9e6208836e add howto for GELE the small Crat XT3 system 2006-09-27 04:10:51 +00:00
gsell c43e918ddc doc/doxyfooter
- added
2006-09-26 23:39:01 +00:00
gsell 353689b4eb src/H5Part.c
- grouping function in doxygen groups
2006-09-26 23:33:04 +00:00
gsell bf22238a3e src/H5Block.c
- grouping of functions in doxygen groups
	- moved doc from "H5Block.h"
2006-09-26 23:09:00 +00:00
gsell 9c73b23b48 src/H5Block.h
- part of doxygen doc moved to "H5Block.c"
2006-09-26 23:07:08 +00:00
gsell 9c3040e429 doc/Doxyfile
- several changes to get a better layout and structure
2006-09-26 23:05:37 +00:00
gsell 4f96e94098 doc/ReferencePages
- removed, can be generated with Doxygen
2006-09-26 04:45:04 +00:00
gsell 84cc3c7a19 doc/hdf5.pdf
- moved to repo "H5Papers"
2006-09-26 04:43:04 +00:00
gsell 56f13c3b68 doc/2006-Berkeley-Visit
doc/H5xxx
	- moved to repo "H5Memo"
2006-09-26 04:41:46 +00:00
gsell 70d1a26d4c test/H5BlockTestAttributes.c
- tests for "H5Bloc3d{Set,Get}Field{Spacing,Origin}() added
2006-09-25 23:20:50 +00:00
gsell 980a192922 src/H5PartPrivate.h
- _H5Part_set_step()
		* declaration added
2006-09-25 23:02:40 +00:00
gsell bef9820f71 src/H5Part.c
- H5PartSetNumParticles()
		* fix undeclared var error in parallel code
	- _set_step()
		* renamed to "_H5Part_set_step()"
2006-09-25 23:01:28 +00:00
gsell 6e32226992 src/H5Part.c
- use "-1" to indicate an uninitialized "timegroup" in "H5PartFile"
	  a valid "timegroup" is greater or equal zeros
	- _set_step()
		* added, derived from "H5PartSetStep()"
	- H5PartSetStep()
		* call "_set_step()" to do the real work
	- _H5Part_get_num_particles()
		* added, derived from "H5PartGetNumParticles()"
	- H5PartGetNumParticles()
		* call "_H5Part_get_num_particles()" to do the real work
	- H5PartSetNumParticles()
		* use new function "_set_step()" instead of "H5PartSetStep()"
		* print no extra error message if "_set_step()" returns
		  with an errror
	- _reset_view()
		* added, derived from "H5PartSetView()"
	- H5PartResetView()
		* added, was a macro before
	- H5PartHasView()
		* added, was a macro before
	- _set_view()
		* added, derived from "H5PartSetView()"
		* "#ifdef HDF5V160" block removed
	-  H5PartSetView()
		* call "_set_view()" to do the real work
	- H5PartGetView()
		* use vars "viewend" and "viewstart" to instead "range[0]"
		  and range[1]
		* call "_set_step()" if timegroup not initialized
	- H5PartSetCanonicalView()
		* check whether we are in read-only mode replaced with macro
		* "_reset_view()" used instead of "H5PartSetView(f,-1,-1)
2006-09-25 20:05:47 +00:00
gsell 1d011f5482 src/H5PartErrors.h
- macro CHECK_READONLY_MODE added
2006-09-25 19:23:18 +00:00
gsell 0b151cd0aa src/H5Part.h
src/H5Part.c
	- H5PartOpenFile()
	  H5PartOpenFileParallel()
		* "const" qualifier added to arg "flags"
	- H5PartReadDataInt64()
		* "const" qualifier added to arg "name"
      	- H5PartResetView()
	  H5PartHasView()
		* are real function now, not macros any more
2006-09-25 19:22:26 +00:00
gsell e560303db3 src/H5Block.c
- unused code between #if 0 ... #endif removed
	- _dissolve_ghostzones()
		* faster algorithm implemented
2006-09-25 19:17:23 +00:00
gsell 591a37855d src/H5PartPrivate.h
- _H5Part_get_num_particles()
		* declaration added
2006-09-25 19:15:13 +00:00
gsell 8cedb2d7f5 test/H5BlockDissolveGhosts.c
- _dissolve_ghostzones()
		* faster algorithm implemented
2006-09-25 19:14:08 +00:00
Patrik Leidenberger df20b6e0ea Restructure the Hdf5fed directory. 2006-09-25 12:41:31 +00:00
Patrik Leidenberger 6f34b0a4c5 Restructure the Hdf5fed directory. 2006-09-25 09:57:32 +00:00
Patrik Leidenberger 43000dabe1 Restructure the Hdf5fed directory. 2006-09-25 09:55:50 +00:00
Patrik Leidenberger 40a9898f92 Restructure the Hdf5fed directory. 2006-09-25 09:47:15 +00:00
Patrik Leidenberger 5bd504becf Restructure the Hdf5fed directory. 2006-09-25 09:45:56 +00:00
Patrik Leidenberger 9a16c66724 Restructure the Hdf5fed directory. 2006-09-25 09:34:15 +00:00
Patrik Leidenberger 83f931607b Restructure the Hdf5fed directory 2006-09-25 09:31:11 +00:00
Patrik Leidenberger ad79b097d2 Hdf5fed little update. 2006-09-25 08:20:38 +00:00
Patrik Leidenberger 24a080298d H5Fed: Add function for triangle boundary. 2006-09-24 17:04:05 +00:00
Patrik Leidenberger 0e2cc3ec8c Addaped H5Fed api to Dune. 2006-09-24 12:15:09 +00:00
gsell bb7f1c5f38 src/H5PartF.c
- h5pt_openr_par()
		* fixed typo
	- h5pt_openw_par()
		* fixed typo
2006-09-22 22:59:54 +00:00
gsell bb15e96150 src/H5Block.h
- H5BlockGetFieldInfoByName()
		* added
	- H5Block3dGetFieldOrigin()
		* added
	- H5Block3dSetFieldOrigin()
		* added
	- H5Block3dGetFieldSpacing()
		* added
	- H5Block3dSetFieldSpacing()
		* added
2006-09-22 22:55:40 +00:00
gsell 2217b10b01 src/H5Block.c
- H5Block3dWriteScalarField()
	- H5Block3dReadScalarField()
		* dataset renamed from "x" to "0"
	- H5Block3dWrite3dVectorField()
	- H5Block3dRead3dVectorField()
		* datasets renamed from "x", "y", "z"  to "0", "1", "2"
	- _get_field_info()
		* added, derived from "H5BlockGetFieldInfo()"
	- H5BlockGetFieldInfo()
		* call "_get_field_info()" to do the real work
	- H5BlockGetFieldInfoByName()
		* added
	- _write_field_attrib()
		* defined as static function, was non-static
	- _read_field_attrib()
		* added, derived form "H5BlockFieldReadAttrib()"
	- H5BlockReadFieldAttrib()
		* call "_read_field_attrib()" to do the real work
	- H5Block3dGetFieldOrigin()
		* added
	- H5Block3dSetFieldOrigin()
		* added
	- H5Block3dGetFieldSpacing()
		* added
	- H5Block3dSetFieldSpacing()
		* added
2006-09-22 22:53:46 +00:00
gsell b66e4587f5 src/H5BlockF.c
- include "H5PartPrivate.h" added
	- include <hdf5.h> removed
2006-09-22 22:45:23 +00:00
gsell 06530aff19 src/H5Part.c
- H5PartSetStep()
		* fix conversion to different size in debug output
2006-09-22 22:44:08 +00:00
gsell 7f2cb8bcaf test/Makefile.am
- bugfix in rule to build "H5test"
2006-09-22 22:42:28 +00:00
gsell 49022b6838 test/H5test.cc
- empty PARALLEL_IO conditional part removed
2006-09-22 22:41:30 +00:00
gsell 1b15551170 src/H5Part.c
- declare arguments as "const" where possible
2006-09-22 20:55:23 +00:00
gsell 09fc6fd570 src/H5PartPrivate.h
- _H5Part_strdupfor2c()
	- _H5Part_strc2for()
		* added
2006-09-22 20:54:34 +00:00
gsell db0a1bd448 src/H5Part.h
- declare arguments as "const" where possible
2006-09-22 20:53:36 +00:00
gsell 921746273d src/H5Block.c
- printf for debug output removed
2006-09-22 20:52:12 +00:00
gsell 990a359f14 src/H5BlockF90.inc
- h5bl_3d_write_scalar_field()
	- h5bl_3d_write_3dvector_field()
	- h5bl_3d_read_3dvector_field()
		* bugfix in type of data
2006-09-22 20:51:05 +00:00
gsell b3da7610f1 src/H5PartF.c
src/H5BlockF.c
	- use Fortron function name in definition, define macros for
	  function names only, if we have to rename them
	- use function "_H5Part_strdupfor2c()" and "_H5Part_strc2for()" 
	  for string conversion
2006-09-22 20:49:17 +00:00
gsell 9e9f2fdb9a test/H5BlockTestAttributesF.f90
- write file and attributes implemented
2006-09-22 20:31:59 +00:00
Patrik Leidenberger cf14e818db Extension of the H5Fed API and adding a dump program to test the API. 2006-09-22 13:30:03 +00:00
gsell cdf1ce5e9d src/H5BlockF90.inc
- all (:,:,:) and (:) changed to (*)
2006-09-21 23:48:36 +00:00
gsell 0ca05f63a0 src/H5BlockF.c
- h5bl_readfieldattrib_*
		* bugfix: C function has not been called with copy
2006-09-21 23:46:18 +00:00
gsell cb4bceb4bb src/H5Block.c
- some debug print removed
2006-09-21 23:44:39 +00:00
gsell c40ae0bb4e test/H5BlockTestAttributesF.f90
- attribute read tests added
2006-09-21 23:43:22 +00:00
gsell 90c2a260c2 src/H5BlockTestAttributes.c
- bugfixes
2006-09-21 21:26:46 +00:00
gsell 4f423dbdda test/H5BlockTestAttributesF.f90
- more coding
2006-09-21 21:26:01 +00:00
gsell 624edd3be3 test/Makefile.am
- rule to build "H5BlockTestAttributesF"
		* link to non-parallel versions of the library
2006-09-21 21:25:17 +00:00
gsell f698ae762e src/H5Part.c
- H5PartOpenFileParallel()
		* debug-print info about file also in non-parallel case
		* print value of "f" not "f->file" 
	- H5PartOpenFile()
		* print value of "f" not "f->file"
2006-09-21 21:23:28 +00:00
gsell 782d67c1a0 src/H5PartF.c
- f_h5pt_openr()
		* type-cast result to get rid of the warning
2006-09-21 21:21:07 +00:00
gsell 51560ad3fa src/H5Block
- several debug-prints added
2006-09-21 21:16:41 +00:00
gsell e35679ba56 src/H5BlockF90.inc
- h5bl_getfieldinfo()
		* syntax error fixed
2006-09-21 21:15:55 +00:00
gsell f45fb3f465 src/H5BlockF.c
- all function
		* type of file-handle changed to "h5part_int64_t"
2006-09-21 21:13:30 +00:00
gsell 5425ae0847 configure.ac
- prog "H5BlockTestAttributesF" moved to the non-parallel test
	  targets
2006-09-21 21:11:42 +00:00
Patrik Leidenberger 15abcafd84 Add H5Fed changes in h5fed api. 2006-09-21 12:26:37 +00:00
Patrik Leidenberger 4c4cdc9a2f Add H5Fed. 2006-09-21 10:19:39 +00:00
gsell 8f31d8ddd5 test/H5BlockTestAttributesF.f90
- added
2006-09-20 21:07:25 +00:00
gsell 011128ef54 test/Makefile.am
- rule to build target "H5BlockTestAttributesF" added
2006-09-20 21:06:47 +00:00
gsell 333332537c configure.ac
- prog "H5BlockTestAttributesF" added to TTARGET
2006-09-20 21:05:52 +00:00
gsell 65470f307b test/H5BlockTestAttributes.c
- main()
		* declaration of var "nprocs" added
2006-09-20 21:03:42 +00:00
gsell 9647274842 src/H5PartF.c
- f_h5pt_set_verbosity_level()
		* added
	- f_h5pt_getstepattribinfo()
	  f_h5pt_getfileattribinfo()
		* type of var "type" changed from "hid_t" to
		  "h5part_int64_t"
2006-09-20 21:02:23 +00:00
gsell 76549133c4 src/H5PartF90.inc
- declaration of "h5pt_set_verbosity_level()" added
2006-09-20 20:59:16 +00:00
gsell bf9793e18a src/H5Part.h
- H5PartSetVerbosityLevel()
		* type of arg "level" changed from "unsigned int" to
		  "h5part_int64_t"
2006-09-20 20:58:13 +00:00
gsell 523c2ae212 src/H5Part.c
- H5PartSetVerbosityLevel()
		* type of arg "level" changed from "unsigned int" to
		  "h5part_int64_t"
2006-09-20 20:57:04 +00:00
gsell c892a7c748 src/H5Part.c
- use macro "H5PART_PARTICLES_GROUP" insteed of string
	- print_{debug,info,warn,error}()
		* prints now a prefix "D", "I", "W", "E" corresponding to
		  type of message
		* print value of "__funcname" before message text
		* print everything in one print statment
		* all calls to these functions have been change accordingly
2006-09-20 18:00:46 +00:00
gsell 54313b4882 src/H5Block.c
- use macro "H5BLOCK_GROUP_NAME" insteed string of "Block"
2006-09-20 17:54:36 +00:00
gsell e6b3c12e77 src/H5BlockPrivate.h
- macro "H5BLOCK_GROUP_NAME" added
2006-09-20 17:53:25 +00:00
gsell cc9487757b src/H5PartPrivate.h
- macro "H5PART_PARTICLES_GROUP" added
2006-09-20 17:52:08 +00:00
gsell b795b592cb test/H5BlockTestAttributes.c
- can be compiled parallel and non-parallel now
2006-09-20 17:50:51 +00:00
gsell 26eb035ef8 test/H5BlockTestAttributes.c
- added
2006-09-20 01:50:04 +00:00
gsell 3c15cdf0c1 test/H5BlockWriteScalarField1Proc.c
test/H5BlockTest1.c
test/H5BlockReadParallel1.c
test/H5BlockReadScalarField1Proc.c
test/H5BlockWrite1.c
test/H5BlockParallelTest1.c
	- removed
2006-09-20 01:49:25 +00:00
gsell a205c9a93c src/H5Block.c
- all "H5Block.*" functions
		* call "_init()" at the very beginning
	- all "H5Block.*" functions where a layout must be defined before
	  the function can be called
		* error check, whether layout is defined or not
2006-09-20 01:48:03 +00:00
gsell 82c7f77e26 src/Makefile.am
- prog "H5BlockTestScalarField" removed
	- prog "H5BlockTestAttributes" added
2006-09-20 01:44:47 +00:00
gsell a4dd08d021 src/H5BlockTypes.h
- struct H5BlockStrukt
		* "have_layout" added
2006-09-20 01:43:15 +00:00
gsell 71eb102a30 src/H5BlockErrors.h
- macro "CHECK_LAYOUT" added
2006-09-20 01:42:09 +00:00
gsell 8aa2732876 src/H5Block.h
- H5Block3dGetProcOf()
		* arg "f" is not "const" any more
2006-09-20 01:41:08 +00:00
gsell b5c98e495b src/H5BlockF.c
- f_h5bl_get_proc_of()
		* arg "f" is not "const" any more
2006-09-20 01:40:02 +00:00
gsell 1440cd28a7 configure.ac
- prog "H5BlockTestAttributes" added to "TTARGET"
2006-09-20 01:38:44 +00:00
gsell 1dba6fb877 src/H5Part.h
- bugfix: #endif was at wrong place
2006-09-19 23:39:40 +00:00
gsell df8c5280c0 src/H5BlockF.c
- Fortran 90 bindings coded
2006-09-19 23:37:39 +00:00
gsell 9e6fc708f6 src/H5Block.c
- H5BlockDefine3DFieldLayout()
		* CHECK_FILEHANDLE() added
	- H5BlockGetNumFields()
		* CHECK_FILEHANDLE() added
	- H5BlockGetFieldInfo()
		* CHECK_FILEHANDLE() and CHECK_TIMEGROUP() added
	- H5BlockGetNumFieldAttribs()
		* bugfix: return value was always 0
	- H5PartReadFieldAttrib()
		* bugfix: CHECK_FILEHANDLE was called before _init()
2006-09-19 23:36:27 +00:00
gsell 600f887609 src/Makefile.am
- rules to build H5Block Fortran bindings added
2006-09-19 23:29:33 +00:00
gsell 79f6d8e19c src/H5Block.h
- declaration of "H5BlockHasFieldData()" added
2006-09-19 23:28:32 +00:00
gsell e893b8e448 src/H5BlockF90.inc
- coding
	- some fixes
2006-09-19 23:26:54 +00:00
gsell 1a623f0e81 configure.ac
- bugfix from last check-in
	- some formating changed
2006-09-19 23:25:30 +00:00
gsell 4d7653f2bd tools/Makefile.am
- add $(MPIINC) to macro INC
2006-09-19 01:25:21 +00:00
gsell 307aecaec9 tools/h5pToGNUplot.cc
- include "H5Part.h" insteed "H5Part.hh"
	- several format string fixes
2006-09-19 01:23:37 +00:00
gsell 06b04a75fb tools/h5pAttrib.cc
- include "H5Part.h" insteed "H5Part.hh"
	- several format string fixes
2006-09-19 01:23:04 +00:00
gsell 13bbd58004 src/Makefile.am
- if parallel is enabled, only this version will be builded
	- parallel/non-parallel macros merged
	- the library name is now "libH5Part.h" for non-parallel and 
	  parallel.
2006-09-19 01:21:18 +00:00
gsell 792ae9a597 src/H5Block.c
- H5PartReadFieldAttrib()
		* missing error handling added after reading attribute
2006-09-19 01:18:00 +00:00
gsell 5d9b13e15e src/H5Part.h
- C++ wrapper added
2006-09-19 01:16:46 +00:00
gsell b998848ed2 src/H5PartErrors.h
- fix format string error in "HANDLE_H5PART_SET_VIEW_ERR"
2006-09-19 01:11:17 +00:00
gsell 6e14b0aeab test/H5BlockParTestScalarField.c
- several format string fixes
2006-09-19 01:09:41 +00:00
gsell 8a9cdf320c test/H5test.cc
- include "H5Part.h" insteed of "H5Part.hh"
2006-09-19 01:08:53 +00:00
gsell 8e328d1dc5 src/H5PartTest.cc
- include "H5Part.h" insteed of "H5Part.hh"
	- several format string fixes
2006-09-19 01:07:54 +00:00
gsell c3f8c3e70e test/H5PartAndreasTest.cc
- include "H5Part.h" insteed of "H5Part.hh"
2006-09-19 01:06:18 +00:00
gsell 13660dea05 test/Makefile.am
- parallel/non-parallel version of macros merged
	- use CC, CXX und FC insteed of MPICC, ...
2006-09-19 01:04:42 +00:00
gsell 8608d1e63f configure.ac
- parallel/non-parallel versions of macros merged
        - in parallel case: CC=MPICC, CXX=MPICXX und FC=MPIFC
2006-09-19 00:58:22 +00:00
gsell 837c329840 src/H5Block.h
- C++ wrapper added
2006-09-19 00:53:55 +00:00
gsell ec71b9eaa6 src/H5Block.h
- declaration of "H5Block3dGetReducedPartitionOfProc()" added
2006-09-15 23:50:40 +00:00
gsell 27dc5819f2 src/H5Block.c
- H5Block3dGetReducedPartitionOfProc()
		* added
	- _select_hyperslab_for_writing()
		* missing selection of hyperslab for memshape added
2006-09-15 23:49:06 +00:00
gsell 6e3b010eff test/H5BlockParTestScalarField.c
- return on error removed
2006-09-15 23:45:22 +00:00
gsell c0216d2da7 test/Makefile.am
- bugfix in rule to build "H5BlockDissolveGhosts"
2006-09-15 23:43:17 +00:00
gsell acccf9b457 test/H5BlockDissolveGhosts.c
- added
2006-09-15 21:56:48 +00:00
gsell bc0499e859 src/H5Block.c
- new algorithm for dissolving ghost-zone
2006-09-15 21:54:58 +00:00
gsell f8f384dcc2 configure.ac
- "H5BlockDissolveGhosts" added to parallel TTARGET
	- "H5BlockTest1" removed from serial TTARGET
2006-09-15 21:50:10 +00:00
gsell 6008f5579e test/Makefile.am
- rules added to build "H5BlockDissolveGhosts"
2006-09-15 21:48:10 +00:00
gsell aa487aa4be test/H5BlockParTestScalarField.c
- main()
		* call to "MPI_Finalize()" added
2006-09-14 23:08:25 +00:00
gsell 8d76d9d9bd src/H5Block.c
- _dissolve_ghostzone()
		* debug prints edited
2006-09-14 23:07:17 +00:00
gsell ab9ee7406b test/H5BlockParTestScalarField.pbs
- added
2006-09-14 21:43:09 +00:00
gsell 814a9a86e7 src/H5Block.c
_dissolve_ghostzones()
		* dissolve all ghost-zones, not only for the processor the code
		  is running on.
2006-09-14 21:08:36 +00:00
gsell 8948598fab test/H5BlockParTestScalarField.c
_read_data()
		* bugfix in calculating expected value
		* be more verbose in case of an error
2006-09-14 21:05:23 +00:00
gsell dddeaeba27 - src/H5Part.c
- H5PartOpenFileParallel()
		* in the parallel code there were some not yet
		  renamed calls to "print_debug()"
	- H5PartSetStep()
		* in the parallel code there was a not yet
		  renamed call to "print_info()"
2006-09-14 18:23:11 +00:00
gsell 53f286b421 test/H5BlockParTestScalarField.c
- added
2006-09-14 16:57:24 +00:00
gsell 0975564af3 src/H5Part.c
- H5PartWriteFileAttrib()
		* return code of "_H5Part_write_attrib()" was not assigned
		  to "herr"
	- H5PartSetView()
		* var "r" to handle error renamed to "herr" and changed
		  to type "h5part_int64_t"
2006-09-14 16:56:29 +00:00
gsell 29efcefae3 src/H5Block.c
- H5Block3dGetPartitionOfProc()
	  H5Block3dGetProcOf()
		* added
2006-09-14 16:51:52 +00:00
gsell 3873af56a0 src/H5Block.h
- H5Block3dGetPartitionOfProc()
	- H5Block3dGetProcOf
		* declaration added
2006-09-14 16:50:37 +00:00
gsell dd75b5da79 configure.ac
- block tests cleanup
2006-09-14 16:48:56 +00:00
gsell 7112492fe8 test/Makefile.am
- use of macros in most rules
	- block tests cleanup
2006-09-14 16:47:56 +00:00
gsell 77b1b40ea9 test/H5BlockWriteScalarField1Proc.c
test/H5BlockReadScalarField1Proc.c
	- added
2006-09-12 22:19:39 +00:00
gsell 4f35ba1356 test/H5testFpar.f
- renamed to "H5testFpar.f90"
2006-09-12 22:18:58 +00:00
gsell 3dff13c491 src/configure.ac
- add test targets to TTARGET
2006-09-12 22:17:53 +00:00
gsell 18c2c89cd5 src/H5Block.h
- fixed bug in declaration of "H5BlockReadFieldAttrib()"
2006-09-12 22:16:31 +00:00
gsell 1f6d43b25d test/Makefile.am
- rules to build "H5BlockReadScalarField1Proc" added
2006-09-12 22:15:21 +00:00
gsell 1b2e7a1f75 2006-09-12 22:14:09 +00:00
gsell e962e9d778 test/Bench.c
- declarations of unused variable removed
2006-09-12 22:13:40 +00:00
gsell 1df562f90c test/Makefile.am
- use macros in rule to build "H5testFpar", "H5testFpar.o"
      	- rules to build "H5BlockWriteScalarField1Proc" added
2006-09-12 20:47:31 +00:00
gsell 6c1ce219d1 test/H5testFpar.f90
- renamed, was "H5testFpar.f"
2006-09-12 20:44:11 +00:00
gsell c039ee7322 test/BlockTestSpecs.txt
- added
2006-09-12 17:43:49 +00:00
gsell 41511462f9 repo migration 2006-09-11 20:19:10 +00:00
668 changed files with 225475 additions and 54100 deletions
+553 -109
View File
@@ -1,130 +1,574 @@
* text=auto !eol
/AUTHORS -text
/COPYRIGHT -text
/COPYING -text
/ChangeLog -text
/GNUmakefile.orig -text
H5Fed/applications/gmsh2h5fed.cc -text
H5Fed/applications/gmsh2h5fed.hh -text
H5Fed/applications/makefile.am -text
H5Fed/autogen.sh -text
H5Fed/configure.ac -text
H5Fed/grids/cube0.geo -text
H5Fed/grids/cube0.msh -text
H5Fed/grids/cubeincube.geo -text
H5Fed/grids/cubeincube.msh -text
H5Fed/grids/sphere.geo -text
H5Fed/grids/sphere.msh -text
H5Fed/libsrc/gmsh/gmsh.cc -text
H5Fed/libsrc/gmsh/gmsh.hh -text
H5Fed/libsrc/gmsh/gmshconst.hh -text
H5Fed/libsrc/gmsh/gmshgrammar.hh -text
H5Fed/libsrc/gmsh/gmshsemanticaction.hh -text
H5Fed/libsrc/gmsh/makefile.am -text
H5Fed/libsrc/h5fed/h5fed.cc -text
H5Fed/libsrc/h5fed/h5fed.hh -text
H5Fed/libsrc/h5fed/h5fedconst.hh -text
H5Fed/libsrc/h5fed/makefile.am -text
H5Fed/libsrc/makefile.am -text
H5Fed/libsrc/stdincl/nonsciconst.h -text
H5Fed/libsrc/stdincl/physicomath.h -text
H5Fed/makefile.am -text
/Makefile.am -text
/Makefile.orig -text
/NEWS -text
/README -text
/autogen.sh -text
/config.guess -text
/config.h.in -text
/config.sub -text
/configure.ac -text
/depcomp -text
doc/2006-Berkeley-Visit/BethelSAP_1page-4.doc -text
doc/2006-Berkeley-Visit/H5Part.ppt -text
doc/2006-Berkeley-Visit/H5xxx.ppt -text
doc/2006-Berkeley-Visit/H5xxxVisIt.fig -text
doc/2006-Berkeley-Visit/SAP-Combined-v6.doc -text
doc/2006-Berkeley-Visit/aqpsi2006mar22.pdf -text
doc/2006-Berkeley-Visit/hdf.ps -text
doc/Building.html -text
doc/BuildingHDF5.html -text
doc/Downloading.html -text
doc/Doxyfile -text
doc/H5PartExpress.html -text
doc/H5PartIDL.html -text
doc/H5PartParaview.html -text
doc/H5PartTools.html -text
doc/H5PartVisIt.html -text
doc/H5PartVisIt/cloud_visit.png -text
doc/H5PartVisIt/cloud_visit.s.png -text
doc/H5PartVisIt/cloud_visit_2D.png -text
doc/H5PartVisIt/cloud_visit_2D.s.png -text
doc/H5PartVisIt/visit_query1.png -text
doc/H5PartVisIt/visit_query1.s.png -text
doc/H5tools/H5tools.htm -text
doc/H5tools/H5tools_files/snapshot1.jpg -text
doc/H5xxx/H5xxx.tex -text
doc/H5xxx/JAC2003.cls -text
doc/H5xxx/makefile -text
doc/InternalLayout.html -text
doc/ReferencePages/H5PartF_8c.html -text
doc/ReferencePages/H5Part_8c.html -text
doc/ReferencePages/H5Part_8h-source.html -text
doc/ReferencePages/H5Part_8h.html -text
doc/ReferencePages/annotated.html -text
doc/ReferencePages/doxygen.css -text
doc/ReferencePages/doxygen.png -text
doc/ReferencePages/files.html -text
doc/ReferencePages/functions.html -text
doc/ReferencePages/functions_vars.html -text
doc/ReferencePages/globals.html -text
doc/ReferencePages/globals_defs.html -text
doc/ReferencePages/globals_func.html -text
doc/ReferencePages/globals_type.html -text
doc/ReferencePages/index.html -text
doc/ReferencePages/structH5IO__getname__t-members.html -text
doc/ReferencePages/structH5IO__getname__t.html -text
doc/ReferencePages/structH5PartFile-members.html -text
doc/ReferencePages/structH5PartFile.html -text
doc/UsingC.html -text
doc/UsingF.html -text
doc/collision_6.png -text
doc/collision_6.s.png -text
doc/h5part.html -text
doc/hdf5.pdf -text
doc/layout.png -text
/install-sh -text
doc/Examples/meshexample.dxf -text
doc/Examples/meshexample.txt -text
doc/Examples/simple_tet.vtk -text
doc/Examples/simple_tet_level0.vtk -text
doc/Examples/simple_tet_level1.vtk -text
doc/Examples/simple_tet_level2.vtk -text
doc/Examples/trimesh_dgraph_level0.metis -text
doc/Examples/trimesh_dgraph_level0.metis.part.2 -text
doc/Examples/trimesh_dgraph_level0.metis.part.3 -text
doc/Examples/trimesh_dnode_level1.metis -text
doc/Examples/trimesh_dnode_level1.metis.part.2 -text
doc/Examples/trimesh_level0.metis -text
doc/Examples/trimesh_level0.metis.epart.2 -text
doc/Examples/trimesh_level0.metis.ngraph -text
doc/Examples/trimesh_level0.metis.npart.2 -text
doc/Examples/trimesh_level1.metis -text
doc/Examples/trimesh_level1.metis.part.2 -text
doc/H5.dox -text
doc/H5X_File_Format.txt -text
doc/Makefile.am -text
doc/doxyfooter -text
doc/doxyheader -text
doc/html2twiki -text
doc/meshexample.dxf -text
doc/tetrahedron_refinements/1-edge/edge_01_refined/01.png -text
doc/tetrahedron_refinements/1-edge/edge_01_refined/01.pvsm -text
doc/tetrahedron_refinements/1-edge/edge_01_refined/01.txt -text
doc/tetrahedron_refinements/1-edge/edge_01_refined/01.vtk -text
doc/tetrahedron_refinements/1-edge/edge_01_refined/01_smal.png -text
doc/tetrahedron_refinements/1-edge/edge_01_refined/01_small.png -text
doc/tetrahedron_refinements/1-edge/edge_12_refined/12.png -text
doc/tetrahedron_refinements/1-edge/edge_12_refined/12.pvsm -text
doc/tetrahedron_refinements/1-edge/edge_12_refined/12.txt -text
doc/tetrahedron_refinements/1-edge/edge_12_refined/12.vtk -text
doc/tetrahedron_refinements/1-edge/edge_12_refined/12_small.png -text
doc/tetrahedron_refinements/1-edge/edge_20_refined/20.png -text
doc/tetrahedron_refinements/1-edge/edge_20_refined/20.pvsm -text
doc/tetrahedron_refinements/1-edge/edge_20_refined/20.txt -text
doc/tetrahedron_refinements/1-edge/edge_20_refined/20.vtk -text
doc/tetrahedron_refinements/1-edge/edge_20_refined/20_small.png -text
doc/tetrahedron_refinements/1-edge/edge_23_refined/23.png -text
doc/tetrahedron_refinements/1-edge/edge_23_refined/23.pvsm -text
doc/tetrahedron_refinements/1-edge/edge_23_refined/23.txt -text
doc/tetrahedron_refinements/1-edge/edge_23_refined/23.vtk -text
doc/tetrahedron_refinements/1-edge/edge_23_refined/23_small.png -text
doc/tetrahedron_refinements/1-edge/edge_30_refined/30.png -text
doc/tetrahedron_refinements/1-edge/edge_30_refined/30.pvsm -text
doc/tetrahedron_refinements/1-edge/edge_30_refined/30.txt -text
doc/tetrahedron_refinements/1-edge/edge_30_refined/30.vtk -text
doc/tetrahedron_refinements/1-edge/edge_30_refined/30_small.png -text
doc/tetrahedron_refinements/1-edge/edge_31_refined/31.png -text
doc/tetrahedron_refinements/1-edge/edge_31_refined/31.pvsm -text
doc/tetrahedron_refinements/1-edge/edge_31_refined/31.txt -text
doc/tetrahedron_refinements/1-edge/edge_31_refined/31.vtk -text
doc/tetrahedron_refinements/1-edge/edge_31_refined/31_small.png -text
doc/tetrahedron_refinements/2-edges/edge_01-12_refined/01-12.png -text
doc/tetrahedron_refinements/2-edges/edge_01-12_refined/01-12.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_01-12_refined/01-12.txt -text
doc/tetrahedron_refinements/2-edges/edge_01-12_refined/01-12.vtk -text
doc/tetrahedron_refinements/2-edges/edge_01-12_refined/01-12_smal.png -text
doc/tetrahedron_refinements/2-edges/edge_01-12_refined/01-12_small.png -text
doc/tetrahedron_refinements/2-edges/edge_01-20_refined/01-20.png -text
doc/tetrahedron_refinements/2-edges/edge_01-20_refined/01-20.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_01-20_refined/01-20.txt -text
doc/tetrahedron_refinements/2-edges/edge_01-20_refined/01-20.vtk -text
doc/tetrahedron_refinements/2-edges/edge_01-20_refined/01-20_small.png -text
doc/tetrahedron_refinements/2-edges/edge_01-23_refined/01-23.png -text
doc/tetrahedron_refinements/2-edges/edge_01-23_refined/01-23.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_01-23_refined/01-23.txt -text
doc/tetrahedron_refinements/2-edges/edge_01-23_refined/01-23.vtk -text
doc/tetrahedron_refinements/2-edges/edge_01-23_refined/01-23_smal.png -text
doc/tetrahedron_refinements/2-edges/edge_01-23_refined/01-23_small.png -text
doc/tetrahedron_refinements/2-edges/edge_01-30_refined/01-30.png -text
doc/tetrahedron_refinements/2-edges/edge_01-30_refined/01-30.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_01-30_refined/01-30.txt -text
doc/tetrahedron_refinements/2-edges/edge_01-30_refined/01-30.vtk -text
doc/tetrahedron_refinements/2-edges/edge_01-30_refined/01-30_small.png -text
doc/tetrahedron_refinements/2-edges/edge_01-31_refined/01-31.png -text
doc/tetrahedron_refinements/2-edges/edge_01-31_refined/01-31.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_01-31_refined/01-31.txt -text
doc/tetrahedron_refinements/2-edges/edge_01-31_refined/01-31.vtk -text
doc/tetrahedron_refinements/2-edges/edge_01-31_refined/01-31_small.png -text
doc/tetrahedron_refinements/2-edges/edge_12-20_refined/12-20.png -text
doc/tetrahedron_refinements/2-edges/edge_12-20_refined/12-20.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_12-20_refined/12-20.txt -text
doc/tetrahedron_refinements/2-edges/edge_12-20_refined/12-20.vtk -text
doc/tetrahedron_refinements/2-edges/edge_12-20_refined/12-20_small.png -text
doc/tetrahedron_refinements/2-edges/edge_12-23_refined/12-23.png -text
doc/tetrahedron_refinements/2-edges/edge_12-23_refined/12-23.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_12-23_refined/12-23.txt -text
doc/tetrahedron_refinements/2-edges/edge_12-23_refined/12-23.vtk -text
doc/tetrahedron_refinements/2-edges/edge_12-23_refined/12-23_small.png -text
doc/tetrahedron_refinements/2-edges/edge_12-30_refined/12-30.png -text
doc/tetrahedron_refinements/2-edges/edge_12-30_refined/12-30.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_12-30_refined/12-30.txt -text
doc/tetrahedron_refinements/2-edges/edge_12-30_refined/12-30.vtk -text
doc/tetrahedron_refinements/2-edges/edge_12-30_refined/12-30_small.png -text
doc/tetrahedron_refinements/2-edges/edge_12-31_refined/12-31.png -text
doc/tetrahedron_refinements/2-edges/edge_12-31_refined/12-31.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_12-31_refined/12-31.txt -text
doc/tetrahedron_refinements/2-edges/edge_12-31_refined/12-31.vtk -text
doc/tetrahedron_refinements/2-edges/edge_12-31_refined/12-31_small.png -text
doc/tetrahedron_refinements/2-edges/edge_20-23_refined/20-23.png -text
doc/tetrahedron_refinements/2-edges/edge_20-23_refined/20-23.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_20-23_refined/20-23.txt -text
doc/tetrahedron_refinements/2-edges/edge_20-23_refined/20-23.vtk -text
doc/tetrahedron_refinements/2-edges/edge_20-23_refined/20-23_small.png -text
doc/tetrahedron_refinements/2-edges/edge_20-30_refined/20-30.png -text
doc/tetrahedron_refinements/2-edges/edge_20-30_refined/20-30.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_20-30_refined/20-30.txt -text
doc/tetrahedron_refinements/2-edges/edge_20-30_refined/20-30.vtk -text
doc/tetrahedron_refinements/2-edges/edge_20-30_refined/20-30_small.png -text
doc/tetrahedron_refinements/2-edges/edge_20-31_refined/20-31.png -text
doc/tetrahedron_refinements/2-edges/edge_20-31_refined/20-31.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_20-31_refined/20-31.txt -text
doc/tetrahedron_refinements/2-edges/edge_20-31_refined/20-31.vtk -text
doc/tetrahedron_refinements/2-edges/edge_20-31_refined/20-31_small.png -text
doc/tetrahedron_refinements/2-edges/edge_23-30_refined/23-30.png -text
doc/tetrahedron_refinements/2-edges/edge_23-30_refined/23-30.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_23-30_refined/23-30.txt -text
doc/tetrahedron_refinements/2-edges/edge_23-30_refined/23-30.vtk -text
doc/tetrahedron_refinements/2-edges/edge_23-30_refined/23-30_small.png -text
doc/tetrahedron_refinements/2-edges/edge_23-31_refined/23-31.png -text
doc/tetrahedron_refinements/2-edges/edge_23-31_refined/23-31.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_23-31_refined/23-31.txt -text
doc/tetrahedron_refinements/2-edges/edge_23-31_refined/23-31.vtk -text
doc/tetrahedron_refinements/2-edges/edge_23-31_refined/23-31_small.png -text
doc/tetrahedron_refinements/2-edges/edge_30-31_refined/30-31.png -text
doc/tetrahedron_refinements/2-edges/edge_30-31_refined/30-31.pvsm -text
doc/tetrahedron_refinements/2-edges/edge_30-31_refined/30-31.txt -text
doc/tetrahedron_refinements/2-edges/edge_30-31_refined/30-31.vtk -text
doc/tetrahedron_refinements/2-edges/edge_30-31_refined/30-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-20_refined/01-12-20.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-20_refined/01-12-20.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-12-20_refined/01-12-20.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-12-20_refined/01-12-20.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-12-20_refined/01-12-20_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-23_refined/01-12-23.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-23_refined/01-12-23.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-12-23_refined/01-12-23.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-12-23_refined/01-12-23.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-12-23_refined/01-12-23_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-30_refined/01-12-30.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-30_refined/01-12-30.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-12-30_refined/01-12-30.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-12-30_refined/01-12-30.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-12-30_refined/01-12-30_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-31_refined/01-12-31.png -text
doc/tetrahedron_refinements/3-edges/edge_01-12-31_refined/01-12-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-12-31_refined/01-12-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-12-31_refined/01-12-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-12-31_refined/01-12-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-20-23_refined/01-20-23.png -text
doc/tetrahedron_refinements/3-edges/edge_01-20-23_refined/01-20-23.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-20-23_refined/01-20-23.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-20-23_refined/01-20-23.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-20-23_refined/01-20-23_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-20-30_refined/01-20-30.png -text
doc/tetrahedron_refinements/3-edges/edge_01-20-30_refined/01-20-30.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-20-30_refined/01-20-30.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-20-30_refined/01-20-30.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-20-30_refined/01-20-30_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-20-31_refined/01-20-31.png -text
doc/tetrahedron_refinements/3-edges/edge_01-20-31_refined/01-20-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-20-31_refined/01-20-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-20-31_refined/01-20-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-20-31_refined/01-20-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-23-30_refined/01-23-30.png -text
doc/tetrahedron_refinements/3-edges/edge_01-23-30_refined/01-23-30.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-23-30_refined/01-23-30.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-23-30_refined/01-23-30.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-23-30_refined/01-23-30_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-23-31_refined/01-23-31.png -text
doc/tetrahedron_refinements/3-edges/edge_01-23-31_refined/01-23-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-23-31_refined/01-23-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-23-31_refined/01-23-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-23-31_refined/01-23-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_01-30-31_refined/01-30-31.png -text
doc/tetrahedron_refinements/3-edges/edge_01-30-31_refined/01-30-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_01-30-31_refined/01-30-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_01-30-31_refined/01-30-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_01-30-31_refined/01-30-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_12-20-23_refined/12-20-23.png -text
doc/tetrahedron_refinements/3-edges/edge_12-20-23_refined/12-20-23.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_12-20-23_refined/12-20-23.txt -text
doc/tetrahedron_refinements/3-edges/edge_12-20-23_refined/12-20-23.vtk -text
doc/tetrahedron_refinements/3-edges/edge_12-20-23_refined/12-20-23_small.png -text
doc/tetrahedron_refinements/3-edges/edge_12-20-30_refined/12-20-30.png -text
doc/tetrahedron_refinements/3-edges/edge_12-20-30_refined/12-20-30.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_12-20-30_refined/12-20-30.txt -text
doc/tetrahedron_refinements/3-edges/edge_12-20-30_refined/12-20-30.vtk -text
doc/tetrahedron_refinements/3-edges/edge_12-20-30_refined/12-20-30_small.png -text
doc/tetrahedron_refinements/3-edges/edge_12-20-31_refined/12-20-31.png -text
doc/tetrahedron_refinements/3-edges/edge_12-20-31_refined/12-20-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_12-20-31_refined/12-20-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_12-20-31_refined/12-20-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_12-20-31_refined/12-20-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_12-23-30_refined/12-23-30.png -text
doc/tetrahedron_refinements/3-edges/edge_12-23-30_refined/12-23-30.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_12-23-30_refined/12-23-30.txt -text
doc/tetrahedron_refinements/3-edges/edge_12-23-30_refined/12-23-30.vtk -text
doc/tetrahedron_refinements/3-edges/edge_12-23-30_refined/12-23-30_small.png -text
doc/tetrahedron_refinements/3-edges/edge_12-23-31_refined/12-23-31.png -text
doc/tetrahedron_refinements/3-edges/edge_12-23-31_refined/12-23-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_12-23-31_refined/12-23-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_12-23-31_refined/12-23-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_12-23-31_refined/12-23-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_12-30-31_refined/12-30-31.png -text
doc/tetrahedron_refinements/3-edges/edge_12-30-31_refined/12-30-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_12-30-31_refined/12-30-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_12-30-31_refined/12-30-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_12-30-31_refined/12-30-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_20-23-30_refined/20-23-30.png -text
doc/tetrahedron_refinements/3-edges/edge_20-23-30_refined/20-23-30.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_20-23-30_refined/20-23-30.txt -text
doc/tetrahedron_refinements/3-edges/edge_20-23-30_refined/20-23-30.vtk -text
doc/tetrahedron_refinements/3-edges/edge_20-23-30_refined/20-23-30_small.png -text
doc/tetrahedron_refinements/3-edges/edge_20-23-31_refined/20-23-31.png -text
doc/tetrahedron_refinements/3-edges/edge_20-23-31_refined/20-23-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_20-23-31_refined/20-23-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_20-23-31_refined/20-23-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_20-23-31_refined/20-23-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_20-30-31_refined/20-30-31.png -text
doc/tetrahedron_refinements/3-edges/edge_20-30-31_refined/20-30-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_20-30-31_refined/20-30-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_20-30-31_refined/20-30-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_20-30-31_refined/20-30-31_small.png -text
doc/tetrahedron_refinements/3-edges/edge_23-30-31_refined/23-30-31.png -text
doc/tetrahedron_refinements/3-edges/edge_23-30-31_refined/23-30-31.pvsm -text
doc/tetrahedron_refinements/3-edges/edge_23-30-31_refined/23-30-31.txt -text
doc/tetrahedron_refinements/3-edges/edge_23-30-31_refined/23-30-31.vtk -text
doc/tetrahedron_refinements/3-edges/edge_23-30-31_refined/23-30-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-23_refined/01-12-20-23.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-23_refined/01-12-20-23.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-23_refined/01-12-20-23.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-23_refined/01-12-20-23.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-23_refined/01-12-20-23_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-30_refined/01-12-20-30.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-30_refined/01-12-20-30.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-30_refined/01-12-20-30.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-30_refined/01-12-20-30.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-30_refined/01-12-20-30_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-31_refined/01-12-20-31.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-31_refined/01-12-20-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-31_refined/01-12-20-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-31_refined/01-12-20-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-12-20-31_refined/01-12-20-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-30_refined/01-12-23-30.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-30_refined/01-12-23-30.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-30_refined/01-12-23-30.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-30_refined/01-12-23-30.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-30_refined/01-12-23-30_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-31_refined/01-12-23-31.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-31_refined/01-12-23-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-31_refined/01-12-23-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-31_refined/01-12-23-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-12-23-31_refined/01-12-23-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-30-31_refined/01-12-30-31.png -text
doc/tetrahedron_refinements/4-edges/edge_01-12-30-31_refined/01-12-30-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-12-30-31_refined/01-12-30-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-12-30-31_refined/01-12-30-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-12-30-31_refined/01-12-30-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-30_refined/01-20-23-30.png -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-30_refined/01-20-23-30.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-30_refined/01-20-23-30.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-30_refined/01-20-23-30.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-30_refined/01-20-23-30_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-31_refined/01-20-23-31.png -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-31_refined/01-20-23-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-31_refined/01-20-23-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-31_refined/01-20-23-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-20-23-31_refined/01-20-23-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-20-30-31_refined/01-20-30-31.png -text
doc/tetrahedron_refinements/4-edges/edge_01-20-30-31_refined/01-20-30-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-20-30-31_refined/01-20-30-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-20-30-31_refined/01-20-30-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-20-30-31_refined/01-20-30-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_01-23-30-31_refined/01-23-30-31.png -text
doc/tetrahedron_refinements/4-edges/edge_01-23-30-31_refined/01-23-30-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_01-23-30-31_refined/01-23-30-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_01-23-30-31_refined/01-23-30-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_01-23-30-31_refined/01-23-30-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-30_refined/12-20-23-30.png -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-30_refined/12-20-23-30.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-30_refined/12-20-23-30.txt -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-30_refined/12-20-23-30.vtk -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-30_refined/12-20-23-30_small.png -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-31_refined/12-20-23-31.png -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-31_refined/12-20-23-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-31_refined/12-20-23-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-31_refined/12-20-23-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_12-20-23-31_refined/12-20-23-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_12-20-30-31_refined/12-20-30-31.png -text
doc/tetrahedron_refinements/4-edges/edge_12-20-30-31_refined/12-20-30-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_12-20-30-31_refined/12-20-30-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_12-20-30-31_refined/12-20-30-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_12-20-30-31_refined/12-20-30-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_12-23-30-31_refined/12-23-30-31.png -text
doc/tetrahedron_refinements/4-edges/edge_12-23-30-31_refined/12-23-30-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_12-23-30-31_refined/12-23-30-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_12-23-30-31_refined/12-23-30-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_12-23-30-31_refined/12-23-30-31_small.png -text
doc/tetrahedron_refinements/4-edges/edge_20-23-30-31_refined/20-23-30-31.png -text
doc/tetrahedron_refinements/4-edges/edge_20-23-30-31_refined/20-23-30-31.pvsm -text
doc/tetrahedron_refinements/4-edges/edge_20-23-30-31_refined/20-23-30-31.txt -text
doc/tetrahedron_refinements/4-edges/edge_20-23-30-31_refined/20-23-30-31.vtk -text
doc/tetrahedron_refinements/4-edges/edge_20-23-30-31_refined/20-23-30-31_small.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-30_refined/01-12-20-23-30.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-30_refined/01-12-20-23-30.pvsm -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-30_refined/01-12-20-23-30.txt -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-30_refined/01-12-20-23-30.vtk -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-30_refined/01-12-20-23-30_small.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-31_refined/01-12-20-23-31.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-31_refined/01-12-20-23-31.pvsm -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-31_refined/01-12-20-23-31.txt -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-31_refined/01-12-20-23-31.vtk -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-23-31_refined/01-12-20-23-31_small.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-30-31_refined/01-12-20-30-31.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-30-31_refined/01-12-20-30-31.pvsm -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-30-31_refined/01-12-20-30-31.txt -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-30-31_refined/01-12-20-30-31.vtk -text
doc/tetrahedron_refinements/5-edges/edge_01-12-20-30-31_refined/01-12-20-30-31_small.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-23-30-31_refined/01-12-23-30-31.png -text
doc/tetrahedron_refinements/5-edges/edge_01-12-23-30-31_refined/01-12-23-30-31.pvsm -text
doc/tetrahedron_refinements/5-edges/edge_01-12-23-30-31_refined/01-12-23-30-31.txt -text
doc/tetrahedron_refinements/5-edges/edge_01-12-23-30-31_refined/01-12-23-30-31.vtk -text
doc/tetrahedron_refinements/5-edges/edge_01-12-23-30-31_refined/01-12-23-30-31_small.png -text
doc/tetrahedron_refinements/5-edges/edge_01-20-23-30-31_refined/01-20-23-30-31.png -text
doc/tetrahedron_refinements/5-edges/edge_01-20-23-30-31_refined/01-20-23-30-31.pvsm -text
doc/tetrahedron_refinements/5-edges/edge_01-20-23-30-31_refined/01-20-23-30-31.txt -text
doc/tetrahedron_refinements/5-edges/edge_01-20-23-30-31_refined/01-20-23-30-31.vtk -text
doc/tetrahedron_refinements/5-edges/edge_01-20-23-30-31_refined/01-20-23-30-31_small.png -text
doc/tetrahedron_refinements/5-edges/edge_12-20-23-30-31_refined/12-20-23-30-31.png -text
doc/tetrahedron_refinements/5-edges/edge_12-20-23-30-31_refined/12-20-23-30-31.pvsm -text
doc/tetrahedron_refinements/5-edges/edge_12-20-23-30-31_refined/12-20-23-30-31.txt -text
doc/tetrahedron_refinements/5-edges/edge_12-20-23-30-31_refined/12-20-23-30-31.vtk -text
doc/tetrahedron_refinements/5-edges/edge_12-20-23-30-31_refined/12-20-23-30-31_small.png -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.aux -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.log -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.pdf -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.png -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.pvsm -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.tex -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.tex.orig -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.txt -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31.vtk -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/01-12-20-23-30-31_small.png -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/buildlatex.bash -text
doc/tetrahedron_refinements/6-edges/edge_01-12-20-23-30-31_refined/output_file.jpg -text
doc/tetrahedron_refinements/README -text
doc/tetrahedron_refinements/text2vtk.py -text
/license.txt -text
/missing -text
/rules.make -text
src/H5Part++.cc -text
src/H5Part++.hh -text
src/H5Part.c -text
src/H5Part.cc -text
src/H5Part.h -text
src/H5Part.hh -text
src/H5Part.inc -text
src/H5PartF.c -text
src/H5PartPrivate.h -text
src/H5PartTypes.h -text
src/C++/H5Fed.cc -text
src/C++/H5Fed.hh -text
src/C++/Makefile.am -text
src/C/H5.c -text
src/C/H5Block.c -text
src/C/H5Block_readwrite.c -text
src/C/H5Fed.c -text
src/C/H5Fed_adjacency.c -text
src/C/H5Fed_inquiry.c -text
src/C/H5Fed_retrieve.c -text
src/C/H5Fed_store.c -text
src/C/H5Fed_tags.c -text
src/C/H5Part.c -text
src/C/H5_attachments.c -text
src/C/H5_attribs.c -text
src/C/Makefile.am -text
src/C/generate-h5b-readwrite.py -text
src/Fortran/H5.f90 -text
src/Fortran/H5Block.f90 -text
src/Fortran/H5Block_F.c -text
src/Fortran/H5Block_readwrite.f90 -text
src/Fortran/H5Block_readwrite_F.c -text
src/Fortran/H5Part.f90 -text
src/Fortran/H5Part_F.c -text
src/Fortran/H5_F.c -text
src/Fortran/H5_attribs.f90 -text
src/Fortran/H5_attribs_F.c -text
src/Fortran/Makefile.am -text
src/Fortran/TestUnderscore.f -text
src/Fortran/TestUnderscoreC.c -text
src/Makefile.am -text
src/TestUnderscore.f -text
src/TestUnderscoreC.c -text
src/addToDoxygenMainPage.h -text
test/Bench.c -text
test/H5ParallelTest.cc -text
test/H5PartAndreasTest.cc -text
test/H5PartTest.cc -text
test/H5PartTestParallel.cc -text
test/H5ecloudExample.cc -text
test/H5test.cc -text
test/H5testF.f -text
test/H5testFpar.f -text
src/h5core/Makefile.am -text
src/h5core/h5_attach.c -text
src/h5core/h5_attribs.c -text
src/h5core/h5_attribs_private.h -text
src/h5core/h5_core_private.h -text
src/h5core/h5_errorhandling.c -text
src/h5core/h5_errorhandling_private.h -text
src/h5core/h5_fcmp.c -text
src/h5core/h5_fcmp_private.h -text
src/h5core/h5_hdf5.c -text
src/h5core/h5_hdf5_private.h -text
src/h5core/h5_hsearch.c -text
src/h5core/h5_hsearch_private.h -text
src/h5core/h5_lustre.c -text
src/h5core/h5_lustre_private.h -text
src/h5core/h5_maps.c -text
src/h5core/h5_maps_private.h -text
src/h5core/h5_model.c -text
src/h5core/h5_mpi.c -text
src/h5core/h5_mpi_private.h -text
src/h5core/h5_openclose.c -text
src/h5core/h5_qsort.c -text
src/h5core/h5_qsort_private.h -text
src/h5core/h5_qsort_r.c -text
src/h5core/h5_readwrite.c -text
src/h5core/h5_readwrite_private.h -text
src/h5core/h5_syscall.c -text
src/h5core/h5_syscall_private.h -text
src/h5core/h5_types_private.h -text
src/h5core/h5b_attribs.c -text
src/h5core/h5b_errorhandling_private.h -text
src/h5core/h5b_model.c -text
src/h5core/h5b_model_private.h -text
src/h5core/h5b_readwrite.c -text
src/h5core/h5b_types_private.h -text
src/h5core/h5t_access_private.h -text
src/h5core/h5t_access_tetm.c -text
src/h5core/h5t_access_trim.c -text
src/h5core/h5t_adjacencies.c -text
src/h5core/h5t_adjacencies_private.h -text
src/h5core/h5t_adjacencies_tetm.c -text
src/h5core/h5t_adjacencies_trim.c -text
src/h5core/h5t_consts.c -text
src/h5core/h5t_consts_private.h -text
src/h5core/h5t_core_private.h -text
src/h5core/h5t_errorhandling.c -text
src/h5core/h5t_errorhandling_private.h -text
src/h5core/h5t_hsearch.c -text
src/h5core/h5t_hsearch_private.h -text
src/h5core/h5t_inquiry.c -text
src/h5core/h5t_map.c -text
src/h5core/h5t_map_private.h -text
src/h5core/h5t_openclose.c -text
src/h5core/h5t_openclose_private.h -text
src/h5core/h5t_readwrite.c -text
src/h5core/h5t_readwrite_private.h -text
src/h5core/h5t_readwrite_tetm.c -text
src/h5core/h5t_readwrite_trim.c -text
src/h5core/h5t_ref_elements.c -text
src/h5core/h5t_ref_elements_private.h -text
src/h5core/h5t_retrieve.c -text
src/h5core/h5t_retrieve_private.h -text
src/h5core/h5t_retrieve_tetm.c -text
src/h5core/h5t_retrieve_trim.c -text
src/h5core/h5t_store.c -text
src/h5core/h5t_store_private.h -text
src/h5core/h5t_store_tetm.c -text
src/h5core/h5t_store_trim.c -text
src/h5core/h5t_store_trim_private.h -text
src/h5core/h5t_tags.c -text
src/h5core/h5t_tags_private.h -text
src/h5core/h5t_types_private.h -text
src/h5core/h5u_errorhandling_private.h -text
src/h5core/h5u_model.c -text
src/h5core/h5u_readwrite.c -text
src/h5core/h5u_types_private.h -text
src/include/H5.h -text
src/include/H5Block.h -text
src/include/H5Block_readwrite.h -text
src/include/H5Fed.h -text
src/include/H5Fed_adjacency.h -text
src/include/H5Fed_inquiry.h -text
src/include/H5Fed_retrieve.h -text
src/include/H5Fed_store.h -text
src/include/H5Fed_tags.h -text
src/include/H5Part.h -text
src/include/H5_attachments.h -text
src/include/H5_attribs.h -text
src/include/H5hut.h -text
src/include/grephdr -text
src/include/h5core/h5_attach.h -text
src/include/h5core/h5_attribs.h -text
src/include/h5core/h5_core.h -text
src/include/h5core/h5_errno.h -text
src/include/h5core/h5_errorhandling.h -text
src/include/h5core/h5_hdf5.h -text
src/include/h5core/h5_maps.h -text
src/include/h5core/h5_openclose.h -text
src/include/h5core/h5_readwrite.h -text
src/include/h5core/h5_syscall.h -text
src/include/h5core/h5_types.h -text
src/include/h5core/h5b_attribs.h -text
src/include/h5core/h5b_model.h -text
src/include/h5core/h5b_readwrite.h -text
src/include/h5core/h5t_adjacencies.h -text
src/include/h5core/h5t_core.h -text
src/include/h5core/h5t_inquiry.h -text
src/include/h5core/h5t_map.h -text
src/include/h5core/h5t_openclose.h -text
src/include/h5core/h5t_readwrite.h -text
src/include/h5core/h5t_ref_elements.h -text
src/include/h5core/h5t_retrieve.h -text
src/include/h5core/h5t_storemesh.h -text
src/include/h5core/h5t_tags.h -text
src/include/h5core/h5u_model.h -text
src/include/h5core/h5u_readwrite.h -text
test/H5Block/BlockTestSpecs.txt -text
test/H5Block/H5BlockDissolveGhosts.c -text
test/H5Block/H5BlockParTestScalarField.c -text
test/H5Block/H5BlockParTestScalarField.pbs -text
test/H5Block/H5BlockParTestScalarFieldF.f90 -text
test/H5Block/H5BlockTestAttributes.c -text
test/H5Block/H5BlockTestAttributesF.f90 -text
test/H5Block/Makefile.am -text
test/H5Fed/Makefile.am -text
test/H5Fed/map_tet2globalid.c -text
test/H5Fed/map_triangle2globalid.c -text
test/H5Fed/tetmesh_adjacencies.c -text
test/H5Fed/tetmesh_read.c -text
test/H5Fed/tetmesh_read_tags.c -text
test/H5Fed/tetmesh_write.c -text
test/H5Fed/tetmesh_write2.c -text
test/H5Fed/tetmesh_write_tags.c -text
test/H5Fed/trimesh_adjacencies.c -text
test/H5Fed/trimesh_read.c -text
test/H5Fed/trimesh_write.c -text
test/H5Fed/trimesh_write_dunetest.c -text
test/H5Fed/write_boundary.c -text
test/H5Part/Bench.c -text
test/H5Part/H5ParallelTest.cc -text
test/H5Part/H5PartAndreasTest.cc -text
test/H5Part/H5PartTest.cc -text
test/H5Part/H5PartTestParallel.cc -text
test/H5Part/H5test.cc -text
test/H5Part/H5testF.f -text
test/H5Part/H5testFpar.f90 -text
test/H5Part/Makefile.am -text
test/Makefile.am -text
test/h5b_read.c -text
test/h5b_test.c -text
test/h5b_write.c -text
test/h5u_read.c -text
test/h5u_test.c -text
test/h5u_write.c -text
test/params.h -text
test/testframe.c -text
test/testframe.h -text
tools/H5PartMerge/AUTHORS -text
tools/H5PartMerge/COPYING -text
tools/H5PartMerge/ChangeLog -text
tools/H5PartMerge/INSTALL -text
tools/H5PartMerge/NEWS -text
tools/H5PartMerge/README -text
tools/H5PartMerge/autogen.sh -text
tools/H5PartMerge/configure -text
tools/H5PartMerge/configure.ac -text
tools/H5PartMerge/makefile.am -text
tools/H5PartMerge/src/H5merge.cpp -text
tools/H5PartMerge/src/optparse.cpp -text
tools/H5PartMerge/src/optparse.hh -text
tools/Makefile.am -text
tools/README -text
tools/h5hutcc.in -text
tools/h5pAttrib.cc -text
tools/h5pToGNUplot.cc -text
tools/h5pToGNUplot.py -text
tools/homdynToH5p.cc -text
visit_plugins/databases/H5Part/.depend -text
visit_plugins/databases/H5Part/Makefile -text
visit_plugins/databases/H5Part/README.txt -text
+69
View File
@@ -0,0 +1,69 @@
/INSTALL
/Makefile
/Makefile.in
/aclocal.m4
/autom4te.cache
/config.guess
/config.h
/config.h.in
/config.log
/config.status
/config.sub
/configure
/depcomp
doc/Makefile
doc/Makefile.in
/install-sh
/missing
src/.deps
src/C++/Makefile
src/C++/Makefile.in
src/C/.deps
src/C/Makefile
src/C/Makefile.in
src/C/libH5hutC.a
src/Fortran/.deps
src/Fortran/Makefile
src/Fortran/Makefile.in
src/Makefile
src/Makefile.in
src/h5core/.deps
src/h5core/Makefile
src/h5core/Makefile.in
src/h5core/libH5hut.a
src/include/H5hutF.h
src/lib
/stamp-h1
/svn-prop.tmp
test/.deps
test/H5Block/H5BlockParTestScalarField
test/H5Block/H5BlockTestAttributes
test/H5Block/Makefile
test/H5Block/Makefile.in
test/H5Fed/.deps
test/H5Fed/Makefile
test/H5Fed/Makefile.in
test/H5Fed/simple_tet.h5
test/H5Fed/simple_triangle.h5
test/H5Fed/tetmesh_adjacencies
test/H5Fed/tetmesh_read
test/H5Fed/tetmesh_read_tags
test/H5Fed/tetmesh_write
test/H5Fed/tetmesh_write2
test/H5Fed/tetmesh_write_tags
test/H5Fed/trimesh_read
test/H5Fed/trimesh_write
test/H5Part/Bench
test/H5Part/H5PartAndreasTest
test/H5Part/H5PartTestP
test/H5Part/H5test
test/H5Part/Makefile
test/H5Part/Makefile.in
test/Makefile
test/Makefile.in
test/h5b_test
test/h5u_test
tools/.deps
tools/Makefile
tools/Makefile.in
tools/h5hutcc
+71
View File
@@ -0,0 +1,71 @@
*** Copyright Notice ***
H5hut Copyright (c) 2006-2010, The Regents of the University of California,
through Lawrence Berkeley National Laboratory (subject to receipt of any
required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
Institut (Switzerland). All rights reserved.
If you have questions about your rights to use or distribute this
software, please contact Berkeley Lab's Technology Transfer Department
at TTD@lbl.gov referring to "H5Part (LBNL Ref CR-2255)"
NOTICE. This software was developed under partial funding from the U.S.
Department of Energy. As such, the U.S. Government has been granted for
itself and others acting on its behalf a paid-up, nonexclusive,
irrevocable, worldwide license in the Software to reproduce, prepare
derivative works, and perform publicly and display publicly. Beginning
five (5) years after the date permission to assert copyright is obtained
from the U.S. Department of Energy, and subject to any subsequent five
(5) year renewals, the U.S. Government is granted for itself and others
acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide
license in the Software to reproduce, prepare derivative works,
distribute copies to the public, perform publicly and display publicly,
and to permit others to do so.
*** License agreement ***
H5Part Copyright (c) 2006-2009, The Regents of the University of California,
through Lawrence Berkeley National Laboratory (subject to receipt of any
required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
Institut (Switzerland). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
(1) Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
(2) Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
(3) Neither the name of the University of California, Lawrence Berkeley
National Laboratory, U.S. Dept. of Energy, Paul Scherrer Institut
(Switzerland) nor the names of its contributors may be used to endorse
or promote products derived from this software without specific prior
written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
You are under no obligation whatsoever to provide any bug fixes,
patches, or upgrades to the features, functionality or performance of
the source code ("Enhancements") to anyone; however, if you choose to
make your Enhancements available either publicly, or directly to
Lawrence Berkeley National Laboratory, without imposing a separate
written license agreement for such Enhancements, then you hereby grant
the following license: a non-exclusive, royalty-free perpetual license
to install, use, modify, prepare derivative works, incorporate into
other computer software, distribute, and sublicense such enhancements or
derivative works thereof, in binary and source code form.
-7
View File
@@ -1,7 +0,0 @@
*** Copyright Notice ***
H5Part Copyright (c) 2006, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Dept. of Energy) and the Paul Scherrer Institut (Switzerland). All rights reserved.
If you have questions about your rights to use or distribute this software, please contact Berkeley Lab's Technology Transfer Department at TTD@lbl.gov referring to "H5Part (LBNL Ref CR-2255)"
NOTICE. This software was developed under partial funding from the U.S. Department of Energy. As such, the U.S. Government has been granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the Software to reproduce, prepare derivative works, and perform publicly and display publicly. Beginning five (5) years after the date permission to assert copyright is obtained from the U.S. Department of Energy, and subject to any subsequent five (5) year renewals, the U.S. Government is granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the Software to reproduce, prepare derivative works, distribute copies to the public, perform publicly and display publicly, and to permit others to do so.
-427
View File
@@ -1,427 +0,0 @@
// rights - 2006-, copyright patrick leidenberger and benedikt oswald,
// all rights reserved
// project - gmsh2h5fed
// file name - gmsh2h5fed.cc
// file type - c++ implementaton file
// objective - main file for the gmsh to hdf5fed converter
// modified - 2006 jun 26, creation, patrick leidenberger
// modified - 2006 aug 25, extend, patrick leidenberger
// modified - 2006 aug 26, pl, integrate automatic index mapping.
//
// feature - Implements the a mesh preprocessor.
// feature - It will read gmsh's mesh files of version 2.0 and write the mesh
// feature - into an HDF5/FiniteElementData file.
// required software - rlog library, boost library
#include <gmsh2h5fed.hh>
using namespace rlog;
int main(int argc, char **argv)
{
//=================//
// Initialize RLog //
//=================//
// Make a instance of the class for RLog.
StdioNode stdLog;
/** Subscchar* inFile_;ribe output channels.
* Compile with -DRLOG_DEBUG to get the debug output.
**/
#ifdef USE_RLOG_DEBUG_CHANNEL
stdLog.subscribeTo(GetGlobalChannel("debug"));
#endif //USE_RLOG_DEBUG_CHANNEL
#ifdef USE_RLOG_ERROR_CHANNEL
stdLog.subscribeTo(GetGlobalChannel("error"));
#endif //USE_RLOG_ERROR_CHANNEL
#ifdef USE_RLOG_INFO_CHANNEL
stdLog.subscribeTo(GetGlobalChannel("info"));
#endif //USE_RLOG_INFO_CHANNEL
#ifdef USE_RLOG_WARNING_CHANNEL
stdLog.subscribeTo(GetGlobalChannel("warning"));
#endif //USE_RLOG_WARNING_CHANNEL
// Define variables that hold the command line parameters.
string gmshInputFile;
string hdf5fedOutputFile;
bool writeFileForce = false;
//==================================================//
// Parse the comand line options //
// with the program_options from the boost library. //
//==================================================//
try
{
// Define and instance of the program_options class and name it.
boost::program_options::options_description
desc("Allowed program options");
// Define the command line options parsing rules.
desc.add_options()
("help", "produce this help")
("input-file", boost::program_options::value<string>(),
"gmsh v2.0 input file")
("output-file", boost::program_options::value<string>(),
"hdf5fed output file")
("force", "if output file already exists, overwrite");
// Parse the command line.
boost::program_options::variables_map varMap;
boost::program_options::store
(boost::program_options::parse_command_line(argc, argv, desc),
varMap);
boost::program_options::notify(varMap);
// Action in relation to the command line options.
if (varMap.count("help"))
{
cout << desc << "\n";
return ERRORCODE;
}
else if ((varMap.count("input-file"))
&& (varMap.count("output-file")))
{
gmshInputFile = varMap["input-file"].as<string>();
hdf5fedOutputFile = varMap["output-file"].as<string>();
rInfo("Input filename: %s",
gmshInputFile.c_str());
rInfo("Output filename: %s",
hdf5fedOutputFile.c_str());
// Check it --force is set.
// --force writes the output file, if the file already exists.
if (varMap.count("force"))
writeFileForce = true;
else
writeFileForce = false;
}
else
{
rError("You have insert wrong options.");
rError("For details use: --help.");
return ERRORCODE;
}
}
catch(exception& error)
{
rError("Error: %d",error.what());
return ERRORCODE;
}
//==========================//
// Start with the main work //
//==========================//
//---------------------------------------//
// Variables for the data form gmsh file //
//---------------------------------------//
// Variable for the gmsh nodes.
std::vector<vector<double> > gmshNodes;
gmshNodes.clear();
// Vector for the gmshs nodes index.
std::vector<unsigned int> gmshNodesIndex;
gmshNodesIndex.clear();
// Vector for the gmshs tetrahedrons.
std::vector<std::vector<unsigned int> > gmshTetrahedron;
gmshTetrahedron.clear();
// Vector for the gmshs tetrahedrons.
std::vector<std::vector<unsigned int> > gmshTetrahedronTag;
gmshTetrahedronTag.clear();
// Make an instance of the vtk class.
gmsh gmshInFile;
// Set the file name of the input file
gmshInFile.gmshFileName(gmshInputFile);
// Open the gmsh mesh file, write the content to a string and close the
// file.
gmshInFile.gmshOpen();
// Parse the gmsh mesh file.
gmshInFile.gmshParseFile(&gmshInFile);
// Get a vector with all node coordinates from the gmsh file.
gmshNodes = gmshInFile.gmshNode();
// Put all H5Fed funktions in here.
#ifdef HAVE_HDF5
// Create H5Fed class instance.
H5Fed::H5Fed h5fedFile;
// Open H5Fed file for writing. Filename and file write access comes
// from command line parameters.
if (writeFileForce == false)
h5fedFile.open(hdf5fedOutputFile,FILE_CREATE);
else
h5fedFile.open(hdf5fedOutputFile,FILE_CREATE_FORCE);
// Create the group hierarchie in the hdf5fed file.
h5fedFile.createGroupHierarchie();
// Get the gmsh node index vector
gmshNodesIndex = gmshInFile.gmshNodeNumber();
// The gmsh node index has gaps and is not consecutive.
// So we activate the automatic index mapping from the h5fed api.
h5fedFile.beginIndexMapping(&gmshNodesIndex);
// Get a vector with all node coordinates from the gmsh file.
gmshNodes = gmshInFile.gmshNode();
// Write the nodes to the h5fed file.
h5fedFile.coord3d(&gmshNodes);
// Every node in h5fed file, so we can save memory.
gmshNodes.clear();
//Get a vector with all tetrahedrons from gmsh file.
gmshTetrahedron = gmshInFile.gmshTetrahedron();
for(int varI = 0; varI<gmshTetrahedron.size(); varI++)
{
// rDebug("Elem: %d Nodes: %d; %d; %d; %d", varI, gmshTetrahedron[varI][0], gmshTetrahedron[varI][1], gmshTetrahedron[varI][2], gmshTetrahedron[varI][3]);
}
// Write the tetrahedrons to the h5fed file on the respective level.
h5fedFile.tetrahedron(0,&gmshTetrahedron);
// Every terahedron in h5fed file, so we can save memory.
gmshTetrahedron.clear();
//Get a vector with all tetrahedrons from gmsh file.
gmshTetrahedronTag = gmshInFile.gmshTetrahedronTag();
for(int varI = 0; varI<gmshTetrahedronTag.size(); varI++)
{
// rDebug("Elem: %d Nodes: %d; %d", varI, gmshTetrahedronTag[varI][0], gmshTetrahedronTag[varI][1]);
}
// End with the automatic index mapping because we have no further actcion
// with an gmsh file index.
h5fedFile.endIndexMapping();
// Close H5Fed file.
h5fedFile.close();
#endif // HAVE_HDF5
/*
// Write all vtkPoints_ to the screen.
for (int i = 0; i<(gmshInFile.getVtkVecSize()); i++)
{
rDebug("%d vtkPoint x, y, z: %e %e %e",
i, gmshInFile.getVtkVec(i,0),gmshInFile.getVtkVec(i,1),gmshInFile.getVtkVec(i,2));
}
*/
/*
//Write all vktCells_ with cell types and cell points on the screen.
for (int i = 0;
(i<(gmshInFile.getVtkCellTypesN())) && (i<(gmshInFile.getVtkCellsN()));
i++)
{
rDebug("vtkCellType: %d", gmshInFile.getVtkCellType(i));
for (int j = 0; j<(gmshInFile.getVtkCellPointN(i)); j++)
{
rDebug(" vtkPoint: %d", gmshInFile.getVtkCellPoint(i,j));
}
}
// Write all vtk point datas on the screen.
//rDebug("size: %d", gmshInFile.vtkVectorSize("vtkPointData_"));
for (int i = 0;
i<(gmshInFile.vtkVectorSize("vtkPointData_"));
i++)
{
for (int j = 0; j<(gmshInFile.vtkVectorSize("vtkPointData_",i)); j++)
{
for(int k = 0; k<(gmshInFile.vtkVectorSize("vtkPointData_",i,j)); k++)
rDebug("vtk point vector element i, j, k, value: %d %d %d %e",
i,j,k,gmshInFile.vtkVector("vtkPointData_",i,j,k));
}
}
// Write all vtkPointsType_ to the screen.
rDebug("size of vtkPointDataType_: %d", gmshInFile.vtkVectorSize("vtkPointDataType_"));
for (int i = 0; i<(gmshInFile.vtkVectorSize("vtkPointDataType_")); i++)
{
rDebug("vtkPointDataType_ %s", gmshInFile.vtkVector("vtkPointDataType_",i).c_str());
}
// Write all vtkPointsName_ to the screen.
rDebug("size of vtkPointDataName_: %d", gmshInFile.vtkVectorSize("vtkPointDataName_"));
for (int i = 0; i<(gmshInFile.vtkVectorSize("vtkPointDataName_")); i++)
{
rDebug("vtkPointName_ %s", gmshInFile.vtkVector("vtkPointDataName_",i).c_str());
}
// Write all vtkPointsFormat_ to the screen.
rDebug("size of vtkPointDataFormat_: %d", gmshInFile.vtkVectorSize("vtkPointDataFormat_"));
for (int i = 0; i<(gmshInFile.vtkVectorSize("vtkPointDataFormat_")); i++)
{
rDebug("vtkPointFormat_ %s", (gmshInFile.vtkVector("vtkPointDataFormat_",i)).c_str());
}
// Write all vtk point datas on the screen.
//rDebug("size: %d", gmshInFile.vtkVectorSize("vtkCellData_"));
for (int i = 0;
i<(gmshInFile.vtkVectorSize("vtkCellData_"));
i++)
{
for (int j = 0; j<(gmshInFile.vtkVectorSize("vtkCellData_",i)); j++)
{
for(int k = 0; k<(gmshInFile.vtkVectorSize("vtkCellData_",i,j)); k++)
rDebug("vtk cell vector element i, j, k, value: %d %d %d %e",
i,j,k,gmshInFile.vtkVector("vtkCellData_",i,j,k));
}
}
// Write all vtkCellsType_ to the screen.
rDebug("size of vtkCellDataType_: %d", gmshInFile.vtkVectorSize("vtkCellDataType_"));
for (int i = 0; i<(gmshInFile.vtkVectorSize("vtkCellDataType_")); i++)
{
rDebug("vtkCellDataType_ %s", (gmshInFile.vtkVector("vtkCellDataType_",i)).c_str());
}
// Write all vtkCellsName_ to the screen.
rDebug("size of vtkCellDataName_: %d", gmshInFile.vtkVectorSize("vtkCellDataName_"));
for (int i = 0; i<(gmshInFile.vtkVectorSize("vtkCellDataName_")); i++)
{
rDebug("vtkCellDataName_ %s", (gmshInFile.vtkVector("vtkCellDataName_",i)).c_str());
}
// Write all vtkCellsFormat_ to the screen.
rDebug("size of vtkCellDataFormat_: %d", gmshInFile.vtkVectorSize("vtkCellDataFormat_"));
for (int i = 0; i<(gmshInFile.vtkVectorSize("vtkCellDataFormat_")); i++)
{
rDebug("vtkCellDataFormat_ %s", (gmshInFile.vtkVector("vtkCellDataFormat_",i)).c_str());
}
*/
// cout <<"\n\n" <<gmshInFile.getUg PointsN()<< "\n\n";
// int i = gmshInFile.openVtk();
//vtk* vtkPt;
//vtkPt = &gmshInFile;
//vtkPt->vtkVersion();
//gmshInFile.vtkVersion();
// This vector is used in loops to transport datas from vtk to ristream.
vector<double> dataVector1;
/*
// Scaling factor for the vtk input data.
double scale = 15.0;
ristream rib;
// Set the filname of the .rib file.
rib.RibsFile(ribOutputFile);
rib.openRibs();
rib.RibsFormat(1024,768);
rib.RibsLightSource("distantlight");
rib.RibsProjection("perspective");
//rib.RibsProjection("orthographic");
// Give the center or the rotation.
double rotCenterX = 0.0;
double rotCenterY = 0.0;
double rotRadius = 1.6;
double cameraPosX = sqrt(3.92); // Only the camera postion if nLoop = 1;
double cameraPosY = 0;
cameraPosX = 1; // Only the camera postion if nLoop = 1;
cameraPosY = -1;
char filename[20];
const int nLoop = 1;
for(int i = 0; i<nLoop; i++)
{
if (nLoop > 1)
{
cameraPosX = -rotRadius*cos(2*PI*i/(double)nLoop) + rotCenterX;
cameraPosY = -rotRadius*sin(2*PI*i/(double)nLoop) + rotCenterY;
}
rib.RibsFrameBegin();
// Set the file name for the renderer output image.
string tempstring = "";
tempstring = "tests/movie_data/Hallo";
//tempstring.append("%d.tiff",i);
//tempstring.append((string)i);
tempstring.append(".tiff");
//sprintf ( tempchar ,"tests/movie_data/Hallo%d.tiff",i );
// rib.RibsFrameFilename("");
rib.RibsDisplay(frameName);
rDebug(tempstring.c_str());
// Camera Position and orientation:
// The default camera postion is the world coordinate origin and it
// looks in the -z-direction.
// The function RibsPlaceCamera set the position of the camera in world
// coordinates and the point, where to look at in world coordinates.
// To get a skew view, you can roll the camera.
// This function must be called befor RibsWorldBegin!
rib.RibsPlaceCamera(1.5*cameraPosX, 1.5*cameraPosY, 2.0, // position
0.0, 0.0, 1.2, // look-at point
0.0) ; // roll angle (in degree)
rib.RibsWorldBegin();
rib.RibsSurface("plastic");
rib.RibsCoordinateSystem();
//Write all vktCells_ with cell types and cell points on the screen.
//rDebug("getVtkCellTypesN(): %d", gmshInFile.getVtkCellTypesN());
for (int i = 0; i<(gmshInFile.getVtkCellTypesN()); i++)
{
// Look if there is a thetrahedron.
if (gmshInFile.getVtkCellType(i) == 10)
{
// Clear the data structur to save the point cooridnates temporal.
dataVector1.clear();
// Read the points of a tetrahedron.
//rDebug("getVtkCellPointN(%d): %d", i, gmshInFile.getVtkCellPointN(i));
for (int j = 0; j<(gmshInFile.getVtkCellPointN(i)); j++)
{
int tempInt = gmshInFile.getVtkCellPoint(i,j);
dataVector1.push_back(gmshInFile.getVtkVec(tempInt, 0));
dataVector1.push_back(gmshInFile.getVtkVec(tempInt, 1));
dataVector1.push_back(gmshInFile.getVtkVec(tempInt, 2));
//rDebug("vtkPoint: %d, %f %f %f", tempInt,
// gmshInFile.getVtkVec(tempInt, 0),
// gmshInFile.getVtkVec(tempInt, 1),
// gmshInFile.getVtkVec(tempInt, 2));
}
rib.RibsColor(0.0,0,1.0,1.0);
rib.RibsTetrahedron(scale*dataVector1[0], scale*dataVector1[1], scale*dataVector1[2],
scale*dataVector1[3], scale*dataVector1[4], scale*dataVector1[5],
scale*dataVector1[6], scale*dataVector1[7], scale*dataVector1[8],
scale*dataVector1[9], scale*dataVector1[10],scale*dataVector1[11],
0.8);
}
}
*/
/*
rib.RibsColor(1.0,0,0,0.6);
rib.RibsTetrahedron(0.3, 0.3, 0.0,
2.0, 0.3, 0.0,
0.3, 2.0, 0.0,
0.3, 0.3, 0.5,
1.0);
rib.RibsColor(0,1.0,0,0.7);
rib.RibsTetrahedron(0.3, 0.3, 0.0,
2.0, 0.3, 0.0,
0.3, 2.0, 0.0,
0.3, 0.3, 0.5,
0.6);
rib.RibsColor(0.0,0,1.0,1.0);
rib.RibsTetrahedron(0.3, 0.3, 0.0,
2.0, 0.3, 0.0,
0.3, 2.0, 0.0,
0.3, 0.3, 0.5,
0.3);
*/
// rib,RibsAxes();
// rib.RibsVector(0,0,0,0.5);
/*
rib.RibsWorldEnd();
rib.RibsFrameEnd();
}
rib.closeRibs();
*/
// return(0);
}
-69
View File
@@ -1,69 +0,0 @@
// rights - 2006-, copyright benedikt oswald and patrick leidenberger, all rights reserved
// project - phidias3d
// file name - phidias3d.h
// file type - c++ header file
// objective - header file for the phidias3d visualization postprocessor
// modified - 2006 jun 26, creation, benedikt oswald
// modified - 2006 jun 28,
// modified - 2006 jul 30, Add include for command line argument parser
// with boost::program_options, pl.
// inheritance -
// feature - implements the phidias3d visualization postprocessor; the features
// feature - will be (1) read VTK legacy formatted files (2) read HDF5/ELECTROMAGNETIC
// feature - structures files (3) export VTK legacy formatted files (4) export
// feature - data, both meshes and fields, throught the Renderman Interface
// feature - routines.
// required software -
/* include standard header files */
#include <cmath>
#include <complex>
#include <string>
#include <vector>
#include <iostream>
#include <iterator>
#include <math.h>
/* Include the files for rlog. */
#include <rlog/rlog.h>
#include <rlog/rloglocation.h>
#include <rlog/Error.h>
#include <rlog/RLogChannel.h>
#include <rlog/StdioNode.h>
// Include this if you want to log the time.
#include <rlog/RLogTime.h>
// Include the boost program program_options to parse the comand line
// options.
#include <boost/program_options.hpp>
/* include standard proprietary header files */
#include <nonsciconst.h>
#include <physicomath.h>
//#include <ristream.h>
#include <gmsh.hh>
// Include the Hdf5FiniteElementData API.
#ifdef HAVE_HDF5
// Include the Hdf5FiniteElementData API.
#include <h5fed.hh>
// Include h5fed specific constants.
#include <h5fedconst.hh>
#else
#warning No hdf5 lib found!!
#endif
#ifndef PHIDIAS3D_H_
#define PHIDIAS3D_H_
using namespace physicomath;
using namespace nonsciconst;
using namespace gmshtohdf5fed;
#endif /*PHIDIAS3D_H_*/
-26
View File
@@ -1,26 +0,0 @@
## Makefile.am -- process this file with automake to produce Makefile.in
##
## authors - benedikt oswald and patrick leidenberger
## modified - 2006 aug 21, patrick leidenberger, creation
## modified - 2006 aug 23, pl, adaped to changed directory structure.
## modified - 2006 aug 25, pl, adaped to changed directory structure.
#
## objective - automake input file for the gmsh directory
## project - gmsh2h5fed
noinst_PROGRAMS = gmsh2h5fed
gmsh2h5fed_SOURCES = gmsh2h5fed.cc
gmsh2h5fed_DEPENDENCIES = ../libsrc/stdincl/nonsciconst.h \
../libsrc/stdincl/physicomath.h \
../libsrc/gmsh/gmsh.hh \
../libsrc/gmsh/gmsh.cc \
../libsrc/gmsh/gmshconst.hh \
../libsrc/gmsh/gmshgrammar.hh \
../libsrc/gmsh/gmshsemanticaction.hh \
../libsrc/h5fed/h5fed.hh \
../libsrc/h5fed/h5fed.cc
gmsh2h5fed_LDADD = @GMSH2H5FED_LIBS@
#AM_CPPFLAGS = @AM_CPPFLAGS@
-10
View File
@@ -1,10 +0,0 @@
libtoolize -f && \
aclocal && \
autoconf && \
autoheader && \
automake --add-missing && \
CC='mpicc' F9X='mpif90' CXX='mpiCC' ./configure --with-rlog=$HOME/extlib/rlog-1.3.7 --with-boost='' --with-hdf5=$HOME/extlib/hdf5-1.6.5 &&\
make clean && \
make all
-106
View File
@@ -1,106 +0,0 @@
## Process this file with autoconf to produce a configure script
##
## author - benedikt oswald and patrick leidenberger
## modified - 2006 aug 21, pl, creation.
## modified - 2006 aug 24, pl, add h5fed path.
##
## to do : The rlog lib needs a -DRLOG_COMPONENT="some name", I don't know
## how tho do this so that the quotation marks are in the output
## stream as well, pl, 2006 jul 04.
##
## objective - develop input file for GNU autotools/configure
## project - H5Fed
##
AC_PREREQ(2.59)
AC_COPYRIGHT([This configure script is copyright by Benedikt Oswald and Patrick Leidenberger, 2006])
AC_INIT([gmshtohdf5fed], [1.0], [in case of problems mail to: benedikt.oswald@psi.ch or patrick.leidenberger@psi.ch])
# library creation
AC_PROG_LIBTOOL
# standard macros
AC_CONFIG_AUX_DIR(./)
AM_INIT_AUTOMAKE
AC_CONFIG_HEADER([./config.h:./config.in])
# set cppflags to zero
CPPFLAGS=""
CFFLAGS=""
CXXFLAGS=""
# provide include directories
AC_SUBST([AM_CPPFLAGS], '-I$(top_srcdir)/libsrc/stdincl -I$(top_srcdir)/libsrc/gmsh -I$(top_srcdir)/libsrc/h5fed')
AC_SUBST([GMSH2H5FED_LIBS],'$(top_srcdir)/libsrc/gmsh/libgmsh.la $(top_srcdir)/libsrc/h5fed/libh5fed.la')
# Make available external libraries
AC_ARG_WITH(boost,
AC_HELP_STRING([--with-boost=PREFIX],
[prefix where the Boost libraries and include files are to be found]),
[BOOST_PREFIX=$withval
LDFLAGS="-lz -lboost_program_options "])
AC_ARG_WITH(rlog,
AC_HELP_STRING([--with-rlog=PREFIX],
[prefix where the rlog libraries and include files are to be found]),
[RLOG_PREFIX=$withval
CPPFLAGS="-I"$RLOG_PREFIX"/include "${CPPFLAGS}
LDFLAGS=$RLOG_PREFIX"/lib/librlog.la "${LDFLAGS}])
AC_ARG_ENABLE(rlog-debug,
AC_HELP_STRING([--disable-rlog-debug],
[disable the debug output channel of rlog]),
[],
[CFFLAGS="-DUSE_RLOG_DEBUG_CHANNEL "${CFFLAGS}
CXXFLAGS="-DUSE_RLOG_DEBUG_CHANNEL "${CXXFLAGS}])
AC_ARG_ENABLE(rlog-error,
AC_HELP_STRING([--disable-rlog-error],
[disable the error output channel of rlog]),
[],
[CFFLAGS="-DUSE_RLOG_ERROR_CHANNEL "${CFFLAGS}
CXXFLAGS="-DUSE_RLOG_ERROR_CHANNEL "${CXXFLAGS}])
AC_ARG_ENABLE(rlog-info,
AC_HELP_STRING([--disable-rlog-info],
[disable the info output channel of rlog]),
[],
[CFFLAGS="-DUSE_RLOG_INFO_CHANNEL "${CFFLAGS}
CXXFLAGS="-DUSE_RLOG_INFO_CHANNEL "${CXXFLAGS}])
AC_ARG_ENABLE(rlog-warning,
AC_HELP_STRING([--disable-rlog-warning],
[disable the warning output channel of rlog]),
[],
[CFFLAGS="-DUSE_RLOG_WARNING_CHANNEL "${CFFLAGS}
CXXFLAGS="-DUSE_RLOG_WARNING_CHANNEL "${CXXFLAGS}])
AC_ARG_WITH(hdf5,
AC_HELP_STRING([--with-hdf5=PREFIX],
[prefix to hdf5 libraries and include files]),
[HDF5_PREFIX=$withval
CPPFLAGS="-DHAVE_HDF5 -I"$HDF5_PREFIX"/include "${CPPFLAGS}
LDFLAGS="-L"$HDF5_PREFIX"/lib -lhdf5 "${LDFLAGS}])
# LDFLAGS=$HDF5_PREFIX"/lib/libhdf5.la "${LDFLAGS}])
# Set C/C++ compiler flags.
CPPFLAGS=${CPPFLAGS}
CFFLAGS="-g3 "${CFFLAGS}
CXXFLAGS="-g3 "${CXXFLAGS}
AM_INIT_AUTOMAKE([1.9 foreign])
AC_PROG_CC
AC_PROG_MAKE_SET
AC_PROG_INSTALL([install])
AC_CONFIG_FILES([makefile
applications/makefile
libsrc/makefile
libsrc/gmsh/makefile
libsrc/h5fed/makefile])
AC_OUTPUT
-114
View File
@@ -1,114 +0,0 @@
// rights - 2002-2005, benedikt oswald,
// project - aq
// file name - cube0.geo
// file type - GMSH script file
// objective - model cube fundamental cube
// modified - 2005 jan 25, benedikt oswald, creation
// modified - 2005 jan 25, benedikt oswald, added background hexahedron, subsurface hexahedron
// modified - 2005 feb 01, benedikt oswald, adapted to the simple.geo problem
// modified - 2005 mar 08, benedikt oswald, adapted to the cube in cube geometry
// modified - 2005 mar 22, benedikt oswald, adapted to model fundamental cube
// inheritance -
// feature - models fundamental cube, used for benchmark calculations of a Hertzian dipole
// feature - radiating into free space; the model uses standard physical domain tags;
// 1 modeling constants
lcl1=0.50; // characteristic length in fractions of lambda@1 GHz for air domain
lcl2=0.50; // characteristic length in fractions of lambda@1 GHz for air domain
lambda=0.30; // wavelength of electromagntic wave at a frequency of 1 GHz
lx=2.0; // x dim of computational domain
ly=2.0; // y dim of computational domain
lz=2.0; // z dim of computational domain
cx=0.5*lx; // calculate center of computational domain
cy=0.5*ly; // calculate center of computational domain
cz=0.5*lz; // calculate center of computational domain
// 1.2 Define physical material domains
vacuum=609; // physical entity vacuum
air=709; // physical entity air
subsurface=809; // physical entity subsurface
pml=1301; // physical entity pml material
icelens=4001; // physical entity icelens
vacuum_background_bnd=12701; // boundary to background, i.e. vacuum
interelement_bnd=12702; // interior boundary, separating different material domains
// 2 Define cubes
// 2.1.1 Define points of cube
p0=newp; Point(p0) = {0.0, 0.0, 0.0, lambda * lcl1};
p1=newp; Point(p1) = { lx, 0.0, 0.0, lambda * lcl1};
p2=newp; Point(p2) = { lx, ly, 0.0, lambda * lcl1};
p3=newp; Point(p3) = {0.0, ly, 0.0, lambda * lcl1};
p4=newp; Point(p4) = {0.0, 0.0, lz, lambda * lcl1};
p5=newp; Point(p5) = { lx, 0.0, lz, lambda * lcl1};
p6=newp; Point(p6) = { lx, ly, lz, lambda * lcl1};
p7=newp; Point(p7) = {0.0, ly, lz, lambda * lcl1};
// 2.1.3 Define lines of cube
// lower xy plane
li0=newl; Line(li0) = {p0,p1};
li1=newl; Line(li1) = {p1,p2};
li2=newl; Line(li2) = {p2,p3};
li3=newl; Line(li3) = {p3,p0};
// upper xy plane
li4=newl; Line(li4) = {p4,p5};
li5=newl; Line(li5) = {p5,p6};
li6=newl; Line(li6) = {p6,p7};
li7=newl; Line(li7) = {p7,p4};
// vertical lines
li8=newl; Line(li8) = {p0,p4};
li9=newl; Line(li9) = {p1,p5};
li10=newl; Line(li10) = {p2,p6};
li11=newl; Line(li11) = {p3,p7};
// 2.1.5 Define line 6 line loops for the 6 faces of the cube
lloop0= newreg; Line Loop(lloop0) = { li0, li1, li2, li3};
lloop1= newreg; Line Loop(lloop1) = { li4, li5, li6, li7};
lloop2= newreg; Line Loop(lloop2) = { li0, li9, -li4, -li8 };
lloop3= newreg; Line Loop(lloop3) = { li1, li10, -li5, -li9};
lloop4= newreg; Line Loop(lloop4) = { li2, li11, -li6, -li10};
lloop5= newreg; Line Loop(lloop5) = { li3, li8, -li7, -li11};
// 2.1.7 define plane surfaces for the cube
s0=news; Plane Surface(s0) = {lloop0};
s1=news; Plane Surface(s1) = {lloop1};
s2=news; Plane Surface(s2) = {lloop2};
s3=news; Plane Surface(s3) = {lloop3};
s4=news; Plane Surface(s4) = {lloop4};
s5=news; Plane Surface(s5) = {lloop5};
// 2.1.9 Define surface loops required for volume definition of the cube
sloop0=newreg; Surface Loop(sloop0) ={s0,s1,s2,s3,s4,s5};
// 2.1.10 Define volume of the cube
v0=newv; Volume(v0) = {sloop0};
// 3.0 define physical entitites
Physical Point(vacuum_background_bnd) = {p0:p7};
Physical Line(vacuum_background_bnd) = {li0:li11};
Physical Surface(vacuum_background_bnd) = {s0:s5};
Physical Volume(air) = {v0};
-21463
View File
File diff suppressed because it is too large Load Diff
-206
View File
@@ -1,206 +0,0 @@
// rights - 2002-2005, benedikt oswald,
// project - aq
// file name - cubeincube.geo
// file type - GMSH script file
// objective - model cube in a cube mesh, useful for PML booundary conditions
// modified - 2005 jan 25, benedikt oswald, creation
// modified - 2005 jan 25, benedikt oswald, added background hexahedron, subsurface hexahedron
// modified - 2005 feb 01, benedikt oswald, adapted to the simple.geo problem
// modified - 2005 mar 08, benedikt oswald, adapted to the cube in cube geometry
// inheritance -
// feature - models a cube in a cube mesh, useful for PML booundary conditions;
// feature - the PML boundary model is based on a 3D region with special electromagnetic
// feature - material properties which guarantee, in theory, perfect absorption of incident
// feature - electromagnetic waves independent of the angle between the wave vector
// feature - and the boundary; in order to model the PML material domain a separate mesh
// feature - region is created so that there is a clean boundary between the PML and
// feature - and the air region.
// 1 modeling constants
lcair=0.90; // characteristic length in fractions of lambda@1 GHz for air domain
lcpml=0.70; // characteristic length in fractions of lambda@1 GHz for PML region
lambda=0.30; // wavelength of electromagntic wave at a frequency of 1 GHz
lx=1.0; // x dim of computational domain
ly=1.0; // y dim of computational domain
lz=1.0; // z dim of computational domain
cx=0.5*lx; // calculate center of computational domain
cy=0.5*ly; // calculate center of computational domain
cz=0.5*lz; // calculate center of computational domain
lpmlxl=0.1; // thickness of PML region
lpmlxh=0.1; // thickness of PML region
lpmlyl=0.1; // thickness of PML region
lpmlyh=0.1; // thickness of PML region
lpmlzl=0.1; // thickness of PML region
lpmlzh=0.1; // thickness of PML region
xminic=lpmlxl; // x min of inner cube
xmaxic=lx-lpmlxh; // x max of inner cube
yminic=lpmlyl; // y min of inner cube
ymaxic=ly-lpmlyh; // y max of inner cube
zminic=lpmlzl; // z min of inner cube
zmaxic=lz-lpmlzh; // z max of inner cube
// 1.2 Define physical material domains
vacuum=609; // physical entity vacuum
air=709; // physical entity air
pml=1301; // physical entity pml material
icelens=4001; // physical entity icelens
vacuum_background_bnd=12701; // boundary to background, i.e. vacuum
interelement_bnd=12702; // interior boundary, separating different material domains
// 2 Define cubes
// 2.1.1 Define points of outer cube
p0=newp; Point(p0) = {0.0, 0.0, 0.0, lambda * lcpml};
p1=newp; Point(p1) = { lx, 0.0, 0.0, lambda * lcpml};
p2=newp; Point(p2) = { lx, ly, 0.0, lambda * lcpml};
p3=newp; Point(p3) = {0.0, ly, 0.0, lambda * lcpml};
p4=newp; Point(p4) = {0.0, 0.0, lz, lambda * lcpml};
p5=newp; Point(p5) = { lx, 0.0, lz, lambda * lcpml};
p6=newp; Point(p6) = { lx, ly, lz, lambda * lcpml};
p7=newp; Point(p7) = {0.0, ly, lz, lambda * lcpml};
// 2.1.2 Define points of inner cube
p100=newp; Point(p100) = {xminic, yminic, zminic, lambda * lcair};
p101=newp; Point(p101) = {xmaxic, yminic, zminic, lambda * lcair};
p102=newp; Point(p102) = {xmaxic, ymaxic, zminic, lambda * lcair};
p103=newp; Point(p103) = {xminic, ymaxic, zminic, lambda * lcair};
p104=newp; Point(p104) = {xminic, yminic, zmaxic, lambda * lcair};
p105=newp; Point(p105) = {xmaxic, yminic, zmaxic, lambda * lcair};
p106=newp; Point(p106) = {xmaxic, ymaxic, zmaxic, lambda * lcair};
p107=newp; Point(p107) = {xminic, ymaxic, zmaxic, lambda * lcair};
// 2.1.3 Define lines of outer cube
// lower xy plane
li0=newl; Line(li0) = {p0,p1};
li1=newl; Line(li1) = {p1,p2};
li2=newl; Line(li2) = {p2,p3};
li3=newl; Line(li3) = {p3,p0};
// upper xy plane
li4=newl; Line(li4) = {p4,p5};
li5=newl; Line(li5) = {p5,p6};
li6=newl; Line(li6) = {p6,p7};
li7=newl; Line(li7) = {p7,p4};
// vertical lines
li8=newl; Line(li8) = {p0,p4};
li9=newl; Line(li9) = {p1,p5};
li10=newl; Line(li10) = {p2,p6};
li11=newl; Line(li11) = {p3,p7};
// 2.1.4 Define lines of outer cube
// lower xy plane
li100=newl; Line(li100) = {p100,p101};
li101=newl; Line(li101) = {p101,p102};
li102=newl; Line(li102) = {p102,p103};
li103=newl; Line(li103) = {p103,p100};
// upper xy plane
li104=newl; Line(li104) = {p104,p105};
li105=newl; Line(li105) = {p105,p106};
li106=newl; Line(li106) = {p106,p107};
li107=newl; Line(li107) = {p107,p104};
// vertical lines
li108=newl; Line(li108) = {p100,p104};
li109=newl; Line(li109) = {p101,p105};
li110=newl; Line(li110) = {p102,p106};
li111=newl; Line(li111) = {p103,p107};
// 2.1.5 Define line 6 line loops for the 6 faces of outer cube
lloop0= newreg; Line Loop(lloop0) = { li0, li1, li2, li3};
lloop1= newreg; Line Loop(lloop1) = { li4, li5, li6, li7};
lloop2= newreg; Line Loop(lloop2) = { li0, li9, -li4, -li8 };
lloop3= newreg; Line Loop(lloop3) = { li1, li10, -li5, -li9};
lloop4= newreg; Line Loop(lloop4) = { li2, li11, -li6, -li10};
lloop5= newreg; Line Loop(lloop5) = { li3, li8, -li7, -li11};
// 2.1.6 Define line 6 line loops for the 6 faces of inner cube
lloop100= newreg; Line Loop(lloop100) = { li100, li101, li102, li103};
lloop101= newreg; Line Loop(lloop101) = { li104, li105, li106, li107};
lloop102= newreg; Line Loop(lloop102) = { li100, li109, -li104, -li108 };
lloop103= newreg; Line Loop(lloop103) = { li101, li110, -li105, -li109};
lloop104= newreg; Line Loop(lloop104) = { li102, li111, -li106, -li110};
lloop105= newreg; Line Loop(lloop105) = { li103, li108, -li107, -li111};
// 2.1.7 define plane surfaces for outer cube
s0=news; Plane Surface(s0) = {lloop0};
s1=news; Plane Surface(s1) = {lloop1};
s2=news; Plane Surface(s2) = {lloop2};
s3=news; Plane Surface(s3) = {lloop3};
s4=news; Plane Surface(s4) = {lloop4};
s5=news; Plane Surface(s5) = {lloop5};
// 2.1.8 define plane surfaces for inner cube
s100=news; Plane Surface(s100) = {lloop100};
s101=news; Plane Surface(s101) = {lloop101};
s102=news; Plane Surface(s102) = {lloop102};
s103=news; Plane Surface(s103) = {lloop103};
s104=news; Plane Surface(s104) = {lloop104};
s105=news; Plane Surface(s105) = {lloop105};
// 2.1.9 Define surface loops required for volume definition of outer cube
sloop0=newreg; Surface Loop(sloop0) ={s0,s1,s2,s3,s4,s5};
// 2.1.9 Define surface loops required for volume definition of inner cube
sloop100=newreg; Surface Loop(sloop100) ={s100,s101,s102,s103,s104,s105};
// 2.1.10 Define volume of outer cube
v0=newv; Volume(v0) = {sloop0,sloop100};
// 2.1.11 Define volume of inner cube
v100=newv; Volume(v100) = {sloop100};
// 3.0 define physical entitites
Physical Point(vacuum_background_bnd) = {p0,p1,p2,p3,p4,p5,p6,p7};
Physical Line(vacuum_background_bnd) = {li0,li1,li2,li3,li4,li5,li6,li7,li8,li9,li10,li11};
//Physical Line Loop(vacuum_background_bnd) = {lloop0,lloop1,lloop2,lloop3,lloop4,lloop5};
Physical Surface(vacuum_background_bnd) = {s0,s1,s2,s3,s4,s5};
//Physical Surface Loop(vacuum_background_bnd) = {sloop0};
Physical Volume(pml) = {v0};
Physical Point(interelement_bnd) = {p100,p101,p102,p103,p104,p105,p106,p107};
Physical Line(interelement_bnd) = {li100,li101,li102,li103,li104,li105,li106,li107,li108,li109,li110,li111};
//Physical Line Loop(interelement_bnd) = {lloop100,lloop101,lloop102,lloop103,lloop104,lloop105};
Physical Surface(interelement_bnd) = {s100,s101,s102,s103,s104,s105};
//Physical Surface Loop(interelement_bnd) = {sloop100};
Physical Volume(air) = {v100};
File diff suppressed because it is too large Load Diff
-135
View File
@@ -1,135 +0,0 @@
// rights - 2002-2005, benedikt oswald,
// project - aq
// file name - sphere.geo
// file type - GMSH script file
// objective - model cube in a cube, 2 spherical objects mesh to investigate sub lambda resolution capability
// modified - 2005 jan 25, benedikt oswald, creation
// modified - 2005 jan 25, benedikt oswald, added background hexahedron, subsurface hexahedron
// modified - 2005 feb 01, benedikt oswald, adapted to the simple.geo problem
// modified - 2005 mar 08, benedikt oswald, adapted to the cube in cube geometry
// modified - 2005 mar 09, benedikt oswald, adapted to cube in cube and spherical particle configuration
// modified - 2005 mar 11, benedikt oswald, adapted to investigation of sub-lambda resolution capability
// modified - 2005 mar 22, benedikt oswald, adapted to be based on reference background medium subLambda310.geo
// modified - 2005 mar 23, benedikt oswald, adapted to model a microresonator geometry
// modified - 2005 mar 29, benedikt oswald, adapted to model a high quality sphere for a Hertzian dipole benchmark
// modified - 2005
// inheritance -
// feature - models a microresonator geometry; a dielectric sphere within an air sphere; the dielectric
// feature - sphere will be excited by a Hertzian dipole in the vicinity of the sphere;
// feature -
// 1 modeling constants
lcair=1.20; // characteristic length in fractions of lambda@1 GHz for air domain
lcsubsurface=1.20; // characteristic length in fractions of lambda@1 GHz for subsurface domain
lcil1=0.80; // characteristic length in fractions of lambda@1 GHz for icelens region
lcil2=0.40; // characteristic length in fractions of lambda@1 GHz for icelens 2 region
lambda=3.0e-1; // wavelength of electromagntic wave at a frequency of 1 GHz
lx=3.0; // x dim of computational domain
ly=3.0; // y dim of computational domain
lz=2.0; // z dim of computational domain
cx=0.5*lx; // calculate center of computational domain
cy=0.5*ly; // calculate center of computational domain
cz=0.5*lz; // calculate center of computational domain
dxl=0.3; // thickness of PML region
dxh=0.3; // thickness of PML region
dyl=0.3; // thickness of PML region
dyh=0.3; // thickness of PML region
dzl=0.30; // thickness of PML region
dzh=0.60; // thickness of PML region
xminic=dxl; // x min of inner cube
xmaxic=lx-dxh; // x max of inner cube
yminic=dyl; // y min of inner cube
ymaxic=ly-dyh; // y max of inner cube
zminic=dzl; // z min of inner cube
zmaxic=lz-dzh; // z max of inner cube
dsx=0.10; // x distance separating the two spherical scatterers
dsy=0.00; // y distance separating the two spherical scatterers
dsz=0.00; // z distance separating the two spherical scatterers
r1=1.0; // radius of air sphere
ilcx=0.0; // x center of air sphere
ilcy=0.0; // y center of
ilcz=0.0; // z center of
r2=2.0e-6; // radius of dielectric sphere
il2cx=0.0; // x center of dielectric sphere
il2cy=0.0; // y center of dielectric sphere
il2cz=0.0; // z center of dielectric sphere
// 1.2 Define physical material domains
vacuum=609; // physical entity vacuum
air=709; // physical entity air
subsurface=809; // physical entity subsurface
pml=1301; // physical entity pml material
icelens1=4001; // physical entity icelens
icelens2=4003; // physical entity icelens 2
dielsphere=4005; // physical entity dielectric sphere
vacuum_background_bnd=12701; // boundary to background, i.e. vacuum
air_soil_bnd=12702; // interior boundary, separating air and subsurface material
soil_icelens1_bnd=12703; // interior boundary, separating background subsurface from icelens particle
soil_icelens2_bnd=12705; // interior boundary, separating background subsurface from icelens 2 particle
dielectric_sphere_bnd=12707; // interior boundary, separting air background from dielectric sphere
// 2.2.1 Define air sphere 1
ilp1 = newp; Point(ilp1) = {ilcx, ilcy, ilcz, lcil1 * lambda} ;
ilp2 = newp; Point(ilp2) = {ilcx+r1, ilcy, ilcz, lcil1 * lambda} ;
ilp3 = newp; Point(ilp3) = {ilcx, ilcy+r1, ilcz, lcil1 * lambda} ;
ilp4 = newp; Point(ilp4) = {ilcx, ilcy, ilcz+r1, lcil1 * lambda} ;
ilp5 = newp; Point(ilp5) = {ilcx-r1, ilcy, ilcz, lcil1 * lambda} ;
ilp6 = newp; Point(ilp6) = {ilcx, ilcy-r1, ilcz, lcil1 * lambda} ;
ilp7 = newp; Point(ilp7) = {ilcx, ilcy, ilcz-r1, lcil1 * lambda} ;
ilc1 = newreg; Circle(ilc1) = {ilp2,ilp1,ilp7};
ilc2 = newreg; Circle(ilc2) = {ilp7,ilp1,ilp5};
ilc3 = newreg; Circle(ilc3) = {ilp5,ilp1,ilp4};
ilc4 = newreg; Circle(ilc4) = {ilp4,ilp1,ilp2};
ilc5 = newreg; Circle(ilc5) = {ilp2,ilp1,ilp3};
ilc6 = newreg; Circle(ilc6) = {ilp3,ilp1,ilp5};
ilc7 = newreg; Circle(ilc7) = {ilp5,ilp1,ilp6};
ilc8 = newreg; Circle(ilc8) = {ilp6,ilp1,ilp2};
ilc9 = newreg; Circle(ilc9) = {ilp7,ilp1,ilp3};
ilc10 = newreg; Circle(ilc10) = {ilp3,ilp1,ilp4};
ilc11 = newreg; Circle(ilc11) = {ilp4,ilp1,ilp6};
ilc12 = newreg; Circle(ilc12) = {ilp6,ilp1,ilp7};
// We need non-plane surfaces to define the spherical icelens:
// here we use ruled surfaces, which can have 3 or 4
// sides:
ill1 = newreg; Line Loop(ill1) = {ilc5,ilc10,ilc4}; ilruls1=newreg; Ruled Surface(ilruls1) = {ill1};
ill2 = newreg; Line Loop(ill2) = {ilc9,-ilc5,ilc1}; ilruls2=newreg; Ruled Surface(ilruls2) = {ill2};
ill3 = newreg; Line Loop(ill3) = {ilc12,-ilc8,-ilc1}; ilruls3=newreg; Ruled Surface(ilruls3) = {ill3};
ill4 = newreg; Line Loop(ill4) = {ilc8,-ilc4,ilc11}; ilruls4=newreg; Ruled Surface(ilruls4) = {ill4};
ill5 = newreg; Line Loop(ill5) = {-ilc10,ilc6,ilc3}; ilruls5=newreg; Ruled Surface(ilruls5) = {ill5};
ill6 = newreg; Line Loop(ill6) = {-ilc11,-ilc3,ilc7}; ilruls6=newreg; Ruled Surface(ilruls6) = {ill6};
ill7 = newreg; Line Loop(ill7) = {-ilc2,-ilc7,-ilc12};ilruls7=newreg; Ruled Surface(ilruls7) = {ill7};
ill8 = newreg; Line Loop(ill8) = {-ilc6,-ilc9,ilc2}; ilruls8=newreg; Ruled Surface(ilruls8) = {ill8};
ilsloop0 = newreg;
Surface Loop(ilsloop0) = {ill8+1,ill5+1,ill1+1,ill2+1,ill3+1,ill7+1,ill6+1,ill4+1};
// 2.3.3 Define volume of air sphere
vil1=newv; Volume(vil1) = {ilsloop0};
// 3.0 define physical entitites
Physical Point(vacuum_background_bnd) = {ilp1,ilp2,ilp3,ilp4,ilp5,ilp6,ilp7};
Physical Surface(vacuum_background_bnd) = {ilruls1,ilruls2,ilruls3,ilruls4,ilruls5,ilruls6,ilruls7,ilruls8};
Physical Volume(air) = {vil1};
File diff suppressed because it is too large Load Diff
-375
View File
@@ -1,375 +0,0 @@
// rights - 2006-, copyright patrick leidenberger and benedikt oswald,
// all rights reserved
// project - gmsh2h5fed
// file name - gmsh.cc
// file type - c++ implementation file
// objective - implement class for readind gmsh data files
// modified - 2006 aug 24, creation, patrick leidenberger
// modified - 2006 aug 26, pl, Access to private members.
#include "gmsh.hh"
using namespace boost::spirit;
using namespace gmshtohdf5fed;
using namespace rlog;
using namespace std;
#include <boost/spirit/core.hpp>
#include <boost/spirit/iterator/file_iterator.hpp>
#include <iostream>
#include <sstream>
#include <fstream>
#include <string>
#include <vector>
#include "gmshgrammar.hh"
#include "gmshsemanticaction.hh"
gmsh::gmsh()
{
//rDebug("Enter vtk constructor.");
// Clean the gmsh data structure.
gmshNodes_.clear();
gmshNodesNumber_.clear();
gmshLine_.clear();
gmshLineTag_.clear();
gmshTriangle_.clear();
gmshTriangleTag_.clear();
gmshQuadrangle_.clear();
gmshQuadrangleTag_.clear();
gmshTetrahedron_.clear();
gmshTetrahedronTag_.clear();
gmshHexahedron_.clear();
gmshHexahedronTag_.clear();
gmshPrism_.clear();
gmshPrismTag_.clear();
gmshPyramid_.clear();
gmshPyramidTag_.clear();
gmsh2ndLineTag_.clear();
gmsh2ndTriangle_.clear();
gmsh2ndTriangleTag_.clear();
gmsh2ndQuadrangle_.clear();
gmsh2ndQuadrangleTag_.clear();
gmsh2ndTetrahedron_.clear();
gmsh2ndTetrahedronTag_.clear();
gmsh2ndHexahedron_.clear();
gmsh2ndHexahedronTag_.clear();
gmsh2ndPrism_.clear();
gmsh2ndPrismTag_.clear();
gmsh2ndPyramid_.clear();
gmsh2ndPyramidTag_.clear();
gmshPoint_.clear();
gmshPointTag_.clear();
//rDebug("Leafe vtk constructor.");
}
gmsh::~gmsh()
{
//rDebug("Enter vtk destructor.");
//rDebug("Leafe vtk destructor.");
}
int gmsh::gmshFileName(char* fileName)
{
//rDebug("Enter fileName.");
// Erase the fileName_.
fileName_.erase();
// Copy fileName in private string fileName_.
gmshCpString(fileName, &fileName_);
// rDebug("fileName_= %s",fileName_.c_str());
//rDebug("Leafe fileName");
return OKCODE;
}
int gmsh::gmshFileName(string fileName)
{
//rDebug("Enter fileName.");
// Erase the fileName_.
fileName_.erase();
// Copy fileName in private string fileName_.
fileName_ = fileName;
// rDebug("fileName_= %s",fileName_.c_str());
//rDebug("Leafe fileName");
}
int gmsh::gmshOpen(void)
{
//rDebug("Enter openVtk.");
// Open a stream to read the gmsh file in a string.
ifstream inFile (fileName_.c_str());
// Check if file was opened corretly.
if (! inFile)
{
rError("Cannot open file %s.", fileName_.c_str());
return ERRORCODE;
}
else
{
rInfo("Open file %s", fileName_.c_str());
// Read file content into a string
fileContent.erase();
char chr;
while (inFile.get(chr))
{
fileContent.append(1,chr);
}
rInfo(" File has been read.");
//rDebug("Input file:\n%s",fileContent.c_str());
// Close input file.
inFile.close();
rInfo(" File Closed.");
return OKCODE;
}
//rDebug("Leave openVtk.");
}
int gmsh::gmshParseFile(gmsh* gmshSelf)
{
//rDebug("Enter parseFile.");
// Provide an instance of the grammar describing the gmsh file format.
stack<long> gmshStack;
// Our vtk parser.
// Give the parser a pointer to the instance of the gmsh class. So we can
// call member functions as semantic action.
gmsh_g gmsh_p(gmshSelf);
// Call the parser.
parse_info <iterator_t> info = parse(fileContent.c_str(),gmsh_p,space_p);
// Feedback to user on parsing outcome.
if (info.full)
{
rInfo("-------------------------");
rInfo("parsing succeeded :-)");
rInfo("-------------------------");
return OKCODE;
}
else
{
ostringstream temp;
temp << info.stop ;
rError("-------------------------");
rError("parsing failed :-(");
rError("stopped at line: %s", temp.str().c_str());
rError("-------------------------");
return ERRORCODE;
}
//rDebug("Leave parseFile.");
}
int gmsh::gmshPushNode(vector<double>* nodeCoords)
{
//rDebug("gmshPushNode(vector<double>* nodeCoords).");
gmshNodes_.push_back(*nodeCoords);
return OKCODE;
}
int gmsh::gmshPushNodeNumber(unsigned int* nodeNumber)
{
gmshNodesNumber_.push_back(*nodeNumber);
return OKCODE;
}
int gmsh::gmshPushElem(unsigned short int elemType,
vector<unsigned int>* nodeVector)
{
//rDebug("Inside gmshPushElem.");
if (elemType == GMSH_LINE)
gmshLine_.push_back(*nodeVector);
else if (elemType == GMSH_TRIANGLE)
gmshTriangle_.push_back(*nodeVector);
else if (elemType == GMSH_QUADRANGLE)
gmshQuadrangle_.push_back(*nodeVector);
else if (elemType == GMSH_TETRAHEDRON)
gmshTetrahedron_.push_back(*nodeVector);
else if (elemType == GMSH_HEXAHEDRON)
gmshHexahedron_.push_back(*nodeVector);
else if (elemType == GMSH_PRISM)
gmshPrism_.push_back(*nodeVector);
else if (elemType == GMSH_PYRAMID)
gmshPyramid_.push_back(*nodeVector);
else if (elemType == GMSH_2ND_LINE)
gmsh2ndLine_.push_back(*nodeVector);
else if (elemType == GMSH_2ND_TRIANGLE)
gmsh2ndTriangle_.push_back(*nodeVector);
else if (elemType == GMSH_2ND_QUADRANGLE)
gmsh2ndQuadrangle_.push_back(*nodeVector);
else if (elemType == GMSH_2ND_TETRAHEDRON)
gmsh2ndTetrahedron_.push_back(*nodeVector);
else if (elemType == GMSH_2ND_HEXAHEDRON)
gmsh2ndHexahedron_.push_back(*nodeVector);
else if (elemType == GMSH_2ND_PRISM)
gmsh2ndPrism_.push_back(*nodeVector);
else if (elemType == GMSH_2ND_PYRAMID)
gmsh2ndPyramid_.push_back(*nodeVector);
else if (elemType == GMSH_POINT)
gmshPoint_.push_back(*nodeVector);
else
{
rError("A unknown element type found!");
rError("Element type: %d", elemType);
}
return OKCODE;
}
int gmsh::gmshPushTag(unsigned short int elemType,
vector<unsigned int>* tagVector)
{
//rDebug("Inside gmshPushElem.");
if (elemType == GMSH_LINE)
{
//rDebug(" Line pushedback");
}
else if (elemType == GMSH_TRIANGLE)
{
//rDebug(" Triangle pushedback");
}
else if (elemType == GMSH_QUADRANGLE)
{
//rDebug(" Quadrangle pushedback");
}
else if (elemType == GMSH_TETRAHEDRON)
{
//rDebug(" Tetrahedron pushedback");
gmshTetrahedronTag_.push_back(*tagVector);
}
else
{
}
return OKCODE;
}
int gmsh::gmshShowElemResult()
{
rInfo("Elements found in gmsh file:");
rInfo(" lines: %d",gmshLine_.size());
rInfo(" triangles: %d",gmshTriangle_.size());
rInfo(" quadrangles: %d",gmshQuadrangle_.size());
rInfo(" tetrahedrons: %d",gmshTetrahedron_.size());
rInfo(" hexahedrons: %d",gmshHexahedron_.size());
rInfo(" prisms: %d",gmshPrism_.size());
rInfo(" pyramids: %d",gmshPyramid_.size());
rInfo(" 2nd order lines: %d",gmsh2ndLine_.size());
rInfo(" 2nd order Triangles: %d",gmsh2ndTriangle_.size());
rInfo(" 2nd order Quadrangles: %d",gmsh2ndQuadrangle_.size());
rInfo(" 2nd order Tetrahedrons: %d",gmsh2ndTetrahedron_.size());
rInfo(" 2nd order Hexahedrons: %d",gmsh2ndHexahedron_.size());
rInfo(" 2nd order Prisms: %d",gmsh2ndPrism_.size());
rInfo(" 2nd order Pyramids: %d",gmsh2ndPyramid_.size());
rInfo(" Points : %d",gmshPoint_.size());
return OKCODE;
}
void gmsh::cpString(char const* first,
char const* last,
string* str)
{
//rDebug("Enter cpString.");
// Erase the str content.
str->erase();
// Copy version in str.
for(unsigned int i = 0; i<strlen(first)-strlen(last); i++)
{
str->append(1,first[i]);
}
//rDebug("*str= %s",str->c_str());
//rDebug("Leafe cpString.");
}
string gmsh::cpString(char const* first,
char const* last)
{
//rDebug("Enter cpString.");
// Create and erase a tempral string;
string tempString;
tempString.erase();
// Copy version in str.
for(unsigned int i = 0; i<strlen(first)-strlen(last); i++)
{
tempString.append(1,first[i]);
}
//rDebug("tempString= %s",tempString.c_str());
//rDebug("Leafe cpString.");
return tempString;
}
int gmsh::gmshCpString(char const* first,
string*str)
{
// Create and erase a tempral string;
std::string tempString;
tempString.erase();
// Copy the character sign for sign into the string.
for(unsigned int i = 0; i<strlen(first); i++)
{
tempString.append(1,first[i]);
}
//rDebug("tempString= %s",tempString.c_str());
//rDebug("Leafe cpString.");
return OKCODE;
}
int gmsh::gmshCheckVersion(int* version)
{
if ((int)(*version) == 2)
{
rInfo("Gmsh file has format 2.");
return OKCODE;
}
else
{
rError("Gmsh file has format: %d.", (int)(*version));
rError("But this program can only read format 2.");
rError("Exit");
exit(ERRORCODE);
}
}
int gmsh::gmshCheckFileType(int* fileType)
{
if ((int)(*fileType) == 0)
{
rInfo("Gmsh file has ascii format.");
return OKCODE;
}
else
{
rError("Gmsh file has format: %d.", (int)(*fileType));
rError("But this program can only read format 0 (ascii).");
rError("Exit");
exit(ERRORCODE);
}
}
std::vector< std::vector <double> > gmsh::gmshNode()
{
return gmshNodes_;
}
std::vector<unsigned int> gmsh::gmshNodeNumber()
{
return gmshNodesNumber_;
}
std::vector< std::vector<unsigned int> > gmsh::gmshTetrahedron()
{
return gmshTetrahedron_;
}
std::vector< std::vector<unsigned int> > gmsh::gmshTetrahedronTag()
{
return gmshTetrahedronTag_;
}
-142
View File
@@ -1,142 +0,0 @@
// rights - 2006-, copyright patrick leidenberger and benedikt oswald,
// all rights reserved
// project - gmsh2h5fed
// file name - gmsh.hh
// file type - c++ header file
// objective - declare class for readind gmsh mesh files v2.0
//
// modified - 2006 aug 21, creation, Patrick Leidenberger
// modified - 2006 aug 22, pl.
// modified - 2006 aug 23, pl.
// modified - 2006 aug 24, pl, delete old things.
// modified - 2006 aug 26, pl, Access to private members.
#ifndef GMSH_HH_
#define GMSH_HH_
#include <iostream>
#include <string>
#include <vector>
#include <boost/spirit/core.hpp>
#include <boost/spirit/iterator/file_iterator.hpp>
#include <boost/spirit/core.hpp>
/* Include the files for rlog. */
#include <rlog/rlog.h>
#include <rlog/rloglocation.h>
#include <rlog/Error.h>
#include <rlog/RLogChannel.h>
#include <rlog/StdioNode.h>
#include <rlog/RLogTime.h>
#include <nonsciconst.h>
// Include gmsh specific constants.
#include "gmshconst.hh"
using namespace std;
using namespace nonsciconst;
namespace gmshtohdf5fed
{
class gmsh
{
public:
// Constructor: Here we clear all private data vectors.
gmsh();
// Destructor.
~gmsh();
int gmshFileName(char* fileName);
int gmshFileName(string fileName);
int gmshOpen(void);
int gmshParseFile(gmsh* vtkSelf);
void cpString(char const* first,
char const* last,
string* str);
string cpString(char const* first,
char const* last);
int gmshCpString(char const* first,
string*str);
// Check if gmsh file is of version 2.
int gmshCheckVersion(int* version);
// Check if the gmsh file is in ascii format.
int gmshCheckFileType(int* fileType);
// Pushes the three coordinates of a node in the gmshNodes_ vector.
int gmshPushNode(vector<double>* nodeCoords);
// Pushes the number of a node in the gmshNodesNumber_ vector.
int gmshPushNodeNumber(unsigned int * nodeNumber);
// Push the node vector nodeVector to the appropriate data structure
// denoted by the string.
int gmshPushElem(unsigned short int elemType,
vector<unsigned int>* nodeVector);
// Push the tag vector tagVector to the appropriate data structure
// denoted by the string.
int gmshPushTag(unsigned short int elemType,
vector<unsigned int>* tagVector);
// Show the size of the element vectors.
int gmshShowElemResult();
//-------------------------------------//
// Access to private stored gmsh data. //
//-------------------------------------//
std::vector< std::vector <double> > gmshNode();
std::vector<unsigned int> gmshNodeNumber();
std::vector< std::vector<unsigned int> > gmshTetrahedron();
std::vector< std::vector<unsigned int> > gmshTetrahedronTag();
private:
string fileName_;
string fileContent;
// Data structure for node coordinates from gmsh file.
vector<vector<double> > gmshNodes_;
// Data structure for gmsh node number.
// A number belongs to the respective node coordinate in the gmshNodes_
// vector.
vector<unsigned int> gmshNodesNumber_;
// Data structure for the topological entities and their tags stored in
// the gmsh file. The 'gmsh2nd..' denote second order Elements.
vector<vector<unsigned int> > gmshLine_;
vector<vector<unsigned int> > gmshLineTag_;
vector<vector<unsigned int> > gmshTriangle_;
vector<vector<unsigned int> > gmshTriangleTag_;
vector<vector<unsigned int> > gmshQuadrangle_;
vector<vector<unsigned int> > gmshQuadrangleTag_;
vector<vector<unsigned int> > gmshTetrahedron_;
vector<vector<unsigned int> > gmshTetrahedronTag_;
vector<vector<unsigned int> > gmshHexahedron_;
vector<vector<unsigned int> > gmshHexahedronTag_;
vector<vector<unsigned int> > gmshPrism_;
vector<vector<unsigned int> > gmshPrismTag_;
vector<vector<unsigned int> > gmshPyramid_;
vector<vector<unsigned int> > gmshPyramidTag_;
vector<vector<unsigned int> > gmsh2ndLine_;
vector<vector<unsigned int> > gmsh2ndLineTag_;
vector<vector<unsigned int> > gmsh2ndTriangle_;
vector<vector<unsigned int> > gmsh2ndTriangleTag_;
vector<vector<unsigned int> > gmsh2ndQuadrangle_;
vector<vector<unsigned int> > gmsh2ndQuadrangleTag_;
vector<vector<unsigned int> > gmsh2ndTetrahedron_;
vector<vector<unsigned int> > gmsh2ndTetrahedronTag_;
vector<vector<unsigned int> > gmsh2ndHexahedron_;
vector<vector<unsigned int> > gmsh2ndHexahedronTag_;
vector<vector<unsigned int> > gmsh2ndPrism_;
vector<vector<unsigned int> > gmsh2ndPrismTag_;
vector<vector<unsigned int> > gmsh2ndPyramid_;
vector<vector<unsigned int> > gmsh2ndPyramidTag_;
vector<vector<unsigned int> > gmshPoint_;
vector<vector<unsigned int> > gmshPointTag_;
};
}
#endif //GMSH_HH_
-28
View File
@@ -1,28 +0,0 @@
#ifndef GMSHCONST_HH_
#define GMSHCONST_HH_
// Contants of gmsh element types.
// See Gmsh Reference Manual (14 May 2006) page 147-148.
const unsigned short int GMSH_LINE = 1;
const unsigned short int GMSH_TRIANGLE = 2;
const unsigned short int GMSH_QUADRANGLE = 3;
const unsigned short int GMSH_TETRAHEDRON = 4;
const unsigned short int GMSH_HEXAHEDRON = 5;
const unsigned short int GMSH_PRISM = 6;
const unsigned short int GMSH_PYRAMID = 7;
const unsigned short int GMSH_2ND_LINE = 8;
const unsigned short int GMSH_2ND_TRIANGLE = 9;
const unsigned short int GMSH_2ND_QUADRANGLE = 10;
const unsigned short int GMSH_2ND_TETRAHEDRON = 11;
const unsigned short int GMSH_2ND_HEXAHEDRON = 12;
const unsigned short int GMSH_2ND_PRISM = 13;
const unsigned short int GMSH_2ND_PYRAMID = 14;
const unsigned short int GMSH_POINT = 15;
// Every element has an spesific number of tags.
// This is the list of the number. There is a leading zero, because there is
// no element with the index 0.
const unsigned short int GMSH_ELEM_N_NODES[] = { 0, 2, 3, 4, 4, 8, 6, 5, 3,
6, 9, 10, 27, 18, 14, 1 };
#endif //GMSHCONST_HH_
-242
View File
@@ -1,242 +0,0 @@
/** \brief Definition of gmsh file format v2.0 parser data types and variables
*
* rights - patrick leidenberger and benedikt oswald
* file name - gmshgrammar.hh
* file type - include file
* objective - define grammar of gmsh file format v2.0
* author - patrick leidenberger and benedikt oswald
* modified - 2006 jun 29, pl, creation
* features - defines grammar of gmsh files v2.0
*/
/* include standard header files */
#include <boost/spirit/core.hpp>
#include <boost/spirit/iterator/file_iterator.hpp>
#include <boost/spirit/actor/assign_actor.hpp>
#include <boost/spirit/utility/functor_parser.hpp>
#include <boost/spirit/utility/escape_char.hpp>
#include <boost/spirit/utility/loops.hpp>
#include <boost/spirit/dynamic/if.hpp>
#include <iostream>
#include <functional>
#include <map>
#include <stack>
#include <string>
#include <boost/bind.hpp>
#include <boost/ref.hpp>
/* include proprietary header files */
#include "gmshsemanticaction.hh"
#include "gmsh.hh"
// Include gmsh specific constants.
#include "gmshconst.hh"
#ifndef GMSHGRAMMAR_HH_
#define GMSHGRAMMAR_HH_
/* activate namespaces */
using namespace std;
using namespace boost::spirit;
using namespace gmshtohdf5fed;
/* type definitions */
//typedef char char_t;
//typedef file_iterator<char_t> iterator_t;
//typedef scanner<iterator_t> scanner_t;
//typedef rule<scanner_t> rule_t;
////////////////////////////////////////////////////////////////////////////
//
// Our calculator grammar
//
////////////////////////////////////////////////////////////////////////////
struct gmsh_g : public grammar<gmsh_g>
{
// vtk_g(/*stack<long>& eval_*/)
// /*: eval(eval_)*/ {}
gmsh_g(gmsh* gmshSelf)
: gmshSelf_(gmshSelf)
{
}
template <typename ScannerT>
struct definition
{
definition(gmsh_g const& self)
{
gmsh_import_r = gmsh_mesh_format_r
>> gmsh_nodes_r
>> gmsh_elements_r;
//////////////////////////////////////////////////////////////////////////
// GENERAL NOTE: All tranport of numbers to gmshsemanticaction.hh must //
// be done by reference, not by value. Transport by //
// value fails! You have to debug long for it! //
/////////////////////////////////////////////////////////////////////////
// Rules for the MeshFormat section.
gmsh_mesh_format_r = str_p("$MeshFormat")
>> int_p[assign_a(tempInt1_)]
[gmsh_version_a(self.gmshSelf_, &tempInt1_)]
>> int_p[assign_a(tempInt1_)]
[gmsh_file_type_a(self.gmshSelf_, &tempInt1_)]
>> int_p[assign_a(tempInt1_)]
>> str_p("$EndMeshFormat");
// Rules for the Nodes section.
gmsh_nodes_r = str_p("$Nodes")
>> eps_p[gmsh_clear_map_a<unsigned int,
vector<double> >(&tempCoordMap_)]
>> int_p[assign_a(tempUnInt1_)]
>> eps_p[gmsh_info_msg_a("Nodes in gmsh file: ",
&tempUnInt1_)]
>> repeat_p(boost::ref(tempUnInt1_))
[
eps_p[gmsh_clear_vec_a<double>(&tempVecDouble1_)]
>> int_p[assign_a(tempUnInt2_)]
>> repeat_p(3)
[real_p[assign_a(tempDouble1_)]
[gmsh_push_vec_a<double>(&tempVecDouble1_,
&tempDouble1_)]
]
[gmsh_insert_map_a<unsigned int,
vector<double> >
(&tempCoordMap_, &tempUnInt2_,
&tempVecDouble1_)
]
]
>> str_p("$EndNodes")
>> eps_p[gmsh_transport_nodes_a(self.gmshSelf_,
&tempCoordMap_)];
// Rules for the Elements section.
gmsh_elements_r = str_p("$Elements")
>> int_p[assign_a(tempUnInt1_)]
>> eps_p[gmsh_info_msg_a("Elements in gmsh file: ",
&tempUnInt1_)]
>> gmsh_element_r
>> str_p("$EndElements");
gmsh_element_r = repeat_p(boost::ref(tempUnInt1_))
[ // Parse one element
// Clear the vectors for nodes and tags of an elem.
eps_p[gmsh_clear_vec_a<unsigned int>
(&tempElemNode_)]
>> eps_p[gmsh_clear_vec_a<unsigned int>
(&tempElemTag_)]
// Parse the element number. We don't need it.
>> int_p[assign_a(tempUnInt2_)]
// Parse the element type.
>> int_p[assign_a(tempUnShortInt1_)]
// Parse the number of tags.
>> int_p[assign_a(tempUnInt3_)]
// Parse the tags.
>> repeat_p(boost::ref(tempUnInt3_))
[
// Parse a single tag.
int_p[assign_a(tempUnInt4_)]
// Copy to vector.
>> eps_p[gmsh_push_vec_a<unsigned int>
(&tempElemTag_, &tempUnInt4_)]
][gmsh_nothing_a()]
// Copy the number of nodes of the actual element
// type (in tempUnShortInt1_) from the
// GMSH_ELEM_N_NODES array in gmshconst.hh in
// tempUnShortInt2_.
// Do this, because I don't get the direct array
// access not work.
>> eps_p[gmsh_array_access_a<unsigned short int>
(&tempUnShortInt2_, &tempUnShortInt1_)]
// Parse the respective number of nodes.
>> repeat_p(boost::ref(tempUnShortInt2_))
[
// Parse a sigle node.
int_p[assign_a(tempUnInt4_)]
// Copy to vector.
>> eps_p[gmsh_push_vec_a<unsigned int>
(&tempElemNode_, &tempUnInt4_)]
]
[
// Transport the parsed element nodes in the
// respective gmsh.hh data structure.
gmsh_transport_elem_a(self.gmshSelf_,
&tempUnShortInt1_, &tempElemNode_)
]
[
// Transport the parsed element tags in the
// respective gmsh.hh data structure.
gmsh_transport_tag_a(self.gmshSelf_,
&tempUnShortInt1_, &tempElemTag_)
]
// This short section demonstrates, like con-
// ditional parsing can be used instead:
//
//>> if_p(gmsh_compare_a<unsigned short int>
// (&tempUnShortInt1_,&(elemType_[0])))
// [
// // Element type 1 == line.
// repeat_p(2)
// [
// int_p[assign_a(tempUnInt4_)]
// ][gmsh_nothing_a()]
// ]
//
]
[
// All elements are parsed.
// Show what we have paresd.
gmsh_show_elem_result_a(self.gmshSelf_)
];
}
rule<ScannerT> expression, term, factor, integer;
rule<ScannerT> vtk_import_r;
rule<ScannerT> gmsh_import_r;
rule<ScannerT> gmsh_mesh_format_r;
rule<ScannerT> gmsh_nodes_r;
rule<ScannerT> gmsh_elements_r;
rule<ScannerT> gmsh_element_r;
rule<ScannerT> const&
start() const { return gmsh_import_r; }
// These are temporal variables used during the parsing process.
// These variables are used at different places for different things,
// they are only valid in small ranges.
int tempInt1_;
unsigned int tempUnInt1_;
unsigned int tempUnInt2_;
unsigned int tempUnInt3_;
unsigned int tempUnInt4_;
unsigned short int tempUnShortInt1_;
unsigned short int tempUnShortInt2_;
double tempDouble1_;
vector<int> tempIntVec1_;
vector<double> tempDoubleVec1_;
vector<vector<double> > tempDoubleVec2_;
vector<double> tempVecDouble1_;
// Data structure for node coordinates.
// The gmsh node coordinates are not stored and numbered consecutive. So we
// have to sort and map them to a consecutive index set using this map.
map<unsigned int, vector<double> > tempCoordMap_;
// Data structure to store the nodes of an element.
vector<unsigned int> tempElemNode_;
// Data structure to store an elements tags.
vector<unsigned int> tempElemTag_;
};
gmsh* gmshSelf_;
};
#endif // GMSHGRAMMAR_HH_
-344
View File
@@ -1,344 +0,0 @@
// rights - 2006-, copyright benedikt oswald and patrick leidenberger,
// all rights reserved
/** \brief Definition of VTK ASCII file format parser
* project - phidias3d
* file name - vtksemanticaction.h
* file type - c++ include file
* objective - declare semantic action for the vtk file parser
* modified - 2006 jul 03, creation, pl
* modified - 2006 jul 05, insert fuctionality of calling member functions
* of the vtk class, pl
* modified - 2006 jul 06, Add actions for vtk file header and file format.
* modified - 2006 jul 11, Add a lot of action to store the unstructured
* grid dataset. This section is complete.
* modified - 2006 jul 13, Make the action work well: it is not a good idea
* to transport pointers or strings! Use pointers of
* characters.
* modified - 2006 aug 27, Correct error in pushNode function, pl.
**/
/* include standard header files */
#include <boost/spirit/core.hpp>
#include <boost/spirit/iterator/file_iterator.hpp>
#include <iostream>
//#include <iterator>
#include <string>
#include <vector>
#include <map>
#include <functional>
#include <stack>
#include "gmsh.hh"
/* include proprietary header files */
//#include "ansyscnx.h"
/* activate namespaces */
using namespace std;
using namespace boost;
using namespace boost::spirit;
//using namespace phidias3d;
using namespace gmshtohdf5fed;
/* type definitions */
typedef char char_t;
typedef file_iterator<char_t> iterator_t;
typedef scanner<iterator_t> scanner_t;
typedef rule<scanner_t> rule_t;
#ifndef GMSHSEMANTICACTION_HH_
#define GMSHSEMANTICACTION_HH_
/* semantic actions */
// Call version-check of gmsh file.
struct gmsh_version_a
{
gmsh_version_a(gmsh* gmshSelf, int* tempInt)
: gmshSelf_(gmshSelf), tempInt_(tempInt) {}
void operator()(int value) const
{
//rDebug("Inside gmsh_version_a.");
gmshSelf_->gmshCheckVersion(tempInt_);
};
gmsh* gmshSelf_;
int* tempInt_;
};
struct gmsh_file_type_a
{
gmsh_file_type_a(gmsh* gmshSelf, int* tempInt)
: gmshSelf_(gmshSelf), tempInt_(tempInt) {}
void operator()(int value) const
{
//rDebug("Inside gmsh_version_a.");
gmshSelf_->gmshCheckFileType(tempInt_);
};
gmsh* gmshSelf_;
int* tempInt_;
};
template<typename Type>
struct gmsh_clear_vec_a
{
gmsh_clear_vec_a(vector<Type>* vect)
: vect_(vect) {}
void operator()(char const* first, char const* last)
const
{
//rDebug("Clear temporal vector.");
(*vect_).clear();
};
vector<Type>* vect_;
};
template<typename type>
struct gmsh_resize_vec_a
{
gmsh_resize_vec_a(vector<type>* vec, unsigned int size)
: vec_(vec), size_(size) {}
void operator() (char const* first,char const* last)
const
{
//rDebug("Inside gmsh_resize_vec_a.");
(*vec_).resize(size_);
};
void operator() (const int tempInt)
const
{
//rDebug("Inside gmsh_resize_vec_a.");
(*vec_).resize(size_);
};
unsigned int size_;
vector<type> * vec_;
};
template<typename type>
struct gmsh_insert_vec_a
{
gmsh_insert_vec_a(vector<type>* vec, unsigned int const position,
type* value)
: vec_(vec), position_(position), value_(value) {}
void operator() (char const* first,char const* last)
const
{
(*vec_)[position_]=*value_;
}
vector<type> * vec_;
unsigned int position_;
type* value_;
};
template<typename type>
struct gmsh_push_vec_a
{
gmsh_push_vec_a(vector<type>* vec, type* value)
: vec_(vec), value_(value){}
void operator() (char const* first,char const* last)
const
{
//rDebug(" Push value to vector.");
(*vec_).push_back(*value_);
};
void operator() (const double tempDouble)
const
{
//rDebug(" Push value to vector.");
(*vec_).push_back(*value_);
};
type* value_;
vector<type> * vec_;
};
template<typename type1, typename type2>
struct gmsh_insert_map_a
{
gmsh_insert_map_a(map<type1, type2>* tempMap, type1* key,
type2* value)
: map_(tempMap), key_(key), value_(value) {}
void operator() (char const* first,char const* last)
const
{
(*map_)[(*key_)]=*value_;
};
map<type1, type2> * map_;
type1* key_;
type2* value_;
};
template<typename type1, typename type2>
struct gmsh_clear_map_a
{
gmsh_clear_map_a(map<type1, type2>* tempMap)
: map_(tempMap) {}
void operator() (char const* first,char const* last)
const
{
(*map_).clear();
};
map<type1, type2> * map_;
};
struct gmsh_transport_nodes_a
{
gmsh_transport_nodes_a(gmsh* gmshSelf,
map<unsigned int, vector<double> >* tempMap)
: gmshSelf_(gmshSelf), map_(tempMap) {}
void operator() (char const* first,char const* last)
const
{
//rDebug("Copy nodes in data structure.");
for (map<unsigned int, vector<double> >::iterator
iter = (*map_).begin(); iter != (*map_).end(); iter++)
{
vector<double>* temp;
unsigned int tempNumber;
temp = &((*iter).second);
tempNumber = ((*iter).first);
gmshSelf_->gmshPushNode(temp);
gmshSelf_->gmshPushNodeNumber(&tempNumber);
//rDebug("%f %f %f", (*temp)[0], (*temp)[1], (*temp)[2]);
}
};
map<unsigned int, vector<double> >* map_;
gmsh* gmshSelf_;
};
struct gmsh_transport_elem_a
{
gmsh_transport_elem_a(gmsh* gmshSelf, unsigned short int* elemType,
vector <unsigned int>* tempElemNode)
: gmshSelf_(gmshSelf), elemType_(elemType), tempElemNode_(tempElemNode) {}
void operator() (char const* first,char const* last)
const
{
//rDebug("Copy element type %d in data structure.", *elemType_);
gmshSelf_->gmshPushElem(*elemType_, tempElemNode_);
};
gmsh* gmshSelf_;
unsigned short int* elemType_;
vector <unsigned int>* tempElemNode_;
};
struct gmsh_transport_tag_a
{
gmsh_transport_tag_a(gmsh* gmshSelf, unsigned short int* elemType,
vector <unsigned int>* tempElemTag)
: gmshSelf_(gmshSelf), elemType_(elemType), tempElemTag_(tempElemTag) {}
void operator() (char const* first,char const* last)
const
{
//rDebug("Copy element tag list in data structure.");
gmshSelf_->gmshPushTag(*elemType_, tempElemTag_);
};
gmsh* gmshSelf_;
unsigned short int* elemType_;
vector <unsigned int>* tempElemTag_;
};
// Print actions.
struct gmshEMsg_a
{
gmshEMsg_a(string gmshEMsg, unsigned int* tempUnLongInt)
: gmshEMsg_(gmshEMsg), tempUnLongInt_(tempUnLongInt) {}
void operator()(char const* first, char const* last)
const
{
rError("%s %d",gmshEMsg_.c_str(),(*tempUnLongInt_));
};
string gmshEMsg_;
unsigned int* tempUnLongInt_;
};
struct gmsh_info_msg_a
{
gmsh_info_msg_a(string gmsh_info_msg)
: gmsh_info_msg_(gmsh_info_msg), tempUnLongInt_(NULL), tempUnShortInt_(NULL) {}
gmsh_info_msg_a(string gmsh_info_msg, unsigned int* tempUnLongInt)
: gmsh_info_msg_(gmsh_info_msg), tempUnLongInt_(tempUnLongInt), tempUnShortInt_(NULL) {}
gmsh_info_msg_a(string gmsh_info_msg, unsigned short int* tempUnShortInt)
: gmsh_info_msg_(gmsh_info_msg), tempUnLongInt_(NULL), tempUnShortInt_(tempUnShortInt) {}
void operator()(char const* first, char const* last)
const
{
if ((tempUnLongInt_ == NULL) && (tempUnShortInt_ == NULL))
rInfo("%s",gmsh_info_msg_.c_str());
else if ((tempUnLongInt_ != NULL) && (tempUnShortInt_ == NULL))
rInfo("%s%d",gmsh_info_msg_.c_str(),(*tempUnLongInt_));
else if ((tempUnLongInt_ == NULL) && (tempUnShortInt_ != NULL))
rInfo("%s%d",gmsh_info_msg_.c_str(),(*tempUnShortInt_));
};
string gmsh_info_msg_;
unsigned int* tempUnLongInt_;
unsigned short int* tempUnShortInt_;
};
struct gmsh_nothing_a
{
gmsh_nothing_a()
{}
void operator()(char const* first, char const* last)
const
{
};
};
template<typename type>
struct gmsh_compare_a
{
gmsh_compare_a(type* a, type* b)
: a_(a), b_(b) {}
bool operator () () const
{
if (*a_ == *b_)
{
//rDebug("Return TRUE! a = %d b = %d", *a_, *b_);
return true;
}
else
{
//rDebug("Return FALSE! a = %d b = %d", *a_, *b_);
return false;
}
};
type* a_;
type* b_;
};
template<typename type>
struct gmsh_array_access_a
{
gmsh_array_access_a(type* a, type* b)
: a_(a), b_(b) {}
void operator()(char const* first, char const* last) const
{
*a_ = GMSH_ELEM_N_NODES[*b_];
};
type* a_;
type* b_;
};
struct gmsh_show_elem_result_a
{
gmsh_show_elem_result_a(gmsh* gmshSelf)
: gmshSelf_(gmshSelf) {}
void operator()(char const* first, char const* last)
const
{
gmshSelf_->gmshShowElemResult();
};
gmsh* gmshSelf_;
};
#endif // GMSHSEMANTICACTION_HH_
-18
View File
@@ -1,18 +0,0 @@
## Makefile.am -- process this file with automake to produce Makefile.in
##
## authors - benedikt oswald and patrick leidenberger
## modified - 2006 aug 21, patrick leidenberger, creation
## modified - 2006 aug 23, pl, adaped to new directory structure.
#
## objective - automake input file for the gmsh directory
## project - gmshtohdf5fed
noinst_LTLIBRARIES = libgmsh.la
gmshdir = $(topleveldir)/libsrc/gmsh
gmsh_HEADERS = gmsh.hh
libgmsh_la_SOURCES = gmsh.cc \
gmsh.hh \
gmshconst.hh \
gmshgrammer.hh \
gmshsemanticaction.hh
AM_CPPFLAGS = @AM_CPPFLAGS@
-37
View File
@@ -1,37 +0,0 @@
// rights - 2006-, copyright benedikt, all rights reserved
// project - phidias3d
// file name - hdf5em.h
// file type - c++ implementation file
// objective - implement class for HDF5/ELECTROMAGNETIC file format access
// modified - 2006 jun 26, creation, benedikt oswald
// modified - 2006
// inheritance -
// feature - implements the base class for HDF5/ELECTROMAGNETIC file format access.
// feature -
// required software -
/* include standard header files */
//#include <h5.h>
/* include proprietary files */
#include "h5fed.hh"
#ifdef HAVE_HDF5
namespace hdf5em
{
//
// hdf5em::hdf5em()
// {
// ;
// }
//
// hdf5em::~hdf5em()
// {
// ;
// }
//
}
#endif // HAVE_HDF5
-658
View File
@@ -1,658 +0,0 @@
// rights - 2006-, copyright benedikt, all rights reserved
// project - phidias3d
// file name - hdf5em.h
// file type - c++ header file
// objective - declare class for HDF5/ELECTROMAGNETIC file format access
// modified - 2006 jun 26, creation, benedikt oswald
// modified - 2006 aug 26, pl, integrate automatic index mapping.
// inheritance -
// feature - declares the base class for HDF5/ELECTROMAGNETIC file format access;
// feature - this class is completely self contained, i.e. it does not need anything
// feature - external, except the STL and the HDF5 header files and the corresponding
// feature - library.
// required software -
#ifndef H5FED_HH_
#define H5FED_HH_
#ifdef HAVE_HDF5
/* include standard header files */
#include <cmath>
#include <iostream>
#include <complex>
#include <string>
#include <vector>
// Include the files for rlog.
#include <rlog/rlog.h>
#include <rlog/rloglocation.h>
#include <rlog/Error.h>
#include <rlog/RLogChannel.h>
#include <rlog/StdioNode.h>
#include <rlog/RLogTime.h>
// Include HDF5 headers.
#include <hdf5.h>
// Include h5fed specific constants.
#include "h5fedconst.hh"
/* include standard proprietary header files */
#include "nonsciconst.h"
#include "physicomath.h"
using namespace std;
using namespace physicomath;
using namespace nonsciconst;
namespace H5Fed
{
class H5Fed {
public:
/** \brief constructor and destructor */
H5Fed()
{
doIndexMapping_ = false;
indexMap_.clear();
positionMap_.clear();
// Deactivate the HDF5 error output.
H5Eset_auto (0, NULL );
};
// The Destructor.
~H5Fed(){};
//! Open an hdf5 finite element data file with appropriate access.
int open(string fileName, string fileAccess)
{
// Store filename and file access in private variable.
fileName_ = fileName;
fileAccess_ = fileAccess;
// Open file with respective rights via HDF5 API.
if (!fileAccess_.compare(FILE_READ))
{
hdf5FileIdent_ = H5Fopen(fileName_.c_str(), H5F_ACC_RDONLY, H5P_DEFAULT);
return OKCODE;
}
else if (!fileAccess_.compare(FILE_READ_WRITE))
{
hdf5FileIdent_ = H5Fopen(fileName_.c_str(), H5F_ACC_RDWR, H5P_DEFAULT);
return OKCODE;
}
else if (!fileAccess_.compare(FILE_CREATE))
{
hdf5FileIdent_ = H5Fcreate(fileName_.c_str(), H5F_ACC_EXCL,
H5P_DEFAULT, H5P_DEFAULT);
if (hdf5FileIdent_ < 0)
{
rError("The file %s already exist.",fileName_.c_str());
rError("To overwrite use the --force option.");
exit(ERRORCODE);
}
else
return OKCODE;
}
else if (!fileAccess_.compare(FILE_CREATE_FORCE))
{
hdf5FileIdent_ = H5Fcreate(fileName_.c_str(), H5F_ACC_TRUNC,
H5P_DEFAULT, H5P_DEFAULT);
return OKCODE;
}
else
{
rError("Unknown file-open-attribute for hdf5 file.");
exit(ERRORCODE);
}
};
// Close an open hdf5 file.
int close(void)
{
if (hdf5FileIdent_ >= 0)
{
hdf5Status_ = H5Fclose(hdf5FileIdent_);
return OKCODE;
}
else
{
rError("You cannot close a file that is not opened.");
return ERRORCODE;
}
};
// Create the empty HDF5 Finite Element Stardart group hierarchy.
int createGroupHierarchie()
{
// Hdf5 group identifier for group access, localy valid (this method).
hid_t hdf5GroupIdent_;
// Create the groups. All group-name strings are defined in h5fedconst.hh.
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_ROOT.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_COORD.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_VOLUME_MESH.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_BOUNDARY_MESH.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_MATERIAL.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_ELECTROMAGNETIC.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_DISCRETE.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_PHYSICAL.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_DEBYE.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_LORENTZ.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_DRUDE.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_DOF.c_str(),H5P_DEFAULT);
hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_,
H5FED_G_FIELD.c_str(),H5P_DEFAULT);
return OKCODE;
};
// This function activate the automatic index mapping to create a gapfree
// and consecutive index set for the hdf5fed file.
// The indexVec holdes the numbers of the nodes in the same way, as the
// nodes are in the node vector.
int beginIndexMapping(std::vector<unsigned int>* indexVec)
{
rDebug("Begin automatic index mapping.");
doIndexMapping_ = true;
indexMap_.clear();
positionMap_.clear();
// Copy the old index to the map as map-key.
for(unsigned int varI = 0; varI < indexVec->size(); varI++)
{
indexMap_.insert(make_pair((*indexVec)[varI],0));
}
// Number all elements in the map consecutive, starting with zero, that
// is the new index set.
unsigned int tempUnInt = 0;
for(std::map<unsigned int, unsigned int>::iterator
iter = indexMap_.begin();
iter != indexMap_.end(); iter ++)
{
iter->second = tempUnInt;
tempUnInt++;
}
// The first column contains the new index, the second the old position
// of the coordinate in the vector.
for(unsigned int varI = 0; varI < indexVec->size(); varI++)
{
positionMap_.insert(make_pair(
(indexMap_.find((*indexVec)[varI]))->second,varI));
}
return OKCODE;
};
// This function deactivate the automatic index mapping.
// The uses index sets must be consecutive and gapfree.
int endIndexMapping()
{
rDebug("End automatic index mapping.");
doIndexMapping_ = false;
indexMap_.clear();
return OKCODE;
};
// Write 3dim coordinates to h5fed file.
int coord3d (std::vector<std::vector<double> >* coord)
{
// All these operations are only allowed, if there is a valid file
// identifier.
if (hdf5FileIdent_ >= 0)
{
// Define the rank of the different dataspaces.
const int rank = 2;
// Hdf5 error handling variable for Hdf5 actions.
herr_t hdf5Status;
// Hdf5 dataspace identifier.
hid_t hdf5DataspaceId;
// Hdf5 dataset identifier.
hid_t hdf5DatasetId;
// Define the dimension of the data array.
// Number of rows: as much as coordinates.
// Number of colums: 3, one for each dimension.
hsize_t dim[2];
dim[0] = coord->size();
dim[1] = 3;
// We copy the coordinates from coord in an standart array, so that
// hdf5 can handle it.
// We do this in portions, so we save memory.
// Subdimension of hyperslab in memory: 1 line, 3 columns.
hsize_t dim_sub_mem[2];
dim_sub_mem[0] = 1;
dim_sub_mem[1] = 3;
// Subdimension of hyperslab in file: 1 line, 3 columns.
hsize_t dim_sub_file[2];
dim_sub_file[0] = 1;
dim_sub_file[1] = 3;
// Define the offset for reading from the memory.
// Always fixed.
hsize_t offset_mem[2];
offset_mem[0] = 0;
offset_mem[1] = 0;
// Define the offset for writing into the file.
hsize_t offset_file[2];
offset_file[0] = 0; // Row only at the beginning. We iterate over it.
offset_file[1] = 0; // We have no offset respective to the column.
// Array for x, y and z component of one coordinate.
double coordinate[3];
// Dimesion and datatype of the file dataset, read out form file.
// This is not the fastest, but the most robust way.
hsize_t dim_out[2];
hid_t dataType;
// Create dataspace of full size.
hdf5DataspaceId = H5Screate_simple(rank, dim, H5P_DEFAULT);
// Create dataset of full size.
hdf5DatasetId = H5Dcreate(hdf5FileIdent_, H5FED_D_COORD3D.c_str(),
H5T_IEEE_F64LE, hdf5DataspaceId, H5P_DEFAULT);
// Loop over all rows of the dataset (file) and copy the coord vector
// element wise.
hdf5Status = H5Sget_simple_extent_dims(hdf5DataspaceId, dim_out, H5P_DEFAULT);
dataType = H5Dget_type(hdf5DatasetId);
// If we use automatic mapping we need an interator to the map.
std::map<unsigned int, unsigned int>::iterator
iter = positionMap_.begin();
for (unsigned int varI = 0; varI < dim_out[0]; varI++)
{
// Iterate over the rows in file dataspace.
offset_file[0] = varI;
// Copy every element of a coordinate.
for (unsigned int varJ = 0; varJ < dim_out[1]; varJ++)
{
// Here is the only special case for automated mapping:
// Do not copy the next in the input vector, copy the coord
// with the next following number.
if (doIndexMapping_ == true)
coordinate[varJ] = (*coord)[iter->second][varJ];
else
coordinate[varJ] = (*coord)[varI][varJ];
}
// Select hyperslab ('region') in file dataspace.
hdf5Status = H5Sselect_hyperslab(hdf5DataspaceId, H5S_SELECT_SET,
offset_file, H5P_DEFAULT,
dim_sub_file, H5P_DEFAULT);
// Define memory Dataspace.
hid_t hdf5MemspaceId;
hdf5MemspaceId = H5Screate_simple(rank, dim_sub_mem, H5P_DEFAULT);
// Select hyperslab ('region') in memory.
hdf5Status = H5Sselect_hyperslab(hdf5MemspaceId, H5S_SELECT_SET,
offset_mem, H5P_DEFAULT,
dim_sub_mem, H5P_DEFAULT);
// Copy dataset to dataset from memory to file.
hdf5Status = H5Dwrite(hdf5DatasetId, H5T_NATIVE_DOUBLE,
hdf5MemspaceId, hdf5DataspaceId,
H5P_DEFAULT, coordinate);
H5Sclose(hdf5MemspaceId);
// Increment the map iterator if we make automatic mapping.
if (doIndexMapping_)
iter++;
}
// Close hdf5 identifier.
hdf5Status = H5Dclose(hdf5DatasetId);
hdf5Status = H5Sclose(hdf5DataspaceId);
return OKCODE;
}
else
{
rError("You cannot operate to dataset COORD3D.");
rError("There is no valid file identifier.");
return ERRORCODE;
}
};
// Read and return tetrahedron on of the given level.
std::vector<std::vector<unsigned int> > tetrahedron(unsigned int level)
{
rError("The function: tetrahedron(unsigned int level) is not implemented.");
};
// Copy the tetrahedon elements to the h5fed file.
int tetrahedron(unsigned int level,
std::vector< std::vector<unsigned int> >* elem)
{
// Set dimension of an elements vector.
unsigned int elemDim = H5FED_TET_N_NODE;
// Set the name of the dataset, we want to operate.
string datasetName = H5FED_D_TETMESH + stringify(level);
// This function does the real work for all elements.
element_(level, elem, datasetName, elemDim);
return OKCODE;
}
int element_(unsigned int level,
std::vector< std::vector<unsigned int> >* elem,
std::string datasetName,
unsigned int elemDim )
{
// All these operations are only allowed, if there is a valid file
// identifier.
if (hdf5FileIdent_ >= 0)
{
rDebug("Insert a check, if the selected level exits,");
rDebug("and if it is consecutive.");
// Define the rank of the different dataspaces.
const int rank = 2;
// Hdf5 error handling variable for Hdf5 actions.
herr_t hdf5Status;
// Hdf5 dataspace identifier.
hid_t hdf5DataspaceId;
// Hdf5 dataset identifier.
hid_t hdf5DatasetId;
// Define the dimension of the data array.
hsize_t dim[2];
// Number of rows: as much as elements.
dim[0] = elem->size();
// Number of colums: dimenstion of an elements vector.
dim[1] = elemDim;
// We copy the element nodes from a element in an standart array,
// so that hdf5 can handle it.
// We do this for every element separate, so we save memory.
// Subdimension of hyperslab in memory: 1 line, elemDim columns.
hsize_t dim_sub_mem[2];
dim_sub_mem[0] = 1;
dim_sub_mem[1] = elemDim;
// Subdimension of hyperslab in file: 1 line, elemDim columns.
hsize_t dim_sub_file[2];
dim_sub_file[0] = 1;
dim_sub_file[1] = elemDim;
// Define the offset for reading from the memory.
// Always fixed, because memory has exactly the same size.
hsize_t offset_mem[2];
offset_mem[0] = 0;
offset_mem[1] = 0;
// Define the offset for writing into the file.
hsize_t offset_file[2];
offset_file[0] = 0; // Row ofsett zero only at the beginning.
offset_file[1] = 0; // We have no offset respective to the column.
// Array for single elements of an element vector.
unsigned int element[elemDim];
// Dimesion and datatype of the file dataset, read out form file.
// This is not the fastest, but the most robust way.
hsize_t dim_out[2];
hid_t dataType;
// Create dataspace of full size.
hdf5DataspaceId = H5Screate_simple(rank, dim, H5P_DEFAULT);
// Create dataset of full size.
hdf5DatasetId = H5Dcreate(hdf5FileIdent_, datasetName.c_str(),
H5T_STD_U32LE, hdf5DataspaceId, H5P_DEFAULT);
// Loop over all rows of the dataset (file) and copy the elem vector
// row wise.
hdf5Status = H5Sget_simple_extent_dims(hdf5DataspaceId, dim_out,
H5P_DEFAULT);
// Get the datatype of the datas we want to write.
dataType = H5Dget_type(hdf5DatasetId);
for (unsigned int varI = 0; varI < dim_out[0]; varI++)
{
// Iterate over the rows in file dataspace.
offset_file[0] = varI;
// Copy every element of a coordinate.
for (unsigned int varJ = 0; varJ < dim_out[1]; varJ++)
{
// Here is the only special case for automated mapping:
// Do not copy the next in the input vector, copy the coord
// with the next following number.
if (doIndexMapping_ == true)
{
std::map<unsigned int, unsigned int>::iterator iter;
iter = indexMap_.find((*elem)[varI][varJ]);
element[varJ] = iter->second;
}
else
element[varJ] = (*elem)[varI][varJ];
}
// Select hyperslab ('region') in file dataspace.
hdf5Status = H5Sselect_hyperslab(hdf5DataspaceId, H5S_SELECT_SET,
offset_file, H5P_DEFAULT,
dim_sub_file, H5P_DEFAULT);
// Define memory Dataspace.
hid_t hdf5MemspaceId;
hdf5MemspaceId = H5Screate_simple(rank, dim_sub_mem, H5P_DEFAULT);
// Select hyperslab ('region') in memory.
hdf5Status = H5Sselect_hyperslab(hdf5MemspaceId, H5S_SELECT_SET,
offset_mem, H5P_DEFAULT,
dim_sub_mem, H5P_DEFAULT);
// Copy dataset to dataset from memory to file.
hdf5Status = H5Dwrite(hdf5DatasetId, dataType,
hdf5MemspaceId, hdf5DataspaceId,
H5P_DEFAULT, element);
// Close the memory space identifier.
H5Sclose(hdf5MemspaceId);
}
// Close hdf5 identifier.
hdf5Status = H5Dclose(hdf5DatasetId);
hdf5Status = H5Sclose(hdf5DataspaceId);
return OKCODE;
}
else
{
rError("You cannot operate to a dataset.");
rError("There is no valid file identifier.");
exit(ERRORCODE);
}
};
/** \brief Inquire existence of HDF5 groups */
// existsVolumeMesh()
// existsCoord()
// virtual bool existsMesh(){ return(false); }
// virtual bool existsVertices(){ return(false); }
// virtual bool existsEdges(){ return(false); }
// virtual bool existsTriangles(){ return(false); }
// virtual bool existsBoundaryTriangles(){ return(false); }
// /** \brief Data access both reading and writing */
// virtual unsigned int nDim(){ return(ndim_); } /* retrieve number of mesh dimension */
// virtual unsigned int nLevel(){ return(nlevel_); } /* retrieve number of mesh levels */
// virtual unsigned int nCoord(){ return(nvertex_); } /* retrieve total number of all vertices */
// virtual unsigned int nCoord(unsigned int level){ return(nvertex_); } /* retrieve total number of vertices used for defining the mesh */
// Überladen greifen auf nelem zu
// virtual std::vector<unsigned int> nTet(){ return(ntet_); } /* retrieve vector containing number of tetrahedra present in levels of the mesh */
// virtual std::vector<unsigned int> nBoundary(){ return(nboundary_); } /* retrieve vector containing number of boundary meshes present on a level of the mesh */
// Pism, ...
// nBoundaryTriangle
// Quad..
// Edge
/** \brief HDF5EM data access routines */
/** \brief Electromagnetic boundary conditions */
//_______________________________
// virtual int triangleBC(unsigned int level, unsigned int triangle, unsigned int bc){} /* set electromagnetic boundary condition for triangle on level */
// virtual unsigned int triangleBC(unsigned int level, unsigned int triangle){} /* retrieve electromagnetic boundary condition type */
//
// virtual int rhoSurfaceImpedance(unsigned int level, unsigned int triangle, double rho){} /* store resistance of surface impedance for triangle on level */
// virtual double rhoSurfaceImpedance(unsigned int level, unsigned int triangle){} /* retrieve resistance of surface impedance boundary condition */
//
// /** \brief Mesh */
// stl vectoren
// virtual unsigned int** tetrahedron(unsigned int level){} /* read tetrahedra on level l stored in hdf5 file and return them in simple form */
// virtual int tetrahedron(unsigned int level, unsigned int ntetrahedron, unsigned int** tetrahedron){}
// virtual unsigned int* vertexId(){} /* read identification tag of vertices */
//
// virtual double** vertex(unsigned int level){} /* read vertices */
// virtual int vertex(unsigned int nvertex, double** vertex){} /* write vertices */
//
// virtual unsigned int** boundary(unsigned int level, unsigned int wboundary){} /* read boundary meshes stored in the hdf5 file on level and return number of them */
// virtual int boundary(unsigned int level, unsigned int** boundary, unsigned int wboundary){} /* write whichboundary boundary mesh into file */
//
// virtual unsigned int** edge(unsigned int level, aqmedge* &edge){} /* read edges on level and return number of them */
// virtual int edge(unsigned int level, unsigned int* edge){} /* write edges on level and return number of them */
//
// virtual unsigned int** triangle(unsigned int level){} /* read Triangular faces on level */
// virtual int triangle(unsigned int level, unsigned int** triangle){} /* write Triangular faces on level */
//
// /** \brief Materials */
// bool existsMaterials() /* find out if there are materials parameters at discrete frequencies, energies or wavelength */
//
// vector<double> frequency(){} /* read a vector of discrete frequencies stored in the file */
// int frequency(vector<double> f){} /* store a vector of discrete frequencies into the file */
//
// vector<double> energy(){} /* read a vector of discrete energies stored in the file */
// int energy(vector<double> e){} /* store a vector of discrete wavelengths into the file */
//
// vector<double> wavelength(){} /* read a vector of discrete wavelengths stored in the file */
// int wavelength(vector<double> lambda){} /* store a vector of discrete wavelengths into the file */
//
// vector< complex<double> > permittivity(){} /* read a vector of complex valued relative permittivities from the file */
// int permittivity( vector< complex<double> > epsilonr){} /* store a vector of complex valued relative permittivities into the file */
//
// vector< complex<double> > permeability(){} /* read a vector of complex valued relative permittivities from the file */
// int permeability( vector< complex<double> > mur){} /* store a vector of complex valued relative permittivities into the file */
//
// vector< complex<double> > conductivity(){} /* read a vector of complex valued relative permittivities from the file */
// int conductivity( vector< complex<double> sigma>){} /* store a vector of complex valued relative permittivities into the file */
//
// /** \brief Materials */
// bool existsDebyeMaterial(){} /* are the Debye material model paramters */
// bool existsLorentz(){} /* are there Lorentz material model parameters */
// bool existsDrudeMaterial(){} /* are there Drude material model parameters */
//
// /* Debye dielectric material model parameters, cf. Taflove et al. pp. 354 */
// std<double> weightsDebye(){} /* retrieve vector of Debye material model weights */
// int weightsDebye(vector<double> weightsdebye){} /* store vector of Debye material model weights */
//
// std<double> relaxationFrequencyDebye(){} /* retrieve vector of Debye material model relaxation frequencies */
// int relaxationFrequencyDebye(vector<double> relaxfreq){} /* retrieve vector of Debye material model relaxation frequencies */
//
// double epsilonStaticDebye(){} /* retrieve static limit of relative permittivitiye */
// int epsilonStaticDebye(double epsilonstaticr){} /* store static limit of relative permittivitiye */
//
// double epsilonInfinityDebye(){} /* retrieve infinite limit of relative permittivity */
// int epsilonInfinityDebye(double epsiloninftyr){} /* store infinite limit of relative permittivity */
//
// /* Lorentz dielectric material model parameters, cf. Taflove et al. pp. 354 */
// std<double> weightsLorentz(){} /* retrieve vector of Debye material model weights */
// int weightsLorentz(vector<double> weightsdebye){} /* store vector of Debye material model weights */
//
// std<double> poleFrequencyLorentz(){} /* retrieve vector of Lorentz material model relaxation frequencies */
// int poleFrequencyDebye(vector<double> polefreq){} /* retrieve vector of Lorentz material model relaxation frequencies */
//
// std<double> dampingCoefficientLorentz(){} /* retrieve vector of Lorentz material model damping coefficients */
// int dampingCoefficientLorentz(vector<double> dampingcoeff){} /* retrieve vector of Lorentz material model damping coefficients */
//
// double epsilonStaticLorentz(){} /* retrieve static limit of relative permittivitiye */
// int epsilonStaticLorentz(double epsilonstaticr){} /* store static limit of relative permittivitiye */
//
// double epsilonInfinityLorentz(){} /* retrieve infinite limit of relative permittivity */
// int epsilonInfinityLorentz(double epsiloninftyr){} /* store infinite limit of relative permittivity */
//
// /* Drude dielectric material model parameters, cf. Taflove et al. pp. 354 */
// std<double> weightsDrude(){} /* retrieve vector of Drude material model weights */
// int weightsDrude(vector<double> weightsdebye){} /* store vector of Drude material model weights */
//
// std<double> poleFrequencyDrude(){} /* retrieve vector of Drude material model pole frequencies */
// int poleFrequencyDrude(vector<double> relaxfreq){} /* retrieve vector of Drude material model pole frequencies */
//
// std<double> inversePoleRelaxationTimeDrude(){} /* retrieve vector of Lorentz material model inverse pole relaxation time */
// int inversePoleRelaxationTimeDrude(vector<double> inversepolerelaxtime){} /* retrieve vector of Lorentz material model inverse pole relaxation time */
//
// double epsilonStaticDrude(){} /* retrieve static limit of relative permittivitiye */
// int epsilonStaticDrude(double epsilonstaticr){} /* store static limit of relative permittivitiye */
//
// double epsilonInfinityDrude(){} /* retrieve infinite limit of relative permittivity */
// int epsilonInfinityDRude(double epsiloninftyr){} /* store infinite limit of relative permittivity */
//________________________________________________________________
// protected:
//
private:
//-----------------------------------------------------------------------//
// Private data structure. //
//-----------------------------------------------------------------------//
// Store the filename of the H5Fed here.
string fileName_;
// Store the file access rights of the H5Fed here.
string fileAccess_;
// Hdf5 error variable stores the success of an Hdf5 action.
herr_t hdf5Status_;
// Hdf5 file identifier for file access. If a file access fails, the
// identifyer is negetive.
hid_t hdf5FileIdent_;
// If the elements we want to write to the h5fed file are not consecutive
// and with gaps numbered, this API shoud be able to map this to an gapfree
// and consecutive index set.
// To activate this function we have the following variable.
bool doIndexMapping_;
// The first entry in indexMap_ is the old index of a coordinate, the
// second is the new index usend in the h5fed file.
std::map<unsigned int, unsigned int> indexMap_;
// The first entry in positionMap_ is the new index usend in the h5fed
// file, the second is the old postion in the coordinate vector.
std::map<unsigned int, unsigned int> positionMap_;
//-----------------------------------------------------------------------//
// Private helper functions. //
//-----------------------------------------------------------------------//
// This function converts a number to a string.
template<typename type>
inline std::string stringify(type value)
{
std::ostringstream oStream;
try
{
oStream << value;
}
catch(exception& error)
{
rError("Cannot convert this variable to a string.");
rError("Error: %d",error.what());
exit(ERRORCODE);
}
return oStream.str();
}
};
} // End of namespace H5Fed
#endif // HAVE_HDF5
#endif //H5FED_HH_
-50
View File
@@ -1,50 +0,0 @@
#ifndef H5FEDCONST_HH_
#define H5FEDCONST_HH_
#include<string>
using namespace std;
//! Hdf5 specific file access:
// "r" for read only access.
// "w" for read and write access.
// "c" create a new a new file with if it does not exist already.
// "cf" create a new file, overwrite it if it exists already.
const string FILE_READ("r");
const string FILE_READ_WRITE("w");
const string FILE_CREATE("c");
const string FILE_CREATE_FORCE("cf");
// Define the group names of the H5Fed starndard groups.
const string H5FED_G_ROOT ("/HDF5_FINITE_ELEMENT_DATA");
const string H5FED_G_COORD (H5FED_G_ROOT+"/COORD");
const string H5FED_G_VOLUME_MESH (H5FED_G_ROOT+"/VOLUME_MESH");
const string H5FED_G_BOUNDARY_MESH (H5FED_G_ROOT+"/BOUNDARY_MESH");
const string H5FED_G_MATERIAL (H5FED_G_ROOT+"/MATERIAL");
const string H5FED_G_ELECTROMAGNETIC (H5FED_G_MATERIAL+"/ELECTROMAGNETIC");
const string H5FED_G_DISCRETE (H5FED_G_ELECTROMAGNETIC+"/DISCRETE");
const string H5FED_G_PHYSICAL (H5FED_G_ELECTROMAGNETIC+"/PHYSICAL");
const string H5FED_G_DEBYE (H5FED_G_PHYSICAL+"/DEBYE");
const string H5FED_G_LORENTZ (H5FED_G_PHYSICAL+"/LORENTZ");
const string H5FED_G_DRUDE (H5FED_G_PHYSICAL+"/DRUDE");
const string H5FED_G_DOF (H5FED_G_ROOT+"/DOF");
const string H5FED_G_FIELD (H5FED_G_ROOT+"/FIELD");
// Define the dataset names of the H5Fed standard datasets.
const string H5FED_D_COORD3D (H5FED_G_COORD+"/COORD3D");
const string H5FED_D_TETMESH (H5FED_G_VOLUME_MESH+"/TETMESH_L");
const string H5FED_D_HEXMESH (H5FED_G_VOLUME_MESH+"/HEXMESH_L");
const string H5FED_D_PRISMATICMESH (H5FED_G_VOLUME_MESH+"/PRISMATICMESH_L");
const string H5FED_D_PYRAMIDMESH (H5FED_G_VOLUME_MESH+"/PYRAMIDMESH_L");
const string H5FED_D_TRIANGLEMESH (H5FED_G_VOLUME_MESH+"/TRIANGLEMESH_L");
const string H5FED_D_QUADRANGLEMESH (H5FED_G_VOLUME_MESH+"/QUADRANGLEMESH_L");
// How much nodes have a geometric figure.
const unsigned short int H5FED_TET_N_NODE = 4;
const unsigned short int H5FED_HEX_N_NODE = 8;
const unsigned short int H5FED_PRISMATIC_N_NODE = 6;
const unsigned short int H5FED_PYRAMID_N_NODE = 5;
const unsigned short int H5FED_TRIANGLE_N_NODE = 3;
const unsigned short int H5FED_QUADRANGLE_N_NODE = 4;
#endif /*H5FEDCONST_HH_*/
-14
View File
@@ -1,14 +0,0 @@
## Makefile.am -- process this file with automake to produce Makefile.in
##
## authors - benedikt oswald and patrick leidenberger
## modified - 2006 aug 24, patrick leidenberger, creation
#
## objective - automake input file for the h5fed directory
## project - gmsh2h5fed
noinst_LTLIBRARIES = libh5fed.la
h5feddir = $(topleveldir)/libsrc/h5fed
h5fed_HEADERS = h5fed.hh
libh5fed_la_SOURCES = h5fed.cc \
h5fed.hh
AM_CPPFLAGS = @AM_CPPFLAGS@
-11
View File
@@ -1,11 +0,0 @@
## Makefile.am -- process this file with automake to produce Makefile.in
##
## authors - benedikt oswald and patrick leidenberger
## modified - 2006 aug 21, patrick leidenberger, creation
## modified - 2006 aug 24, pl, add h5fed path.
#
## objective - automake input file for the libsrc directory
## project - gmsh2h5fed
SUBDIRS = gmsh h5fed
AM_CPPFLAGS = @AM_CPPFLAGS@
-143
View File
@@ -1,143 +0,0 @@
// rights - copyright by benedikt oswald, 2002-2006, all rights reserved
// project - phidias3d
// file name - nonsciconst.h
// file type - c++ include file
// author - benedikt oswald
// modified - 2004 may 21, creation, benedikt oswald
// modified - 2004 jun 11, added font definitions, benedikt oswald
// modified - 2006 jun 26, transferred to project phidias3d, benedikt oswald
// modified - 2006 jun 28, correction of RIGHTANGLE_DEG from int to double,
// patrick leidenberger
// modified - 2006 jul 11, add vtk cell type constants,
// patrick leidenberger
// objective - define technical, non-scientific constants, e.g. plot paper
// dimensions etc.
/* include standard libraries */
#include <cmath>
#include <complex>
#include <string>
#include <vector>
#ifndef _NONSCICONST_
#define _NONSCICONST_
using namespace std;
namespace nonsciconst
{
const double A4WIDTH = 210.0;
const double A4HEIGHT = 297.0;
const double A5WIDHT = 105.0;
const double A5HEIGHT = 148.5;
const unsigned int FRAMED = 1;
const unsigned int NOTFRAMED = 0;
const unsigned int BELOW = 1;
const unsigned int ABOVE = 0;
const unsigned int ATLEFT = 1;
const unsigned int ATRIGHT = 0;
const unsigned int FILLED = 1;
const unsigned int NOTFILLED = 0;
const unsigned int OUTERFACES = 1;
const unsigned int INNERFACES = 0;
const double RIGHTANGLE_DEG = 90.0;
const unsigned int DRAW_GRID_NODES_FLAG = 1;
const unsigned int DRAW_GRID_LINES_FLAG = 1;
const double MAXHUE = 0.7;
const double MAXSAT = 1.0;
const double MAXBRG = 1.0;
const unsigned int GRAY_COLORSPACE = 0;
const unsigned int RGB_COLORSPACE = 2;
const unsigned int HSB_COLORSPACE = 4;
const unsigned int CMYK_COLORSPACE = 8;
const double HSB_H_BLUE = 0.7;
const double HSB_H_RED = 1.0;
const double HSB_H_BLACK = 0.1;
const unsigned int LEGEND_HORIZONTAL = 1;
const unsigned int LEGEND_VERTICAL = 0;
const unsigned int NUMCHARPLTFLNM = 256;
const unsigned int NUMCHARSTRINGPLOTPROD = 256;
const unsigned int DSPLYSTRLE = 512;
const unsigned int MAXFILENAMSTRLEN = 512;
const unsigned int DSPSTRLEN = 256;
const double MINIMUM_DB_VAL = -60.0;
const string HELVETICA_OBLIQUE_FNT("Helvetica-Oblique");
const string HELVETICA_FNT("Helvetica");
const string TIMES_FNT("Times-Roman");
const string ARIAL_FNT("Arial");
const string SYMBOL_FNT("Symbol");
const double INCHINPT = 72.0; /* define an inch in points, a typographic unit */
const double INCHINMM = 25.4; /* define an inch in millimeter */
const string ELECTRIC_FIELD_UNIT_STRING("[V/m]");
const string ELECTRIC_FIELD_UNIT_STRING_DB("[norm. dB]");
const double TEXT_DOWN_DIR_DEG = 270.0;
const double TEXT_RIGHT_DIR_DEG = 0.0;
const unsigned int COLRSPCDIM = 3;
const double PSGRAF3_SYMBOL_RADIUS_PCOORD=0.3;
const int PSGRAF3_SYMBOL_CIRCLE = 0;
const int PSGRAF3_SYMBOL_SQUARE = 1;
const int PSGRAF3_SYMBOL_RHOMBUS = 2;
const int PSGRAF3_SYMBOL_TRIANGLE_TIPUP = 3;
const int PSGRAF3_SYMBOL_TRIANGLE_TIPDOWN = 4;
const int OKCODE = 0;
const int ERRORCODE = 1;
const int ERROR_SINGULAR_MATRIX = 2;
const int ERROR_PSGRAF3_NOT_AVAILABLE = 3;
const int ERROR_NNZ_IS_ZERO = 100;
const string VTK_LFF_EXTENSION(".vtk");
const string HDF5_EXTENSION(".h5");
const string TAB_STRING("\t");
const string SINGLE_SPACE(" ");
const int DEFAULT_FLOAT_PRECISION=6;
// Define constants for vtk cell types.
const unsigned int VTK_VERTEX = 1;
const unsigned int VTK_POLY_VERTEX = 2;
const unsigned int VTK_LINE = 3;
const unsigned int VTK_POLY_LINE = 4;
const unsigned int VTK_TRIANGLE = 5;
const unsigned int VTK_TRIANGEL_STRIP = 6;
const unsigned int VTK_POLYGON = 7;
const unsigned int VTK_PIXEL = 8;
const unsigned int VTK_QUAD = 9;
const unsigned int VTK_TETRA = 10;
const unsigned int VTK_VOXEL = 11;
const unsigned int VTK_HEXAHEDRON = 12;
const unsigned int VTK_WEDGE = 13;
const unsigned int VTK_PYRAMID = 14;
const unsigned int VTK_QUADRATIC_EDGE = 21;
const unsigned int VTK_QUADRATIC_TRIANGLE = 22;
const unsigned int VTK_QUADRATIC_QUAD = 23;
const unsigned int VTK_QUADRATIC_TETRA = 24;
const unsigned int VTK_QUATRATIC_HEXAHEDRON = 25;
}
#endif
-72
View File
@@ -1,72 +0,0 @@
// rights - copyright by benedikt oswald, 2002-2006, all rights reserved
// project - phidias3d
// file name - physicomath.h
// file type - c++ include file
// author - benedikt oswald
// modified - 2003 jan 30, creation -
// modified - 2006 jun 26, transferred to project phidias3d, benedikt oswald
// objective - physical and mathematical quantities, constansts etc.
#include <cmath>
#include <complex>
#ifndef _PHYSICO_MATH_
#define _PHYSICO_MATH_
using namespace std;
namespace physicomath
{
const double ZERO = 0;
const int INT_ZERO = 0;
const unsigned int UNSIGNED_INT_ZERO = 0;
const double DOUBLE_ZERO = 0.0;
const int INT_ONE = 1;
const unsigned int UNSIGNED_INT_ONE = 1;
const int INT_TWO = 2;
const double DOUBLE_ONE = 1.0;
const double DOUBLE_TWO = 2.0;
#ifndef IMAGINARY_UNIT_
#define IMAGINARY_UNIT_
const complex<double> IU(0.0,1.0);
#endif
const double PI = 3.1415926535;
const double EPSILON_ZERO = 8.85418782e-12;
const double MU_ZERO = 4.0 * PI * 1.0e-7;
const double SPEED_OF_LIGHT = (1.0/(sqrt(EPSILON_ZERO*MU_ZERO)));
const double Z0 = sqrt(MU_ZERO/EPSILON_ZERO);
const double TERAHERTZ = 1.0e12;
const double GIGAHERTZ = 1.0e9;
const double MEGAHERTZ = 1.0e6;
const double KILOHERTZ = 1.0e3;
const double SECOND = 1.0e0;
const double MILLISECOND = 1.0e-3;
const double MICROSECOND = 1.0e-6;
const double NANOSECOND = 1.0e-9;
const double PICOSECOND = 1.0e-12;
const double FEMTOSECOND = 1.0e-15;
const double L_BAND_CENTER_FREQUENCY=1.414e9;
const double DOUBLE_REL_ZERO_LIMIT=1.0e-100;
const double METER = 1.0; /* define a meter, the standard */
const double DECIMETER = 0.1; /* define a tenth of a meter */
const double CENTIMETER = 1.0e-2; /* define a centimeter */
const double MICROMETER = 1.0e-6; /* define a micrometer */
const double NANOMETER = 1.0e-9; /* define a nanomenter */
const double ANGSTROM = 1.0e-10; /* define an angstrom */
}
#endif
-10
View File
@@ -1,10 +0,0 @@
## Makefile.am -- process this file with automake to produce Makefile.in
##
## authors - patrick leidenberger
## modified - 2006 aug 21, patrick leidenberger, creation
## objective - top level automake file for H5Fed
## project - H5Fed
SUBDIRS = libsrc applications
AM_CPPFLAGS = @AM_CPPFLAGS@
-3
View File
@@ -1,6 +1,3 @@
# Trial by Antino Kim
# Top level Makefile.am
SUBDIRS = \
src \
test \
-59
View File
@@ -1,59 +0,0 @@
# This is a very rudimentary multiarchitecture makefile
# You need to uncomment the default block of make variables you need
# Some key things to watch for are the following defines
# -DREGRESSIONTEST : enables a main(){} inside of
# the H5Part.cc file that does simple regression testing.
# -DPARALLEL_IO : If you want to use parallel HDF5, you have to
# enable this. Otherwise, you get only the serial
# implementation of the library.
# MacOS-X Serial
#CXX = c++
#CC = cc
#F90 = xlf
#H5HOME = /usr/local
#CFLAGS = -O -g -I$(H5HOME)/include
#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm
# AIX/SP-2 Parallel : Seaborg
#CXX = mpCC_r
#CC = mpcc_r
#F90 = mpxlf
#H5HOME = /usr/common/usg/hdf5/1.4.4/parallel
#H4HOME = /usr/common/usg/hdf/default
#OPT = -qarch=auto -qtune=auto-qcache=auto -O3 -qhot
#CFLAGS = -g -bmaxdata:800000000 -bmaxstack:256000000 -I$(H5HOME)/include
#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -L$(H4HOME)/lib -lz -lm
# Linux Serial
#CXX = g++
#CC = gcc
#F90 = g77 # or could be pgif90
#CFLAGS = -O -g -I$(H5HOME)/include
#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm
# Linux Jacquard
CC = mpicc
CXX = mpicxx
F90 = mpif90
H5HOME = /usr/common/usg/hdf5/1.6.3/parallel
CFLAGS = -O2 -DPARALLEL_IO -DH5_HAVE_PARALLEL -I$(H5HOME)/include
LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm
# Linux Parallel
#CC = gcc
#CXX = g++
#F90 = g77
#H5HOME = /usr/local
# /usr/common/usg/hdf5/1.6.3/parallel
#MPIHOME = /usr/local
#CFLAGS = -O -g -DPARALLEL_IO -DH5_HAVE_PARALLEL -I$(H5HOME)/include
#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lmpich -lrt -lz -lm
all: H5PartTest H5PartTest.o H5Part.o
parallel: H5PartTest H5PartTest.o H5Part.o H5PartTestParallel H5PartAndreasTest # parallel regression tests
fortran: H5PartF.o # fortran bindings
include rules.make
-147
View File
@@ -1,147 +0,0 @@
Error Handling
--------------
Now all functions, in which an error could occure, are returning a
value. This value is either a 64bit integer or a pointer.
A negative 64bit integer as result indicates an error. Values >= 0
indicates successfull execution. This is similiar to the convention
used in UNIX system calls, but we do not return -1 but the error
number (which is always negative).
For functions returning a pointer the NULL-pointer is used to indicate
an error. You can call the function H5PartGetErrno() to get the error
number. For the time being there is no strerror(3) or perror(3)
equivalent.
API Changes
-----------
There are several changes in the API of H5Part. The biggest change is
a side-effect of the implementation of strict error handling. The
impact to the existing C/C++ code is very small. But now you *can*
and *should* implement some kind of error handling. The simplest
error handling is to set an error handler which aborts the program as
soon as an error occured.
The next "biggest" change is the use of H5Part types instead of "long
long" and "double". The replacement of "long long" is "h5part_int64_t"
and for "double" "h5part_float64_t". This change has now effect in
Fortran.
In some functions the argument type changed from "int" to
"h5part_int64_t". Since on most systems "int" is a 32bit integer,
calls to these functions must be adapted to the new API. In C/C++ the
compiler will complain about it. But in Fortran you will *not* get an
error message.So, you must check your Fortran code carefully.
Changes in detail (not listed are functions where only the return
type changed from any to "h5part_int64_t"):
New API Changes to old API
h5part_int64_t void
H5PartSetNumParticles (
H5PartFile *f,
h5part_int64_t nparticles long long
);
h5part_int64_t int
H5PartWriteDataFloat64 (
H5PartFile *f,
char *name,
h5part_float64_t *dta double
);
h5part_int64_t int
H5PartWriteDataInt64 (
H5PartFile *f,
char *name,
h5part_int64_t *dta long long
);
h5part_int64_t void
H5PartSetStep (
H5PartFile *f,
h5part_int64_t step int
);
h5part_int64_t void
H5PartSetView (
H5PartFile *f,
h5part_int64_t start, long long
h5part_int64_t end long long
);
h5part_int64_t int
H5PartGetView (
H5PartFile *f,
h5part_int64_t *start, long long
h5part_int64_t *end long long
);
h5part_int64_t int
H5PartReadDataFloat64 (
H5PartFile *f,
char *name,
h5part_float64_t *dta double
);
h5part_int64_t int
H5PartReadDataInt64 (
H5PartFile *f,
char *name,
h5part_int64_t *dta long long
);
h5part_int64_t void
H5PartReadParticleStep (
H5PartFile *f,
h5part_int64_t step, int
h5part_float64_t *x, double
h5part_float64_t *y, double
h5part_float64_t *z, double
h5part_float64_t *px, double
h5part_float64_t *py, double
h5part_float64_t *pz, double
h5part_int64_t *id long long
);
New functions:
h5part_int64_t
H5PartSetVerbosityLevel (
unsigned int
);
h5part_int64_t
H5PartSetErrorHandler (
h5part_error_handler handler
);
h5part_int64_t
H5PartGetErrno (
void
);
h5part_int64_t
H5PartDefaultErrorHandler (
const char *funcname,
const h5part_int64_t eno,
const char *fmt,
...
);
h5part_int64_t
H5PartAbortErrorHandler (
const char *funcname,
const h5part_int64_t eno,
const char *fmt,
...
);
Removed functions:
int
H5PartFileIsValid (
H5PartFile *f
);
-393
View File
@@ -1,393 +0,0 @@
==============================================================================
README file for H5Part configure
==============================================================================
+ 0. HDF5 library
-----------------
Make sure you have a working version of the HDF5 library in your computer. If you plan
to use parallel I/O you need to use a parallel HDF5 version. If you don't have the
library download the sources from http://hdf.ncsa.uiuc.edu/HDF5/
+ 1. Quick start (If you feel lucky...)
----------------------------------------
For many platforms, where compilers are installed in the "default" location
and all the environment variables are set correctly, it should be sufficient
to type:
./configure [OPTIONS] && make [install]
to have the libraries and test program compiled.
==============================================================================
+ 2. configure line options
----------------------------
(1) Enable options
--enable-fortran
--enable-parallel
--enable-tools
--enable-python
--enable-64 (only for AIX and Irix)
(2) Setting compilers related variables manually
To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.
Compiler environment variables:
CC C compiler command
CXX C++ compiler command
FC Fortran compiler command
(3) Setting prefix for installation manually
--prefix=PREFIX install files in PREFIX
For more information, type:
./configure --help
==============================================================================
+ 3. Platform specific settings for compiling libraries & test programs
------------------------------------------------------------------------
Building
make : builds the libraries and test programs
make install: builds and installs
make clean : removes extraneous object files
make distclean : returns configuration to unconfigured state
As tested on hosts:
(1) Davinci <davinci.nersc.gov> (Linux"SUSE"-ia64)
---------------------------------------------------
FIRST THING FIRST!! Type:
module load intel
to have the proper compilers set up for use.
module load hdf5_par
[NOTE: module load hdf5 does not work at this moment.
Possible installation error of HDF5 on Davinci.]
Brief profile:
CC = icc
CXX = icc
FC = ifort
MPICC = icc
MPICXX = icc
MPIFC = ifort
If default doesn't work, try:
For C shell:
env CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure && make install
For Korn or Bourne shell:
CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure && make install
And, of course, you should add configure options, such as --enable-fortran --enable-parallel.
On this host, executing:
For C shell:
env CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure --enable-fortran --enable-parallel && make install
For Korn or Bourne shell:
CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure --enable-fortran --enable-parallel && make install
has functioned correctly.
To run test program, go to test directory:
(i) Serial test
run:
./H5testF
./H5PartTest
(ii) Parallel test
run:
mpirun 2 H5testFpar
mpirun 2 H5PartTestP
NOTE: Number 2 above is a arbitrary number that indicates the number of processes.
(2) Jacquard <jacquard.nersc.gov> (Linux"SUSE"-x86_64)
-------------------------------------------------------
Brief profile:
CC = pathcc
CXX = pathCC
FC = pathf90
MPICC = mpicc
MPICXX = mpicxx
MPIFC = mpif90
If default doesn't work, try:
For C shell:
env CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure && make install
For Korn or Bourne shell:
CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure && make install
And, of course, you should add configure options, such as --enable-fortran --enable-parallel.
On this host, executing:
For C shell:
env CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure --enable-fortran --enable-parallel && make install
For Korn or Bourne shell:
CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure --enable-fortran --enable-parallel && make install
has functioned correctly.
To run test program, go to test directory:
(i) Serial test
run:
./H5testF
./H5PartTest
(ii) Parallel test
In Jacquard, we need a script to run parallel programs, since Jacquard does not support interactive parallel processing. Instead, we need to submit the task to a queue. A sample script (run_H5testFpar.scr) may look like below:
+++++++++++++++++++++++++++++++++++++++
#!/bin/csh
#PBS -l nodes=1:ppn=2,walltime=00:05:00
#PBS -N H5testFpar
#PBS -o H5testFpar.out
#PBS -e H5testFpar.err
#PBS -q debug
#PBS -A mpccc
#PBS -V
setenv PBS_OWORKDIR /home/H5Part/test
cd $PBS_O_WORKDIR
mpirun -np 2 ./H5testFpar
+++++++++++++++++++++++++++++++++++++++
Then, we need to submit the task to a queue by running:
qsub run_H5testFpar.scr
After processed, the result will appear in H5testFpar.out, and error messages will appear in H5testFpar.err.
(3) Bassi <bassi.nersc.ogv> (AIX5.3.0.0-Power 3)
-------------------------------------------------
FIRST THING FIRST!! Type:
module load gcc
to have the proper compilers set up for use.
Brief profile:
CC = cc_r
CXX = cc_r
FC = xlf_r
MPICC = mpcc_r
MPICXX = mpcc_r
MPIFC = mpxlf_r
If default doesn't work, try:
For C shell:
env CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure && make install
For Korn or Bourne shell:
CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure && make install
And, of course, you should add configure options, such as --enable-fortran --enable-parallel.
On this host, executing:
For C shell:
env CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure --enable-fortran --enable-parallel && make install
For Korn or Bourne shell:
CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure --enable-fortran --enable-parallel && make install
has functioned correctly.
To run test program, go to test directory:
(i) Serial test
run:
./H5testF
./H5PartTest
(ii) Parallel test
run:
unsetenv MP_SINGLE_THREAD
poe ./H5PartTestP -procs 2 -nodes 1
poe ./H5testFpar -procs 2 -nodes 1
For more details on how to run parallel programs on Bassi, go to:
http://www.nersc.gov/nusers/resources/bassi/running_jobs/
(4) Starsky <starsky.lbl.gov> (Darwin8.5.0-PowerPC)
----------------------------------------------------
FIRST THING FIRST!! Set environment variables: (in tcsh)
setenv LD_LIBRARY_PATH /usr/local/g95/lib/gcc-lib/powerpc-apple-darwin8.5.0/4.0.3/
setenv PATH ${PATH}:/usr/local/g95/bin
NOTE: This environment variable setting is specifit to Starsky. It is to make configure find the fortran compiler.
Brief profile:
CC = gcc
CXX = g++
FC = g95
If default doesn't work, try:
For C shell:
env CC=gcc CXX=g++ FC=g95 ./configure && make install
For Korn or Bourne shell:
CC=gcc CXX=g++ FC=g95 ./configure && make install
And, of course, you should add configure options, such as --enable-fortran --enable-parallel.
On this host, executing:
For C shell:
env CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install
For Korn or Bourne shell:
CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install
has functioned correctly.
To run test program, go to test directory:
(i) Serial test
run:
./H5testF
./H5PartTest
(5) Linux AMD64 Visualization group workstations (Linux"SUSE"-x86_64)
---------------------------------------------------------
Brief profile:
CC = gcc
CXX = g++
FC = g95
If default doesn't work, try:
For C shell:
env CC=gcc CXX=g++ FC=g95 ./configure && make install
For Korn or Bourne shell:
CC=gcc CXX=g++ FC=g95 ./configure && make install
And, of course, you should add configure options, such as --enable-fortran --enable-parallel.
On this host, executing:
For C shell:
env CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install
For Korn or Bourne shell:
CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install
has functioned correctly.
To run test program, go to test directory:
(i) Serial test
run:
./H5testF
./H5PartTest
==============================================================================
+ 4. Trouble shooting (Things to check for...)
--------------------------------------------
(0) Have you set the LD_LIBRARY_PATH?
---Some systems require the user to manually set the environment variable, LD_LIBRARY_PATH. To do so:
set the environment variable HDF5ROOT or PHDF5ROOT to point to your installation of HDF5 (serial and/or parallel respectively).
For Korn or Bourne shell:
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${HDF5ROOT}/lib;export LD_LIBRARY_PATH
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:{PHDF5ROOT}/lib;export LD_LIBRARY_PATH
For C shell:
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${HDF5ROOT}/lib
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${PHDF5ROOT}/lib
Note that the values of HDF5ROOT & PHDF5ROOT will be in the "summary" section when you run configure.
Not properly set LD_LIBRARY_PATH value may result in a runtime error:
./H5PartTest: error while loading shared libraries: libhdf5.so.0: cannot open shared object file: No such file or directory
(1) Are the compilers set correctly?
---Check with: which COMPILER
(2) Have you installed HDF5?
---You can get it at: http://vis.lbl.gov/Research/AcceleratorSAPP/index.html
(3) Have you loaded the proper modules?
---It is necessary in Davinci & Bassi, and configure && make install may not work without it.
-1469
View File
File diff suppressed because it is too large Load Diff
-44
View File
@@ -1,44 +0,0 @@
/* config.h.in. Generated from configure.ac by autoheader. */
/* "" */
#undef MY_BUILD_CPU
/* "" */
#undef MY_BUILD_OS
/* "" */
#undef MY_BUILD_VENDOR
/* "" */
#undef MY_GNUNAME
/* "" */
#undef MY_UNAME
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Version number of package */
#undef VERSION
/* Define to 1 if on AIX 3.
System headers sometimes define this.
We just want to avoid a redefinition error message. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#endif
Vendored
-1563
View File
File diff suppressed because it is too large Load Diff
+393 -465
View File
@@ -1,12 +1,12 @@
# Every configure script must call AC_INIT before doing anything else.
# AC_INIT (package, version, [bug-report], [tarname])
AC_INIT([H5Part], [Ver.1.0], [vis@hpcrdm.lbl.gov])
AC_INIT([H5hut], [1.99.1], [h5part@lists.psi.ch], H5hut)
# Ensure that a recent enough version of Autoconf is being used.
# If the version of Autoconf being used to create configure is earlier than version,
# print an error message to the standard error output and do not create configure.
#AC_PREREQ(2.59)
AC_PREREQ(2.59)
# should be called right after AC_INIT.
@@ -14,31 +14,75 @@ AC_INIT([H5Part], [Ver.1.0], [vis@hpcrdm.lbl.gov])
# The AC_CONFIG_HEADERS macro selects this kind of output.
AC_CONFIG_HEADER(config.h)
BUILD_LIBS='libH5hut.a'
USE_C='yes'
##################################################################################
#################### A SIMPLE WORK AROUND TO USE ENV. VARS #######################
##################################################################################
###############################################################################
################# --enable-xxx and --with-xxx Argument ########################
###############################################################################
AC_ARG_ENABLE(
[debug],
[AC_HELP_STRING([--enable-debug],
[Compile with debug flags [default=no]])],
[USE_DEBUG=$enableval])
AC_ARG_ENABLE(
[64],
[AC_HELP_STRING([--enable-64],
[Compile using 64-bit flags [default=no]])],
[USE_64=$enableval])
AC_ARG_ENABLE(
[c],
[AC_HELP_STRING([--enable-c],
[Compile the C interface [default=yes]])],
[USE_C=$enableval])
AC_ARG_ENABLE(
[fortran],
[AC_HELP_STRING([--enable-fortran],
[Compile the Fortran interface [default=no]])],
[USE_FORTRAN=$enableval])
AC_ARG_ENABLE(
[parallel],
[AC_HELP_STRING([--enable-parallel],
[Compile the MPI/IO interface [default=no]])],
[USE_PARALLEL=$enableval])
AC_ARG_WITH(
[mpi],
[AC_HELP_STRING([--with-mpi],
[path to MPI installation [default=""]])],
[MPIPATH=$withval], [MPIPATH=""])
AC_ARG_WITH(
[hdf5],
[AC_HELP_STRING([--with-hdf5],
[path to HDF5 installation [default=""]])],
[HDF5PATH=$withval], [HDF5PATH=""])
AC_ARG_WITH(
[lustre],
[AC_HELP_STRING([--with-lustre],
[path to lustre user API [default=""]])],
[LUSTREPATH=$withval], [LUSTREPATH=""])
###############################################################################
################# A SIMPLE WORK AROUND TO USE ENV. VARS #######################
###############################################################################
SAVE_CC=$CC
SAVE_CXX=$CXX
SAVE_FC=$FC
SAVE_MPICC=$MPICC
SAVE_MPICXX=$MPICXX
SAVE_MPIFC=$MPIFC
SAVE_MPILIB=$MPILIB
SAVE_MPIINC=$MPIINC
SAVE_CFLAGS=$CFLAGS
SAVE_FFLAGS=$FFLAGS
SAVE_MPIROOT=$MPIROOT
SAVE_HDF5ROOT=$HDF5ROOT
SAVE_PHDF5ROOT=$PHDF5ROOT
SAVE_LDFLAGS=$LDFLAGS
##################################################################################
################## PATH SERACH FUNCTION - to be used later... ####################
##################################################################################
###############################################################################
############### PATH SERACH FUNCTION - to be used later... ####################
###############################################################################
# /*@@
# @routine CCTK_Search
# @date Wed Jul 21 11:16:35 1999
@@ -48,116 +92,74 @@ SAVE_LDFLAGS=$LDFLAGS
# @enddesc
#@@*/
PATH_Search()
{
eval $1=""
if test $# -lt 4 ; then
h5part_basedir=""
else
h5part_basedir="$4/"
fi
for h5part_place in $2
do
echo -n "Looking in $h5part_place ... $ac_c" #1>&6
if test -r "$h5part_basedir$h5part_place/$3" ; then
echo "$ac_t"" Found" #1>&6
eval $1="$h5part_place"
break
fi
if test -d "$h5part_basedir$h5part_place/$3" ; then
echo "$ac_t"" Found" #1>&6
eval $1="$h5part_place"
break
fi
echo "$ac_t"" No" #1>&6
done
return
PATH_Search() {
eval $1=""
if test $# -lt 4 ; then
h5part_basedir=""
else
h5part_basedir="$4/"
fi
for h5part_place in $2; do
AC_MSG_CHECKING([looking in $h5part_place ... ])
if test -r "$h5part_basedir$h5part_place/$3" ; then
AC_MSG_RESULT([found])
eval $1="$h5part_place"
break
fi
AC_MSG_RESULT([no])
done
return
}
##################################################################################
################ MISC SETTINGS INCLUDING C & C++ COMPILER SETTING ################
##################################################################################
# Compute the canonical host-system type variable, host, and its three individual
# parts host_cpu, host_vendor, and host_os.
###############################################################################
############# MISC SETTINGS INCLUDING C & C++ COMPILER SETTING ################
###############################################################################
# Compute the canonical host-system type variable, host, and its three
# individual parts host_cpu, host_vendor, and host_os.
AC_CANONICAL_HOST
uname=`uname -s`
if test $uname = "AIX"; then
# Notify the user that configure is checking for a particular feature.
# This macro prints a message that starts with `checking ' and ends with `...' and no newline.
# It must be (?) followed by a call to AC_MSG_RESULT to print the result of the check and the newline.
AC_MSG_CHECKING([if system is AIX])
if test "x$uname" = "xAIX"; then
AC_MSG_CHECKING([if system is AIX])
AC_MSG_RESULT([OK])
# AC_MSG_RESULT (result-description)
# Notify the user of the results of a check
AC_MSG_RESULT([OK])
# If on AIX, define _ALL_SOURCE. Allows the use of some BSD functions.
# Should be called before any macros that run the C compiler.
AC_AIX
fi
# DAVINCI SPECIFIC!!!
if test `uname -n` = "davinci"; then
echo "DAVINCI SPECIFIC TESTING FOR STDC++ LIBRARY!"
PATH_Search STDCXX_CHECK '/usr/lib64 /usr/lib' libstdc++.a
# if STDCXX_CHECK is set...
if test "$STDCXX_CHECK" = "/usr/lib64"; then
echo "STDCXX setting ..."
echo "STDCXX_CHECK = $STDCXX_CHECK ..."
STDCXX="-L/usr/lib64 -lstdc++"
echo "STDCXX = $STDCXX ..."
elif test "$STDCXX_CHECK" = "/usr/lib"; then
echo "STDCXX setting ..."
echo "STDCXX_CHECK = $STDCXX_CHECK ..."
STDCXX="-L/usr/lib -lstdc++"
echo "STDCXX = $STDCXX ..."
fi
# If on AIX, define _ALL_SOURCE. Allows the use of some BSD functions.
# Should be called before any macros that run the C compiler.
AC_AIX
fi
# Determine a C compiler to use.
# If CC is not already set in the environment, check for gcc and cc, then for other C compilers.
# If CC is not already set in the environment, check for gcc and cc, then
# for other C compilers.
# Set output variable CC to the name of the compiler found.
# Look for mpicc first, then icc, mpcc_r
AC_PROG_CC(pathcc icc cc_r gcc cc)
# AC_PROG_CC doesn't pick up cc_r in Bassi. The following AC_PATH_PROGS is the fix.
AC_PATH_PROGS([BAS_CC], [cc_r], [], [$PATH])
# if BAS_CC not empty
if test -n "$BAS_CC"; then
echo "CC setting for Bassi ..."
CC=$BAS_CC
echo "CC = $CC ..."
fi
AC_PROG_CC(pgcc pathcc icc cc_r gcc cc)
# Determine a C++ compiler to use.
# Check if the environment variable CXX or CCC (in that order) is set;
# if so, then set output variable CXX to its value.
# Otherwise, if the macro is invoked without an argument,
# then search for a C++ compiler under the likely names (first g++ and c++ then other names).
# then search for a C++ compiler under the likely names (first g++ and c++
# then other names).
# If none of those checks succeed, then as a last resort set CXX to g++.
AC_PROG_CXX(pathCC icc cc_r g++ gcc cc)
AC_PROG_CXX(pgCC pathCC icc cc_r g++ gcc cc)
# Set output variable INSTALL to the path of a BSD-compatible install program, if one is
# found in the current PATH.
# Set output variable INSTALL to the path of a BSD-compatible install program,
# if one is found in the current PATH.
# Otherwise, set INSTALL to `dir/install-sh -c`
AC_PROG_INSTALL
if test "x$CC" = "xgcc"; then
CFLAGS="$CFLAGS -std=c99"
fi
# AM_INIT_AUTOMAKE is required to use autoconf with automake
AM_INIT_AUTOMAKE()
AC_PROG_RANLIB
# Default prefix for bindir, etc... (eg >> ./build/bin)
@@ -174,443 +176,369 @@ AC_DEFINE_UNQUOTED(MY_GNUNAME, "${host_cpu}-${host_vendor}-${host_os}", "")
AC_DEFINE_UNQUOTED(MY_UNAME, "$uname", "")
###############################################################################
######################## CONFIGURE LINE OPTIONS ###############################
###############################################################################
##################################################################################
########################### CONFIGURE LINE OPTIONS ###############################
##################################################################################
AC_MSG_CHECKING([if debug is enabled])
######################### 64-bit compilation enabled #############################
AC_MSG_CHECKING([if 64-bit compilation is enabled])
# AC_ARG_ENABLE (feature, help-string, [action-if-given], [action-if-not-given])
# If the user gave configure the option `--enable-feature' or `--disable-feature',
# run shell commands action-if-given.
# You should format your help-string with the macro AC_HELP_STRING.
AC_ARG_ENABLE([64],
[AC_HELP_STRING([--enable-64],[Compile using 64-bit flags [default=no]])],
[USE_64=$enableval])
# If --enable-64 is set in the configure line
if test "X$USE_64" = "Xyes"; then
echo "YES, 64-BIT ENABLED"
if test $uname = "AIX"; then
CFLAGS="$CFLAGS -q64"
FFLAGS="$FFLAGS -q64"
fi
if test $uname = "IRIX64"; then
CFLAGS="$CFLAGS -64"
FFLAGS="$FFLAGS -64 -fPIC -fno-second-underscore"
fi
if test "X$USE_DEBUG" = "Xyes"; then
AC_MSG_RESULT([yes])
CFLAGS="$CFLAGS -g"
else
echo "NO, 64-BIT NOT ENABLED"
AC_MSG_RESULT([no])
fi
############################ fortran enabled ##################################
AC_MSG_CHECKING([if C interface enabled])
if test "X$USE_C" = "Xyes"; then
AC_MSG_RESULT([yes])
BINDINGS="$BINDINGS C"
LIB_C="libH5hutC.a"
BUILD_LIBS="$BUILD_LIBS $LIB_C"
BUILD_TESTS="$BUILD_TESTS h5u_test h5b_test"
BUILD_TOOLS="$BUILD_TOOLS h5hutcc"
fi
############################### fortran enabled ##################################
############################ fortran enabled ##################################
AC_MSG_CHECKING([if fortran interface enabled])
AC_MSG_RESULT([])
AC_ARG_ENABLE([fortran],
[AC_HELP_STRING([--enable-fortran], [Compile the Fortran interface [default=no]])],
[USE_FORTRAN=$enableval])
if test "X$USE_FORTRAN" = "Xyes"; then
echo "YES, FORTRAN ENABLED"
AC_MSG_RESULT([yes])
BINDINGS="$BINDINGS Fortran"
LIB_FORTRAN="libH5hutF.a"
BUILD_LIBS="$BUILD_LIBS $LIB_FORTRAN"
# Start looking for ifort first
AC_PROG_FC(ifort xlf_r pathf90 g95 g90 ftn)
AC_PROG_FC(pgf90 ifort xlf_r pathf90 g95 g90 ftn gfortran)
if test -z "$FC" ; then
AC_MSG_ERROR([Cannot find a fortran compiler!!!])
exit 1
fi
if test -n "$FC" ; then
if test "X$FC" = "Xg95"; then
FFLAGS="${FFLAGS} -fno-second-underscore"
fi
AC_MSG_CHECKING([Test Number of FC Underscores])
AC_MSG_RESULT([OK])
`cd src && rm -f TestUnderscore.o TestUnderscoreC.o TestUnderscore`
`cd src && ${FC} ${FFLAGS} -c TestUnderscore.f`
`cd src && ${CC} ${CFLAGS} -c TestUnderscoreC.c`
`cd src && ${FC} ${FFLAGS} -o TestUnderscore TestUnderscore.o TestUnderscoreC.o -lc`
if test ! $uname = "AIX"; then
FFLAGS="${FFLAGS} -fPIC"
fi
if test $FC = "g90"; then
FFLAGS="${FFLAGS} -fno-second-underscore"
fi
if test $FC = "g95"; then
FFLAGS="${FFLAGS} -fno-second-underscore"
fi
AC_MSG_CHECKING([symbol convention in object files])
`cd src/Fortran && rm -f TestUnderscore.o TestUnderscoreC.o TestUnderscore`
`cd src/Fortran && ${FC} ${FFLAGS} -c TestUnderscore.f`
`cd src/Fortran && ${CC} ${CFLAGS} -c TestUnderscoreC.c`
`cd src/Fortran && ${FC} ${FFLAGS} -o TestUnderscore TestUnderscore.o TestUnderscoreC.o`
if test -f src/Fortran/TestUnderscore ; then
UNDERSCORE_H=Underscore.h
`cd src/Fortran && ./TestUnderscore > Underscore.h`
AC_MSG_RESULT([ok])
else
AC_MSG_RESULT([nok])
AC_MSG_ERROR([Cannot build fortran executables!!!])
exit 1
fi
if test -f src/TestUnderscore ; then
UNDERSCORE_H=Underscore.h
`cd src && cat COPYRIGHT > Underscore.h`
`cd src && ./TestUnderscore >> Underscore.h`
echo "==== Underscore.h contains ============="
cat src/Underscore.h
echo "========================================"
else
AC_MSG_ERROR(could not build fortran executable)
USE_FORTRAN = "no"
fi
else
AC_MSG_ERROR(could not find a fortran compiler)
USE_FORTRAN = "no"
exit 1
fi
else
echo "NO, FORTRAN NOT ENABLED"
AC_MSG_RESULT([no])
fi
########################### parallel interface enabled ###########################
######################## parallel interface enabled ###########################
AC_MSG_CHECKING([if parallel interface enabled])
AC_ARG_ENABLE([parallel],
[AC_HELP_STRING([--enable-parallel], [Compile the MPI/IO interface [default=no]])],
[USE_PARALLEL=$enableval])
if test "X$USE_PARALLEL" = "Xyes"; then
AC_MSG_RESULT([YES, PARALLEL ENABLED])
AC_MSG_RESULT([yes])
AC_MSG_CHECKING([if we can compile MPI code without setting flags])
AC_TRY_LINK([#include "mpi.h"], [
MPI_Comm comm;
int n;
MPI_Comm_size( comm, &n ); ],
[echo 'yes'; r='yes'], [echo "no"; r='no'] )
CFLAGS="${CFLAGS} -DPARALLEL_IO -DMPICH_IGNORE_CXX_SEEK"
if test "X$r" = "Xyes"; then
MPICC=$CC
set -x
if test -z "$MPICXX"; then
# we should add a test whether this C++ wrapper exists or not
MPICXX=${MPICC%/*}/mpicxx
fi
set +x
else
AC_PATH_PROGS([MPICC], [mpicc mpcc_r], [], [$PATH])
AC_PATH_PROGS([MPICXX], [mpicxx mpcc_r], [], [$PATH])
if test -z "$MPICC" -o -z "$MPICXX"; then
AC_ARG_ENABLE([mpipath],
[AC_HELP_STRING([--enable-mpipath], [path to MPI installation [default=""]])],
[MPIROOT=$enableval], [MPIROOT=""])
if test -z "$MPIROOT"; then
AC_MSG_CHECKING([for MPI root ])
echo
P=''
P="$P /usr"
P="$P /usr/local"
P="$P /usr/local/mpi"
P="$P /usr/local/packages/mpi"
P="$P /usr/local/mpich2"
P="$P /usr/local/mpich"
P="$P /opt/xt-mpt/default/mpich2-64/P2"
PATH_Search MPIROOT "$P" include/mpi.h
fi
if test ! -n "$MPIROOT"; then
AC_MSG_RESULT([Cannot determine MPIROOT])
exit 1
fi
if test ! -n "$MPICC"; then
AC_MSG_CHECKING([No MPICC detected. Setting MPICC to CC.])
MPICC=$CC
echo "MPICC = $MPICC"
fi
AC_MSG_CHECKING([if we can compile MPI code without setting flags])
AC_TRY_LINK([#include "mpi.h"], [
MPI_Comm comm;
int n;
MPI_Comm_size( comm, &n ); ],
[AC_MSG_RESULT([yes]); r='yes'], [AC_MSG_RESULT([no]); r='no'] )
if test "X$r" = "Xno"; then
AC_PATH_PROGS([MPICC], [mpicc mpcc_r], [], [$PATH])
AC_PATH_PROGS([MPICXX], [mpicxx mpcc_r], [], [$PATH])
if test -z "$MPICC" -o -z "$MPICXX"; then
AC_MSG_CHECKING([for MPI root ])
AC_MSG_RESULT([])
if test -n "$MPIROOT"; then
P=${MPIROOT}
elif test -n "$MPIHOME"; then
P=${MPIHOME}
elif test -n "$MPIPATH"; then
P=${MPIPATH}
else
P=''
P="$P /usr"
P="$P /usr/local"
P="$P /usr/local/mpi"
P="$P /usr/local/packages/mpi"
P="$P /usr/local/mpich2"
P="$P /usr/local/mpich"
P="$P /opt/xt-mpt/default/mpich2-64/P2"
fi
PATH_Search MPIROOT "$P" include/mpi.h
if test ! -n "$MPIROOT"; then
AC_MSG_ERROR([Cannot determine MPI root!!!])
exit 1
fi
if test -e "${MPIROOT}/bin/mpicc"; then
MPICC=${MPIROOT}/bin/mpicc
fi
if test -e "${MPIROOT}/bin/mpicxx"; then
MPICXX=${MPIROOT}/bin/mpicxx
fi
fi
if test -z "$MPICC" -o -z "$MPICXX"; then
INCLUDES="${INCLUDES} -I${MPIROOT}/include"
AC_MSG_CHECKING([for name of MPI lib ])
if test -e ${MPIROOT}/lib/libmpi.a; then
MPILIB="-L${MPIROOT}/lib -lmpi"
elif test -e ${MPIROOT}/lib/libmpi.so; then
MPILIB="-L${MPIROOT}/lib -lmpi"
elif test -e ${MPIROOT}/lib/libmpich.a; then
MPILIB="-L${MPIROOT}/lib -lmpich"
elif test -e ${MPIROOT}/lib/libmpich.so; then
MPILIB="-L${MPIROOT}/lib -lmpich"
else
AC_MSG_RESULT([not found])
exit 1
fi
AC_MSG_RESULT([${MPILIB}])
fi
if test -n "$MPICC"; then
CC=${MPICC}
fi
# if MPICXX empty
if test ! -n "$MPICXX"; then
MPICXX=$CXX
AC_MSG_CHECKING([No MPICXX detected. Setting MPICXX = CXX = $MPICXX ])
echo
fi
MPIINC="${MPIINC} -I${MPIROOT}/include"
FFLAGS="${FFLAGS} -I${MPIROOT}/include"
AC_MSG_CHECKING([for name of MPI lib ])
if test -e ${MPIROOT}/lib/libmpi.a; then
MPILIB="-L${MPIROOT}/lib -lmpi"
elif test -e ${MPIROOT}/lib/libmpi.so; then
MPILIB="-L${MPIROOT}/lib -lmpi"
elif test -e ${MPIROOT}/lib/libmpich.a; then
MPILIB="-L${MPIROOT}/lib -lmpich"
elif test -e ${MPIROOT}/lib/libmpich.so; then
MPILIB="-L${MPIROOT}/lib -lmpich"
else
AC_MSG_RESULT([not found])
exit 1
fi
AC_MSG_RESULT([${MPILIB}])
fi
fi
if test -n "$MPICXX"; then
CXX=${MPICXX}
fi
fi
# parallel + fortran
if test "X$USE_FORTRAN" = "Xyes"; then
echo "PARALLEL ENABLED WITH FORTRAN"
AC_PATH_PROGS([MPIFC], [mpxlf_r mpif90], [], [$PATH])
# if MPIFC empty
if test ! -n "$MPIFC"; then
AC_MSG_CHECKING([ No MPIFC detected. Setting MPIFC to FC.])
MPIFC=$FC
echo "MPIFC = $MPIFC ..."
fi
MTARGET="libpH5Part.a libpH5PartF.a"
TTARGET="H5PartTestP H5PartAndreasTest H5testFpar Bench"
else
echo "PARALLEL ENABLED WITHOUT FORTRAN"
TPTARGET="${TPTARGET} H5PartTestP H5PartAndreasTest Bench"
TBTARGET="${TBTARGET} H5BlockTestAttributes"
TBTARGET="${TBTARGET} H5BlockParTestScalarField"
MTARGET="libpH5Part.a"
TTARGET="H5PartTestP H5PartAndreasTest Bench"
fi
# parallel + fortran
if test "X$USE_FORTRAN" = "Xyes"; then
AC_PATH_PROGS([MPIFC], [mpxlf_r mpif90], [], [$PATH])
if test -z "${MPIFC}" ; then
if test -e "${MPIROOT}/bin/mpif90"; then
MPIFC=${MPIROOT}/bin/mpif90
fi
fi
# if MPIFC empty
if test ! -n "$MPIFC"; then
AC_MSG_CHECKING([ No MPIFC detected. Setting MPIFC to FC.])
MPIFC=$FC
AC_MSG_RESULT([MPIFC = $MPIFC])
fi
if test -n "$MPIFC"; then
FC=${MPIFC}
fi
TPTARGET="${TPTARGET} H5testFpar"
TBTARGET="${TBTARGET} H5BlockParTestScalarFieldF"
fi
else # --enable-parallel=no
AC_MSG_RESULT([no])
TPTARGET="${TPTARGET} H5test"
TBTARGET="${TBTARGET} H5BlockTestAttributes"
if test "X$USE_FORTRAN" = "Xyes"; then
TPTARGET="${TPTARGET} H5testF"
TBTARGET="${TBTARGET} H5BlockTestAttributesF"
fi
fi
###############################################################################
######################### PATH CHECKING & SETTING #############################
###############################################################################
AC_MSG_CHECKING([for HDF5 root ])
AC_MSG_RESULT([])
if test -n "${HDF5ROOT}"; then
P=${HDF5ROOT}
elif test -n "${HDF5HOME}" ; then
P=${HDF5HOME}
elif test -n "${HDF5PATH}" ; then
P=${HDF5PATH}
else
echo "NO, PARALLEL NOT ENABLED"
if test "X$USE_FORTRAN" = "Xyes"; then
echo "PARALLEL NOT ENABLED WITH FORTRAN ENABLED"
MTARGET="libH5Part.a libH5PartF.a"
TTARGET="H5PartTest H5testF H5test"
else
echo "BOTH PARALLEL & FORTRAN NOT ENABLED"
MTARGET="libH5Part.a"
TTARGET="H5PartTest H5test"
fi
P=''
P="$P /usr"
P="$P /usr/local"
P="$P /usr/local/hdf5"
P="$P /usr/local/packages/hdf5"
P="$P /apps/hdf5"
P="$P /opt/hdf5"
fi
PATH_Search HDF5ROOT "$P" include/hdf5.h
if test -z "$HDF5ROOT"; then
AC_MSG_ERROR([Cannot determine HDF5 root!!!])
exit 1
fi
AC_MSG_CHECKING([for h5pTools file: ])
AC_MSG_RESULT([OK])
AC_ARG_ENABLE([tools],
[AC_HELP_STRING([--enable-tools], [Compile h5part tools [default=no]])],
[USE_TOOLS=$enableval])
if test "X$USE_TOOLS" = "Xyes"; then
BUILD_TOOLS="h5pAttrib h5pToGNUplot"
fi
##################################################################################
############################ PATH CHECKING & SETTING #############################
##################################################################################
AC_ARG_ENABLE([hdf5path],
[AC_HELP_STRING([--enable-hdf5path], [path to HDF5 installation [default=""]])],
[XROOT=$enableval], [XROOT=""])
if test "X$USE_PARALLEL" = "Xyes"; then
PHDF5ROOT=$XROOT
if test -z "$PHDF5ROOT"; then
AC_MSG_CHECKING([for Parallel HDF5 root ])
AC_MSG_RESULT([])
P=''
P="$P /usr"
P="$P /usr/local"
P="$P /usr/local/phdf5"
P="$P /usr/local/hdf5"
P="$P /usr/local/packages/hdf5"
P="$P /usr/local/hdf5/hdf5_par"
P="$P /apps/hdf5"
if test "X$USE_64" = "Xyes"; then
P="$P /usr/common/usg/hdf5/64/default/parallel"
else
P="$P /usr/common/usg/hdf5/32/default/parallel"
fi
PATH_Search PHDF5ROOT "$P" include/hdf5.h
XROOT=$HDF5ROOT
fi
else
HDF5ROOT=$XROOT
if test -z "$HDF5ROOT"; then
AC_MSG_CHECKING([for HDF5 library location ])
AC_MSG_RESULT([])
P=''
P="$P /usr"
P="$P /usr/local"
P="$P /usr/local/hdf5"
P="$P /usr/local/packages/hdf5"
P="$P /usr/local/hdf5/hdf5_serial"
P="$P /apps/hdf5"
if test "X$USE_64" = "Xyes"; then
P="$P /usr/common/usg/hdf5/64/default/serial"
else
P="$P /usr/common/usg/hdf5/32/default/serial"
fi
PATH_Search HDF5ROOT "$P" include/hdf5.h
XROOT=$HDF5ROOT
fi
fi
INCLUDES="$INCLUDES -I$HDF5ROOT/include"
LDFLAGS="$LDFLAGS -L$HDF5ROOT/lib"
LIBS="$LIBS -lhdf5"
AC_MSG_CHECKING([if we need to link to libsz ])
if test -n "$XROOT"; then
if test -f $XROOT/lib/libsz.a; then
AC_MSG_RESULT([yes])
SZLIB="-L$XROOT/lib/ -lsz"
else
AC_MSG_RESULT([no])
SZLIB=""
fi
if test -n "$HDF5ROOT"; then
if test -f $HDF5ROOT/lib/libsz.a; then
AC_MSG_RESULT([yes])
LDFLAGS="$LDFLAGS -L$HDF5ROOT/lib"
LIBS="$LIBS -lsz"
else
AC_MSG_RESULT([no])
fi
fi
AC_MSG_CHECKING([for static zlib root ])
echo
PATH_Search ZLIBROOT '/apps/zlib' lib/libz.a
if test -n "$ZLIBROOT"; then
LDFLAGS="$LDFLAGS -L$ZLIBROOT/lib"
AC_MSG_CHECKING([for lustre API ])
AC_MSG_RESULT([])
if test -n "${LUSTREPATH}"; then
P=${LUSTREPATH}
elif test -n "${LUSTRE_DIR}" ; then
P=${LUSTRE_DIR}
else
P=''
P="$P /usr"
P="$P /usr/local"
P="$P /usr/local/lustre"
P="$P /opt/lustre"
fi
PATH_Search LUSTREROOT "$P" usr/include/lustre/liblustreapi.h
if test -z "$LUSTREROOT"; then
AC_MSG_WARN([Couldn't locate the lustre API... building without support for lustre striping!])
else
CFLAGS="$CFLAGS -DH5_USE_LUSTRE"
INCLUDES="$INCLUDES -I$LUSTREROOT/usr/include"
LDFLAGS="$LDFLAGS -L$LUSTREROOT/usr/lib"
LIBS="$LIBS -llustreapi"
fi
##################################################################################
####################### MISC SETTINGS - path, flags, etc #########################
##################################################################################
# if not AIX
if test ! $uname = "AIX"; then
# Additional flags
echo "SETTING ADDITIONAL FLAGS"
ADDFLAGS="-fPIC -fno-second-underscore"
fi
LIBS="$LIBS -lz -lm"
H5P_LIB_LOC=`pwd`/src
##################################################################################
#################### A SIMPLE WORK AROUND TO USE ENV. VARS #######################
##################################################################################
###############################################################################
################# A SIMPLE WORK AROUND TO USE ENV. VARS #######################
###############################################################################
#if there was an external input for the variable...
if test -n "$SAVE_CC"; then
CC=$SAVE_CC
CC="$SAVE_CC"
fi
if test -n "$SAVE_CXX"; then
CXX=$SAVE_CXX
fi
if test -n "$SAVE_FC"; then
FC=$SAVE_FC
CXX="$SAVE_CXX"
fi
if test -n "$SAVE_MPICC"; then
MPICC=$SAVE_MPICC
MPICC="$SAVE_MPICC"
fi
if test -n "$SAVE_MPICXX"; then
MPICXX=$SAVE_MPICXX
MPICXX="$SAVE_MPICXX"
fi
if test -n "$SAVE_MPIFC"; then
MPIFC=$SAVE_MPIFC
fi
if test -n "$SAVE_MPILIB"; then
MPILIB=$SAVE_MPILIB
fi
if test -n "$SAVE_MPIINC"; then
MPIINC=$SAVE_MPIINC
fi
if test -n "$SAVE_CFLAGS"; then
CFLAGS=$SAVE_CFLAGS
fi
if test -n "$SAVE_FFLAGS"; then
FFLAGS=$SAVE_FFLAGS
MPIFC="$SAVE_MPIFC"
fi
if test -n "$SAVE_MPIROOT"; then
MPIROOT=$SAVE_MPIROOT
MPIROOT="$SAVE_MPIROOT"
fi
if test -n "$SAVE_HDF5ROOT"; then
HDF5ROOT=$SAVE_HDF5ROOT
HDF5ROOT="$SAVE_HDF5ROOT"
fi
if test -n "$SAVE_PHDF5ROOT"; then
PHDF5ROOT=$SAVE_PHDF5ROOT
fi
if test -n "$SAVE_LDFLAGS"; then
LDFLAGS=$SAVE_LDFLAGS
fi
if test -n "$MPICXX"; then
TOOLS_CXX=$MPICXX
TOOLS_H5PART_LIB="-lpH5Part"
TOOLS_HDFLIB="-L$PHDF5ROOT/lib -lhdf5"
else
TOOLS_CXX=$CXX
TOOLS_H5PART_LIB="-lH5Part"
TOOLS_HDFLIB="-L$HDF5ROOT/lib -lhdf5"
fi
##################################################################################
############################# PRINTING SUMMARY ###################################
##################################################################################
echo "+++++++++++++++++++++++++++++++"
echo "+++++++++ SUMMARY for `(hostname || uname -n) 2>/dev/null | sed 1q` +++++++++"
echo "CC = $CC"
echo "CXX = $CXX"
echo "FC = $FC"
echo "MPICC = $MPICC"
echo "MPICXX = $MPICXX"
echo "MPIFC = $MPIFC"
echo "CFLAGS = $CFLAGS"
echo "FFLAGS = $FFLAGS"
echo "MPILIB = $MPILIB"
echo "MPIINC = $MPIINC"
echo "MPIROOT = $MPIROOT"
echo "HDF5ROOT = $HDF5ROOT"
echo "PHDF5ROOT = $PHDF5ROOT"
echo "LDFLAGS = $LDFLAGS"
echo "host_os = $host_os"
echo "host_cpu = $host_cpu"
echo "host_vendor = $host_vendor"
echo "Will Be Building Libraries ... : $MTARGET"
echo "Will Be Building Test Programs ... : $TTARGET"
echo "TOOLS_CXX = $TOOLS_CXX"
echo "TOOLS_H5PART_LIB = $TOOLS_H5PART_LIB"
echo "TOOLS_HDFLIB = $TOOLS_HDFLIB"
echo "BUILD_TOOLS = $BUILD_TOOLS"
echo "+++++++++++++++++++++++++++++++"
##################################################################################
################# EXPORTING VARIABLES & CREATING OUTPUT FILES ####################
##################################################################################
###############################################################################
############## EXPORTING VARIABLES & CREATING OUTPUT FILES ####################
###############################################################################
# AC_SUBST (variable, [value])
# Create an output variable from a shell variable.
# Make AC_OUTPUT substitute the variable variable into output files (typically one or more `Makefile's).
# This means that AC_OUTPUT will replace instances of `@variable@' in input files with the value that
# the shell variable variable has when AC_OUTPUT is called.
# This value of variable should not contain literal newlines.
# If value is given, in addition assign it to variable.
# Create an output variable from a shell variable. Make AC_OUTPUT substitute
# the variable variable into output files (typically one or more `Makefile's).
# This means that AC_OUTPUT will replace instances of `@variable@' in input
# files with the value that the shell variable variable has when AC_OUTPUT is
# called. This value of variable should not contain literal newlines. If
# value is given, in addition assign it to variable.
AC_SUBST(MPIROOT)
AC_SUBST(HDF5ROOT)
AC_SUBST(PHDF5ROOT)
AC_SUBST(MPIINC)
AC_SUBST(MPILIB)
AC_SUBST(LUSTREROOT)
AC_SUBST(MPICC)
AC_SUBST(MPICXX)
AC_SUBST(MPIFC)
AC_SUBST(MTARGET)
AC_SUBST(TTARGET)
AC_SUBST(SZLIB)
AC_SUBST(TPTARGET)
AC_SUBST(TBTARGET)
AC_SUBST(TFTARGET)
AC_SUBST(CFLAGS)
AC_SUBST(FFLAGS)
AC_SUBST(ADDFLAGS)
AC_SUBST(STDCXX)
AC_SUBST(H5P_LIB_LOC)
AC_SUBST(UNDERSCORE_H)
AC_SUBST(BUILD_TOOLS)
AC_SUBST(INCLUDES)
AC_SUBST(LDFLAGS)
AC_SUBST(TOOLS_CXX)
AC_SUBST(TOOLS_H5PART_LIB)
AC_SUBST(TOOLS_HDFLIB)
AC_SUBST(LIBS)
AC_SUBST(UNDERSCORE_H)
AC_SUBST(LIB_C)
AC_SUBST(LIB_FORTRAN)
AC_SUBST(BINDINGS)
AC_SUBST(BUILD_TESTS)
AC_SUBST(BUILD_TOOLS)
# Make AC_OUTPUT create each `file' by copying an input file (by default `file.in'),
# substituting the output variable values.
AC_CONFIG_FILES([
Makefile
src/Makefile
test/Makefile
tools/Makefile
Makefile
src/Makefile
src/C/Makefile
src/h5core/Makefile
src/Fortran/Makefile
test/Makefile
test/H5Fed/Makefile
test/H5Part/Makefile
tools/Makefile
tools/h5hutcc
])
AC_OUTPUT
###############################################################################
########################## PRINTING SUMMARY ###################################
###############################################################################
AC_MSG_RESULT([ ])
AC_MSG_RESULT([Summary:])
AC_MSG_RESULT([ ])
AC_MSG_RESULT([Host OS: $host_os])
AC_MSG_RESULT([Host CPU: $host_cpu])
AC_MSG_RESULT([Host vendor: $host_vendor])
AC_MSG_RESULT([Build libraries: $BUILD_LIBS])
AC_MSG_RESULT([Build test programs: $TTARGET])
AC_MSG_RESULT([Build tools: $BUILD_TOOLS])
AC_MSG_RESULT([CC = $CC])
AC_MSG_RESULT([CXX = $CXX])
AC_MSG_RESULT([FC = $FC])
AC_MSG_RESULT([MPICC = $MPICC])
AC_MSG_RESULT([MPICXX = $MPICXX])
AC_MSG_RESULT([MPIFC = $MPIFC])
AC_MSG_RESULT([CFLAGS = $CFLAGS])
AC_MSG_RESULT([FFLAGS = $FFLAGS])
AC_MSG_RESULT([INCLUDES = $INCLUDES])
AC_MSG_RESULT([LDFLAGS = $LDFLAGS])
AC_MSG_RESULT([LIBS = $LIBS])
AC_MSG_RESULT([MPIROOT = $MPIROOT])
AC_MSG_RESULT([HDF5ROOT = $HDF5ROOT])
AC_MSG_RESULT([LUSTREROOT = $LUSTREROOT])
AC_MSG_RESULT([ ])
-529
View File
@@ -1,529 +0,0 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2005-02-09.22
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
case $1 in
'')
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by `PROGRAMS ARGS'.
object Object file output by `PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputing dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "depcomp $scriptversion"
exit $?
;;
esac
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
# here, because this file can only contain one case statement.
if test "$depmode" = hp; then
# HP compiler uses -M and no extra arg.
gccflag=-M
depmode=gcc
fi
if test "$depmode" = dashXmstdout; then
# This is just like dashmstdout with a different argument.
dashmflag=-xM
depmode=dashmstdout
fi
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
"$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
mv "$tmpdepfile" "$depfile"
;;
gcc)
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## -MM, not -M (despite what the docs say).
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if test -z "$gccflag"; then
gccflag=-MD,
fi
"$@" -Wp,"$gccflag$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
## The second -e expression handles DOS-style file names with drive letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the `deleted header file' problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
tr ' ' '
' < "$tmpdepfile" |
## Some versions of gcc put a space before the `:'. On the theory
## that the space means something, we add a space to the output as
## well.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
sgi)
if test "$libtool" = yes; then
"$@" "-Wp,-MDupdate,$tmpdepfile"
else
"$@" -MDupdate "$tmpdepfile"
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
echo "$object : \\" > "$depfile"
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
# the IRIX cc adds comments like `#:fec' to the end of the
# dependency line.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
tr '
' ' ' >> $depfile
echo >> $depfile
# The second pass generates a dummy entry for each header file.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> $depfile
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
# current directory. Also, the AIX compiler puts `$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
tmpdepfile="$stripped.u"
if test "$libtool" = yes; then
"$@" -Wc,-M
else
"$@" -M
fi
stat=$?
if test -f "$tmpdepfile"; then :
else
stripped=`echo "$stripped" | sed 's,^.*/,,'`
tmpdepfile="$stripped.u"
fi
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
if test -f "$tmpdepfile"; then
outname="$stripped.o"
# Each line is of the form `foo.o: dependent.h'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
icc)
# Intel's C compiler understands `-MD -MF file'. However on
# icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
# ICC 7.0 will fill foo.d with something like
# foo.o: sub/foo.c
# foo.o: sub/foo.h
# which is wrong. We want:
# sub/foo.o: sub/foo.c
# sub/foo.o: sub/foo.h
# sub/foo.c:
# sub/foo.h:
# ICC 7.1 will output
# foo.o: sub/foo.c sub/foo.h
# and will wrap long lines using \ :
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
"$@" -MD -MF "$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
# Each line is of the form `foo.o: dependent.h',
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process this invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in `foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then
# With Tru64 cc, shared objects can also be used to make a
# static library. This mecanism is used in libtool 1.4 series to
# handle both shared and static libraries in a single compilation.
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
#
# With libtool 1.5 this exception was removed, and libtool now
# generates 2 separate objects for the 2 libraries. These two
# compilations output dependencies in in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
tmpdepfile2=$dir$base.o.d # libtool 1.5
tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
"$@" -Wc,-MD
else
tmpdepfile1=$dir$base.o.d
tmpdepfile2=$dir$base.d
tmpdepfile3=$dir$base.d
tmpdepfile4=$dir$base.d
"$@" -MD
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
# That's a tab and a space in the [].
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
#nosideeffect)
# This comment above is used by automake to tell side-effect
# dependency tracking mechanisms from slower ones.
dashmstdout)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
test -z "$dashmflag" && dashmflag=-M
# Require at least two characters before searching for `:'
# in the target name. This is to cope with DOS-style filenames:
# a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
"$@" $dashmflag |
sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
tr ' ' '
' < "$tmpdepfile" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
dashXmstdout)
# This case only exists to satisfy depend.m4. It is never actually
# run, as this mode is specially recognized in the preamble.
exit 1
;;
makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
cleared=no
for arg in "$@"; do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix="`echo $object | sed 's/^.*\././'`"
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
sed '1,2d' "$tmpdepfile" | tr ' ' '
' | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile" "$tmpdepfile".bak
;;
cpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
"$@" -E |
sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
"$@" || exit $?
IFS=" "
for arg
do
case "$arg" in
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
shift
;;
*)
set fnord "$@" "$arg"
shift
shift
;;
esac
done
"$@" -E |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
echo " " >> "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
none)
exec "$@"
;;
*)
echo "Unknown depmode $depmode" 1>&2
exit 1
;;
esac
exit 0
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:
Binary file not shown.
Binary file not shown.
Binary file not shown.
-294
View File
@@ -1,294 +0,0 @@
#FIG 3.2
Landscape
Center
Inches
Letter
100.00
Single
-2
1200 2
0 32 #c6b797
0 33 #eff8ff
0 34 #dccba6
0 35 #404040
0 36 #808080
0 37 #c0c0c0
0 38 #e0e0e0
0 39 #8e8f8e
0 40 #aaaaaa
0 41 #555555
0 42 #bebebe
0 43 #515151
0 44 #e7e3e7
0 45 #000049
0 46 #797979
0 47 #303430
0 48 #414141
0 49 #c7b696
0 50 #8e8e8e
0 51 #414541
0 52 #8e8e8e
0 53 #000079
0 54 #ff8200
0 55 #007d00
0 56 #0000be
# Desktop computer
6 375 2400 2025 4050
6 1575 3825 2025 4050
2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 8
1615 3916 1719 3874 1908 3874 1950 3853 1972 3853 1846 3937
1615 3937 1615 3916
2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 6
1888 3853 1846 3874 1908 3874 1950 3853 1908 3853 1888 3853
2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 5
1846 3874 1888 3853 1846 3853 1803 3874 1846 3874
2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 5
1803 3874 1740 3874 1803 3853 1824 3853 1803 3874
2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 6
1846 3958 1866 3916 1972 3853 1992 3895 1846 3979 1846 3958
2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 5
1615 3937 1866 3937 1846 3958 1615 3958 1615 3937
2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 9
1615 3958 1594 4000 1719 4000 1846 4000 1866 4000 1992 3916
1992 3895 1846 3958 1615 3958
-6
6 600 2400 1950 3675
2 3 0 1 -1 7 2 0 15 0.000 0 0 -1 0 0 6
669 2530 648 3307 1594 3307 1615 2468 1594 2468 669 2530
2 3 0 1 -1 7 0 0 10 0.000 0 0 -1 0 0 5
1615 2468 1594 3307 1719 3307 1719 2509 1615 2468
2 3 0 1 -1 7 0 0 15 0.000 0 0 -1 0 0 5
1762 2677 1908 2719 1908 3139 1762 3203 1762 2677
2 3 0 1 -1 7 2 0 15 0.000 0 0 -1 0 0 6
732 3349 732 3412 1594 3454 1594 3371 753 3349 732 3349
2 3 0 1 -1 7 1 0 15 0.000 0 0 -1 0 0 5
1594 3371 1846 3280 1846 3348 1594 3454 1594 3371
2 3 0 1 -1 7 2 0 15 0.000 0 0 -1 0 0 5
732 3433 732 3559 1594 3601 1594 3454 732 3433
2 3 0 1 -1 0 2 0 20 0.000 0 0 -1 0 0 5
1594 3454 732 3412 753 3433 1572 3454 1594 3454
2 3 0 1 -1 7 2 0 8 0.000 0 0 -1 0 0 5
1594 3454 1594 3601 1635 3580 1635 3433 1594 3454
2 3 0 1 -1 7 2 0 8 0.000 0 0 -1 0 0 5
1719 3538 1846 3475 1846 3349 1719 3391 1719 3538
2 3 0 1 -1 7 2 0 10 0.000 0 0 -1 0 0 5
1635 3496 1719 3454 1719 3391 1635 3433 1635 3496
2 3 0 1 -1 7 2 0 10 0.000 0 0 -1 0 0 5
1635 3580 1719 3538 1719 3475 1635 3517 1635 3580
2 1 0 2 -1 7 2 0 8 0.000 0 0 -1 0 0 2
1635 3496 1719 3454
2 1 0 2 -1 7 2 0 8 0.000 0 0 -1 0 0 2
1635 3517 1719 3475
2 3 0 1 -1 7 3 0 10 0.000 0 0 -1 0 0 7
732 3559 732 3601 816 3601 963 3559 963 3538 816 3559
732 3559
2 3 0 1 -1 7 3 0 10 0.000 1 0 -1 0 0 5
1490 3596 1490 3641 1594 3643 1594 3601 1490 3596
2 3 0 1 -1 7 3 0 10 0.000 1 0 -1 0 0 5
1594 3643 1635 3601 1635 3580 1594 3601 1594 3643
2 3 0 1 -1 7 3 0 10 0.000 0 0 -1 0 0 5
1846 3475 1846 3496 1803 3517 1803 3496 1846 3475
2 3 0 1 -1 7 3 0 10 0.000 0 0 -1 0 0 4
1803 3517 1740 3517 1803 3496 1803 3517
2 3 0 1 -1 7 4 0 15 0.000 1 0 -1 0 0 6
879 3307 732 3349 1594 3371 1846 3279 1762 3265 879 3307
2 3 0 1 -1 7 0 0 10 0.000 1 0 -1 0 0 5
1719 2509 1719 3307 1762 3265 1762 2552 1719 2509
3 1 0 1 -1 7 1 0 20 0.000 0 0 0 11
774 2656 816 2614 1488 2572 1510 2593 1530 2636 1530 3139
1510 3181 1467 3203 837 3203 795 3181 774 3160
1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
1.000 1.000 1.000
-6
6 375 3675 1650 4050
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8
1207 3935 1205 3897 1229 3888 1265 3890 1264 3922 1244 3937
1212 3937 1207 3935
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8
1264 3939 1261 3900 1285 3892 1320 3893 1319 3925 1300 3940
1268 3940 1264 3939
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8
1318 3950 1315 3912 1339 3904 1374 3905 1374 3937 1355 3953
1322 3953 1318 3950
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8
1151 3935 1150 3897 1173 3888 1209 3890 1207 3922 1188 3937
1157 3937 1151 3935
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
1169 3900 1166 3861 1190 3853 1226 3854 1224 3886 1205 3901
1173 3901 1169 3900
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
1225 3904 1223 3865 1247 3857 1282 3858 1281 3891 1262 3906
1230 3906 1225 3904
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
1281 3908 1279 3869 1303 3860 1338 3862 1337 3893 1318 3909
1286 3909 1281 3908
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
1344 3909 1342 3870 1366 3862 1401 3863 1399 3895 1381 3911
1349 3911 1344 3909
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1214 3854 1214 3835 1233 3822 1272 3825 1272 3831 1260 3839
1258 3856 1211 3854 1214 3854
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1258 3855 1258 3836 1277 3823 1315 3826 1315 3831 1304 3839
1302 3857 1255 3855 1258 3855
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1300 3862 1300 3843 1319 3830 1359 3833 1359 3838 1346 3846
1344 3863 1297 3862 1300 3862
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1344 3863 1344 3845 1363 3831 1402 3835 1402 3839 1390 3848
1389 3865 1341 3863 1344 3863
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1387 3869 1387 3850 1406 3836 1444 3839 1444 3845 1436 3871
1417 3882 1383 3869 1387 3869
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
708 3798 708 3779 727 3766 766 3769 766 3774 755 3783
752 3800 705 3798 708 3798
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
747 3803 747 3784 766 3771 805 3775 805 3780 793 3788
791 3805 744 3803 747 3803
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
794 3805 794 3787 813 3773 852 3777 852 3781 840 3790
839 3807 791 3805 794 3805
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
832 3810 832 3792 850 3778 889 3781 889 3787 878 3795
876 3812 828 3810 832 3810
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
876 3812 876 3793 894 3780 934 3784 934 3788 921 3797
919 3814 872 3812 876 3812
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
919 3816 919 3797 938 3784 977 3787 977 3792 965 3800
964 3817 916 3816 919 3816
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
962 3816 962 3797 981 3784 1019 3787 1019 3792 1008 3800
1006 3817 959 3816 962 3816
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1001 3819 1001 3800 1019 3787 1058 3790 1058 3795 1047 3803
1045 3820 997 3819 1001 3819
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1049 3819 1049 3800 1067 3787 1106 3790 1106 3795 1094 3803
1092 3820 1045 3819 1049 3819
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
661 3822 661 3803 679 3790 718 3793 718 3799 706 3807
704 3824 658 3822 661 3822
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
704 3831 704 3812 724 3799 762 3802 762 3807 750 3816
748 3832 702 3831 704 3831
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
748 3834 748 3816 768 3802 806 3805 806 3810 794 3819
793 3835 746 3834 748 3834
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
789 3838 789 3819 808 3805 847 3808 847 3814 835 3822
833 3839 786 3838 789 3838
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
832 3840 832 3822 850 3808 889 3812 889 3817 878 3825
876 3842 828 3840 832 3840
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
874 3842 874 3824 893 3810 932 3814 932 3819 919 3827
918 3844 871 3842 874 3842
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
916 3846 916 3827 934 3814 974 3817 974 3822 962 3831
960 3847 913 3846 916 3846
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
961 3846 961 3828 980 3814 1018 3817 1018 3823 1007 3831
1005 3847 957 3846 961 3846
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1005 3849 1005 3831 1023 3817 1062 3821 1062 3826 1050 3834
1049 3851 1002 3849 1005 3849
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
1049 3851 1049 3832 1067 3819 1107 3823 1107 3828 1095 3836
1093 3853 1045 3851 1049 3851
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
656 3866 655 3827 678 3819 714 3820 713 3853 693 3868
662 3868 656 3866
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
700 3869 698 3831 722 3822 757 3824 755 3856 737 3871
704 3871 700 3869
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
744 3876 741 3838 766 3829 801 3831 799 3862 781 3878
748 3878 744 3876
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
792 3882 790 3842 814 3834 849 3835 848 3868 829 3883
797 3883 792 3882
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
832 3884 830 3846 854 3837 889 3839 887 3870 869 3886
836 3886 832 3884
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
880 3890 879 3851 902 3842 938 3844 936 3876 918 3892
886 3892 880 3890
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
932 3893 930 3854 954 3846 989 3847 988 3879 969 3895
936 3895 932 3893
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
982 3895 981 3856 1004 3847 1040 3849 1038 3882 1019 3897
988 3897 982 3895
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
1025 3898 1023 3860 1047 3851 1082 3853 1080 3885 1062 3900
1029 3900 1025 3898
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
618 3861 616 3822 640 3814 675 3816 674 3847 655 3862
623 3862 618 3861
2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8
572 3888 571 3849 594 3840 630 3842 629 3875 609 3890
578 3890 572 3888
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
609 3888 609 3869 629 3856 667 3860 667 3864 655 3873
654 3890 607 3888 609 3888
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 7
654 3893 984 3934 988 3898 664 3866 652 3882 652 3888
654 3893
2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9
986 3931 986 3913 1004 3900 1043 3902 1043 3908 1032 3916
1029 3933 982 3931 986 3931
2 3 0 1 -1 7 5 0 15 0.000 0 0 -1 0 0 9
429 3871 683 3743 1551 3816 1576 3831 1573 3840 1426 3990
427 3883 427 3869 429 3871
2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3
423 3910 1434 4014 1575 3875
2 3 0 0 -1 7 5 0 10 0.000 0 0 -1 0 0 8
429 3885 429 3928 1430 4050 1580 3895 1576 3831 1423 3990
425 3882 429 3885
-6
-6
6 4050 3000 7500 3750
2 1 0 1 0 0 0 0 -1 0.000 0 0 -1 0 0 4
7500 3000 5430 3000 6120 3690 4050 3690
-6
# TB Data
6 8025 6000 9000 7425
5 1 0 1 -1 -1 0 0 -1 0.000 0 1 0 0 8490.000 5700.000 8040 6300 8490 6450 8940 6300
5 1 0 1 -1 -1 0 0 -1 0.000 0 1 0 0 8490.000 6600.000 8040 7200 8490 7350 8940 7200
1 2 0 1 -1 -1 0 0 -1 0.000 1 0.0000 8490 6150 450 150 8040 6000 8940 6300
2 1 0 1 -1 -1 0 0 -1 0.000 0 0 0 0 0 2
8940 6225 8940 7200
2 1 0 1 -1 -1 0 0 -1 0.000 0 0 0 0 0 2
8040 6225 8040 7200
4 1 -1 0 0 2 12 0.0000 6 135 270 8490 6675 TB\001
4 1 -1 0 0 2 12 0.0000 6 135 405 8490 7275 Data\001
-6
2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2
0 0 1.00 60.00 120.00
0 0 1.00 60.00 120.00
2025 3075 2475 3075
2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
3750 4650 3750 2100 2550 2100 2550 4650 3750 4650
2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
9075 4650 9075 2100 7875 2100 7875 4650 9075 4650
2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2
0 0 3.00 60.00 120.00
8400 4800 8400 6000
2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2
0 0 3.00 60.00 120.00
8250 4800 8250 6000
2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2
0 0 3.00 60.00 120.00
8100 4800 8100 6000
2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2
0 0 3.00 60.00 120.00
8850 4800 8850 6000
2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5
12000 4500 12000 3975 8175 3975 8175 4500 12000 4500
4 0 0 50 0 2 15 0.0000 4 30 360 8475 5550 ......\001
4 0 0 50 0 0 20 0.0000 4 195 570 2625 3375 VisIt\001
4 0 0 50 0 0 20 0.0000 4 195 570 7950 3375 VisIt\001
4 0 0 50 -1 2 16 0.0000 4 225 1410 9375 4275 H5xxx plugin\001
4 0 0 50 0 0 20 0.0000 4 255 1650 6450 5550 n-way parallel\001
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
-262
View File
@@ -1,262 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Put your title here!!</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<div id="maincenter">
<head>
<title>Building H5Part</title>
</head>
<body bgcolor="#F0F0F0">
<font face="arial,helvetica" size="+2" color="#555588"><h2>Building H5Part</h2></font>
<UL>
<LI><a href="#Quickstart">Quickstart guide for the impatient.</a>
<LI><a href="#Details">Details of the Configuration Script</a>
<!-- <LI><a href="UsingC++.html">Using the C++ interface</a> -->
<LI><a href="#ConfigOptions">Important Configure Options</a>
<LI><a href="#EnvVariables">Important Environment Variables</a>
</UL>
<hr>
<a name="Quickstart">
<h2>Quickstart <i>for the impatient</i></h2>
</a>
<OL>
<LI><b>Configure</b>:<br>
For the serial implementation
<pre>
./configure
</pre>
For the parallel implementation configure with
<pre>
./configure --enable-parallel
</pre>
If you also want to build fortran bindings, add the
<code>--enable-fortran</code> flag to the configure line.
</LI><p>
<LI><b>Make the Library</b>:<br>
Type <code>make</code> to build the library. The libraries are
named accordingly.
<UL>
<LI>libH5Part.a: Serial C/C++ Library.</LI>
<LI>libpH5Part.a: Parallel C/C++ library.</LI>
<LI>libH5PartF.a: Serial F77/F90 library.</LI>
<LI>libpH5PartF.a: Parallel F77/F90 library.</LI>
</UL>
</LI><p>
<LI><b>Make Regression Tests and Examples</b>:<br>
Just type <code>make tests</code> to build regression tests
and/or example programs for H5Part. These tests are
<UL>
<LI>H5PartF: Fortran example (only build if --enable-fortran
is specified).</LI>
<LI>H5PartFpar: Parallel Fortran example (only built if both
--enable-fortran and --enable-parallel are specified).</LI>
<LI>H5PartTest: Serial C example. This test writes a sample
datafile and then reopens it for reading. It demonstrates
the most basic reading/writing capabilities.</LI>
<LI>H5PartTestP: Parallel C example (only built if
--enable-parallel is specified). This program only works
as an MPI/parallel program.</LI>
<LI>Bench: This program will only be built if
--enable-parallel is specified. It compares the
performance of raw binary
I/O (one file per processor), raw binary MPI-IO based
parallel I/O to a single file, and the parallel H5Part/HDF5 to
a single file. Generally, H5Part should be very close to the
MPI-IO implementation in terms of performance, but slower
than one-file-per-processor. If HDF5 is slower the
MPI-IO, it would indicate that some performance tuning
will be required for your platform (contact us, and we will
see what we can do!).</LI>
</UL>
</LI><p>
<LI><b>Building Your Own Programs</b>:<br>
There are many different subtleties to linking on various
computer platforms, but typically one does the following.
<UL>
<LI>C/C++ Serial:
<br><code>#include
&lt H5Part.h &gt </code> into your
source file.
<br><code>$CC -I<i>path_to_H5Part.h</i>
-I<i>path_to_hdf5.h</i> -o outfile
MyFile.cc -L<i>path_to_libH5Part.a</i> -lH5Part
-L<i>path_to_libhdf5</i> -lhdf5 -lz <i>-lsz</i></code>
</LI>
<LI>C/C++ Parallel:
<br><code>#include
&lt H5Part.h &gt </code> into your
source file.
<br><code>$MPICC -I<i>path_to_H5Part.h</i>
-I<i>path_to_hdf5.h</i> -DPARALLEL_IO
-DH5_HAVE_PARALLEL -o outfile
MyFile.cc -L<i>path_to_libH5Part.a</i> -lH5Part
-L<i>path_to_libhdf5</i> -lhdf5 -lz <i>-lsz</i></code>
</LI>
<LI>Fortran Serial:
<br><code>include
'H5Part.inc'</code> into your
source file.
<br><code>$FC -I<i>path_to_H5Part.h</i>
-I<i>path_to_hdf5.h</i> -o outfile
MyFile.cc -L<i>path_to_libH5PartF.a</i> -lH5PartF
-L<i>path_to_libhdf5</i> -lhdf5 -lz <i>-lsz</i> -lc</code>
</LI>
<LI>Fortran Parallel:
<br><code>include
'H5Part.inc'</code> into your
source file.
<br><code>$MPIF90 -I<i>path_to_H5Part.h</i>
-o outfile
MyFile.cc -L<i>path_to_libpH5PartF.a</i> -lpH5PartF
-L<i>path_to_libhdf5</i> -lhdf5 -lz <i>-lsz</i> -lc</code>
</LI><p>
</UL>
</OL>
<hr>
<a name="Details">
<h1>Details for H5Part Configure and Build</h1>
</a>
<a name="ConfigOptions">
<h2>Configure Options</h2>
</a>
H5Part uses GNU Autoconf to generate a Makefile from the makefile
template called <code>Makefile.in</code>.
The configure script pays attention to the following
configure options;<p>
<UL>
<LI><b>--prefix=PREFIX</b> Install files in PREFIX</LI>
<LI><b>--enable-fortran</b> By default H5part will make no attempt to
build Fortran bindings. If you add the
<code>--enable-fortran</code> flag to the ./configure line, it
will create a small test program to determine how to generate
the fortran bindings and then create a library that includes
those bindings. You may need to set the fortran compiler by
setting the <code>FC</code> environment variable in your shell.</LI>
<LI><b>--enable-parallel</b> The version of HDF5 that you build for
Parallel I/O differs from the library you would build for
serial I/O. Consequently, the H5Part libraries must be built
specifically for the kind of I/O you have in mind (parallel or
serial). The configure script will attempt to find an
<code>mpicc</code> if it is available. If no
<code>mpicc</code> is available it will use the regular
C-compiler and will try to locate the location of the MPI
include files and libraries. You can assist the configure
program in its search by setting the <code>MPIROOT</code>
environment variable.</LI>
<LI><b>--enable-tools</b> Builds the currently available tools
<br>
<b>h5pAttrib</b>, an inspection tool that prints the number of timesteps in a file
the file attributes, the step attributes, the dataset names and their values.
<br>
<b>h5pToGNUplot</b>, a converter to two column ASCII format to load in GNUplot.
</LI>
<LI><b>--enable-python</b><font color=red> Under construction</font> Option to build python bindings. It has not been tested.
</LI>
<LI><b>--help</b> Prints configure options.
</LI>
</UL>
<p>
<a name="MakeOptions">
<h2>Make Options</h2>
</a>
<UL>
<LI>make</LI>builds the libraries and test programs
<LI>make install</LI>builds and installs
<LI>make clean</LI>removes extraneous object files
<LI>make distclean</LI>returns configuration to unconfigured state
</UL>
<a name="EnvVariables">
<h2>Environment Variables for Configure</h2>
</a>
The
configuration script is of limited intelligence. Sometimes, you
have to define the following environment variables in order to
help it on its way. You will often only need to tell it where to
find the HDF5 libraries (<code>H5ROOT</code> for serial or
<code>PHDF5ROOT</code> for parallel builds). All of these
environment variables can also be overidden in the Makefile that
is generated by the autoconfigure script.
The configure script pays attention to the following
environment variables;
<p>
<UL>
<LI><b>CC</b>: Use the <code>CC</code> environment variable to tell the
configure script where to find the C compiler. You can
also directly modify this variable in the
<code>Makefile</code> that is generated by the autoconfigure</LI>
<LI><b>CXX</b>: Use the <code>CXX</code> environment variable to tell the
configure script where to find the C++ compiler. You can
also directly modify this variable in the
<code>Makefile</code> that is generated by the autoconfigure</LI>
<LI><b>FC</b>: Use the <code>FC</code> environment variable to tell the
configure script where to find the fortran compiler. You can
also directly modify this variable in the
<code>Makefile</code> that is generated by the autoconfigure</LI>
<LI><b>MPICC</b>: If you are building for parallel C I/O, then it is
useful to tell the configure script where to find the
<code>mpicc</code> script. Normally, <code>mpicc</code> is
merely a wrapper script for a build using a regular C-compiler.
If no <code>mpicc</code> is available, then the
<code>configure</code> script will attempt to locate the mpi
header files and libraries. In that case, it may be useful to
define the <code>MPI_HOME</code> environment variable.</LI>
<LI><b>MPICXX</b>If you are building for parallel C++</LI>
<LI><b>MPIFC</b>: If you are building for parallel Fortran I/O, then it is
useful to tell the configure script where to find the parallel fortran compiler.
<LI><b>MPIROOT</b>: Set this environment variable to help the
configure script to locate the MPI libraries that should be
used to build the parallel version of the libraries. This
variable will be ignored if configured only to build the
serial implementation of the library.</LI>
<LI><b>HDF5ROOT</b>: Find the path to your serial HDF5 installation. If you
are building the serial version of H5part, then you should set
the <code>PHDF5ROOT</code> environment variable.</LI>
</UL><p>
<h3>Common compiler environemt variables for NERSC platforms</h3>
<UL>
<LI><b>DaVinci</b>: Linux ia64 </LI>
CC=icc CXX=icc F90=ifort MPICC=icc MPIFC=ifort MPILIB=-L/usr/lib/ -lmpi MPIINC=-I/usr/include
<LI><b>Bassi</b>: AIX</LI>
CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r
<LI><b>Jacquard</b>: Linux x86_64</LI>
CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90
<LI><b>Starsky.lbl.gov:</b> (Darwin) PowerPC</LI>
CC=gcc CXX=g++ FC=g95
</UL>
<br>
NOTE: You might need to set the MPI library path (MPILIB) and MPI includes (MPIIINC) if they are in non standard places. For example: <br>
MPILIB=-L/usr/lpp/ppe.poe/lib -lmpi_r MPIINC=-I/usr/lpp/ppe.poe/include/thread
<h3>How to set the variables for configure:</h3>
It is very simple just call env with the variables together with configure. Notice the quotes in MPILIB.
<pre>
% env CC=icc CXX=icc F90=ifort MPICC=icc MPILIB=-L/usr/lib/ -lmpi MPIINC=-I/usr/include ./configure (configure options follow here)
</pre>
In the worst case, you can edit the <code>src/Makefile.am</code> and <code>test/Makefile.am</code> as
needed to perform the proper build.
</div>
-68
View File
@@ -1,68 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Put your title here!!</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<!--#include virtual="/include/topIncludes.html"-->
<div id="maincenter">
<head>
<title>Building HDF5</title>
</head>
<body bgcolor="#F0F0F0">
<font face="arial,helvetica" size="+2" color="#555588"><h2>Building H5Part</h2></font>
<UL>
<LI><a href="#ConfigOptions">Configure Options</a>
<LI><a href="#EnvVariables">Important Environment Variables</a>
</UL>
<hr>
<a name="ConfigOptions">
<h2>Configure options</h2></a>
</a>
To set the installation path configure with
<pre>
./configure --prefix=your hdf5 installation full path, e.g.--prefix=/usr/local/hdf5
</pre>
For the serial implementation configure with
<pre>
./configure
</pre>
For the parallel implementation configure with
<pre>
./configure --enable-parallel
</pre>
To enable shared objects configure with
<pre>
./configure --enable-shared
</pre>
<a name="EnvVariables">
<h2>Environment Variables</h2></a>
</a>
To add HDF5 to your PATH and LD_LIBRARY_PATH edit your
.tcshr, or .cshrc depending on the shell you are using and add
<pre>
setenv HDF5 "your hdf5 installation full path"
setenv PATH ${PATH}:${HDF5}/bin
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${HDF5}/lib
</pre>
if you are using bash, add to your .bashrc
<pre>
export HDF5="your hdf5 installation full path"
export PATH=$PATH:${HDF5}/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${HDF5}/lib
</pre>
Open a new terminal or do a
source .tcshr (.cshrc, .bashrc) in the one that you are using.
You can <a href="http://vis.lbl.gov/Research/AcceleratorSAPP/Downloading.html">continue <a/>downloading and installing H5Part.
</div>
<!--#include virtual="/include/dateFooter.html"-->
-48
View File
@@ -1,48 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Put your title here!!</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<!--#include virtual="/include/topIncludes.html"-->
<div id="maincenter">
<head>
<title>Downloading H5Part</title>
</head>
<body bgcolor="#F0F0F0">
<font face="arial,helvetica" size="+2" color="#555588"><h2>Downloading H5Part</h2></font>
<UL>
<LI><a href="#svnano">Subversion access.</a>
</UL>
<hr>
<a name="svnano">
<h2>Subversion access</h2>
</a>
<LI><b>Anonymous via. Savannah</b>:<br>
Use svn from <a href="http://subversion.tigris.org"> tigris </a>
<pre>
svn checkout svn+ssh://svn@savannah.psi.ch/afs/psi.ch/project/amas/svn/root/amas/H5Part/ .
</pre>
Password is svn.
<LI><b>Using AFS</b>:<br>
You need AFS (openAFS) and must have an AFS-Account at PSI which in consequence gives you
the needed access right.
</LI><p>
<pre>
svn checkout file:///afs/psi.ch/project/amas/svn/root/amas/H5Part/ .
</pre>
In case of trouble please contact the person mentioned at the bottom of this page.
<hr>
<address><a href="mailto:andreas.adelmann@psi.ch">Andreas Adelmann</a></address>
<!-- Created: March 7 12:52:52 PST 2005 -->
<!-- hhmts start -->
Last modified: Mon Jan 9 22:18:55 CET 2006
<!-- hhmts end -->
</div>
<!--#include virtual="/include/dateFooter.html"-->
+47 -61
View File
@@ -3,9 +3,9 @@
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
PROJECT_NAME = H5Part
PROJECT_NUMBER = V1.0
OUTPUT_DIRECTORY = ./doxydoc
PROJECT_NAME = H5hut
PROJECT_NUMBER = 1.9.9
OUTPUT_DIRECTORY = ./ReferencePages
CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = English
USE_WINDOWS_ENCODING = NO
@@ -35,7 +35,7 @@ INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 8
ALIASES =
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_FOR_C = YES
OPTIMIZE_OUTPUT_JAVA = NO
BUILTIN_STL_SUPPORT = NO
DISTRIBUTE_GROUP_DOC = NO
@@ -43,10 +43,10 @@ SUBGROUPING = YES
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = YES
EXTRACT_ALL = NO
EXTRACT_PRIVATE = NO
EXTRACT_STATIC = NO
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_CLASSES = NO
EXTRACT_LOCAL_METHODS = NO
HIDE_UNDOC_MEMBERS = YES
HIDE_UNDOC_CLASSES = YES
@@ -55,9 +55,9 @@ HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = YES
HIDE_SCOPE_NAMES = NO
SHOW_INCLUDE_FILES = YES
SHOW_INCLUDE_FILES = NO
INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
SORT_MEMBER_DOCS = NO
SORT_BRIEF_DOCS = NO
SORT_BY_SCOPE_NAME = NO
GENERATE_TODOLIST = YES
@@ -66,8 +66,8 @@ GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
SHOW_USED_FILES = YES
SHOW_DIRECTORIES = YES
SHOW_USED_FILES = NO
SHOW_DIRECTORIES = NO
FILE_VERSION_FILTER =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
@@ -82,46 +82,32 @@ WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = ../src
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.h \
*.hh \
*.C \
*.CC \
*.C++ \
*.H \
*.HH
RECURSIVE = YES
EXCLUDE = ../src/H5PartF.c \
../src/H5Part.cc \
../src/H5Part.hh \
../src/H5Part++.cc \
../src/H5Part++.hh \
../src/TestUnderscoreC.c \
../src/Underscore.h
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS = *
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
INPUT += H5.dox
INPUT += ../src/h5core/
INPUT += ../src/C/
INPUT += ../src/Fortran/
FILE_PATTERNS =
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS = *
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = YES
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
REFERENCED_BY_RELATION = NO
REFERENCES_RELATION = NO
USE_HTAGS = NO
VERBATIM_HEADERS = YES
VERBATIM_HEADERS = NO
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
@@ -132,10 +118,10 @@ IGNORE_PREFIX =
# configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = html
HTML_OUTPUT = .
HTML_FILE_EXTENSION = .html
HTML_HEADER =
HTML_FOOTER =
HTML_HEADER =
HTML_FOOTER =
HTML_STYLESHEET =
HTML_ALIGN_MEMBERS = YES
GENERATE_HTMLHELP = NO
@@ -151,7 +137,7 @@ TREEVIEW_WIDTH = 250
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = YES
GENERATE_LATEX = no
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
@@ -207,13 +193,13 @@ EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED =
PREDEFINED = PARALLEL_IO
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::additions related to external references
#---------------------------------------------------------------------------
TAGFILES = YES
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
@@ -221,21 +207,21 @@ PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
CLASS_DIAGRAMS = NO
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
HAVE_DOT = NO
CLASS_GRAPH = NO
COLLABORATION_GRAPH = NO
GROUP_GRAPHS = NO
UML_LOOK = NO
TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = YES
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
INCLUDE_GRAPH = NO
INCLUDED_BY_GRAPH = NO
CALL_GRAPH = NO
GRAPHICAL_HIERARCHY = NO
DIRECTORY_GRAPH = NO
DOT_IMAGE_FORMAT = png
DOT_PATH = /Applications/Graphviz.app/Contents/MacOS
DOT_PATH =
DOTFILE_DIRS =
MAX_DOT_GRAPH_WIDTH = 1024
MAX_DOT_GRAPH_HEIGHT = 1024
File diff suppressed because it is too large Load Diff
+77
View File
@@ -0,0 +1,77 @@
NumLevels: 2
NumVerticesOnLevel: 11 20 29
Vertices:
1 0.0 0.0
2 60.0 -70.0
3 90.0 -10.0
4 140.0 -70.0
5 180.0 -10.0
6 240.0 -60.0
7 220.0 60.0
8 140.0 90.0
9 200.0 120.0
10 130.0 150.0
11 50.0 80.0
12 115.0 40.0
13 95.0 85.0
14 70.0 35.0
15 160.0 -40.0
16 135.0 -10.0
17 115.0 -40.0
18 200.0 25.0
19 180.0 75.0
20 160.0 40.0
21 125.0 15.0
22 112.5 -10.0
23 102.5 15.0
24 147.5 15.0
25 137.5 40.0
26 150.0 65.0
27 127.5 65.0
28 117.5 87.5
29 105.0 62.5
NumElemsOnLevel: 12 24 36
NumElems: 12 28 44
Elements:
ID PID CID VertexIDs Adj Translation Tbl (dim num lvls - 1)
1 -1 -1 1 2 3 2 11 -1 1
2 -1 -1 2 3 4 3 -1 1 2
3 -1 12 3 4 5 4 12 2 -1
4 -1 -1 4 5 6 5 -1 3 3
5 -1 -1 5 7 6 -1 4 6 4
6 -1 17 8 5 7 5 7 12 -1
7 -1 -1 8 9 7 -1 6 8 5
8 -1 -1 10 8 9 7 -1 9 6
9 -1 -1 11 10 8 8 10 -1 7
10 -1 25 11 3 8 12 9 11 -1
11 -1 -1 1 11 3 10 1 -1 8
12 -1 21 3 8 5 6 3 10 -1
13 3 -1 3 14 13 16 21 2 9
14 3 -1 14 4 12 4 16 2 10
15 3 -1 13 12 5 4 23 16 11
16 3 -1 14 13 12 15 14 13 12
17 6 -1 8 17 16 20 5 22 13
18 6 -1 17 5 15 5 20 23 14
19 6 -1 16 15 7 5 7 20 15
20 6 -1 17 16 15 19 18 17 16
21 12 -1 3 18 13 24 13 26 17
22 12 -1 18 8 17 17 24 27 18
23 12 -1 13 17 5 18 15 24 19
24 12 -1 18 13 17 23 22 21 20
25 10 -1 11 20 19 28 9 11 21
26 10 -1 20 3 18 21 28 11 22
27 10 -1 19 18 8 22 9 28 23
28 10 -1 20 3 18 27 26 25 24
3,0 3,1 4,2 2,3 16,4
1 2 -1 3 4
1 2 3
1 3 6
2 11 1 13 14
+107
View File
@@ -0,0 +1,107 @@
# vtk DataFile Version 2.0
VTK LEGACY FILE FORMAT ASCII - tetrahedral sample file for H5FED test
ASCII
DATASET UNSTRUCTURED_GRID
POINTS 17 DOUBLE
-1 0 0
1 0 0
0 1 0
0 0 1
0 -1 0
-0.5 0 0.5
-0.5 0.5 0
0 0 0
0 0.5 0.5
0.5 0 0.5
0.5 0.5 0
-0.75 0 0.25
-0.75 0.25 0
-0.5 0 0
-0.5 0.25 0.25
-0.25 0 0.25
-0.25 0.25 0
CELLS 18 90
4 0 3 2 1
4 0 4 3 1
4 0 5 6 7
4 5 3 8 9
4 6 8 2 10
4 7 9 10 1
4 5 6 7 9
4 5 6 8 9
4 6 7 9 10
4 6 8 9 10
4 0 11 12 13
4 11 5 14 15
4 12 14 6 16
4 13 15 16 7
4 11 12 13 15
4 11 12 14 15
4 12 13 15 16
4 12 14 15 16
CELL_TYPES 18
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
POINT_DATA 17
SCALARS vertex_id int 1
LOOKUP_TABLE default
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CELL_DATA 18
SCALARS cell_attribute_data int 1
LOOKUP_TABLE default
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
+59
View File
@@ -0,0 +1,59 @@
# vtk DataFile Version 2.0
VTK LEGACY FILE FORMAT ASCII - tetrahedral sample file for H5FED test
ASCII
DATASET UNSTRUCTURED_GRID
POINTS 17 DOUBLE
-1 0 0
1 0 0
0 1 0
0 0 1
0 -1 0
-0.5 0 0.5
-0.5 0.5 0
0 0 0
0 0.5 0.5
0.5 0 0.5
0.5 0.5 0
-0.75 0 0.25
-0.75 0.25 0
-0.5 0 0
-0.5 0.25 0.25
-0.25 0 0.25
-0.25 0.25 0
CELLS 2 10
4 0 3 2 1
4 0 4 3 1
CELL_TYPES 2
10
10
POINT_DATA 17
SCALARS vertex_id int 1
LOOKUP_TABLE default
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CELL_DATA 2
SCALARS cell_attribute_data int 1
LOOKUP_TABLE default
0
1
+80
View File
@@ -0,0 +1,80 @@
# vtk DataFile Version 2.0
VTK LEGACY FILE FORMAT ASCII - tetrahedral sample file for H5FED test
ASCII
DATASET UNSTRUCTURED_GRID
POINTS 17 DOUBLE
-1 0 0
1 0 0
0 1 0
0 0 1
0 -1 0
-0.5 0 0.5
-0.5 0.5 0
0 0 0
0 0.5 0.5
0.5 0 0.5
0.5 0.5 0
-0.75 0 0.25
-0.75 0.25 0
-0.5 0 0
-0.5 0.25 0.25
-0.25 0 0.25
-0.25 0.25 0
CELLS 9 45
4 0 4 3 1
4 0 5 6 7
4 5 3 8 9
4 6 8 2 10
4 7 9 10 1
4 5 6 7 9
4 5 6 8 9
4 6 7 9 10
4 6 8 9 10
CELL_TYPES 9
10
10
10
10
10
10
10
10
10
POINT_DATA 17
SCALARS vertex_id int 1
LOOKUP_TABLE default
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CELL_DATA 9
SCALARS cell_attribute_data int 1
LOOKUP_TABLE default
0
1
2
3
4
5
6
7
8
+101
View File
@@ -0,0 +1,101 @@
# vtk DataFile Version 2.0
VTK LEGACY FILE FORMAT ASCII - tetrahedral sample file for H5FED test
ASCII
DATASET UNSTRUCTURED_GRID
POINTS 17 DOUBLE
-1 0 0
1 0 0
0 1 0
0 0 1
0 -1 0
-0.5 0 0.5
-0.5 0.5 0
0 0 0
0 0.5 0.5
0.5 0 0.5
0.5 0.5 0
-0.75 0 0.25
-0.75 0.25 0
-0.5 0 0
-0.5 0.25 0.25
-0.25 0 0.25
-0.25 0.25 0
CELLS 16 80
4 0 4 3 1
4 5 3 8 9
4 6 8 2 10
4 7 9 10 1
4 5 6 7 9
4 5 6 8 9
4 6 7 9 10
4 6 8 9 10
4 0 11 12 13
4 11 5 14 15
4 12 14 6 16
4 13 15 16 7
4 11 12 13 15
4 11 12 14 15
4 12 13 15 16
4 12 14 15 16
CELL_TYPES 16
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
POINT_DATA 17
SCALARS vertex_id int 1
LOOKUP_TABLE default
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CELL_DATA 16
SCALARS cell_attribute_data int 1
LOOKUP_TABLE default
1
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
+13
View File
@@ -0,0 +1,13 @@
12 14
2 11
1 3
2 4 12
3 5
4 6
5 7 12
6 8
7 9
8 10
9 11 12
1 10
3 6 10
@@ -0,0 +1,12 @@
0
1
1
1
1
1
0
0
0
0
0
1
@@ -0,0 +1,12 @@
1
1
2
2
2
0
0
0
0
1
1
2
+49
View File
@@ -0,0 +1,49 @@
24 35
%1
2 8
%2
1 9 10
%3
4 10 11
%4
3 14 15
%5
6 13 15
%6
5 7
%7
6 21 23
%8
1 21 22
%9
2 12 17
%10
2 3 12
%11
3 12 19
%12
9 10 11
%13
5 16 18
%14
4 16 19
%15
4 5 16
%16
13 14 15
%17
9 20 22
%18
13 20 23
%19
11 14 20
%20
17 18 19
%21
7 8 24
%22
8 17 24
%23
7 18 24
%24
21 22 23
@@ -0,0 +1,24 @@
1
1
0
0
0
0
1
1
1
1
0
1
0
0
0
0
1
0
0
0
1
1
1
1
+13
View File
@@ -0,0 +1,13 @@
12 1
1 2 3
2 3 4
3 4 6
4 5 6
5 6 7
6 7 8
7 8 11
8 10 11
8 9 10
3 8 9
1 3 9
3 6 8
+12
View File
@@ -0,0 +1,12 @@
1
1
1
1
0
0
0
0
0
0
1
1
+12
View File
@@ -0,0 +1,12 @@
11 22
2 3 9
1 3 4
1 2 4 6 8 9
2 3 6 5
4 6 7
3 4 5 7 8
5 6 8 11
6 7 11 10 9 3
8 10 3 1
8 11 9
7 8 10
+11
View File
@@ -0,0 +1,11 @@
1
1
1
1
1
0
0
0
0
0
0
+41
View File
@@ -0,0 +1,41 @@
20 43
%1
2 3 11
%2
1 3 4
%3
1 2 14 13 18 20
%4
2 14 12 6
%5
12 6 15 17 13
%6
4 5 7
%7
6 15 16 9
%8
9 10 19 18 17 16
%9
7 8 10
%10
8 9 11
%11
1 20 19 10
%12
4 14 13 5
%13
3 14 12 5 17 18
%14
3 13 12 4
%15
5 17 17 7
%16
7 8 17 15
%17
5 15 16 8 18 13
%18
3 13 17 8 19 20
%19
8 11 20 18
%20
3 18 19 11
+20
View File
@@ -0,0 +1,20 @@
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
0
0
1
1
1
+139
View File
@@ -0,0 +1,139 @@
/*!
\mainpage H5hut: A High-Performance I/O Library for Particle-based Simulations
Particle-based simulations running on large high-performance computing systems
over many time steps can generate an enormous amount of particle- and
field-based data for post-processing and analysis. Achieving high-performance
I/O for this data, effectively managing it on disk, and interfacing it with
analysis and visualization tools can be challenging, especially for domain
scientists who do not have I/O and data management expertise. We present the
H5hut library, an implementation of several data models for particle-based
simulations that encapsulates the complexity of HDF5 and is simple to use, yet
does not compromise performance.
Developers:
<UL>
<LI> Andreas Adelmann (PSI) </LI>
<LI> Achim Gsell (PSI) </LI>
<LI> Benedikt Oswald (PSI) </LI>
<LI> Mark Howison (NERSC/LBNL) </LI>
<LI> Prabhat (NERSC/LBNL) </LI>
<LI> Wes Bethel (NERSC/LBNL) </LI>
</UL>
Previous developers:
<UL>
<LI> John Shalf (NERSC/LBNL)</LI>
<LI> Cristina Siegerist (NERSC/LBNL)</LI>
</UL>
For more information, please contact the <a href="mailto:h5part@lists.psi.ch">h5part</a> mailing list.
*/
/*!
\defgroup h5hut_c_api H5hut C API
*/
/*!
\ingroup h5hut_c_api
\defgroup h5hut_file File Handling
*/
/*!
\ingroup h5hut_c_api
\defgroup h5hut_error Error Handling
*/
/*!
\ingroup h5hut_c_api
\defgroup h5hut_model Setting up the Data Model
*/
/*!
\ingroup h5hut_c_api
\defgroup h5hut_attrib Reading and Writing Attributes
*/
/*!
\defgroup h5part_c_api H5Part C API
*/
/*!
\ingroup h5part_c_api
\defgroup h5part_model Setting up the Data Model
*/
/*!
\ingroup h5part_c_api
\defgroup h5part_data Reading and Writing Datasets
*/
/*!
\defgroup h5block_c_api H5Block C API
*/
*/!
\ingroup h5block_c_api
\defgroup h5block_model Setting up the Data Model
*/
\ingroup h5block_c_api
\defgroup h5block_data Reading and Writing Datasets
*/
\ingroup h5block_c_api
\defgroup h5block_attrib Reading and Writing Attributes
*/
/*!
\defgroup h5fed_c_api H5Fed C API
*/
/*!
\defgroup h5hut_f90_api H5hut F90 API
*/
/*!
\ingroup h5hut_f90_api
\defgroup h5hut_file_f File Handling
*/
/*!
\ingroup h5hut_f90_api
\defgroup h5hut_model_f Setting up the Data Model
*/
/*!
\ingroup h5hut_f90_api
\defgroup h5hut_attrib_f Reading and Writing Attributes
!<
/*!
\defgroup h5part_f90_api H5Part F90 API
*/
/*!
\ingroup h5part_f90_api
\defgroup h5part_model_f Setting up the Data Model
*/
/*!
\ingroup h5part_f90_api
\defgroup h5part_data_f Reading and Writing Datasets
*/
/*!
\defgroup h5block_f90_api H5Block F90 API
*/
/*!
\ingroup h5block_f90_api
\defgroup h5block_model_f Setting up the Data Model
*/
/*!
\ingroup h5block_f90_api
\defgroup h5block_data_f Reading and Writing Datasets
*/
/*!
\ingroup h5block_f90_api
\defgroup h5block_attrib_f Reading and Writing Attributes
*/
-14
View File
@@ -1,14 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Put your title here!!</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<div id="maincenter">
Under construction, will be here soon.
</div>
-15
View File
@@ -1,15 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Put your title here!!</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<div id="maincenter">
Under construction, will be here soon.
</div>
-15
View File
@@ -1,15 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Put your title here!!</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<div id="maincenter">
Under construction, will be here soon.
</div>
-99
View File
@@ -1,99 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Put your title here!!</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<!--#include virtual="/include/topIncludes.html"-->
<div id="maincenter">
<head>
<title>H5Part Utility Tools</title>
</head>
<body bgcolor="#F0F0F0">
<font face="arial,helvetica" size="+2" color="#555588"><h2>H5Part Utility Tools</h2></font>
<UL>
<LI><a href="h5pAttrib">h5pAttrib</a>
<LI><a href="h5pToGNUplot">h5pToGNUplot</a>
</UL>
<hr>
<a name="h5pAttrib">
<h2>h5pAttrib</h2>
</a>
<b>h5pAttrib</b> is an inspection tool that prints to stdout the number of timesteps in a file
the file attributes, the step attributes, the dataset names and their values. It's simpler to use than h5dump.
Usage options are given by typing:
<br><br>
<PRE>
% ./h5pAttrib -h
usage: h5pAttrib [OPTIONS] file
OPTIONS
-h, --help Print help page
-n, --nstep Print number of steps
-A, --fileA Print file attributes
-a, --stepA Print step attributes & values for time step n
-d, --dataset Print data sets names & values for time step n
-H, --header Print shorter version without the values
</PRE>
<h3>Examples</h3>
<OL>
<LI>
Show file attribute names & values of sample.h5part
</LI>
h5pAttrib -A sample.h5part
<LI>
Show step attribute names for time step 5 of sample.h5part
</LI>
h5pAttrib -a 5 -H sample.h5part
</OL>
<a name="h5pToGNUplot">
<h2>h5pToGNUplot</h2>
</a>
<b>h5pToGNUplot</b> is a converter from H5Part to two column ASCII text format for loading into GNUplot. Usage options are given by typing:
<br><br>
<PRE>
% ./h5pToGNUplot -h
usage: h5pToGNUplot -t TIMESTEP -1 VARIABLE#1 -2 VARIABLE#2 -i INPUTFILE [OPTIONAL_FLAGS]
FLAGS
-h, --help Print help page
-1, --1var (REQUIRED) Takes first variable parameter
-2, --2var (REQUIRED) Takes second variable parameter
-i, --input (REQUIRED) Takes input file name
-t, --timestep (REQUIRED) Sets the timestep (Value -1 will result in dumping values of all timesteps.)
-o, --output (OPTIONAL) Takes output file name (without this flag, the program will print to stdout)
-n, --number (OPTIONAL) Sets number of output points
-s, --start (OPTIONAL) Sets the starting particle index
</PRE>
<h3>Examples</h3>
<OL>
<LI>
Create a GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54
</LI>
h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt
<LI>
Create a GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54
using 1200 points from particle index 76
</LI>
h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt -s 76 -n 1200
</OL>
</div>
<!--#include virtual="/include/dateFooter.html"-->
-75
View File
@@ -1,75 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>H5Part: VisIt Plugins</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<div id="maincenter">
<font face="arial,helvetica"><h1>H5Part: VisIt Plugins</h1></font>
<font face="arial,helvetica" color="#555588"><h2>Introduction</h2></font>
<P>
<a href="http://www.llnl.gov/visit">VisIt</a> is an open source point-and-click 3D scientific visualization application that supports most of the common visualization techniques on structured and unstructured grids. One of its advantages is that it employs a distributed and parallel architecture in order to handle extremely large data sets interactively. VisIt's rendering and data processing capabilities are split into viewer and engine components that may be distributed across multiple machines. See this link for <a href="http://vis.lbl.gov/NERSC/Software/visit/">details</a> on how to run VisIt in NERSC.
</P>
<P>
VisIt achieves extensibility through the use of dynamically loaded plugins. All of VisIt's plots, operators, and database readers are implemented as plugins and are loaded at run-time from the plugin directory. New plugins can be added simply by installing them in this directory. VisIt comes with a graphical plugin creation tool, which greatly simplifies the process of creating new plugins. The user describes the properties of the plugin and then the tool generates most of the code necessary to implement the plugin. For example, in the case of an operator, the plugin creation tool creates the code necessary for the graphical user interface attribute window; the C++, Python, and Java interfaces; and the code necessary to interface to VisIt. The only code you need to write is the C++ code that actually performs the operation.
</P>
<font face="arial,helvetica" color="#555588"><h2>H5Part in VisIt</h2></font>
<font face="arial,helvetica" color="#555588"><h3>Database Reader Plugin</h3></font>
<P>
We wrote a Multiple Time Step Multiple Domain database reader to read H5Part data into VisIt. H5Part datasets should be named with the extension <font color=red>".h5part"</font> to be recognized by the reader since VisIt does not have a format selection mechanism at the time of reading. Figure 1 shows a Pseudocolor plot of a data set and Figure 2 shows a Scatter plot x-y (any combination of x, px, y, py, z, pz, id are possible).
</P>
<P>
<TABLE>
<TR>
<TD>
<a href="H5PartVisIt/cloud_visit.png"><img src="H5PartVisIt/cloud_visit.s.png" width=400 height=300></a>
</TD
></TR>
<TR>
<TD width=300>
Figure 1. VisIt User interface showing an H5Part particle file rendered as spheres using the Pseudocolor plot.
</TD>
</TR>
<TR>
<TD>
<a href="H5PartVisIt/cloud_visit_2D.png"><img src="H5PartVisIt/cloud_visit_2D.s.png" width=300 height=300></a>
</TD>
</TR>
<TR>
<TD>
Figure 2. A Scatter plot of the x-y projection of the particles.
</TD>
</TR>
</TABLE>
</P>
<P>
VisIt provides a Query interface, for single time steps and for time series. Figure 3 shows the query interace over time for the sum of the x position and the z position of the particoes.
</P>
<P>
<TABLE>
<TR>
<TD>
<a href="H5PartVisIt/visit_query1.png"><img src="H5PartVisIt/visit_query1.s.png" width=400 height=300></a>
</TD
></TR>
<TR>
<TD width=300>
Figure 3. VisIt's Time Query Output.
</TD>
</TR>
</TABLE>
</p>
<font face="arial,helvetica" color="#555588"><h2>Operator Plugins</h2></font>
<P>
<font face="arial,helvetica" color="#555588"><h3>Particle Random Sampler</h3></font>
</P>
<P>
<font face="arial,helvetica" color="#555588"><h3>Particle Binner</h3></font>
</P>
</div>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 329 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

+170
View File
@@ -0,0 +1,170 @@
Proposal for a more general file format used by H5Part/H5Block
Authors: Achim Gsell
Status: Draft
1. Introduction
H5X is the file format used by H5Part and H5Block. H5X is designed on
top of HDF5: A H5X file is a very special HDF5 file.
+--------------------+
| Application |
+--------------------+
| H5Part/H5Block API |
+--------------------+
| H5X API |
+--------------------+
| HDF5 API |
+--------------------+
| Filesystem of OS |
+--------------------+
2. H5X file format specification
2.1 The root group
2.1.1 File attributes
Attributes of the HDF5 root group are called "file attributes". There
are no restrictions on file attribute names. Names with "__" as prefix and
postfix are intended for internal use. Supported values for file attributes
are scalars and arrays of 64bit integer and 64bit floating point number as
well as string values. Arrays of strings are not supported.
2.1.1.1 Predefined file attributes
__stepname__ (optional)
See below.
__stepnumwidth__ (optional)
See below.
2.1.2 Members of the root group
Members of the root group are special formated HDF5 groups called
"step groups". The name of a step group is "<name>#<number>".
Whereby <name> is either defined by the optional file attribute
__stepname__ or set to "Step" by default. <number> is an
unsigned integer less than 2^63.
/
+- Step#0
+- Step#1
...
+- Step#n
+- StepProperties [NEW]
+- Mesh [NEW]
The optional file attribute __stepnumwidth__ defines the minimum width
of <number> in the name of the step group. The number is padded with
'0'. The minimum width defaults to zero, so that no paddings occurs.
Example: With __stepnumwidth__ := 5 the name of the step group with
number 42 is "Step#00042", with __stepnumwidth__ := 0 the name is
"Step#42".
Step groups may be unsorted in the HDF5 file und needn't be number
consecutively.
2.1.3 Other members of the root group
Other sub-groups of the root group are allowed, but the group names are restricted
to names not matching "Step#.*".
2.2 Format of a step group
2.2.1 Step attributes
Step attributes are HDF5 attributes asigned to a step group. There
are no restrictions on step attribute names. As with file attributes names
enclosed in "__" are intended for internal use. Supported values are the same
as for file attributes:
* 64bit integer value
* arrays of 64bit integer values
* 64bit floating point number
* array of 64bit floating point number
* strings
Note that array of strings are not supported!
2.2.2 Predefined step attributes
No predefined step attributes exists.
2.2.3 Members of a step group
Members of a step group are HDF5 datasets and optional one HDF5 group
with the name "Block". HDF5 datasets in a step group are called "step
datasets". The optional block group is called "block data".
Mesh?!
2.2.4 Step datasets
Step datasets are arrays of rank 1. The dataset size must be the same
for all datasets inside a step. The size of the dataset may vary
from step to step. Array values are 64bit integer or 64bit floating
point numbers. No limitations (other than given by HDF5) are given on
step dataset names.
2.2.5 Block Data
The block data group is a container for an arbitrary number of field
data. A field is a data structure to store arrays of rank m with
n-dimensional vector values. Fields are represented within HDF5
groups. The HDF5 group name is the unique identifier for a field in
the current step.
2.2.5.1 m-rank fields with n-dimensional-vector values
Values are stored per dimension in separate datasets. Thus we have n
datasets for a field with n-dimensional vector values. Each dataset
corresponse to one dimension. The datasets are numbered from '0' to
'n-1'. Arrays are stored in column major order (Fortran indexing
scheme).
/ # HDF5 root group
...
+- Step#<i> # HDF5 group
|
+- Block # HDF5 group
|
+- <field name> # HDF5 group
|
+- 0 # HDF5 dataset, first dim of vector
+- 1 # HDF5 dataset, second dim of vector
...
+- n-1 # HDF5 dataset, last dim of vector
...
2.2.5.2 m-rank fields with scalar values
Fields with scalar values are stored as special case of fields with
n-dimensional vector values with n := 1.
/ # HDF5 root group
...
+- Step#<i> # HDF5 group
|
+- Block # HDF5 group
|
+- <field name> # HDF5 group
|
+- 0 # HDF5 dataset, scalar value
...
2.3 Step properties [NEW]
Why? Much faster than step attributes if you need to access consecutive values
Group of root group with name "StepProperties"
Members are datasets
Supported values are the same as for step attributes
Mapping of value to step via object index of step group
-417
View File
@@ -1,417 +0,0 @@
<html><head><title>H5Part Tools How-to</title>
<meta http-equiv="Content-Type" content="text/html; charset=euc-kr"></head>
<body bgcolor="#ffffff" text="#000000">
<table border="0" cellpadding="0" cellspacing="0" width="987">
<tbody><tr>
<td height="6050" width="27"></td>
<td colspan="3" valign="top">
<div id="body">
<div id="mainleft"><font face="Arial, Helvetica, sans-serif"><a name="TOP"></a>
</font></div>
<div id="maincenter"> <font face="arial,helvetica">
<h1 align="center"><font face="Arial, Helvetica, sans-serif"><b><font color="#666699">H5Part
Tools How-to</font></b></font></h1>
</font><font color="#555588" face="arial,helvetica">
<h2><font color="#666699" face="Arial, Helvetica, sans-serif">Table
of Contents</font></h2>
</font>
<p><font face="Arial, Helvetica, sans-serif"><b><a href="#Quick%20Guide">
[1] Quick Guide</a></b> </font></p>
<p><font face="Arial, Helvetica, sans-serif" size="+1"><b><font color="#999999">---
For h5pAttrib</font></b></font><font face="Arial, Helvetica, sans-serif"><br>
<b><br>
<a href="#timesteps">[2] To see number of timesteps in a h5part file</a><br>
<br>
<a href="#file%20attributes">[3] To see file attributes in a h5part
file</a><br>
<br>
<a href="#step%20attributes"> [4] To see step attributes in a h5part
file</a><br>
<br>
<a href="#dataset">[5] To see dataset in a h5part file</a><br>
<br>
<a href="#flags">[6] Providing more than one flag at once for h5pAttrib</a></b></font></p>
<p><font face="Arial, Helvetica, sans-serif" size="+1"><b><font color="#999999">---
For h5pToGNUplot</font></b></font><font face="Arial, Helvetica, sans-serif"><br>
<br>
<b><a href="#parameters">[7] What parameters to provide</a><br>
<br>
<a href="#input%20file">[8] How to create an input file to GNUplot</a></b></font></p>
<p>&nbsp;</p>
<p align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></p>
<p>&nbsp;</p>
<h2><font color="#555588" face="Arial, Helvetica, sans-serif"><a name="Quick Guide">[1]
Quick Guide</a></font></h2>
<p><font face="Arial, Helvetica, sans-serif">Executing the program with
-h option will display a concise help page.</font></p>
<p><font face="Arial, Helvetica, sans-serif"><b><font face="Courier New, Courier, mono" size="+1">$&gt;</font></b><font face="Courier New, Courier, mono">./h5pAttrib
-h</font></font></p>
<p><font face="Courier New, Courier, mono">usage: h5pAttrib [OPTIONS]
file</font></p>
<p><font face="Courier New, Courier, mono"> OPTIONS<br>
-h, --help Print help page<br>
-n, --nstep Print number of steps<br>
-A, --fileA Print file attributes<br>
-a n, --stepA n Print step attributes &amp; values for time step n<br>
-d n, --dataset n Print data sets names &amp; values for time step
n<br>
-H, --header Print shorter version without the values</font></p>
<p><font face="Courier New, Courier, mono"> Examples:</font></p>
<p><font face="Courier New, Courier, mono"> 1) Show file attribute names
&amp; values of sample.h5part</font></p>
<p><font face="Courier New, Courier, mono"> h5pAttrib -A sample.h5part<br>
OR<br>
h5pAttrib --fileA sample.h5part</font></p>
<p><font face="Courier New, Courier, mono"> 2) Show step attribute names
for time step 5 of sample.h5part</font></p>
<p><font face="Courier New, Courier, mono"> h5pAttrib -a 5 -H sample.h5part<br>
OR<br>
h5pAttrib --stepA 5 -H sample.h5part</font></p>
<p><font face="Courier New, Courier, mono"><br>
<b><font size="+1">$&gt;</font></b> ./h5pToGNUplot -h</font></p>
<p><font face="Courier New, Courier, mono">usage: h5pToGNUplot -t TIMESTEP
-1 VARIABLE#1 -2 VARIABLE#2 -i INPUTFILE [OPTIONAL_FLAGS]</font></p>
<p><font face="Courier New, Courier, mono"> FLAGS<br>
-h, --help Print help page</font><br>
<font face="Courier New, Courier, mono">-1 par, --1var par (REQUIRED)
Takes first variable parameter to "par"<br>
-2 par, --2var par (REQUIRED) Takes second variable parameter to "par"<br>
-i file, --input file (REQUIRED) Takes input file name to "file"<br>
</font><font face="Courier New, Courier, mono">-t step, --timestep
step (REQUIRED) Sets the timestep to "step" (Value -1 will
result in dumping values of all timesteps.)<br>
-o file, --output file (OPTIONAL) Takes output file name to "file"
(without this flag, the program will print to stdout)<br>
-n num, --number num (OPTIONAL) Sets number of output points to "num"<br>
-s idx, --start idx (OPTIONAL) Sets the starting particle index to
"idx"</font></p>
<p><font face="Courier New, Courier, mono"><br>
Examples:</font></p>
<p><font face="Courier New, Courier, mono"> 1) Create GNU plot file
output.txt from sample.h5part by ploting x vs px for timestep 54</font></p>
<p><font face="Courier New, Courier, mono"> h5pToGNUplot -t 54 -1 x
-2 px -i sample.h5part -o output.txt</font></p>
<p><font face="Courier New, Courier, mono"> 2) Create GNU plot file
output.txt from sample.h5part by ploting x vs px for timestep 54<br>
using 1200 points from particle index 76</font></p>
<p><font face="Courier New, Courier, mono"> h5pToGNUplot -t 54 -1 x
-2 px -i sample.h5part -o output.txt -s 76 -n 1200</font></p>
<p>&nbsp;</p>
<p align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></p>
<p>&nbsp;</p>
<p><font face="Arial, Helvetica, sans-serif" size="+1"><b><font color="#999999">---
For h5pAttrib</font></b></font></p>
<p>&nbsp;</p>
<h2><font color="#555588" face="Arial, Helvetica, sans-serif"><a name="timesteps">[2]
To see number of timesteps in a h5part file</a></font></h2>
<p>Executing the program h5pAttrib with -n flag will display the number
of timesteps in the file.</p>
<p><font face="Arial, Helvetica, sans-serif"><b>EXAMPLE&gt;&gt;</b></font></p>
<p><font face="Arial, Helvetica, sans-serif" size="+1"><b><font face="Courier New, Courier, mono">$&gt;</font></b></font><font face="Courier New, Courier, mono">
./h5pAttrib -n sample.h5part</font></p>
<p><font face="Courier New, Courier, mono">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">Printing number of timesteps
for: sample.h5part ...</font></p>
<p><font face="Courier New, Courier, mono">There are total 252 number
of timesteps.<br>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">done</font><font face="Arial, Helvetica, sans-serif"><br>
</font></p>
<p>&nbsp; </p>
<p align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></p>
<h2><font color="#666699" face="Arial, Helvetica, sans-serif"><br>
<font color="#555588"><a name="file attributes">[3] To see file attributes
in a h5part file</a></font></font></h2>
<p>File attribute contains information about the file. (file description
etc...) Executing the program h5pAttrib with -A flag will display
the file attributes in the file.</p>
<p><font face="Arial, Helvetica, sans-serif"><b>EXAMPLE&gt;&gt;</b></font></p>
<p><font face="Arial, Helvetica, sans-serif" size="+1"><b><font face="Courier New, Courier, mono">$&gt;</font></b></font><font face="Courier New, Courier, mono">
./h5pAttrib -A sample.h5part</font></p>
<p><font face="Courier New, Courier, mono">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">Printing file attributes
for: sample.h5part ...</font></p>
<p><font face="Courier New, Courier, mono">The number of file attributes
for file sample.h5part is 0 ...<br>
There are no file attributes.<br>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">done</font></p>
<p><font face="Arial, Helvetica, sans-serif"><br>
<i>NOTE: -H option will omit the list of values of file attributes.</i></font></p>
<p>&nbsp; </p>
<p align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></p>
<p align="center">&nbsp;</p>
<h2><font color="#555588" face="Arial, Helvetica, sans-serif"><a name="step attributes">[4]
To see step attributes in a h5part file</a></font></h2>
<p>Step attribute contains information that belongs to a specific step.
(step name, timestep number, etc...) Executing the program h5pAttrib
with -a flag will display the step attributes in the file.<br>
Note that the timestep index should follow -a flag.</p>
<p><font face="Arial, Helvetica, sans-serif"><b>EXAMPLE&gt;&gt;</b></font></p>
<p><font face="Arial, Helvetica, sans-serif"><b><font face="Courier New, Courier, mono" size="+1">$&gt;</font></b><font face="Courier New, Courier, mono">
./h5pAttrib -a 2 sample.h5part</font></font></p>
<p><font face="Courier New, Courier, mono">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">Printing step attributes
for: sample.h5part ...</font></p>
<p><font face="Courier New, Courier, mono">The number of step attributes
for timestep #2 is 10 ...</font></p>
<p><font face="Courier New, Courier, mono">Attribute #0 = Step<br>
There are 1 elements in the attribute<br>
Attribute Type is H5T_NATIVE_INT64<br>
Printing 1 element value(s):<br>
COUNT[0]: 2</font></p>
<p><font face="Courier New, Courier, mono">Attribute #1 = Spos<br>
There are 1 elements in the attribute<br>
Attribute Type is H5T_NATIVE_DOUBLE<br>
Printing 1 element value(s):<br>
COUNT[0]: 0.143580</font></p>
<p><font face="Courier New, Courier, mono">Attribute #2 = structLen<br>
There are 1 elements in the attribute<br>
Attribute Type is H5T_NATIVE_DOUBLE<br>
Printing 1 element value(s):<br>
COUNT[0]: 2.393000</font></p>
<p><font face="Courier New, Courier, mono">.<br>
.<br>
.</font></p>
<p><font face="Courier New, Courier, mono"><br>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">done</font></p>
<p><font face="Arial, Helvetica, sans-serif"><br>
<i>NOTE: -H option will omit the list of values of step attributes.</i></font></p>
<p>&nbsp; </p>
<p align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></p>
<h2><font color="#555588" face="Arial, Helvetica, sans-serif"><br>
<a name="dataset">[5] To see dataset in a h5part file</a></font></h2>
<p>Executing the program h5pAttrib with -d flag will display the datasets
information in the file. (dataset name, type, number of elements,
etc...) Executing the program h5pAttrib with -d flag will display
the datasets information in the file.<br>
Note that the timestep index should follow -d flag.</p>
<p><font face="Arial, Helvetica, sans-serif"><b>EXAMPLE&gt;&gt;</b></font></p>
<p><font face="Arial, Helvetica, sans-serif" size="+1"><b><font face="Courier New, Courier, mono">$&gt;</font></b></font><font face="Courier New, Courier, mono">
./h5pAttrib -d 2 -H sample.h5part</font></p>
<p><font face="Courier New, Courier, mono">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">Printing names of datasets
for: sample.h5part ...</font></p>
<p><font face="Courier New, Courier, mono">The number of datasets for
timestep #2 is 7 ...</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #0 = id<br>
Dataset Type is H5T_NATIVE_INT64<br>
Number of elements: 67587</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #1 = px<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 67587</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #2 = py<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 67587</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #3 = pz<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 67587</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #4 = x<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 67587</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #5 = y<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 67587</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #6 = z<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 67587</font></p>
<p><font face="Courier New, Courier, mono">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">done</font></p>
<p><font face="Arial, Helvetica, sans-serif"><br>
<i>NOTE: -H option will omit the list of values of datasets.</i></font></p>
<p>&nbsp; </p>
<p align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></p>
<p>&nbsp;</p>
<h2><font color="#555588" face="Arial, Helvetica, sans-serif"><a name="flags">[6]
Providing more than one flag at once</a></font></h2>
<p><font face="Arial, Helvetica, sans-serif">When more than one flags
are provided, one result after another will be displayed.</font></p>
<p><font face="Arial, Helvetica, sans-serif"><b>EXAMPLE&gt;&gt;</b></font></p>
<p><font face="Arial, Helvetica, sans-serif" size="+1"><b><font face="Courier New, Courier, mono">$&gt;</font></b></font><font face="Courier New, Courier, mono">
./h5pAttrib -H -a 1 -d 1 sample.h5part</font></p>
<p><font face="Courier New, Courier, mono">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">Printing step attributes
for: sample.h5part ...</font></p>
<p><font face="Courier New, Courier, mono">The number of step attributes
for timestep #1 is 10 ...</font></p>
<p><font face="Courier New, Courier, mono">Attribute #0 = Step<br>
Attribute #1 = Spos<br>
Attribute #2 = structLen<br>
Attribute #3 = org<br>
Attribute #4 = maxX<br>
Attribute #5 = minX<br>
Attribute #6 = maxP<br>
Attribute #7 = minP<br>
Attribute #8 = centroid<br>
Attribute #9 = nloc<br>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono"><br>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">Printing names of datasets
for: sample.h5part ...</font></p>
<p><font face="Courier New, Courier, mono">The number of datasets for
timestep #1 is 7 ...</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #0 = id<br>
Dataset Type is H5T_NATIVE_INT64<br>
Number of elements: 60214</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #1 = px<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 60214</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #2 = py<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 60214</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #3 = pz<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 60214</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #4 = x<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 60214</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #5 = y<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 60214</font></p>
<p><font face="Courier New, Courier, mono">Dataset Name #6 = z<br>
Dataset Type is H5T_NATIVE_DOUBLE<br>
Number of elements: 60214</font></p>
<p><font face="Courier New, Courier, mono">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</font></p>
<p><font face="Courier New, Courier, mono">done</font></p>
<p>&nbsp;</p>
<div align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></div>
</div>
</div>
</td>
</tr>
<tr>
<td height="80"></td>
<td colspan="3" valign="top">
<h2><font face="Arial, Helvetica, sans-serif" size="+1"><b><font color="#999999">---
For h5pToGNUplot</font></b></font></h2>
<h2><font color="#555588" face="Arial, Helvetica, sans-serif"><a name="parameters">[7]
What parameters to provide</a></font></h2>
<p><font face="Arial, Helvetica, sans-serif">When you execute the program
with -h option, it displays what flags are necessary and what flags are
optional.</font></p>
</td>
</tr>
<tr>
<td height="200"></td>
<td valign="top" width="137">
<p align="left"><b><font face="Arial, Helvetica, sans-serif">Short Version</font></b></p>
<p><font face="Arial, Helvetica, sans-serif">-h<br>
-1<br>
-2<br>
-i<br>
-t<br>
-o<br>
-n<br>
-s </font></p>
</td>
<td valign="top" width="144">
<p align="left"><b><font face="Arial, Helvetica, sans-serif">Long Version</font></b></p>
<p><font face="Arial, Helvetica, sans-serif">--help<br>
--1var<br>
--2var<br>
--input<br>
--timestep<br>
--output<br>
--number<br>
--start </font></p>
</td>
<td valign="top" width="679">
<p align="left"><b><font face="Arial, Helvetica, sans-serif">Meanings</font></b></p>
<p><font face="Arial, Helvetica, sans-serif">Print help page<br>
(REQUIRED) Takes first variable parameter<br>
(REQUIRED) Takes second variable parameter<br>
(REQUIRED) Takes input file name<br>
(REQUIRED) Sets the timestep (Value -1 will result in dumping values of
all timesteps.)<br>
(OPTIONAL) Takes output file name (without this flag, the program will
print to stdout)<br>
(OPTIONAL) Sets number of output points<br>
(OPTIONAL) Sets the starting particle index</font> </p>
</td>
</tr>
<tr>
<td height="1786"></td>
<td colspan="3" valign="top">
<p>&nbsp;</p>
<p align="center"><font face="Arial, Helvetica, sans-serif"><a href="#TOP">&lt;back
to top&gt;</a></font></p>
<h2><font color="#555588" face="Arial, Helvetica, sans-serif"><br>
<a name="input file">[8] How to create an input file to GNUplot</a></font></h2>
<p><font face="Arial, Helvetica, sans-serif"><b>EXAMPLE&gt;&gt;</b><br>
<i>Create input file to GNUplot that plots x vs. y.</i></font></p>
<p><font face="Arial, Helvetica, sans-serif"><b><font face="Courier New, Courier, mono" size="+1">$&gt;</font></b><font face="Courier New, Courier, mono">
./h5pToGNUplot -1 x -2 y -t 1 -i sample.h5part -o output.txt<br>
<b><font size="+1">$&gt;</font></b> cat output.txt<br>
-0.390779 -0.254793<br>
-0.396527 -0.252781<br>
-0.375362 -0.285137<br>
-0.396527 -0.252781<br>
-0.379917 -0.283147<br>
-0.390779 -0.254793<br>
-0.387536 -0.287346<br>
-0.371787 -0.319797<br>
-0.379917 -0.283147<br>
-0.378967 -0.326058<br>
-0.378976 -0.326078<br>
-0.387536 -0.287346<br>
-0.378957 -0.326069<br>
-0.379917 -0.283147<br>
-0.388762 -0.265390<br>
-0.371787 -0.319797<br>
-0.390779 -0.254793<br>
-0.376825 -0.266804<br>
-0.379917 -0.283147<br>
-0.375362 -0.285137<br>
...</font></font></p>
<p><font face="Courier New, Courier, mono"><i>Then run GNUplot...</i></font></p>
<p><font face="Courier New, Courier, mono"><b><font size="+1">$&gt;</font></b>
gnuplot</font></p>
<p><font face="Courier New, Courier, mono"> G N U P L O T<br>
Version 4.0 patchlevel 0<br>
last modified Thu Apr 15 14:44:22 CEST 2004<br>
System: Linux 2.6.11.4-21.11-smp</font></p>
<p><font face="Courier New, Courier, mono"> Copyright (C) 1986 - 1993, 1998,
2004<br>
Thomas Williams, Colin Kelley and many others</font></p>
<p><font face="Courier New, Courier, mono"> This is gnuplot version 4.0.
Please refer to the documentation<br>
for command syntax changes. The old syntax will be accepted<br>
throughout the 4.0 series, but all save files use the new syntax.</font></p>
<p><font face="Courier New, Courier, mono"> Type `help` to access the on-line
reference manual.<br>
The gnuplot FAQ is available from<br>
http://www.gnuplot.info/faq/</font></p>
<p><font face="Courier New, Courier, mono"> Send comments and requests for
help to<br>
&lt;gnuplot-info@lists.sourceforge.net&gt;<br>
Send bugs, suggestions and mods to<br>
&lt;gnuplot-bugs@lists.sourceforge.net&gt;</font></p>
<p><font face="Courier New, Courier, mono"><br>
Terminal type set to 'x11'<br>
<font size="+1"><b>gnuplot&gt;</b></font> plot "output.txt"</font></p>
<p><font face="Arial, Helvetica, sans-serif"><i>This will open a GNUplot
window that plots output.txt.</i></font></p>
<p align="center"><img src="H5tools_files/snapshot1.jpg" height="541" width="672"><br>
<font face="Arial, Helvetica, sans-serif">&lt;Sample screen shot of GNUplot
with input datafile generated by h5pToGNUplot&gt;</font></p>
</td>
</tr>
<tr>
<td height="44"></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody></table>
</body></html>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 239 KiB

-345
View File
@@ -1,345 +0,0 @@
\documentclass[acus]{JAC2003}
%%
%% Use \documentclass[boxit]{JAC2003}
%% to draw a frame with the correct margins on the output.
%%
%% Use \documentclass[acus]{JAC2003}
%% for US letter paper layout
%%
\usepackage{graphicx}
%%
%% VARIABLE HEIGHT FOR THE TITLE BOX (default 35mm)
%%
\setlength{\titleblockheight}{40mm}
\begin{document}
\title{H5Pie: A Portable High Performance Parallel Data Interface for Electromagnetics Simulations Including Particles\thanks{
This work (LBNL-57607) was supported by the Director, Office of Science, Office of Advanced Scientific Computing Research, of the U.S. Department of Energy under Contract No. DE-AC03-76SF00098 and the DOE SciDAC project on ``Advanced Computing for 21st Century Accelerator Science and Technology.''.
}}
\author{A. Adelmann, A. Gsell, B. Oswald, PSI, Villigen, Switzerland \\
R.D. Ryne, LBNL/AFR, Berkeley, California, USA\\
W. Bethel, J.M. Shalf, C. Siegerist, LBNL/NERSC, Berkeley, California, USA}
\maketitle
\begin{abstract}
The very largest parallel particle simulations, for problems
involving six dimensional phase space,
generate vast quantities of data. It is desirable to
store such enormous datasets efficiently and also to share data
effortlessly between data analysis tools
such as VisIt or ParaView
among other groups who are working on particle-based accelerator
simulations. We define a very simple file schema built on top of HDF5~\cite{hdf5hp}
(Hierarchical Data Format version 5) as well as an API that simplifies
the reading/writing of the data to the HDF5 file format. HDF5 offers a
self-describing machine-independent binary file format that supports
scalable parallel I/O performance for MPI codes on computer systems
ranging from laptops to supercomputers.
H5Pie is actually a composition of three parts. On a very abstract view we have,
H5Part which handles the macro particles of a simulation. H5Mesh defines the (spatial) geometry of the
computational domain and H5Fields represents scalar and vector filds. (H5Pie = H5{\bf P} art + H5F{\bf i}eld+ H5M{\bf e}sh)
The sample H5Pie
API will be available for C, C++, and Fortran codes.
The common file format will enable groups that
use completely different simulation implementations to transparently share
datasets.
\end{abstract}
\section{Motivation}
The motivation for this undertaking is to create a file format that is
suitable for large-scale parallel simulation codes.
A suitable data format must have the following properties:
it must be a machine-independent binary representation that is
self-describing, easily extensible, language independent, efficient
(both for serial and parallel), and produces files that are seamlessly sharable
between different programs. In the following sections we describe
the motivation for these features and how they can be accomplished
using the proposed implementation.
\subsection{Machine Independence}
Processor architectures use different binary representations
for data. While the IEEE 754 standard has decreased the number of
differing floating point number represenations, byte-order still remains
a source of incompatibility. While it is trivial to byte-swap a file from
a programming standpoint, it creates a number of long-term file management
difficulties for groups that are sharing or maintaining a repository of simulation
data. Given files that store data structures with differently sized elements,
one must know the storage format precisely in order to apply byte-swapping
properly.
HDF5 does not suffer from these problems because the file format is completely
self-describing and the internal binary structures are all machine independent.
The HDF5 library is able to convert data that is stored in any native machine
represenation in the data file into a native binary representation in memory
as part of the reading process with little performance penalty.
\subsection{Language Independence}
The three most common languages used for implementing applications
in the arena of computational sciences are
Fortran, C and C++. The file format and associated API must hide
differences in the binary file-storage conventions of these languages
as well as offering native API bindings for each of these
programming languages.
For instance, Fortran unformatted binary files contain integer fields
at the beginning and the end of each record that describe the length
of the record. The size of these integer tags is usually 32-bits, but some
fortran compiler implementations will use larger tags in order to represent
larger record sizes. C and C++ binary files have no such convention for
record-oriented storage. The language-dependent differences in
binary storage layout conventions
can cause difficulties for scientists who wish to share data files between
Fortran and C/C++ implementations of a code, or with visualization tools
that are primarily written in C/C++. The API bindings and underlying file format
provided by the H5Part API and the underlying HDF5 file format are able to
hide these differences in order to provide symmetric access via all languages.
\subsection{Self-Describing}
The data is accessed by names, for example, one might ask for `the
column of data called $p_x$' -- affording a layer of file-layout independence.
In other words, self-describing data is
not accessed by a position in a file but by name of the datasets. Various attributes
of the data that may be necessary to using it are available. For
example, one can ask ``what are the units of column $p_x$?'.
There are a number of examples of self-describing file formats. Examples include HDF earlier HDF implementations leading up to HDF version 5 and the Unidata NetCDF format. Another
very popular approach is the Self Describing Data Sets (SDDS) \cite{SDDS} although it
is only serial in nature. HDF5 is a complete rewrite of the HDF file format that supports
parallel I/O and offers a much leaner, more flexible interface.
Because it is self-describing, the entire contents of an HDF5 file can be
browsed and even converted to ASCII text, including XML syntax text files,
using the built-in 'h5ls' and 'h5dump'
tools without specific knowledge of the internal file format.
\begin{figure}[htb]
\begin{minipage}[b]{0.5\textwidth}
%\includegraphics[scale=0.095]{./partview1.eps}
%\includegraphics[scale=0.097]{./density70.eps}
\end{minipage}
\caption{color: A common self-describing file format allows different codes to share a common set of visualization and data analysis tools. PartView and AVS/Express, pictured above, are able to read and display contents of an H5Part/HDF5 file written on any machine in any language, regardless of how many processors are used.}
\label{fig:vis}
\end{figure}
The primary advantage of accessing data and its attributes is that one
can then construct more flexible data manipulation tools that are capable
of surviving the natural evolution of file formats. Data formats can be extended
to include additional information without breaking older file readers.
Self-describing data contains all the information
that analysis tools need to manipulate various types of data
correctly. Two examples of such tools using the proposed file format
are shown in Figure ~\ref{fig:vis} As a result, data exchange between different simulations tools is
much simpler, robust and better defined by using self-describing data sets.
\subsection{High Performance}
The HDF5 file format allows data elements to be written to disk in the
native binary representation. The file format stores a description of
the native data representation of the machine that wrote the data so
that it can be automatically translated to the native binary
representation of the machine that reading the data (eg. if the byte
order differs). In contrast to XDR, where the data always gets
translated to/from an intermediate machine-neutral format, the HDF5
data conversion only occurs if the stored data represenation is
different from the native binary representation of the machine that is
reading the file, so there is no performance penalty if the machines
have the compatible binary data formats. [ada: need work] In general, HDF5 offers
performance that is very close to what can be achieved by writing an
ad-hoc machine-dependent binary for F77 unformatted data file.
\subsection{Parallel I/O}
HDF5 also supports parallel I/O capabilities for MPI programs.
The naive approach to writing data from a parallel program is to
write one file per processor. While this is simple to implement and
very efficient on most cluster filesystems, it leads to file management
headaches when it comes the time to analyze the data. One must either
recombine these separate files into a single file or create ponderous
user-interfaces that allow a data analysis application to read from a
directory full of files instead of just one file.
Parallel I/O methods, allow you to write data into a single file from all
of the tasks of a parallel program. The performance is typically lower
than that of writing one-file-per-processor, but it makes data management
much simpler after the program has finished. No additional recombining
steps are required to make the file accessible by vis-tools or for
restarting a simulation using a different number of processors.
Parallel HDF5 uses MPI-I/O for its low-level implementation. The
mechanics of using MPI-I/O are all hidden from the user by our
H5Part file API (the code looks nearly identical to reading/writing the data
from a serial program). While the performance is not as good as
writing one-file-per-processor, we demonstrate that writing files
with Parallel HDF5 is consistently faster than writing the data
in raw/native binary using the MPI-I/O library. This efficiency is
made possible through sophisticated HDF5 tuning directives that
control data alignment and caching within the HDF5 layer.
Therefore, we argue that it would be difficult to match
HDF5 performance even using a home-grown binary file format.
\section{H5Mesh File Organization and API}
\section{H5Field File Organization and API}
\section{H5Part File Organization and API}
The proposed file storage format uses HDF5 for the low-level file
storage and a simple API to provide a high-level interface to that
file format. A programmer can either use the H5Part API to access
the data files or write directly to the file format using some simple
conventions for organizing and naming the objects stored in the
file.
The HDF5 format, its benefits, and its file organization is decribed
at \cite{hdf5hp}. The file format was also adopted by the DOE
ASCI-VIEWS effort, so the library has been tuned and adapted to read
and write data efficiently on large-scale parallel computing
systems. We adopted HDF5 for our file storage needs because it offers
all that is needed as stipulated in the motivation section.
We describe now the H5Part conventions for storing
objects in the HDF5 file as well as some examples of the API.
\subsection{H5Part File Organization}
In order to store Particle Data in the HDF5 file format, we have
formalized the hierarchical arrangement of the datasets and naming
conventions for the groups and associated datasets. The sample H5Part API formally
encodes these conventions in order to provide a simple and uniform
way to access these files from C, C++, and Fortran codes. The API makes
it easier to write very portable data adaptors for visualization tools in order to
expand the number of tools available to access the data. Even so,
anyone can use the HDF5 $h5ls$ utility to examine the organization
of the H5Part files and even write their own HDF5-based interface for reading and writing the
file format. The standards offered by the sample API are completely independent of the
standard for organizing data within the file.
The file format supports the storage of multiple timesteps of
datasets that contain multiple fields. The fields correspond to different properties of
the particles at that particular time step -- for instance,
the 3-dimensional cartesian position of the particles
$(X,Y,Z)$ as well as the 3-dimensional phase of each
particle $(PX,PY,PZ)$. These two degrees of freedom
are organized such that the timesteps are groups (time groups) that are added sequentially
to the root group (``/''). The fields are datasets that are nested within the
time groups. The convention for naming the time group is $Particles<integer>$ where $<integer>$ is a monotonically increasing counter for the number of timesteps stored in the file.
The fields contained within a given time group are simply named for the property of the particle they represent. For instance, the phase of the particle stored in a simulation variable called 'px' is simply named $``px''$. The field names are user-defined and
can be understood automatically by the visualization
tools that read the file. The only other convention is that each time group must contain the same set of fields -- the contents of the fields will change, but the set of names for these fields must remain the same for all timesteps.
The fields can be either integer or real data types. Initially, the file format supports double precision float and 64-bit integers in order to simplify the requirements for file readers, but HDF5 is capable of automatically down-converting to 32-bit data types upon request. The API will be extended accordingly to support these conversions.
Finally, the file, the individual timesteps, and the individual data arrays can contain {\em attributes} that provide additional information about the data. For instance, the datasets can be annotated with attributes containing {\em units} for a given data field, simulation parameters, or code revision information. The {\em attributes} are key-value pairs where the $key$ is a string that is associated with the file, group, or dataset, and the $value$ is either a string, a real value, or an integer associated with that key.
%Visualization and data analysis tools can take advantage of this additional information if they are programmed to recognize it, but less-sophisticated tools can safely ignore it without compromising their ability to read the file format.
% ada: to philosophic for a 3 page paper, although it is very important and of course right!
%The ability to ignore such information is arguably one of the most powerful capabilities of the HDF5 file format. Whereas changes to headers or data layout in conventional, non-self-describing file formats can render an older reader interface useless, one can continuously add new descriptive information to the HDF5 file without having any detrimental effect on readers that were designed to work with older versions of the file format. This provides enormous benefits for the long term maintenance and evolution of the file format.
\section{GENERAL FORM IN PSEUDOCODE}
In Figure \ref{fig:usage} we show the very simple API for writing
data. The API for reading is almost symmetric. It is also worth to
note that there are minimal differences whether one read/write serial
or in parallel. The API consists of a small number of C, C++ and
Fortran functions and will be described elsewhere.
In the parallel case the original domain decomposition can be used or
the data can be decomposed according to the new number of processor
nodes available.
The resulting HDF5 file will contains a simple directory structure that can be navigated using the generic 'h5ls' utility;
\begin{figure}[h!] \label{fig:sbendVect}
\newsavebox{\gogo}
\setbox\gogo=\hbox{%
\begin{minipage}{0.4\textwidth}
\small
\begin{tabbing}
111111\=aaaa\=aaaa\=aaaa\=\kill
\texttt{if(not parallel);}\\
\quad\texttt{filehandle=OpenFile(filename,mode)} \\
\texttt{else}\\
\quad\texttt{filehandle=OpenFile(filename,mode,mpicomm)} \\
\texttt{SetNumberOfParticles(filehandle);}\\
\texttt{loop(step=1,NSteps);}\\
\quad\texttt{SetStep(filehandle,step);}\\
\quad\texttt{WriteData(filehandle,fieldname1,data1);}\\
\centerline{\texttt{{\bf write more data}}}\\
\quad\texttt{WriteData(filehandle,fieldname<n>,data<n>);}\\
\texttt{CloseFile(filehandle);}
\end{tabbing}
\end{minipage}
}
\fbox{\usebox{\gogo}}
\caption{Usage of H5Part in pseudo-code}
\label{fig:usage}
\end{figure}
% \begin{figure}[h!] \label{fig:sbendVect}
% \newsavebox{\gugu}
% \setbox\gugu=\hbox{%
% \begin{minipage}{0.4\textwidth}
% \small
% \begin{tabbing}
% 111111\=aaaa\=aaaa\=aaaa\=\kill
%\texttt{/Particles1/fieldname1 } \\
%\texttt{/Particles1/fieldname2} \\
%\texttt{ . . . } \\
%\texttt{/Particles1/fieldname<n> } \\
%\texttt{/Particles2/fieldname1} \\
%\texttt{ . . .}\\
%\texttt{ /Particles<nsteps>/fieldname<n>}
%\end{tabbing}
%\end{minipage}
%}
%\fbox{\usebox{\gugu}}
%\end{figure}
\vspace{-5mm}
\section{PERFORMANCE}
% [ada] We also have data for 4 procs
% [ada] name for one file per proc
Preliminary performance estimations, looking at global (GD) and local data (LD)
rates, suggests that our HDF5 writing has a very good performance even
with respect to raw mpi, as shown in Table \ref{tab:perf}.
\begin{table}[h!]
\begin{flushleft} \footnotesize
\begin{tabular}{|l|l|l|}
\hline
\bf Mode & \bf GD [MB/s] & \bf LD [MB/s]\\
\hline
mpi-io (one file) & 241 & 3.7 \\
\hline
one file per proc & 1288 & 20 \\
\hline
H5Part/pHDFf5 (one file) & 773 & 12 \\
\hline
\end{tabular}
\end{flushleft}
\caption{\label{tab:perf}{64 IBM SP-3 nodes writing $51e6$ particles (6D). }}
%, each having 6 double-precision floating point fields for 64 timesteps over 3 trials.}}
\end{table}
\vspace{-4mm}
\section{Conclusions and Future Work}
The file format will be extended in the near future to integrate fast bitmap indexing
technology~\cite{DEX} in order to provide accelerated queries of data
stored in the file. With fastbit technolgy, a user can efficiently extract subsets of data
using compound query expressions such
as {\it $(velocity > 1e6)$ AND $(0.4 < phase < 1.0)$}.
%Such a query-driven approach offers advantages over scalable technologies aimed at visualizing ever-larger datasets.
We are also constantly tuning the performance of the parallel data
file format implementation. We will also be porting the H5Part reader
to a wider variety of visualization tools.
%in order to expand the arena
%of tools available for analyzing the stored particle data.
\begin{thebibliography}{9} % Use for 1-9 references
\bibitem{FPAT082}
A. Adelmann, R.D Ryne, C. Siegerist, J. Shalf, "From Visualization to Data Mining With Large Datasets," PAC, 2005.
\bibitem{hdf5hp}
HDF5 Home Page, http://hdf.ncsa.uiuc.edu/HDF5.
\bibitem{SDDS}
Definitions and libraries for SDDS implementation may be found at the link http://www.aps.anl.gov/asd/oag/oagPackages.shtml.
\bibitem{DEX}
K. Stockinger, J. Shalf, W. Bethel, K. Wu. "DEX: Increasing the Capability of Scientific Data Analysis Pipelines by Using Efficient Bitmap Indices to Accelerate Scientific Visualization." Scientific and Statistical Database Management Conference (SDDBM), 2005.
\end{thebibliography}
\end{document}
-217
View File
@@ -1,217 +0,0 @@
%%
%% This file has been developed as a common template for papers
%% destined for electronic production using Adobe Acrobat
%% software for Accelerator Conferences
%%
%% See the JACo Website for more information
%%
%% http://www.cern.ch/accelconf/
%%
% Special thanks to John Jowett and Michel Goossens from CERN and
% Martin Comyn at TRIUMF for their significant contributions to
% this class file over the period 1996 to 2000.
% John Poole
% March 2000
% JAC2001.cls is a modified version of JAC2000.cls to produce indented
% first paragraphs after section, subsection and subsubsection headings.
%
% Martin Comyn April 2001
\def\fileversion{1.2}
\def\filedate{2003/03/10}
\def\docdate {2003/03/10}
\newlength{\dsep}
\newlength{\dwid}
\newlength{\dht}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{JAC2003}[\filedate\space Version \fileversion]
\DeclareOption{acus}
{\setlength{\dwid}{6mm}%
\setlength{\dht}{-18mm}
\setlength{\paperheight}{11in}
\setlength{\paperwidth}{8.5in}
\typeout{Setup for US LETTER PAPER}}
\DeclareOption{aca4}
{\setlength{\dwid}{0mm}%
\setlength{\dht}{0mm}}
\DeclareOption{boxit}
%%
%% This option draws a box on the output text with the correct margins
%%
{\special{!userdict begin /bop-hook{
gsave
newpath
58 55 moveto
58 737 lineto
539 737 lineto
539 55 lineto
closepath
stroke
grestore
}def end}}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
\ExecuteOptions{aca4}
\ProcessOptions
\LoadClass[10pt]{article}
%%
%% Using Times fonts produces a Uniform, compact document
%% suitable for the Acrobat Software and printable anywhere.
%%
%% In a 'modern' TeX installation
%% e.g TeXLive Version 3 or later (more information on the JACo Website)
%% one can use the following command
%%
\renewcommand{\rmdefault}{ptm}
%%
%% Older installations may require
%% \RequirePackage{times}
%%
\typeout{------------------------------------------------------------------------}
\typeout{LaTeX2e Class file for Accelerator Conference publication for LaTeX2e users}
\typeout{ }
\typeout{Use the boxit option to draw a box on page showing the correct margins}
\typeout{ }
\typeout{Itemize, Enumerate and Description environments are compact versions}
\typeout{------------------------------------------------------------------------}
\typeout{ }
%
% DIMENSION OF TEXT:
\setlength{\textheight}{241mm}
\setlength{\textwidth}{170mm}
\setlength{\topmargin}{23mm}
\addtolength{\topmargin}{\dht}
\setlength{\oddsidemargin}{20mm}
\setlength{\evensidemargin}{20mm}
\setlength{\columnsep}{5mm}
\hoffset -25.4mm
\voffset -25.4mm
\columnseprule 0pt % Width of rule between columns.
% Use Michel Goossens' dense lists
% Prevent infinite loops
\let\Otemize =\itemize
\let\Onumerate =\enumerate
\let\Oescription =\description
% Zero the vertical spacing parameters
\def\Nospacing{\itemsep=0pt\topsep=0pt\partopsep=0pt\parskip=0pt\parsep=0pt}
% Redefine the environments in terms of the original values
\newenvironment{Itemize}{\Otemize\Nospacing}{\endlist}
\newenvironment{Enumerate}{\Onumerate\Nospacing}{\endlist}
\newenvironment{Description}{\Oescription\Nospacing}{\endlist}
\renewcommand{\topfraction}{.95}
\renewcommand{\bottomfraction}{.95}
\renewcommand{\textfraction}{0.1}
\renewcommand{\floatpagefraction}{0.8}
\def\@oddhead{}\def\@evenhead{}
\def\@oddfoot{}
\def\@evenfoot{\@oddfoot}
%-----------------------------------------------------------------------
% We acknowledge the borrowing of the clever part of
% Steven Gildea's definition of \section
% from geophysi.sty.
%
% \section is tricky because we want to both support \section* and have
% the section title uppercased.
\def\section{\secdef\@sectionb\@sections}
\def\@sectionb[#1]#2{\@sections{#2}}
\def\@sections#1{\@startsection {section}{1}{\z@}
{2.8ex plus 0.8ex minus .1ex}{1.5ex plus .2ex}
{\large\bf\boldmath\centering}{\uppercase{#1}}}
% Should there be any problem with this, we can revert to the following
% but then the onus is on the user to type the argument of \section in
% uppercase in the input file.
%
%\def\section{\@startsection {section}{1}{\z@}{2.8ex plus 0.8ex minus.1ex}
% {1.5ex plus .2ex}{\large\bf\boldmath\centering}}
\def\subsection{\@startsection{subsection}{2}{\z@}{2.6ex plus .8ex minus
.17ex}{1.2ex plus .17ex}{\large\it}}
\def\subsubsection{\@startsection{subsubsection}{3}{\parindent}
{2.5ex plus .7ex minus .17ex}{-1em}{\normalsize\bf}}
\def\paragraph{\@startsection
{paragraph}{4}{\z@}{2.5ex plus .7ex minus .17ex}{-1em}{\normalsize\it}}
\def\subparagraph{\@startsection
{subparagraph}{4}{\parindent}{2.25ex plus .7ex minus
.17ex}{-1em}{\normalsize\bf}}
\setcounter{secnumdepth}{0}
% This definition of \maketitle taken from article.sty, and has been
% somewhat modified.
\def\maketitle{\par
\begingroup
\def\thefootnote{\fnsymbol{footnote}}
\def\@makefnmark{\hbox
to 5pt{$^{\@thefnmark}$\hss}}
\twocolumn[\@maketitle]
\@thanks
\endgroup
\setcounter{footnote}{0}
\let\maketitle\relax
\let\@maketitle\relax
\gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}
\newlength{\titleblockheight} % so user can change it if need be
\setlength{\titleblockheight}{3.5cm}
\def\@maketitle{\vbox to \titleblockheight {\hsize\textwidth
\linewidth\hsize \vskip 3pt \centering
{\Large\bf \@title \par}
\vskip 2em % Vertical space after title.
{\large\begin{tabular}[t]{@{}c@{}}\@author \end{tabular}\par}
\vfil}}
% The \copyrightspace command is used to produce a blank space in the first
% column where a copyright notice may go. It works by producing a
% blank footnote of the appropriate size. Note that it should appear
% after any \footnote commands that produce footnotes for the first
% column. Adjusted to leave just 1cm.
\def\copyrightspace{\footnotetext[0]{\mbox{}\vrule height 1cm width 0pt}}
\def\abstract{\subsection*{Abstract}}
\def\endabstract{\par}
% Redefine to use smaller fonts
\def\thebibliography#1{\setlength{\itemsep}{0pt}\setlength{\parsep}{0pt}
\section*{REFERENCES\@mkboth
{REFERENCES}{REFERENCES}}\small\list
{[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
\advance\leftmargin\labelsep
\usecounter{enumi}}
\def\newblock{\hskip .11em plus .33em minus .07em}
\sloppy\clubpenalty4000\widowpenalty4000
\sfcode`\.=1000\relax}
\let\endthebibliography=\endlist
\twocolumn
\sloppy
\parindent 1em
\leftmargini 2em
\leftmargin\leftmargini
\leftmarginv .5em
\leftmarginvi .5em
\flushbottom
%-----------------------------------------------------------------------
-14
View File
@@ -1,14 +0,0 @@
#################################################
##BEGIN OF makefile "makefile" - using the gnu-compiler g++
##This file is used by the Make command.
###################################################
FILE=H5xxx
all: $(FILE).tex
latex $(FILE).tex
#bibtex $(FILE)
dvips -j0 $(FILE).dvi -o $(FILE).ps
# dvips $(FILE).dvi -o $(FILE).ps -x 1200 -O 10mm,15mm
clean:
rm *~ *.bbl *.aux *.blg *.log *.dvi *.ps
-54
View File
@@ -1,54 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>H5Part, Logical Internal HDF5 File Layout</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="keywords" content="scientific visualization">
<meta name="sitemap" content="put a brief descriptive phrase here that will show up in the site map:foo">
<div id="maincenter">
<font face="arial,helvetica"><h1>H5Part: Logical Internal HDF5 File Layout</h1></font>
<P>
HDF5 is extremely flexible in the sense that it allows the user to define a higher level data model to describe domain-specific data relationships. This flexibility however makes it necessary to develop an agreement on the logical layout of the data. The H5Part data model consists of Particle groups corresponding to the simulation time steps, each with seven datasets corresponding to x, px, y, py, z, pz, id for each particle. Attributes can be added to the file and to the datasets.
</P>
<center><img src="layout.png"></center>
<PRE>
HDF5 "parttest.h5" {
GROUP "/" {
GROUP "Particles#0" {
DATASET "id" {
DATATYPE H5T_STD_I64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
DATASET "px" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
DATASET "py" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
DATASET "pz" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
DATASET "x" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
DATASET "y" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
DATASET "z" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
}
</PRE>
<P>
See <a href="http://www-vis.lbl.gov/Publications/2002/hdf5.pdf">hdf5.pdf</a> for an introduction on the use of HDF5.
</P>
</div>
+13
View File
@@ -0,0 +1,13 @@
EXTRA_DIST = \
Doxyfile \
H5.dox
all:
doc:
doxydoc:
doxygen
clean:
${RM} -rf ReferencePages TWiki
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-146
View File
@@ -1,146 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: H5Part.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>H5Part.h</h1><a href="H5Part_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef _H5Part_H_</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define _H5Part_H_</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;hdf5.h&gt;</span>
<a name="l00005"></a>00005 <span class="preprocessor">#ifdef PARALLEL_IO</span>
<a name="l00006"></a>00006 <span class="preprocessor"></span><span class="preprocessor">#include &lt;mpi.h&gt;</span>
<a name="l00007"></a>00007 <span class="preprocessor">#endif</span>
<a name="l00008"></a>00008 <span class="preprocessor"></span>
<a name="l00016"></a><a class="code" href="structH5PartFile.html">00016</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structH5PartFile.html">H5PartFile</a> {
<a name="l00017"></a><a class="code" href="structH5PartFile.html#o0">00017</a> hid_t <a class="code" href="structH5PartFile.html#o0">file</a>;
<a name="l00018"></a><a class="code" href="structH5PartFile.html#o1">00018</a> <span class="keywordtype">int</span> <a class="code" href="structH5PartFile.html#o1">timestep</a>;
<a name="l00019"></a>00019
<a name="l00020"></a><a class="code" href="structH5PartFile.html#o2">00020</a> hid_t <a class="code" href="structH5PartFile.html#o2">timegroup</a>;
<a name="l00021"></a><a class="code" href="structH5PartFile.html#o3">00021</a> hid_t <a class="code" href="structH5PartFile.html#o3">properties</a>;
<a name="l00022"></a><a class="code" href="structH5PartFile.html#o4">00022</a> hsize_t <a class="code" href="structH5PartFile.html#o4">nparticles</a>;
<a name="l00023"></a><a class="code" href="structH5PartFile.html#o5">00023</a> hid_t <a class="code" href="structH5PartFile.html#o5">shape</a>;
<a name="l00024"></a><a class="code" href="structH5PartFile.html#o6">00024</a> <span class="keywordtype">unsigned</span> <a class="code" href="structH5PartFile.html#o6">mode</a>;
<a name="l00025"></a><a class="code" href="structH5PartFile.html#o7">00025</a> <span class="keywordtype">int</span> <a class="code" href="structH5PartFile.html#o7">maxstep</a>;
<a name="l00026"></a><a class="code" href="structH5PartFile.html#o8">00026</a> hid_t <a class="code" href="structH5PartFile.html#o8">xfer_prop</a>,<a class="code" href="structH5PartFile.html#o9">create_prop</a>,<a class="code" href="structH5PartFile.html#o10">access_prop</a>;
<a name="l00027"></a><a class="code" href="structH5PartFile.html#o12">00027</a> hid_t <a class="code" href="structH5PartFile.html#o11">diskshape</a>,<a class="code" href="structH5PartFile.html#o12">memshape</a>; <span class="comment">/* for parallel I/O (this is on-disk) H5S_ALL </span>
<a name="l00028"></a>00028 <span class="comment"> if serial I/O */</span>
<a name="l00029"></a><a class="code" href="structH5PartFile.html#o13">00029</a> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <a class="code" href="structH5PartFile.html#o13">viewstart</a>,<a class="code" href="structH5PartFile.html#o14">viewend</a>; <span class="comment">/* -1 if no view is available: A "view" looks at a subset of the data. */</span>
<a name="l00030"></a>00030
<a name="l00031"></a>00031 <span class="preprocessor">#ifdef PARALLEL_IO</span>
<a name="l00032"></a>00032 <span class="preprocessor"></span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> *pnparticles; <span class="comment">/* the number of particles in each processor.</span>
<a name="l00033"></a>00033 <span class="comment"> With respect to the "VIEW", these numbers</span>
<a name="l00034"></a>00034 <span class="comment"> can be regarded as non-overlapping subsections</span>
<a name="l00035"></a>00035 <span class="comment"> of the particle array stored in the file.</span>
<a name="l00036"></a>00036 <span class="comment"> So they can be used to compute the offset of</span>
<a name="l00037"></a>00037 <span class="comment"> the view for each processor */</span>
<a name="l00038"></a>00038 MPI_Comm comm;
<a name="l00039"></a>00039 <span class="keywordtype">int</span> nprocs,myproc;
<a name="l00040"></a>00040 <span class="preprocessor">#endif</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span>}<a class="code" href="structH5PartFile.html">H5PartFile</a>;
<a name="l00042"></a>00042
<a name="l00043"></a><a class="code" href="H5Part_8h.html#a0">00043</a> <span class="preprocessor">#define H5PART_READ 0x01</span>
<a name="l00044"></a><a class="code" href="H5Part_8h.html#a1">00044</a> <span class="preprocessor"></span><span class="preprocessor">#define H5PART_WRITE 0x02</span>
<a name="l00045"></a>00045 <span class="preprocessor"></span>
<a name="l00046"></a>00046 <span class="comment">/*========== File Opening/Closing ===============*/</span>
<a name="l00047"></a>00047 <span class="preprocessor">#ifdef PARALLEL_IO</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#include &lt;mpi.h&gt;</span>
<a name="l00049"></a>00049 <a class="code" href="structH5PartFile.html">H5PartFile</a> *<a class="code" href="H5Part_8c.html#a3">H5PartOpenFileParallel</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename,
<a name="l00050"></a>00050 <span class="keywordtype">unsigned</span> flags,
<a name="l00051"></a>00051 MPI_Comm communicator);
<a name="l00052"></a>00052 <span class="preprocessor">#endif</span>
<a name="l00053"></a><a class="code" href="H5Part_8h.html#a2">00053</a> <span class="preprocessor"></span><span class="preprocessor">#define H5PartOpenFileSerial(x,y) H5PartOpenFile(x,y)</span>
<a name="l00054"></a>00054 <span class="preprocessor"></span>
<a name="l00055"></a>00055 <a class="code" href="structH5PartFile.html">H5PartFile</a> *<a class="code" href="H5Part_8c.html#a4">H5PartOpenFile</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, <span class="comment">/* name of datafile */</span>
<a name="l00056"></a>00056 <span class="keywordtype">unsigned</span> flags); <span class="comment">/* H5PART_READ | H5PART_WRITE */</span>
<a name="l00057"></a>00057 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a5">H5PartFileIsValid</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00058"></a>00058 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a6">H5PartCloseFile</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00059"></a>00059
<a name="l00060"></a>00060
<a name="l00061"></a>00061 <span class="comment">/*============== File Writing Functions ==================== */</span>
<a name="l00062"></a>00062 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a7">H5PartSetNumParticles</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">long</span> <span class="keywordtype">long</span> nparticles);
<a name="l00063"></a>00063 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a8">H5PartWriteDataFloat64</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,<span class="keywordtype">double</span> *array);
<a name="l00064"></a>00064 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a9">H5PartWriteDataInt64</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,<span class="keywordtype">long</span> <span class="keywordtype">long</span> *array);
<a name="l00065"></a>00065
<a name="l00066"></a>00066 <span class="comment">/*================== File Reading Routines =================*/</span>
<a name="l00067"></a>00067 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a24">H5PartSetStep</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f, <span class="comment">/* file handle */</span>
<a name="l00068"></a>00068 <span class="keywordtype">int</span> step); <span class="comment">/* current timestep to select (0 to n-1) */</span>
<a name="l00069"></a>00069 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a27">H5PartGetNumSteps</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00070"></a>00070 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a28">H5PartGetNumDatasets</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00071"></a>00071 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a29">H5PartGetDatasetName</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">int</span> index,<span class="keywordtype">char</span> *name,<span class="keywordtype">int</span> maxlen);
<a name="l00072"></a>00072 <span class="keywordtype">long</span> <span class="keywordtype">long</span> <a class="code" href="H5Part_8c.html#a33">H5PartGetNumParticles</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00073"></a>00073 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a34">H5PartSetView</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">long</span> <span class="keywordtype">long</span> start,<span class="keywordtype">long</span> <span class="keywordtype">long</span> end);
<a name="l00074"></a><a class="code" href="H5Part_8h.html#a3">00074</a> <span class="preprocessor">#define H5PartResetView(f) H5PartSetView(f,-1,-1)</span>
<a name="l00075"></a><a class="code" href="H5Part_8h.html#a4">00075</a> <span class="preprocessor"></span><span class="preprocessor">#define H5PartHasView(f) ((f-&gt;viewstart&lt;0||f-&gt;viewend&lt;0)?0:1)</span>
<a name="l00076"></a>00076 <span class="preprocessor"></span><span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a35">H5PartGetView</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">long</span> <span class="keywordtype">long</span> *start,<span class="keywordtype">long</span> <span class="keywordtype">long</span> *end);
<a name="l00077"></a>00077 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a36">H5PartSetCanonicalView</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00078"></a>00078
<a name="l00079"></a>00079 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a37">H5PartReadDataFloat64</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,
<a name="l00080"></a>00080 <span class="keywordtype">char</span> *name, <span class="comment">/* name of the array to read</span>
<a name="l00081"></a>00081 <span class="comment"> "x"=position in x direction (y,z)</span>
<a name="l00082"></a>00082 <span class="comment"> "vx"=velocity in x directio (y,z)</span>
<a name="l00083"></a>00083 <span class="comment"> "px"=position in x dir (y,z) */</span>
<a name="l00084"></a>00084 <span class="keywordtype">double</span> *array); <span class="comment">/* array to read data into */</span>
<a name="l00085"></a>00085 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a38">H5PartReadDataInt64</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,
<a name="l00086"></a>00086 <span class="keywordtype">char</span> *name, <span class="comment">/* name of the array to read</span>
<a name="l00087"></a>00087 <span class="comment"> "x"=position in x direction (y,z)</span>
<a name="l00088"></a>00088 <span class="comment"> "vx"=velocity in x directio (y,z)</span>
<a name="l00089"></a>00089 <span class="comment"> "px"=position in x dir (y,z) */</span>
<a name="l00090"></a>00090 <span class="keywordtype">long</span> <span class="keywordtype">long</span> *array); <span class="comment">/* array to read data into */</span>
<a name="l00091"></a>00091
<a name="l00092"></a>00092 <span class="comment">/* the following is a back-door for extensions to the data writing */</span>
<a name="l00093"></a>00093 <span class="preprocessor">#if 0</span>
<a name="l00094"></a>00094 <span class="preprocessor"></span><span class="keywordtype">int</span> H5PartReadData(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,<span class="keywordtype">void</span> *array,hid_t type);
<a name="l00095"></a>00095 <span class="keywordtype">int</span> H5PartWriteData(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,<span class="keywordtype">void</span> *array,hid_t type);
<a name="l00096"></a>00096 <span class="preprocessor">#endif</span>
<a name="l00097"></a>00097 <span class="preprocessor"></span><span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a39">H5PartReadParticleStep</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f, <span class="comment">/* filehandle */</span>
<a name="l00098"></a>00098 <span class="keywordtype">int</span> step, <span class="comment">/* selects timestep to read from*/</span>
<a name="l00099"></a>00099 <span class="keywordtype">double</span> *x,<span class="keywordtype">double</span> *y,<span class="keywordtype">double</span> *z, <span class="comment">/* particle positions */</span>
<a name="l00100"></a>00100 <span class="keywordtype">double</span> *px,<span class="keywordtype">double</span> *py,<span class="keywordtype">double</span> *pz, <span class="comment">/* particle momenta */</span>
<a name="l00101"></a>00101 <span class="keywordtype">long</span> <span class="keywordtype">long</span> *<span class="keywordtype">id</span>); <span class="comment">/* and phase */</span>
<a name="l00102"></a>00102 <span class="comment">/**********==============Attributes Interface============***************/</span>
<a name="l00103"></a>00103 <span class="comment">/* currently there is file attributes: Attributes bound to the file</span>
<a name="l00104"></a>00104 <span class="comment"> and step attributes which are bound to the current timestep. You </span>
<a name="l00105"></a>00105 <span class="comment"> must set the timestep explicitly before writing the attributes (just</span>
<a name="l00106"></a>00106 <span class="comment"> as you must do when you write a new dataset. Currently there are no</span>
<a name="l00107"></a>00107 <span class="comment"> attributes that are bound to a particular data array, but this could</span>
<a name="l00108"></a>00108 <span class="comment"> easily be done if required.</span>
<a name="l00109"></a>00109 <span class="comment">*/</span>
<a name="l00110"></a>00110 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a12">H5PartWriteStepAttrib</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,
<a name="l00111"></a>00111 hid_t type,<span class="keywordtype">void</span> *attrib,<span class="keywordtype">int</span> nelem);
<a name="l00112"></a>00112 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a14">H5PartWriteFileAttrib</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,
<a name="l00113"></a>00113 hid_t type,<span class="keywordtype">void</span> *attrib,<span class="keywordtype">int</span> nelem);
<a name="l00114"></a>00114 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a13">H5PartWriteAttrib</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,
<a name="l00115"></a>00115 hid_t type,<span class="keywordtype">void</span> *attrib,<span class="keywordtype">int</span> nelem); <span class="comment">/* this should be deprecated */</span>
<a name="l00116"></a>00116
<a name="l00117"></a>00117 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a10">H5PartWriteFileAttribString</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,
<a name="l00118"></a>00118 <span class="keywordtype">char</span> *attrib);
<a name="l00119"></a>00119 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a11">H5PartWriteStepAttribString</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,
<a name="l00120"></a>00120 <span class="keywordtype">char</span> *attrib);
<a name="l00121"></a>00121 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a16">H5PartGetNumStepAttribs</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f); <span class="comment">/* for current filestep */</span>
<a name="l00122"></a>00122 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a17">H5PartGetNumFileAttribs</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00123"></a>00123 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a19">H5PartGetStepAttribInfo</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">int</span> idx,
<a name="l00124"></a>00124 <span class="keywordtype">char</span> *name,size_t maxnamelen,
<a name="l00125"></a>00125 hid_t *type,<span class="keywordtype">int</span> *nelem);
<a name="l00126"></a>00126 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a20">H5PartGetFileAttribInfo</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">int</span> idx,
<a name="l00127"></a>00127 <span class="keywordtype">char</span> *name,size_t maxnamelen,
<a name="l00128"></a>00128 hid_t *type,<span class="keywordtype">int</span> *nelem);
<a name="l00129"></a>00129 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a21">H5PartReadStepAttrib</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,<span class="keywordtype">void</span> *data);
<a name="l00130"></a>00130 <span class="keywordtype">void</span> <a class="code" href="H5Part_8c.html#a22">H5PartReadAttrib</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,<span class="keywordtype">void</span> *data);
<a name="l00131"></a>00131 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a23">H5PartReadFileAttrib</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *name,<span class="keywordtype">void</span> *data);
<a name="l00132"></a>00132
<a name="l00133"></a>00133
<a name="l00134"></a>00134 <span class="comment">/**************** File Stashing Interfaces *************************/</span>
<a name="l00135"></a>00135 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a42">H5PartStashFile</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">char</span> *filename);
<a name="l00136"></a>00136 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a43">H5PartUnstashFile</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f, <span class="keywordtype">char</span> *filename, <span class="keywordtype">char</span> *outputpath); <span class="comment">/* outputpath can be null for cwd */</span>
<a name="l00137"></a>00137 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a44">H5PartGetNumStashFiles</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f);
<a name="l00138"></a>00138 <span class="keywordtype">int</span> <a class="code" href="H5Part_8c.html#a45">H5PartFileGetStashFileName</a>(<a class="code" href="structH5PartFile.html">H5PartFile</a> *f,<span class="keywordtype">int</span> nameindex,<span class="keywordtype">char</span> *filename,<span class="keywordtype">int</span> maxnamelen);
<a name="l00139"></a>00139
<a name="l00140"></a>00140
<a name="l00141"></a>00141 <span class="preprocessor">#endif</span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
File diff suppressed because it is too large Load Diff
-16
View File
@@ -1,16 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: Class List</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindexHL" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>H5Part Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="structH5IO__getname__t.html">H5IO_getname_t</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="structH5PartFile.html">H5PartFile</a></td><td class="indexvalue"></td></tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
-309
View File
@@ -1,309 +0,0 @@
BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV {
font-family: Geneva, Arial, Helvetica, sans-serif;
}
BODY,TD {
font-size: 90%;
}
H1 {
text-align: center;
font-size: 160%;
}
H2 {
font-size: 120%;
}
H3 {
font-size: 100%;
}
CAPTION { font-weight: bold }
DIV.qindex {
width: 100%;
background-color: #eeeeff;
border: 1px solid #b0b0b0;
text-align: center;
margin: 2px;
padding: 2px;
line-height: 140%;
}
DIV.nav {
width: 100%;
background-color: #eeeeff;
border: 1px solid #b0b0b0;
text-align: center;
margin: 2px;
padding: 2px;
line-height: 140%;
}
DIV.navtab {
background-color: #eeeeff;
border: 1px solid #b0b0b0;
text-align: center;
margin: 2px;
margin-right: 15px;
padding: 2px;
}
TD.navtab {
font-size: 70%;
}
A.qindex {
text-decoration: none;
font-weight: bold;
color: #1A419D;
}
A.qindex:visited {
text-decoration: none;
font-weight: bold;
color: #1A419D
}
A.qindex:hover {
text-decoration: none;
background-color: #ddddff;
}
A.qindexHL {
text-decoration: none;
font-weight: bold;
background-color: #6666cc;
color: #ffffff;
border: 1px double #9295C2;
}
A.qindexHL:hover {
text-decoration: none;
background-color: #6666cc;
color: #ffffff;
}
A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff }
A.el { text-decoration: none; font-weight: bold }
A.elRef { font-weight: bold }
A.code:link { text-decoration: none; font-weight: normal; color: #0000FF}
A.code:visited { text-decoration: none; font-weight: normal; color: #0000FF}
A.codeRef:link { font-weight: normal; color: #0000FF}
A.codeRef:visited { font-weight: normal; color: #0000FF}
A:hover { text-decoration: none; background-color: #f2f2ff }
DL.el { margin-left: -1cm }
.fragment {
font-family: Fixed, monospace;
font-size: 95%;
}
PRE.fragment {
border: 1px solid #CCCCCC;
background-color: #f5f5f5;
margin-top: 4px;
margin-bottom: 4px;
margin-left: 2px;
margin-right: 8px;
padding-left: 6px;
padding-right: 6px;
padding-top: 4px;
padding-bottom: 4px;
}
DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
TD.md { background-color: #F4F4FB; font-weight: bold; }
TD.mdPrefix {
background-color: #F4F4FB;
color: #606060;
font-size: 80%;
}
TD.mdname1 { background-color: #F4F4FB; font-weight: bold; color: #602020; }
TD.mdname { background-color: #F4F4FB; font-weight: bold; color: #602020; width: 600px; }
DIV.groupHeader {
margin-left: 16px;
margin-top: 12px;
margin-bottom: 6px;
font-weight: bold;
}
DIV.groupText { margin-left: 16px; font-style: italic; font-size: 90% }
BODY {
background: white;
color: black;
margin-right: 20px;
margin-left: 20px;
}
TD.indexkey {
background-color: #eeeeff;
font-weight: bold;
padding-right : 10px;
padding-top : 2px;
padding-left : 10px;
padding-bottom : 2px;
margin-left : 0px;
margin-right : 0px;
margin-top : 2px;
margin-bottom : 2px;
border: 1px solid #CCCCCC;
}
TD.indexvalue {
background-color: #eeeeff;
font-style: italic;
padding-right : 10px;
padding-top : 2px;
padding-left : 10px;
padding-bottom : 2px;
margin-left : 0px;
margin-right : 0px;
margin-top : 2px;
margin-bottom : 2px;
border: 1px solid #CCCCCC;
}
TR.memlist {
background-color: #f0f0f0;
}
P.formulaDsp { text-align: center; }
IMG.formulaDsp { }
IMG.formulaInl { vertical-align: middle; }
SPAN.keyword { color: #008000 }
SPAN.keywordtype { color: #604020 }
SPAN.keywordflow { color: #e08000 }
SPAN.comment { color: #800000 }
SPAN.preprocessor { color: #806020 }
SPAN.stringliteral { color: #002080 }
SPAN.charliteral { color: #008080 }
.mdTable {
border: 1px solid #868686;
background-color: #F4F4FB;
}
.mdRow {
padding: 8px 10px;
}
.mdescLeft {
padding: 0px 8px 4px 8px;
font-size: 80%;
font-style: italic;
background-color: #FAFAFA;
border-top: 1px none #E0E0E0;
border-right: 1px none #E0E0E0;
border-bottom: 1px none #E0E0E0;
border-left: 1px none #E0E0E0;
margin: 0px;
}
.mdescRight {
padding: 0px 8px 4px 8px;
font-size: 80%;
font-style: italic;
background-color: #FAFAFA;
border-top: 1px none #E0E0E0;
border-right: 1px none #E0E0E0;
border-bottom: 1px none #E0E0E0;
border-left: 1px none #E0E0E0;
margin: 0px;
}
.memItemLeft {
padding: 1px 0px 0px 8px;
margin: 4px;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-color: #E0E0E0;
border-right-color: #E0E0E0;
border-bottom-color: #E0E0E0;
border-left-color: #E0E0E0;
border-top-style: solid;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
background-color: #FAFAFA;
font-size: 80%;
}
.memItemRight {
padding: 1px 8px 0px 8px;
margin: 4px;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-color: #E0E0E0;
border-right-color: #E0E0E0;
border-bottom-color: #E0E0E0;
border-left-color: #E0E0E0;
border-top-style: solid;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
background-color: #FAFAFA;
font-size: 80%;
}
.memTemplItemLeft {
padding: 1px 0px 0px 8px;
margin: 4px;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-color: #E0E0E0;
border-right-color: #E0E0E0;
border-bottom-color: #E0E0E0;
border-left-color: #E0E0E0;
border-top-style: none;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
background-color: #FAFAFA;
font-size: 80%;
}
.memTemplItemRight {
padding: 1px 8px 0px 8px;
margin: 4px;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-color: #E0E0E0;
border-right-color: #E0E0E0;
border-bottom-color: #E0E0E0;
border-left-color: #E0E0E0;
border-top-style: none;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
background-color: #FAFAFA;
font-size: 80%;
}
.memTemplParams {
padding: 1px 0px 0px 8px;
margin: 4px;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-color: #E0E0E0;
border-right-color: #E0E0E0;
border-bottom-color: #E0E0E0;
border-left-color: #E0E0E0;
border-top-style: solid;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
color: #606060;
background-color: #FAFAFA;
font-size: 80%;
}
.search { color: #003399;
font-weight: bold;
}
FORM.search {
margin-bottom: 0px;
margin-top: 0px;
}
INPUT.search { font-size: 75%;
color: #000080;
font-weight: normal;
background-color: #eeeeff;
}
TD.tiny { font-size: 75%;
}
a {
color: #252E78;
}
a:visited {
color: #3D2185;
}
.dirtab { padding: 4px;
border-collapse: collapse;
border: 1px solid #b0b0b0;
}
TH.dirtab { background: #eeeeff;
font-weight: bold;
}
HR { height: 1px;
border: none;
border-top: 1px solid black;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

-17
View File
@@ -1,17 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: File Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindexHL" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>H5Part File List</h1>Here is a list of all files with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="H5Part_8c.html">H5Part.c</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="H5Part_8h.html">H5Part.h</a> <a href="H5Part_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="H5PartF_8c.html">H5PartF.c</a></td><td class="indexvalue"></td></tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
-35
View File
@@ -1,35 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: Class Members</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
Here is a list of all class members with links to the classes they belong to:
<p>
<ul>
<li>access_prop
: <a class="el" href="structH5PartFile.html#o10">H5PartFile</a><li>count
: <a class="el" href="structH5IO__getname__t.html#o1">H5IO_getname_t</a><li>create_prop
: <a class="el" href="structH5PartFile.html#o9">H5PartFile</a><li>diskshape
: <a class="el" href="structH5PartFile.html#o11">H5PartFile</a><li>file
: <a class="el" href="structH5PartFile.html#o0">H5PartFile</a><li>index
: <a class="el" href="structH5IO__getname__t.html#o0">H5IO_getname_t</a><li>maxstep
: <a class="el" href="structH5PartFile.html#o7">H5PartFile</a><li>memshape
: <a class="el" href="structH5PartFile.html#o12">H5PartFile</a><li>mode
: <a class="el" href="structH5PartFile.html#o6">H5PartFile</a><li>name
: <a class="el" href="structH5IO__getname__t.html#o2">H5IO_getname_t</a><li>nparticles
: <a class="el" href="structH5PartFile.html#o4">H5PartFile</a><li>properties
: <a class="el" href="structH5PartFile.html#o3">H5PartFile</a><li>shape
: <a class="el" href="structH5PartFile.html#o5">H5PartFile</a><li>timegroup
: <a class="el" href="structH5PartFile.html#o2">H5PartFile</a><li>timestep
: <a class="el" href="structH5PartFile.html#o1">H5PartFile</a><li>viewend
: <a class="el" href="structH5PartFile.html#o14">H5PartFile</a><li>viewstart
: <a class="el" href="structH5PartFile.html#o13">H5PartFile</a><li>xfer_prop
: <a class="el" href="structH5PartFile.html#o8">H5PartFile</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
-35
View File
@@ -1,35 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: Class Members - Variables</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_vars.html">Variables</a></div>
<p>
<ul>
<li>access_prop
: <a class="el" href="structH5PartFile.html#o10">H5PartFile</a><li>count
: <a class="el" href="structH5IO__getname__t.html#o1">H5IO_getname_t</a><li>create_prop
: <a class="el" href="structH5PartFile.html#o9">H5PartFile</a><li>diskshape
: <a class="el" href="structH5PartFile.html#o11">H5PartFile</a><li>file
: <a class="el" href="structH5PartFile.html#o0">H5PartFile</a><li>index
: <a class="el" href="structH5IO__getname__t.html#o0">H5IO_getname_t</a><li>maxstep
: <a class="el" href="structH5PartFile.html#o7">H5PartFile</a><li>memshape
: <a class="el" href="structH5PartFile.html#o12">H5PartFile</a><li>mode
: <a class="el" href="structH5PartFile.html#o6">H5PartFile</a><li>name
: <a class="el" href="structH5IO__getname__t.html#o2">H5IO_getname_t</a><li>nparticles
: <a class="el" href="structH5PartFile.html#o4">H5PartFile</a><li>properties
: <a class="el" href="structH5PartFile.html#o3">H5PartFile</a><li>shape
: <a class="el" href="structH5PartFile.html#o5">H5PartFile</a><li>timegroup
: <a class="el" href="structH5PartFile.html#o2">H5PartFile</a><li>timestep
: <a class="el" href="structH5PartFile.html#o1">H5PartFile</a><li>viewend
: <a class="el" href="structH5PartFile.html#o14">H5PartFile</a><li>viewstart
: <a class="el" href="structH5PartFile.html#o13">H5PartFile</a><li>xfer_prop
: <a class="el" href="structH5PartFile.html#o8">H5PartFile</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
-107
View File
@@ -1,107 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: Class Members</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
<div class="qindex"><a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_h">h</a></div>
<p>
Here is a list of all file members with links to the files they belong to:
<p>
<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
<li>f_h5pt_close
: <a class="el" href="H5PartF_8c.html#a34">H5PartF.c</a><li>f_h5pt_getdatasetname
: <a class="el" href="H5PartF_8c.html#a43">H5PartF.c</a><li>f_h5pt_getfileattribinfo
: <a class="el" href="H5PartF_8c.html#a60">H5PartF.c</a><li>f_h5pt_getndatasets
: <a class="el" href="H5PartF_8c.html#a41">H5PartF.c</a><li>f_h5pt_getnfileattribs
: <a class="el" href="H5PartF_8c.html#a58">H5PartF.c</a><li>f_h5pt_getnpoints
: <a class="el" href="H5PartF_8c.html#a42">H5PartF.c</a><li>f_h5pt_getnstepattribs
: <a class="el" href="H5PartF_8c.html#a57">H5PartF.c</a><li>f_h5pt_getnsteps
: <a class="el" href="H5PartF_8c.html#a40">H5PartF.c</a><li>f_h5pt_getnumpoints()
: <a class="el" href="H5PartF_8c.html#a44">H5PartF.c</a><li>f_h5pt_getstepattribinfo
: <a class="el" href="H5PartF_8c.html#a59">H5PartF.c</a><li>f_h5pt_getview()
: <a class="el" href="H5PartF_8c.html#a48">H5PartF.c</a><li>f_h5pt_hasview
: <a class="el" href="H5PartF_8c.html#a47">H5PartF.c</a><li>f_h5pt_isvalid
: <a class="el" href="H5PartF_8c.html#a35">H5PartF.c</a><li>f_h5pt_openr
: <a class="el" href="H5PartF_8c.html#a32">H5PartF.c</a><li>f_h5pt_openr_par
: <a class="el" href="H5PartF_8c.html#a2">H5PartF.c</a><li>f_h5pt_openw
: <a class="el" href="H5PartF_8c.html#a33">H5PartF.c</a><li>f_h5pt_openw_par
: <a class="el" href="H5PartF_8c.html#a3">H5PartF.c</a><li>f_h5pt_readdata
: <a class="el" href="H5PartF_8c.html#a19">H5PartF.c</a><li>f_h5pt_readdata_i8
: <a class="el" href="H5PartF_8c.html#a50">H5PartF.c</a><li>f_h5pt_readdata_r8
: <a class="el" href="H5PartF_8c.html#a49">H5PartF.c</a><li>f_h5pt_readfileattrib
: <a class="el" href="H5PartF_8c.html#a62">H5PartF.c</a><li>f_h5pt_readstepattrib
: <a class="el" href="H5PartF_8c.html#a61">H5PartF.c</a><li>f_h5pt_resetview
: <a class="el" href="H5PartF_8c.html#a46">H5PartF.c</a><li>f_h5pt_setnpoints
: <a class="el" href="H5PartF_8c.html#a36">H5PartF.c</a><li>f_h5pt_setstep
: <a class="el" href="H5PartF_8c.html#a37">H5PartF.c</a><li>f_h5pt_setview
: <a class="el" href="H5PartF_8c.html#a45">H5PartF.c</a><li>f_h5pt_writedata_i8
: <a class="el" href="H5PartF_8c.html#a39">H5PartF.c</a><li>f_h5pt_writedata_r8
: <a class="el" href="H5PartF_8c.html#a38">H5PartF.c</a><li>f_h5pt_writefileattrib_i8
: <a class="el" href="H5PartF_8c.html#a52">H5PartF.c</a><li>f_h5pt_writefileattrib_r8
: <a class="el" href="H5PartF_8c.html#a51">H5PartF.c</a><li>f_h5pt_writefileattrib_string
: <a class="el" href="H5PartF_8c.html#a53">H5PartF.c</a><li>f_h5pt_writestepattrib_i8
: <a class="el" href="H5PartF_8c.html#a55">H5PartF.c</a><li>f_h5pt_writestepattrib_r8
: <a class="el" href="H5PartF_8c.html#a54">H5PartF.c</a><li>f_h5pt_writestepattrib_string
: <a class="el" href="H5PartF_8c.html#a56">H5PartF.c</a></ul>
<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
<li>H5IO_getname_t
: <a class="el" href="H5Part_8c.html#a1">H5Part.c</a><li>H5IOgetname()
: <a class="el" href="H5Part_8c.html#a26">H5Part.c</a><li>H5NameExists()
: <a class="el" href="H5Part_8c.html#a40">H5Part.c</a><li>H5PART_READ
: <a class="el" href="H5Part_8h.html#a0">H5Part.h</a><li>H5PART_WRITE
: <a class="el" href="H5Part_8h.html#a1">H5Part.h</a><li>H5PartAttribcounter()
: <a class="el" href="H5Part_8c.html#a15">H5Part.c</a><li>H5PartCloseFile()
: <a class="el" href="H5Part_8h.html#a8">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a6">H5Part.c</a><li>H5PartDScounter()
: <a class="el" href="H5Part_8c.html#a25">H5Part.c</a><li>H5PartFile
: <a class="el" href="H5Part_8h.html#a5">H5Part.h</a><li>H5PartFileGetStashFileName()
: <a class="el" href="H5Part_8h.html#a38">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a45">H5Part.c</a><li>H5PartFileHasName()
: <a class="el" href="H5Part_8c.html#a41">H5Part.c</a><li>H5PartFileIsValid()
: <a class="el" href="H5Part_8h.html#a7">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a5">H5Part.c</a><li>H5PartGetDatasetName()
: <a class="el" href="H5Part_8h.html#a15">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a29">H5Part.c</a><li>H5PartGetDiskShape()
: <a class="el" href="H5Part_8c.html#a30">H5Part.c</a><li>H5PartGetFileAttribInfo()
: <a class="el" href="H5Part_8h.html#a31">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a20">H5Part.c</a><li>H5PartGetFirstDS()
: <a class="el" href="H5Part_8c.html#a32">H5Part.c</a><li>H5PartGetMemShape()
: <a class="el" href="H5Part_8c.html#a31">H5Part.c</a><li>H5PartGetNumDatasets()
: <a class="el" href="H5Part_8h.html#a14">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a28">H5Part.c</a><li>H5PartGetNumFileAttribs()
: <a class="el" href="H5Part_8h.html#a29">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a17">H5Part.c</a><li>H5PartGetNumParticles()
: <a class="el" href="H5Part_8h.html#a16">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a33">H5Part.c</a><li>H5PartGetNumStashFiles()
: <a class="el" href="H5Part_8h.html#a37">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a44">H5Part.c</a><li>H5PartGetNumStepAttribs()
: <a class="el" href="H5Part_8h.html#a28">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a16">H5Part.c</a><li>H5PartGetNumSteps()
: <a class="el" href="H5Part_8h.html#a13">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a27">H5Part.c</a><li>H5PartGetStepAttribInfo()
: <a class="el" href="H5Part_8h.html#a30">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a19">H5Part.c</a><li>H5PartGetView()
: <a class="el" href="H5Part_8h.html#a18">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a35">H5Part.c</a><li>H5PartHasView
: <a class="el" href="H5Part_8h.html#a4">H5Part.h</a><li>H5PartIOcounter()
: <a class="el" href="H5Part_8c.html#a2">H5Part.c</a><li>H5PartNormType()
: <a class="el" href="H5Part_8c.html#a18">H5Part.c</a><li>H5PartOpenFile()
: <a class="el" href="H5Part_8h.html#a6">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a4">H5Part.c</a><li>H5PartOpenFileParallel()
: <a class="el" href="H5Part_8c.html#a3">H5Part.c</a><li>H5PartOpenFileSerial
: <a class="el" href="H5Part_8h.html#a2">H5Part.h</a><li>H5PartReadAttrib()
: <a class="el" href="H5Part_8h.html#a33">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a22">H5Part.c</a><li>H5PartReadDataFloat64()
: <a class="el" href="H5Part_8h.html#a20">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a37">H5Part.c</a><li>H5PartReadDataInt64()
: <a class="el" href="H5Part_8h.html#a21">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a38">H5Part.c</a><li>H5PartReadFileAttrib()
: <a class="el" href="H5Part_8h.html#a34">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a23">H5Part.c</a><li>H5PartReadParticleStep()
: <a class="el" href="H5Part_8h.html#a22">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a39">H5Part.c</a><li>H5PartReadStepAttrib()
: <a class="el" href="H5Part_8h.html#a32">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a21">H5Part.c</a><li>H5PartResetView
: <a class="el" href="H5Part_8h.html#a3">H5Part.h</a><li>H5PartSetCanonicalView()
: <a class="el" href="H5Part_8h.html#a19">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a36">H5Part.c</a><li>H5PartSetNumParticles()
: <a class="el" href="H5Part_8h.html#a9">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a7">H5Part.c</a><li>H5PartSetStep()
: <a class="el" href="H5Part_8h.html#a12">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a24">H5Part.c</a><li>H5PartSetView()
: <a class="el" href="H5Part_8h.html#a17">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a34">H5Part.c</a><li>H5PartStashFile()
: <a class="el" href="H5Part_8h.html#a35">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a42">H5Part.c</a><li>H5PartUnstashFile()
: <a class="el" href="H5Part_8h.html#a36">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a43">H5Part.c</a><li>H5PartWriteAttrib()
: <a class="el" href="H5Part_8h.html#a25">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a13">H5Part.c</a><li>H5PartWriteDataFloat64()
: <a class="el" href="H5Part_8h.html#a10">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a8">H5Part.c</a><li>H5PartWriteDataInt64()
: <a class="el" href="H5Part_8h.html#a11">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a9">H5Part.c</a><li>H5PartWriteFileAttrib()
: <a class="el" href="H5Part_8h.html#a24">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a14">H5Part.c</a><li>H5PartWriteFileAttribString()
: <a class="el" href="H5Part_8h.html#a26">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a10">H5Part.c</a><li>H5PartWriteStepAttrib()
: <a class="el" href="H5Part_8h.html#a23">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a12">H5Part.c</a><li>H5PartWriteStepAttribString()
: <a class="el" href="H5Part_8h.html#a27">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a11">H5Part.c</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
-59
View File
@@ -1,59 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: Class Members</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindexHL" href="globals_defs.html">Defines</a></div>
<div class="qindex"><a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_h">h</a></div>
<p>
<p>
<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
<li>f_h5pt_close
: <a class="el" href="H5PartF_8c.html#a34">H5PartF.c</a><li>f_h5pt_getdatasetname
: <a class="el" href="H5PartF_8c.html#a43">H5PartF.c</a><li>f_h5pt_getfileattribinfo
: <a class="el" href="H5PartF_8c.html#a60">H5PartF.c</a><li>f_h5pt_getndatasets
: <a class="el" href="H5PartF_8c.html#a41">H5PartF.c</a><li>f_h5pt_getnfileattribs
: <a class="el" href="H5PartF_8c.html#a58">H5PartF.c</a><li>f_h5pt_getnpoints
: <a class="el" href="H5PartF_8c.html#a42">H5PartF.c</a><li>f_h5pt_getnstepattribs
: <a class="el" href="H5PartF_8c.html#a57">H5PartF.c</a><li>f_h5pt_getnsteps
: <a class="el" href="H5PartF_8c.html#a40">H5PartF.c</a><li>f_h5pt_getstepattribinfo
: <a class="el" href="H5PartF_8c.html#a59">H5PartF.c</a><li>f_h5pt_hasview
: <a class="el" href="H5PartF_8c.html#a47">H5PartF.c</a><li>f_h5pt_isvalid
: <a class="el" href="H5PartF_8c.html#a35">H5PartF.c</a><li>f_h5pt_openr
: <a class="el" href="H5PartF_8c.html#a32">H5PartF.c</a><li>f_h5pt_openr_par
: <a class="el" href="H5PartF_8c.html#a2">H5PartF.c</a><li>f_h5pt_openw
: <a class="el" href="H5PartF_8c.html#a33">H5PartF.c</a><li>f_h5pt_openw_par
: <a class="el" href="H5PartF_8c.html#a3">H5PartF.c</a><li>f_h5pt_readdata
: <a class="el" href="H5PartF_8c.html#a19">H5PartF.c</a><li>f_h5pt_readdata_i8
: <a class="el" href="H5PartF_8c.html#a50">H5PartF.c</a><li>f_h5pt_readdata_r8
: <a class="el" href="H5PartF_8c.html#a49">H5PartF.c</a><li>f_h5pt_readfileattrib
: <a class="el" href="H5PartF_8c.html#a62">H5PartF.c</a><li>f_h5pt_readstepattrib
: <a class="el" href="H5PartF_8c.html#a61">H5PartF.c</a><li>f_h5pt_resetview
: <a class="el" href="H5PartF_8c.html#a46">H5PartF.c</a><li>f_h5pt_setnpoints
: <a class="el" href="H5PartF_8c.html#a36">H5PartF.c</a><li>f_h5pt_setstep
: <a class="el" href="H5PartF_8c.html#a37">H5PartF.c</a><li>f_h5pt_setview
: <a class="el" href="H5PartF_8c.html#a45">H5PartF.c</a><li>f_h5pt_writedata_i8
: <a class="el" href="H5PartF_8c.html#a39">H5PartF.c</a><li>f_h5pt_writedata_r8
: <a class="el" href="H5PartF_8c.html#a38">H5PartF.c</a><li>f_h5pt_writefileattrib_i8
: <a class="el" href="H5PartF_8c.html#a52">H5PartF.c</a><li>f_h5pt_writefileattrib_r8
: <a class="el" href="H5PartF_8c.html#a51">H5PartF.c</a><li>f_h5pt_writefileattrib_string
: <a class="el" href="H5PartF_8c.html#a53">H5PartF.c</a><li>f_h5pt_writestepattrib_i8
: <a class="el" href="H5PartF_8c.html#a55">H5PartF.c</a><li>f_h5pt_writestepattrib_r8
: <a class="el" href="H5PartF_8c.html#a54">H5PartF.c</a><li>f_h5pt_writestepattrib_string
: <a class="el" href="H5PartF_8c.html#a56">H5PartF.c</a></ul>
<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
<li>H5PART_READ
: <a class="el" href="H5Part_8h.html#a0">H5Part.h</a><li>H5PART_WRITE
: <a class="el" href="H5Part_8h.html#a1">H5Part.h</a><li>H5PartHasView
: <a class="el" href="H5Part_8h.html#a4">H5Part.h</a><li>H5PartOpenFileSerial
: <a class="el" href="H5Part_8h.html#a2">H5Part.h</a><li>H5PartResetView
: <a class="el" href="H5Part_8h.html#a3">H5Part.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
-97
View File
@@ -1,97 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: Class Members</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindexHL" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
<div class="qindex"><a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_h">h</a></div>
<p>
<p>
<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
<li>f_h5pt_close()
: <a class="el" href="H5PartF_8c.html#a34">H5PartF.c</a><li>f_h5pt_getdatasetname()
: <a class="el" href="H5PartF_8c.html#a43">H5PartF.c</a><li>f_h5pt_getfileattribinfo()
: <a class="el" href="H5PartF_8c.html#a60">H5PartF.c</a><li>f_h5pt_getndatasets()
: <a class="el" href="H5PartF_8c.html#a41">H5PartF.c</a><li>f_h5pt_getnfileattribs()
: <a class="el" href="H5PartF_8c.html#a58">H5PartF.c</a><li>f_h5pt_getnpoints()
: <a class="el" href="H5PartF_8c.html#a42">H5PartF.c</a><li>f_h5pt_getnstepattribs()
: <a class="el" href="H5PartF_8c.html#a57">H5PartF.c</a><li>f_h5pt_getnsteps()
: <a class="el" href="H5PartF_8c.html#a40">H5PartF.c</a><li>f_h5pt_getnumpoints()
: <a class="el" href="H5PartF_8c.html#a44">H5PartF.c</a><li>f_h5pt_getstepattribinfo()
: <a class="el" href="H5PartF_8c.html#a59">H5PartF.c</a><li>f_h5pt_getview()
: <a class="el" href="H5PartF_8c.html#a48">H5PartF.c</a><li>f_h5pt_hasview()
: <a class="el" href="H5PartF_8c.html#a47">H5PartF.c</a><li>f_h5pt_isvalid()
: <a class="el" href="H5PartF_8c.html#a35">H5PartF.c</a><li>f_h5pt_openr()
: <a class="el" href="H5PartF_8c.html#a32">H5PartF.c</a><li>f_h5pt_openw()
: <a class="el" href="H5PartF_8c.html#a33">H5PartF.c</a><li>f_h5pt_readdata_i8()
: <a class="el" href="H5PartF_8c.html#a50">H5PartF.c</a><li>f_h5pt_readdata_r8()
: <a class="el" href="H5PartF_8c.html#a49">H5PartF.c</a><li>f_h5pt_readfileattrib()
: <a class="el" href="H5PartF_8c.html#a62">H5PartF.c</a><li>f_h5pt_readstepattrib()
: <a class="el" href="H5PartF_8c.html#a61">H5PartF.c</a><li>f_h5pt_resetview()
: <a class="el" href="H5PartF_8c.html#a46">H5PartF.c</a><li>f_h5pt_setnpoints()
: <a class="el" href="H5PartF_8c.html#a36">H5PartF.c</a><li>f_h5pt_setstep()
: <a class="el" href="H5PartF_8c.html#a37">H5PartF.c</a><li>f_h5pt_setview()
: <a class="el" href="H5PartF_8c.html#a45">H5PartF.c</a><li>f_h5pt_writedata_i8()
: <a class="el" href="H5PartF_8c.html#a39">H5PartF.c</a><li>f_h5pt_writedata_r8()
: <a class="el" href="H5PartF_8c.html#a38">H5PartF.c</a><li>f_h5pt_writefileattrib_i8()
: <a class="el" href="H5PartF_8c.html#a52">H5PartF.c</a><li>f_h5pt_writefileattrib_r8()
: <a class="el" href="H5PartF_8c.html#a51">H5PartF.c</a><li>f_h5pt_writefileattrib_string()
: <a class="el" href="H5PartF_8c.html#a53">H5PartF.c</a><li>f_h5pt_writestepattrib_i8()
: <a class="el" href="H5PartF_8c.html#a55">H5PartF.c</a><li>f_h5pt_writestepattrib_r8()
: <a class="el" href="H5PartF_8c.html#a54">H5PartF.c</a><li>f_h5pt_writestepattrib_string()
: <a class="el" href="H5PartF_8c.html#a56">H5PartF.c</a></ul>
<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
<li>H5IOgetname()
: <a class="el" href="H5Part_8c.html#a26">H5Part.c</a><li>H5NameExists()
: <a class="el" href="H5Part_8c.html#a40">H5Part.c</a><li>H5PartAttribcounter()
: <a class="el" href="H5Part_8c.html#a15">H5Part.c</a><li>H5PartCloseFile()
: <a class="el" href="H5Part_8h.html#a8">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a6">H5Part.c</a><li>H5PartDScounter()
: <a class="el" href="H5Part_8c.html#a25">H5Part.c</a><li>H5PartFileGetStashFileName()
: <a class="el" href="H5Part_8h.html#a38">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a45">H5Part.c</a><li>H5PartFileHasName()
: <a class="el" href="H5Part_8c.html#a41">H5Part.c</a><li>H5PartFileIsValid()
: <a class="el" href="H5Part_8h.html#a7">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a5">H5Part.c</a><li>H5PartGetDatasetName()
: <a class="el" href="H5Part_8h.html#a15">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a29">H5Part.c</a><li>H5PartGetDiskShape()
: <a class="el" href="H5Part_8c.html#a30">H5Part.c</a><li>H5PartGetFileAttribInfo()
: <a class="el" href="H5Part_8h.html#a31">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a20">H5Part.c</a><li>H5PartGetFirstDS()
: <a class="el" href="H5Part_8c.html#a32">H5Part.c</a><li>H5PartGetMemShape()
: <a class="el" href="H5Part_8c.html#a31">H5Part.c</a><li>H5PartGetNumDatasets()
: <a class="el" href="H5Part_8h.html#a14">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a28">H5Part.c</a><li>H5PartGetNumFileAttribs()
: <a class="el" href="H5Part_8h.html#a29">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a17">H5Part.c</a><li>H5PartGetNumParticles()
: <a class="el" href="H5Part_8h.html#a16">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a33">H5Part.c</a><li>H5PartGetNumStashFiles()
: <a class="el" href="H5Part_8h.html#a37">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a44">H5Part.c</a><li>H5PartGetNumStepAttribs()
: <a class="el" href="H5Part_8h.html#a28">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a16">H5Part.c</a><li>H5PartGetNumSteps()
: <a class="el" href="H5Part_8h.html#a13">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a27">H5Part.c</a><li>H5PartGetStepAttribInfo()
: <a class="el" href="H5Part_8h.html#a30">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a19">H5Part.c</a><li>H5PartGetView()
: <a class="el" href="H5Part_8h.html#a18">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a35">H5Part.c</a><li>H5PartIOcounter()
: <a class="el" href="H5Part_8c.html#a2">H5Part.c</a><li>H5PartNormType()
: <a class="el" href="H5Part_8c.html#a18">H5Part.c</a><li>H5PartOpenFile()
: <a class="el" href="H5Part_8h.html#a6">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a4">H5Part.c</a><li>H5PartOpenFileParallel()
: <a class="el" href="H5Part_8c.html#a3">H5Part.c</a><li>H5PartReadAttrib()
: <a class="el" href="H5Part_8h.html#a33">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a22">H5Part.c</a><li>H5PartReadDataFloat64()
: <a class="el" href="H5Part_8h.html#a20">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a37">H5Part.c</a><li>H5PartReadDataInt64()
: <a class="el" href="H5Part_8h.html#a21">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a38">H5Part.c</a><li>H5PartReadFileAttrib()
: <a class="el" href="H5Part_8h.html#a34">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a23">H5Part.c</a><li>H5PartReadParticleStep()
: <a class="el" href="H5Part_8h.html#a22">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a39">H5Part.c</a><li>H5PartReadStepAttrib()
: <a class="el" href="H5Part_8h.html#a32">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a21">H5Part.c</a><li>H5PartSetCanonicalView()
: <a class="el" href="H5Part_8h.html#a19">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a36">H5Part.c</a><li>H5PartSetNumParticles()
: <a class="el" href="H5Part_8h.html#a9">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a7">H5Part.c</a><li>H5PartSetStep()
: <a class="el" href="H5Part_8h.html#a12">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a24">H5Part.c</a><li>H5PartSetView()
: <a class="el" href="H5Part_8h.html#a17">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a34">H5Part.c</a><li>H5PartStashFile()
: <a class="el" href="H5Part_8h.html#a35">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a42">H5Part.c</a><li>H5PartUnstashFile()
: <a class="el" href="H5Part_8h.html#a36">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a43">H5Part.c</a><li>H5PartWriteAttrib()
: <a class="el" href="H5Part_8h.html#a25">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a13">H5Part.c</a><li>H5PartWriteDataFloat64()
: <a class="el" href="H5Part_8h.html#a10">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a8">H5Part.c</a><li>H5PartWriteDataInt64()
: <a class="el" href="H5Part_8h.html#a11">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a9">H5Part.c</a><li>H5PartWriteFileAttrib()
: <a class="el" href="H5Part_8h.html#a24">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a14">H5Part.c</a><li>H5PartWriteFileAttribString()
: <a class="el" href="H5Part_8h.html#a26">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a10">H5Part.c</a><li>H5PartWriteStepAttrib()
: <a class="el" href="H5Part_8h.html#a23">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a12">H5Part.c</a><li>H5PartWriteStepAttribString()
: <a class="el" href="H5Part_8h.html#a27">H5Part.h</a>, <a class="el" href="H5Part_8c.html#a11">H5Part.c</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
-19
View File
@@ -1,19 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>H5Part: Class Members</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindexHL" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
<p>
<ul>
<li>H5IO_getname_t
: <a class="el" href="H5Part_8c.html#a1">H5Part.c</a><li>H5PartFile
: <a class="el" href="H5Part_8h.html#a5">H5Part.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 31 11:52:45 2006 for H5Part by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More