[cig-commits] [commit] master: Move header output into QuakeLib (faef150)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Wed Oct 8 17:05:53 PDT 2014
Repository : https://github.com/geodynamics/vc
On branch : master
Link : https://github.com/geodynamics/vc/compare/23464fca3efa2b6ad7ee0ce8f60c225b18b49741...e4325192ad1118379f46ba66899cb98143d09e04
>---------------------------------------------------------------
commit faef150f815ac39ae539a73f1dfcef64bff6bbc0
Author: Eric Heien <emheien at ucdavis.edu>
Date: Thu Sep 25 13:15:32 2014 -0700
Move header output into QuakeLib
>---------------------------------------------------------------
faef150f815ac39ae539a73f1dfcef64bff6bbc0
quakelib/src/QuakeLibIO.cpp | 55 ++++++++++++++++++++++++++++++++++++++-------
quakelib/src/QuakeLibIO.h | 4 +++-
src/io/EventOutput.cpp | 28 ++---------------------
src/io/EventOutput.h | 2 --
4 files changed, 52 insertions(+), 37 deletions(-)
diff --git a/quakelib/src/QuakeLibIO.cpp b/quakelib/src/QuakeLibIO.cpp
index bcf9f38..765be10 100644
--- a/quakelib/src/QuakeLibIO.cpp
+++ b/quakelib/src/QuakeLibIO.cpp
@@ -2374,6 +2374,26 @@ void quakelib::ModelSweeps::get_field_descs(std::vector<quakelib::FieldDesc> &de
descs.push_back(field_desc);
}
+void quakelib::ModelSweeps::write_ascii_header(std::ostream &out_stream) {
+ std::vector<FieldDesc> descs;
+ std::vector<FieldDesc>::const_iterator dit;
+
+ // Write section header
+ ModelSweeps::get_field_descs(descs);
+
+ for (dit=descs.begin(); dit!=descs.end(); ++dit) {
+ out_stream << "# " << dit->name << ": " << dit->details << "\n";
+ }
+
+ out_stream << "# ";
+
+ for (dit=descs.begin(); dit!=descs.end(); ++dit) {
+ out_stream << dit->name << " ";
+ }
+
+ out_stream << "\n";
+}
+
#define EVENT_TABLE_HDF5 "event_table"
#define SWEEP_TABLE_HDF5 "event_sweep_table"
@@ -2501,7 +2521,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
FieldDesc field_desc;
field_desc.name = "event_number";
- field_desc.details = "Event number";
+ field_desc.details = "Event number.";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _event_number);
field_desc.type = H5T_NATIVE_UINT;
@@ -2510,7 +2530,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
field_desc.name = "event_year";
- field_desc.details = "Event year";
+ field_desc.details = "Event year.";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _event_year);
field_desc.type = H5T_NATIVE_DOUBLE;
@@ -2519,7 +2539,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
field_desc.name = "event_trigger";
- field_desc.details = "Event trigger element ID";
+ field_desc.details = "Event trigger element ID.";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _event_trigger);
field_desc.type = H5T_NATIVE_UINT;
@@ -2528,7 +2548,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
field_desc.name = "event_magnitude";
- field_desc.details = "Event magnitude";
+ field_desc.details = "Event magnitude.";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _event_magnitude);
field_desc.type = H5T_NATIVE_DOUBLE;
@@ -2537,7 +2557,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
field_desc.name = "event_shear_init";
- field_desc.details = "Total initial shear stress of elements involved in event (Pascals)";
+ field_desc.details = "Total initial shear stress of elements involved in event (Pascals).";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _shear_stress_init);
field_desc.type = H5T_NATIVE_DOUBLE;
@@ -2546,7 +2566,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
field_desc.name = "event_shear_final";
- field_desc.details = "Total final shear stress of elements involved in event (Pascals)";
+ field_desc.details = "Total final shear stress of elements involved in event (Pascals).";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _shear_stress_final);
field_desc.type = H5T_NATIVE_DOUBLE;
@@ -2555,7 +2575,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
field_desc.name = "event_normal_init";
- field_desc.details = "Total initial normal stress of elements involved in event (Pascals)";
+ field_desc.details = "Total initial normal stress of elements involved in event (Pascals).";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _normal_stress_init);
field_desc.type = H5T_NATIVE_DOUBLE;
@@ -2564,7 +2584,7 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
field_desc.name = "event_normal_final";
- field_desc.details = "Total final normal stress of elements involved in event (Pascals)";
+ field_desc.details = "Total final normal stress of elements involved in event (Pascals).";
#ifdef HDF5_FOUND
field_desc.offset = HOFFSET(EventData, _normal_stress_final);
field_desc.type = H5T_NATIVE_DOUBLE;
@@ -2591,6 +2611,25 @@ void quakelib::ModelEvent::get_field_descs(std::vector<FieldDesc> &descs) {
descs.push_back(field_desc);
}
+void quakelib::ModelEvent::write_ascii_header(std::ostream &out_stream) {
+ std::vector<FieldDesc> descs;
+ std::vector<FieldDesc>::const_iterator dit;
+
+ // Write section header
+ ModelEvent::get_field_descs(descs);
+
+ for (dit=descs.begin(); dit!=descs.end(); ++dit) {
+ out_stream << "# " << dit->name << ": " << dit->details << "\n";
+ }
+
+ out_stream << "# ";
+
+ for (dit=descs.begin(); dit!=descs.end(); ++dit) {
+ out_stream << dit->name << " ";
+ }
+
+ out_stream << "\n";
+}
void quakelib::ModelEvent::setup_event_hdf5(const hid_t &data_file) {
std::vector<FieldDesc> descs;
diff --git a/quakelib/src/QuakeLibIO.h b/quakelib/src/QuakeLibIO.h
index c1e32c5..039a57d 100644
--- a/quakelib/src/QuakeLibIO.h
+++ b/quakelib/src/QuakeLibIO.h
@@ -693,9 +693,10 @@ namespace quakelib {
return _sweeps.size();
};
+ static void get_field_descs(std::vector<FieldDesc> &descs);
+ static void write_ascii_header(std::ostream &out_stream);
static void setup_sweeps_hdf5(const hid_t &data_file);
void append_sweeps_hdf5(const hid_t &data_file) const;
- static void get_field_descs(std::vector<FieldDesc> &descs);
void read_data(const SweepData &in_data);
void write_data(SweepData &out_data) const;
@@ -914,6 +915,7 @@ namespace quakelib {
};*/
static void get_field_descs(std::vector<FieldDesc> &descs);
+ static void write_ascii_header(std::ostream &out_stream);
static void setup_event_hdf5(const hid_t &data_file);
void append_event_hdf5(const hid_t &data_file) const;
diff --git a/src/io/EventOutput.cpp b/src/io/EventOutput.cpp
index 336836d..07d11f8 100644
--- a/src/io/EventOutput.cpp
+++ b/src/io/EventOutput.cpp
@@ -40,30 +40,6 @@ void EventOutput::initDesc(const SimFramework *_sim) const {
sim->console() << "# Writing events in format " << sim->getEventOutfileType() << " to file " << sim->getEventOutfile() << std::endl;
}
-void EventOutput::writeEventFileHeader(void) {
- event_outfile << "# Event number" << "\n";
- event_outfile << "# Event year" << "\n";
- event_outfile << "# Event trigger element ID" << "\n";
- event_outfile << "# Event magnitude" << "\n";
- event_outfile << "# Total initial shear stress of elements involved in event (Pascals)" << "\n";
- event_outfile << "# Total final shear stress of elements involved in event (Pascals)" << "\n";
- event_outfile << "# Total initial normal stress of elements involved in event (Pascals)" << "\n";
- event_outfile << "# Total final normal stress of elements involved in event (Pascals)" << "\n";
-}
-
-void EventOutput::writeSweepFileHeader(void) {
- sweep_outfile << "# Event number corresponding to this sweep" << "\n";
- sweep_outfile << "# Sweep number" << "\n";
- sweep_outfile << "# Element ID" << "\n";
- sweep_outfile << "# Slip on element in this sweep (meters)" << "\n";
- sweep_outfile << "# Area of element (square meters)" << "\n";
- sweep_outfile << "# Element Lame mu parameter (Pascals)" << "\n";
- sweep_outfile << "# Shear stress of element before sweep (Pascals)" << "\n";
- sweep_outfile << "# Shear stress of element after sweep (Pascals)" << "\n";
- sweep_outfile << "# Normal stress of element before sweep (Pascals)" << "\n";
- sweep_outfile << "# Normal stress of element after sweep (Pascals)" << "\n";
-}
-
void EventOutput::init(SimFramework *_sim) {
VCSimulation *sim = static_cast<VCSimulation *>(_sim);
BlockList::const_iterator it;
@@ -93,8 +69,8 @@ void EventOutput::init(SimFramework *_sim) {
exit(-1);
}
- writeEventFileHeader();
- writeSweepFileHeader();
+ quakelib::ModelEvent::write_ascii_header(event_outfile);
+ quakelib::ModelSweeps::write_ascii_header(sweep_outfile);
} else {
std::cerr << "ERROR: Unknown output file type " << sim->getEventOutfileType() << std::endl;
exit(-1);
diff --git a/src/io/EventOutput.h b/src/io/EventOutput.h
index 0080010..f633690 100644
--- a/src/io/EventOutput.h
+++ b/src/io/EventOutput.h
@@ -45,8 +45,6 @@ class EventOutput : public SimPlugin {
std::ofstream event_outfile, sweep_outfile;
bool pauseFileExists(void);
- void writeEventFileHeader(void);
- void writeSweepFileHeader(void);
public:
virtual std::string name(void) const {
More information about the CIG-COMMITS
mailing list