[cig-commits] [commit] master: Fix blank/cleared classes (828fe71)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Tue Dec 2 13:56:21 PST 2014
Repository : https://github.com/geodynamics/vq
On branch : master
Link : https://github.com/geodynamics/vq/compare/06902a05cf4d70bc94c85d1c195c073d4e74cdad...c935dfd33f870a081b6c01cce97a060ad1cbdbda
>---------------------------------------------------------------
commit 828fe71d4074d907d6a25c9a49827ddc61969ea9
Author: Eric Heien <emheien at ucdavis.edu>
Date: Thu Nov 27 00:25:29 2014 -0800
Fix blank/cleared classes
>---------------------------------------------------------------
828fe71d4074d907d6a25c9a49827ddc61969ea9
quakelib/src/QuakeLib.h | 21 ++++++++-------------
quakelib/src/QuakeLibIO.cpp | 19 ++++++++++++++++---
quakelib/src/QuakeLibIO.h | 19 +++++++++----------
quakelib/src/QuakeLibUtil.h | 2 +-
4 files changed, 34 insertions(+), 27 deletions(-)
diff --git a/quakelib/src/QuakeLib.h b/quakelib/src/QuakeLib.h
index e74b072..a0ba978 100644
--- a/quakelib/src/QuakeLib.h
+++ b/quakelib/src/QuakeLib.h
@@ -74,13 +74,7 @@ namespace quakelib {
public:
SimElement(void) {
- _vert[0] = Vec<3>::nan_vec();
- _vert[1] = Vec<3>::nan_vec();
- _vert[2] = Vec<3>::nan_vec();
- _is_quad = false;
- _rake = _slip_rate = _aseis_factor = nan("");
- _lame_mu = _lame_lambda = nan("");
- _static_strength = _dynamic_strength = _max_slip = nan("");
+ clear();
}
//! Calculate the stress tensor at a location with Lame parameters lambda and mu
//! caused by this element moving unit_slip meters.
@@ -194,12 +188,13 @@ namespace quakelib {
//! Clear all variables for this element.
void clear(void) {
- for (unsigned int i=0; i<3; ++i) {
- _vert[i] = Vec<3>();
- }
-
- _rake = _slip_rate = _aseis_factor = _lame_mu = _lame_lambda = nan("");
- _static_strength = _dynamic_strength = _max_slip = nan("");
+ _vert[0] = Vec<3>::nan_vec();
+ _vert[1] = Vec<3>::nan_vec();
+ _vert[2] = Vec<3>::nan_vec();
+ _is_quad = false;
+ _rake = _slip_rate = _aseis_factor = std::numeric_limits<double>::quiet_NaN();
+ _lame_mu = _lame_lambda = std::numeric_limits<double>::quiet_NaN();
+ _static_strength = _dynamic_strength = _max_slip = std::numeric_limits<double>::quiet_NaN();
};
//! Returns a unit vector along the direction of fault dip.
diff --git a/quakelib/src/QuakeLibIO.cpp b/quakelib/src/QuakeLibIO.cpp
index 88d2b84..a1c5787 100644
--- a/quakelib/src/QuakeLibIO.cpp
+++ b/quakelib/src/QuakeLibIO.cpp
@@ -1422,7 +1422,6 @@ void quakelib::ModelWorld::write_vertex_hdf5(const hid_t &data_file) const {
field_sizes[i] = descs[i].size;
}
- // TODO: factor this out?
blank_vertex = ModelVertex().data();
// Fill in the data for the vertices
@@ -2480,6 +2479,12 @@ void quakelib::ModelSweeps::setup_sweeps_hdf5(const hid_t &data_file) {
field_sizes[i] = descs[i].size;
}
+ blank_sweep._event_number = blank_sweep._sweep_number = UNDEFINED_EVENT_ID;
+ blank_sweep._element_id = UNDEFINED_ELEMENT_ID;
+ blank_sweep._slip = blank_sweep._area = blank_sweep._mu = std::numeric_limits<float>::quiet_NaN();
+ blank_sweep._shear_init = blank_sweep._shear_final = std::numeric_limits<float>::quiet_NaN();
+ blank_sweep._normal_init = blank_sweep._normal_final = std::numeric_limits<float>::quiet_NaN();
+
// Create the sweep table
res = H5TBmake_table("Sweeps Table",
data_file,
@@ -2716,6 +2721,14 @@ void quakelib::ModelEvent::setup_event_hdf5(const hid_t &data_file) {
field_sizes[i] = descs[i].size;
}
+ blank_event._event_number = UNDEFINED_EVENT_ID;
+ blank_event._event_year = std::numeric_limits<float>::quiet_NaN();
+ blank_event._event_magnitude = std::numeric_limits<float>::quiet_NaN();
+ blank_event._event_trigger = UNDEFINED_ELEMENT_ID;
+ blank_event._shear_stress_init = blank_event._shear_stress_final = std::numeric_limits<float>::quiet_NaN();
+ blank_event._normal_stress_init = blank_event._normal_stress_final = std::numeric_limits<float>::quiet_NaN();
+ blank_event._start_sweep_rec = blank_event._end_sweep_rec = UNDEFINED_EVENT_ID;
+
// Create the event table
res = H5TBmake_table("Event Table",
data_file,
@@ -2885,7 +2898,7 @@ void quakelib::ModelStress::setup_stress_hdf5(const hid_t &data_file) {
}
blank_data._element_id = UNDEFINED_ELEMENT_ID;
- blank_data._shear_stress = blank_data._normal_stress = nan("");
+ blank_data._shear_stress = blank_data._normal_stress = std::numeric_limits<float>::quiet_NaN();
// Create the sweep table
res = H5TBmake_table("Stress Table",
@@ -3074,7 +3087,7 @@ void quakelib::ModelStressState::setup_stress_state_hdf5(const hid_t &data_file)
field_sizes[i] = descs[i].size;
}
- blank_data._year = nan("");
+ blank_data._year = std::numeric_limits<float>::quiet_NaN();
blank_data._event_num = UNDEFINED_EVENT_ID;
blank_data._sweep_num = UNDEFINED_EVENT_ID;
blank_data._end_rec = UNDEFINED_ELEMENT_ID;
diff --git a/quakelib/src/QuakeLibIO.h b/quakelib/src/QuakeLibIO.h
index 22f9cd7..f3860d6 100644
--- a/quakelib/src/QuakeLibIO.h
+++ b/quakelib/src/QuakeLibIO.h
@@ -770,14 +770,7 @@ namespace quakelib {
public:
ModelEvent(void) {
- _event_trigger_on_this_node = false;
-
- _data._event_number = UNDEFINED_EVENT_ID;
- _data._event_year = _data._event_magnitude = nan("");
- _data._event_trigger = UNDEFINED_EVENT_ID;
- _data._shear_stress_init = _data._shear_stress_final = nan("");
- _data._normal_stress_init = _data._normal_stress_final = nan("");
- _data._start_sweep_rec = _data._end_sweep_rec = UNDEFINED_EVENT_ID;
+ clear();
}
typedef EventElementMap::iterator iterator;
typedef EventElementMap::const_iterator const_iterator;
@@ -939,9 +932,15 @@ namespace quakelib {
}
void clear(void) {
+ _event_trigger_on_this_node = false;
+
_data._event_number = UNDEFINED_EVENT_ID;
- _data._event_year = nan("");
+ _data._event_year = _data._event_magnitude = std::numeric_limits<double>::quiet_NaN();
_data._event_trigger = UNDEFINED_ELEMENT_ID;
+ _data._shear_stress_init = _data._shear_stress_final = std::numeric_limits<double>::quiet_NaN();
+ _data._normal_stress_init = _data._normal_stress_final = std::numeric_limits<double>::quiet_NaN();
+ _data._start_sweep_rec = _data._end_sweep_rec = UNDEFINED_EVENT_ID;
+
_sweeps.clear();
_total_slip.clear();
}
@@ -1083,7 +1082,7 @@ namespace quakelib {
void clear(void) {
_stress.clear();
- _times._year = nan("");
+ _times._year = std::numeric_limits<float>::quiet_NaN();
_times._event_num = UNDEFINED_EVENT_ID;
_times._sweep_num = UNDEFINED_EVENT_ID;
_times._start_rec = UNDEFINED_EVENT_ID;
diff --git a/quakelib/src/QuakeLibUtil.h b/quakelib/src/QuakeLibUtil.h
index 5ab2e2b..2a02978 100644
--- a/quakelib/src/QuakeLibUtil.h
+++ b/quakelib/src/QuakeLibUtil.h
@@ -132,7 +132,7 @@ namespace quakelib {
static Vec<dim> nan_vec(void) {
Vec<dim> new_vec;
- for (unsigned int i=0; i<dim; ++i) new_vec[i] = nan("");
+ for (unsigned int i=0; i<dim; ++i) new_vec[i] = std::numeric_limits<double>::quiet_NaN();
return new_vec;
};
More information about the CIG-COMMITS
mailing list