moab-dev
Threads by month
- ----- 2026 -----
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
March 2014
- 17 participants
- 82 discussions
31 Mar '14
1 new commit in MOAB:
https://bitbucket.org/fathomteam/moab/commits/8e78aa3cec40/
Changeset: 8e78aa3cec40
Branch: ncwriter
User: iulian07
Date: 2014-03-31 07:14:25
Summary: wrap up ncwriter prototype
still left to do: transpose data for levels
the file written by the test does not have any attributes
they could be retrieved, though
also, need to use gather set for parallel
this test covers just CAM euler data
need to work more on unstructured mesh
Affected #: 2 files
diff --git a/src/io/WriteNC.cpp b/src/io/WriteNC.cpp
index 05fcc3f..0342da5 100644
--- a/src/io/WriteNC.cpp
+++ b/src/io/WriteNC.cpp
@@ -101,31 +101,19 @@ ErrorCode WriteNC::write_file(const char *file_name,
success = NCFUNC(create)(file_name, overwrite ? NC_CLOBBER : NC_NOCLOBBER, &fileId);
#endif
ERRORS(success, "failed to create file");
-
- /* int nc_def_dim (int ncid, const char *name, size_t len, int *dimidp);
- * example: status = nc_def_dim(fileId, "lat", 18L, &latid);
- * */
-
- /*
- * int nc_def_var (int ncid, const char *name, nc_type xtype,
- int ndims, const int dimids[], int *varidp);
- example: http://www.unidata.ucar.edu/software/netcdf/docs/netcdf-c/nc_005fdef_005fva…
- */
-
- /*
- * Write an Entire Variable: nc_put_var_ type (double, int)
- * int nc_put_var_double(int ncid, int varid, const double *dp);
- */
- /*
- * Write an Array of Values: nc_put_vara_ type
- * int nc_put_vara_double(int ncid, int varid, const size_t start[],
- const size_t count[], const double *dp);
- */
-
//
rval = collect_variable_data(var_names, tstep_nums, tstep_vals, *file_set);
ERRORR(rval, "Trouble collecting data.");
+ rval = initialize_file(var_names);
+ ERRORR(rval, "failed to initialize file.");
+
+ rval = write_values( var_names, *file_set);
+ ERRORR(rval, "failed to write values ");
+
+ success = NCFUNC(close)(fileId);
+ ERRORS(success, "failed to close file");
+
return MB_SUCCESS;
}
@@ -390,6 +378,7 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
if (vit==dimNames.end())
ERRORR(MB_FAILURE, "dimension not found\n");
variableDataStruct.varDims[j]= (int)(vit-dimNames.begin()) ; // will be used for writing
+ // this will have to change to actual file dimension, for writing
// do we have a variable for each dimension? I mean, a tag?
//dims[j] = &(get_dim(dim_name));
@@ -541,7 +530,7 @@ ErrorCode WriteNC::collect_variable_data( std::vector<std::string>& var_names, s
// probably will have to look at tstep_vals to match them
sizeVar *= dimLens[j];
usedCoordinates.insert(dimName); // collect those used, we will need to write them to the file
- dbgOut.tprintf(2, " for variable %s need dimension %s with length %d\n", varname.c_str(), dimName.c_str(), dimLens[j] );
+ dbgOut.tprintf(2, " for variable %s need dimension %s with length %d\n", varname.c_str(), dimName.c_str(), dimLens[ currentVarData.varDims[j] ] );
}
currentVarData.sz=sizeVar;
@@ -562,6 +551,15 @@ ErrorCode WriteNC::collect_variable_data( std::vector<std::string>& var_names, s
currentVarData.varTags.push_back(indexedTag);
index++; // we should get out of the loop at some point
// we will have to collect data for these tags; maybe even allocate memory again
+
+ // the type of the tag is fixed though
+ DataType type;
+ rval = mbImpl->tag_get_data_type(indexedTag, type);
+ ERRORR(rval, "can't get tag type");
+
+ currentVarData.varDataType = NC_DOUBLE;
+ if (type==MB_TYPE_INTEGER)
+ currentVarData.varDataType = NC_INT;
}
}
else
@@ -584,7 +582,7 @@ ErrorCode WriteNC::collect_variable_data( std::vector<std::string>& var_names, s
// check that for used coordinates we have found the tags
for (std::set<std::string>::iterator setIt = usedCoordinates.begin(); setIt!=usedCoordinates.end(); setIt++)
{
- std::string coordName=*setIt; // a deep copy ; is it needed?
+ std::string coordName=*setIt; // deep copy
std::map<std::string, VarData>::iterator vit = varInfo.find(coordName);
if (vit==varInfo.end())
@@ -602,6 +600,20 @@ ErrorCode WriteNC::collect_variable_data( std::vector<std::string>& var_names, s
ERRORR(rval, "can't get coordinate values");
dbgOut.tprintf(2, " found coordinate tag with name %s and length %d\n", coordName.c_str(),
sizeCoordinate);
+ // this is the length
+ varCoordData.sz = sizeCoordinate;
+ varCoordData.writeStarts.resize(1);
+ varCoordData.writeStarts[0]=0;
+ varCoordData.writeCounts.resize(1);
+ varCoordData.writeCounts[0]=sizeCoordinate;
+ // find the type of tag, and use it
+ DataType type;
+ rval = mbImpl->tag_get_data_type(coordtag, type);
+ ERRORR(rval, "can't get tag type");
+
+ varCoordData.varDataType = NC_DOUBLE;
+ if (type==MB_TYPE_INTEGER)
+ varCoordData.varDataType = NC_INT;
assert(varCoordData.memoryHogs.size()==0);// nothing so far
varCoordData.memoryHogs.push_back((void*)data);
@@ -609,4 +621,193 @@ ErrorCode WriteNC::collect_variable_data( std::vector<std::string>& var_names, s
return MB_SUCCESS;
}
+ErrorCode WriteNC::initialize_file( std::vector<std::string> & var_names)
+{
+ // first initialize all coordinates, then fill VarData for actual variables (and dimensions)
+ // check that for used coordinates we have found the tags
+ for (std::set<std::string>::iterator setIt = usedCoordinates.begin(); setIt!=usedCoordinates.end(); setIt++)
+ {
+ std::string coordName=*setIt; // deep copy
+
+ std::map<std::string, VarData>::iterator vit = varInfo.find(coordName);
+ if (vit==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find one coordinate variable");
+
+ VarData & varCoordData = vit->second;
+
+ varCoordData.varDims.resize(1);
+
+ /* int nc_def_dim (int ncid, const char *name, size_t len, int *dimidp);
+ * example: status = nc_def_dim(fileId, "lat", 18L, &latid);
+ */
+
+
+ // actually define a dimension
+ if (NCFUNC(def_dim)(fileId, coordName.c_str() , (size_t)varCoordData.sz ,
+ &varCoordData.varDims[0]) != NC_NOERR)
+ ERRORR(MB_FAILURE, "failed to generate dimension");
+
+ dbgOut.tprintf(2, " for coordName %s dim id is %d \n", coordName.c_str(), (int)varCoordData.varDims[0] );
+
+ // create a variable with the same name, and its only dimension the one we just defined
+ /*
+ * int nc_def_var (int ncid, const char *name, nc_type xtype,
+ int ndims, const int dimids[], int *varidp);
+ example: http://www.unidata.ucar.edu/software/netcdf/docs/netcdf-c/nc_005fdef_005fva…
+ */
+
+ if (NCFUNC(def_var)(fileId, coordName.c_str(), varCoordData.varDataType,
+ 1, &(varCoordData.varDims[0]), &varCoordData.varId) != NC_NOERR)
+ ERRORR(MB_FAILURE, "failed to create coordinate variable");
+
+ dbgOut.tprintf(2, " for coordName %s variable id is %d \n", coordName.c_str(), varCoordData.varId );
+
+ }
+ // now look at requested variables, and update from the index in dimNames to the actual dimension id
+
+ for (size_t i=0; i<var_names.size(); i++)
+ {
+ std::map<std::string, VarData>::iterator vit = varInfo.find(var_names[i]);
+ if (vit==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find variable requested");
+
+ VarData & variableData = vit->second;
+ int numDims = (int) variableData.varDims.size();
+ // the index is for dimNames; we need to find out the actual dimension id (from above)
+ for (int j=0; j< numDims; j++)
+ {
+ std::string dimName = dimNames[variableData.varDims[j]];
+ std::map<std::string, VarData>::iterator vit2 = varInfo.find(dimName);
+ if (vit2==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find coordinate variable requested");
+
+ VarData & coordData = vit2->second;
+ variableData.varDims[j] = coordData.varDims[0]; // this one, being a coordinate, is the only one
+ dbgOut.tprintf(2, " dimension with index %d name %s has ID %d \n",
+ j, dimName.c_str(), variableData.varDims[j]);
+
+ variableData.writeStarts.push_back(0); // assume we will write all, so start at 0 for all dimensions
+ variableData.writeCounts.push_back(coordData.sz); // again, write all; times will be one at a time
+ }
+ // define the variable now :
+ if (NCFUNC(def_var)(fileId, var_names[i].c_str(), variableData.varDataType,
+ (int)variableData.varDims.size() , &(variableData.varDims[0]),
+ &variableData.varId) != NC_NOERR)
+ ERRORR(MB_FAILURE, "failed to create coordinate variable");
+
+ dbgOut.tprintf(2, " for variable %s variable id is %d \n", var_names[i].c_str(), variableData.varId );
+ // now define the variable, with all dimensions
+ }
+
+ // take it out of define mode
+ if (NC_NOERR != NCFUNC(enddef)(fileId))
+ ERRORR(MB_FAILURE, "failed to close define mode");
+
+ return MB_SUCCESS;
+}
+ErrorCode WriteNC::write_values(std::vector<std::string> & var_names, EntityHandle fileSet)
+{
+
+ /*
+ * Write an Array of Values: nc_put_vara_ type
+ * int nc_put_vara_double(int ncid, int varid, const size_t start[],
+ const size_t count[], const double *dp);
+ */
+ // start with coordinates
+ for (std::set<std::string>::iterator setIt = usedCoordinates.begin(); setIt!=usedCoordinates.end(); setIt++)
+ {
+ std::string coordName=*setIt; // deep copy
+
+ std::map<std::string, VarData>::iterator vit = varInfo.find(coordName);
+ if (vit==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find one coordinate variable");
+
+ VarData & varCoordData = vit->second;
+
+ int success =0;
+ switch (varCoordData.varDataType) {
+ case NC_DOUBLE:
+ success = NCFUNCAP(_vara_double)(fileId, varCoordData.varId, &varCoordData.writeStarts[0],
+ &varCoordData.writeCounts[0], (double*) (varCoordData.memoryHogs[0]) );
+ ERRORS(success, "Failed to write double data.");
+ break;
+ case NC_INT:
+ success = NCFUNCAP(_vara_int)(fileId, varCoordData.varId, &varCoordData.writeStarts[0],
+ &varCoordData.writeCounts[0], (int*) (varCoordData.memoryHogs[0]) );
+ ERRORS(success, "Failed to write int data.");
+ break;
+ default:
+ success = 1;
+ break;
+ }
+
+ }
+ // now look at requested var_names; if they have time, we will have a list, and write one at a time
+ // we may also need to gather, and transpose stuff
+ Range ents2d;
+ // get all entities of dimension 2 from set; assume now location is on cells;
+ // need to reorder stuff in the order from the file, also transpose from lev dimension
+ ErrorCode rval = mbImpl->get_entities_by_dimension(fileSet, 2, ents2d);
+ ERRORR(rval, "can't get entities for 2d");
+
+ // for each variabletag in the indexed lists, write a time step data
+ // assume the first dimension is time (need to check); if not, just write regularly
+ //
+ for (size_t i=0; i<var_names.size(); i++)
+ {
+ std::map<std::string, VarData>::iterator vit = varInfo.find(var_names[i]);
+ if (vit==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find variable requested");
+
+ VarData & variableData = vit->second;
+ int numTimeSteps = (int)variableData.varTags.size();
+ if (variableData.has_tsteps)
+ {
+ variableData.writeCounts[0] = 1; // we will write one time step
+ for(int j=0; j<numTimeSteps; j++)
+ {
+ // we will write one time step, and count will be one; start will be different
+ // we will write values directly from tag_iterate, but we should also transpose for level
+ // so that means deep copy for transpose
+ // !!!!!!!!!!!!!!
+ //
+ // FIXME !!!!!!!!!!!
+ variableData.writeStarts[0] = j; // this is time, again
+ int count;
+ void * dataptr;
+ rval = mbImpl->tag_iterate(variableData.varTags[j], ents2d.begin(), ents2d.end(), count, dataptr );
+ assert(count == ents2d.size());
+
+ // now write from memory directly FIXME: we need to transpose and gather for multiple processors
+ int success = 0;
+ switch (variableData.varDataType)
+ {
+ case NC_DOUBLE:
+ success = NCFUNCAP(_vara_double)(fileId, variableData.varId,
+ &variableData.writeStarts[0], &variableData.writeCounts[0],
+ (double*) (dataptr));
+ ERRORS(success, "Failed to write double data.");
+ break;
+ case NC_INT:
+ success =NCFUNCAP(_vara_int)(fileId, variableData.varId,
+ &variableData.writeStarts[0], &variableData.writeCounts[0],
+ (int*) (dataptr));
+ ERRORS(success, "Failed to write int data.");
+ break;
+ default:
+ success = 1;
+ break;
+ }
+
+ }
+ }
+ else
+ {
+ // FIXME
+ }
+ }
+
+ return MB_SUCCESS;
+}
+
} // end moab namespace
diff --git a/src/io/WriteNC.hpp b/src/io/WriteNC.hpp
index df89af1..b027bf6 100644
--- a/src/io/WriteNC.hpp
+++ b/src/io/WriteNC.hpp
@@ -42,6 +42,9 @@
//! Collective I/O mode get
#define NCFUNCAG(func) ncmpi_get ## func ## _all
+//! Collective I/O mode put
+#define NCFUNCAP(func) ncmpi_put ## func ## _all
+
//! Independent I/O mode get
#define NCFUNCG(func) ncmpi_get ## func
@@ -54,6 +57,7 @@
#include "netcdf.h"
#define NCFUNC(func) nc_ ## func
#define NCFUNCAG(func) nc_get ## func
+#define NCFUNCAP(func) nc_put ## func
#define NCFUNCG(func) nc_get ## func
#define NCDF_SIZE size_t
#define NCDF_DIFF ptrdiff_t
@@ -163,6 +167,13 @@ private:
// for everybody
ErrorCode collect_variable_data( std::vector<std::string>& var_names, std::vector<int>& tstep_nums,
std::vector<double>& tstep_vals, EntityHandle fileSet);
+
+ // initialize file: this is where all defines are done
+ // the VarData dimension ids are filled up after define
+ ErrorCode initialize_file( std::vector<std::string> & var_names); // these are from options
+
+ // take the info from VarData and write first the coordinates, then the actual variables
+ ErrorCode write_values(std::vector<std::string> & var_names, EntityHandle fileSet);
// interface instance
Interface *mbImpl;
WriteUtilIface* mWriteIface;
Repository URL: https://bitbucket.org/fathomteam/moab/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1
0
2 new commits in MOAB:
https://bitbucket.org/fathomteam/moab/commits/9bfb3fe9c697/
Changeset: 9bfb3fe9c697
Branch: None
User: iulian07
Date: 2014-03-30 03:24:41
Summary: process attributes for each variable and global attributes
these are saved when the original file is read with nomesh, novars option
the attributes are concatenated, I saved them all as char
do we really need them
AttData is different compared to ReadNC
why save the name again?
well, not sure anybody needs them yet
Affected #: 2 files
diff --git a/src/io/WriteNC.cpp b/src/io/WriteNC.cpp
index a65548a..5af6fdf 100644
--- a/src/io/WriteNC.cpp
+++ b/src/io/WriteNC.cpp
@@ -13,6 +13,7 @@
#include <set>
#include <iostream>
+#include <sstream>
#define ERRORR(rval, str) \
if (MB_SUCCESS != rval) { mWriteIface->report_error("%s", str); return rval; }
@@ -365,6 +366,7 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
ERRORR(rval, " size of dimensions for variable");
dbgOut.tprintf(2, "var name: %s has %d dimensions \n", var_name.c_str(), sz);
+ variableDataStruct.varDims.resize(sz);
//std::vector<const pcdim*> dims(sz, NULL);
const void* ptr = NULL;
rval = mbImpl->tag_get_by_ptr(dims_tag, &fileSet, 1, &ptr);
@@ -376,123 +378,124 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
rval = mbImpl->tag_get_name(ptags[j], dim_name);
ERRORR(rval, "name of tag for dimension");
dbgOut.tprintf(2, "var name: %s has %s as dimension \n", var_name.c_str(), dim_name.c_str() );
+ std::vector<std::string>::iterator vit=std::find(dimNames.begin(), dimNames.end(), dim_name);
+ if (vit==dimNames.end())
+ ERRORR(MB_FAILURE, "dimension not found\n");
+ variableDataStruct.varDims[j]=(int)(vit-dimNames.begin()); // will be used for writing
+ // do we have a variable for each dimension? I mean, a tag?
//dims[j] = &(get_dim(dim_name));
}
- /*insert(var_name,
- *(new fvar(var_name, moab::MB_TYPE_DOUBLE, dims,
- locmap[varLoc[nthVar++]])));*/
+
+ // attributes for this variable
+ std::stringstream ssTagName;
+ ssTagName << "__" << var_name << "_ATTRIBS";
+ tag_name = ssTagName.str();
+ Tag varAttTag = 0;
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_OPAQUE, varAttTag, MB_TAG_SPARSE | MB_TAG_VARLEN);
+ ERRORR(rval, "Trouble getting __<var_name>_ATTRIBS tag.");
+ std::string varAttVal;
+ std::vector<int> varAttLen;
+ const void* varAttPtr = 0;
+ int varAttSz = 0;
+ rval = mbImpl->tag_get_by_ptr(varAttTag, &fileSet, 1, &varAttPtr, &varAttSz);
+ ERRORR(rval, "Trouble setting data for __<var_name>_ATTRIBS tag.");
+ if (MB_SUCCESS == rval)
+ dbgOut.tprintf(2, "Tag retrieved for variable %s\n", tag_name.c_str());
+
+ ssTagName << "_LEN";
+ tag_name = ssTagName.str();
+ Tag varAttLenTag = 0;
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_INTEGER, varAttLenTag, MB_TAG_ANY);
+ ERRORR(rval, "Trouble getting __<var_name>_ATTRIBS_LEN tag.");
+ int varAttLenSz=0;
+ rval = mbImpl->tag_get_length(varAttLenTag, varAttLenSz);
+ ERRORR(rval, "Trouble getting __<var_name>_ATTRIBS_LEN length.");
+ varAttLen.resize(varAttLenSz);
+
+ rval = mbImpl->tag_get_data(varAttLenTag, &fileSet, 1, &varAttLen[0]);
+ ERRORR(rval, "Trouble getting data for __<var_name>_ATTRIBS_LEN tag.");
+
+ rval = process_concatenated_attribute(varAttPtr, varAttSz, varAttLen, variableDataStruct.varAtts);
+ ERRORR(rval, " trouble processing global attributes ");
+
+ if (MB_SUCCESS == rval)
+ dbgOut.tprintf(2, "Tag metadata for variable %s\n", tag_name.c_str());
+ // end attribute
start = i + 1;
idxVar++;
}
}
// attributes
-#if 0
- std::vector<std::string> nameVec(num_vars+1);
- nameVec[0] = "GLOBAL";
- std::map<std::string, const fvar*>::iterator it = m_vars.begin();
- for (std::size_t i=1; it != m_vars.end(); ++it, ++i)
- nameVec[i] = it->first;
-
- for (std::size_t vec_counter = 0; vec_counter != nameVec.size(); ++vec_counter)
- {
- // read __<var_name>_ATTRIBS tag
- moab::Tag tag = 0;
- std::string tag_name = "__"+nameVec[vec_counter]+"_ATTRIBS";
- const void * data = NULL;
- int sz = 0;
- moab::ErrorCode rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_OPAQUE, tag, moab::MB_TAG_ANY);
- if (rval != moab::MB_SUCCESS)
- throw pargal_except("Error: " + m_mb.get_error_string(rval),
- __FILE__, __LINE__, __PRETTY_FUNCTION__);
-
- rval = m_mb.tag_get_by_ptr(tag, &m_file_set, 1, &data, &sz);
- const char * p = static_cast<const char *>(data);
- std::string att_val(&p[0], sz);
- if (vec_counter == 0) nameVec[0]="MOAB_GLOBAL";
- const std::string& var_name = nameVec[vec_counter];
-
- // read __<var_name>_ATTRIBS_LEN tag
- moab::Tag attLenTag = 0;
- tag_name = tag_name + "_LEN";
- const void * len_data = NULL;
- int len_sz = 0;
- rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_INTEGER, attLenTag, moab::MB_TAG_ANY);
- rval = m_mb.tag_get_by_ptr(attLenTag, &m_file_set, 1, &len_data, &len_sz);
- const int * len_p = static_cast<const int *>(len_data);
- std::vector<int> attLen(len_sz);
- std::copy(len_p, len_p+len_sz, attLen.begin());
-
- // create attribute
- insert(var_name, *(new pcatt(var_name, att_val, attLen)));
-#endif
+ tag_name = "__GLOBAL_ATTRIBS";
+ Tag globalAttTag = 0;
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_OPAQUE, globalAttTag, MB_TAG_SPARSE | MB_TAG_VARLEN);
+ ERRORR(rval, "Trouble getting __GLOBAL_ATTRIBS tag.");
+ std::string gattVal;
+ std::vector<int> gattLen;
+
+ const void* gattptr;
+ int globalAttSz=0;
+ rval = mbImpl->tag_get_by_ptr(globalAttTag, &fileSet, 1, &gattptr, &globalAttSz);
+ ERRORR(rval, "Trouble getting data for __GLOBAL_ATTRIBS tag.");
+
+ if (MB_SUCCESS == rval)
+ dbgOut.tprintf(2, "Tag value retrieved for %s size %d\n", tag_name.c_str(), globalAttSz);
+
+ // <__GLOBAL_ATTRIBS_LEN>
+ tag_name = "__GLOBAL_ATTRIBS_LEN";
+ Tag globalAttLenTag = 0;
+
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_INTEGER, globalAttLenTag, MB_TAG_ANY);
+ ERRORR(rval, "Trouble getting __GLOBAL_ATTRIBS_LEN tag.");
+ int sizeGAtt =0;
+ rval = mbImpl->tag_get_length(globalAttLenTag, sizeGAtt);
+ ERRORR(rval, "Trouble getting length of __GLOBAL_ATTRIBS_LEN tag ");
+ gattLen.resize(sizeGAtt);
+ rval = mbImpl->tag_get_data(globalAttLenTag, &fileSet, 1, &gattLen[0]);
+ ERRORR(rval, "Trouble setting data for __GLOBAL_ATTRIBS_LEN tag.");
+ if (MB_SUCCESS == rval)
+ dbgOut.tprintf(2, "Tag retrieved for variable %s\n", tag_name.c_str());
+
+ rval = process_concatenated_attribute(gattptr, globalAttSz, gattLen, globalAtts);
+ ERRORR(rval, " trouble processing global attributes ");
+
return MB_SUCCESS;
}
-#if 0
+ErrorCode WriteNC::process_concatenated_attribute(const void * gattptr, int globalAttSz, std::vector<int> & gattLen,
+ std::map<std::string, AttData> & attributes)
+{
- void
- fileinfo::init_atts()
- {
- std::vector<std::string> nameVec(m_vars.size()+1);
- nameVec[0] = "GLOBAL";
- std::map<std::string, const fvar*>::iterator it = m_vars.begin();
- for (std::size_t i=1; it != m_vars.end(); ++it, ++i)
- nameVec[i] = it->first;
-
- for (std::size_t vec_counter = 0; vec_counter != nameVec.size(); ++vec_counter)
- {
- // read __<var_name>_ATTRIBS tag
- moab::Tag tag = 0;
- std::string tag_name = "__"+nameVec[vec_counter]+"_ATTRIBS";
- const void * data = NULL;
- int sz = 0;
- moab::ErrorCode rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_OPAQUE, tag, moab::MB_TAG_ANY);
- if (rval != moab::MB_SUCCESS)
- throw pargal_except("Error: " + m_mb.get_error_string(rval),
- __FILE__, __LINE__, __PRETTY_FUNCTION__);
-
- rval = m_mb.tag_get_by_ptr(tag, &m_file_set, 1, &data, &sz);
- const char * p = static_cast<const char *>(data);
- std::string att_val(&p[0], sz);
- if (vec_counter == 0) nameVec[0]="MOAB_GLOBAL";
- const std::string& var_name = nameVec[vec_counter];
-
- // read __<var_name>_ATTRIBS_LEN tag
- moab::Tag attLenTag = 0;
- tag_name = tag_name + "_LEN";
- const void * len_data = NULL;
- int len_sz = 0;
- rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_INTEGER, attLenTag, moab::MB_TAG_ANY);
- rval = m_mb.tag_get_by_ptr(attLenTag, &m_file_set, 1, &len_data, &len_sz);
- const int * len_p = static_cast<const int *>(len_data);
- std::vector<int> attLen(len_sz);
- std::copy(len_p, len_p+len_sz, attLen.begin());
-
- // create attribute
- insert(var_name, *(new pcatt(var_name, att_val, attLen)));
- }
- }
+ std::size_t start = 0;
+ std::size_t att_counter = 0;
+ std::string concatString( (char*)gattptr, (char*)gattptr+globalAttSz);
- void
- fileinfo::init_grid_type()
+ for (std::size_t i = 0; i != (size_t)globalAttSz; ++i)
+ {
+ if (concatString[i] == '\0')
{
- moab::Tag tag = 0;
- std::string tag_name = "__MESH_TYPE";
- const void * data = NULL;
- int sz = 0;
- moab::ErrorCode rval;
- rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_OPAQUE, tag, moab::MB_TAG_ANY);
- rval = m_mb.tag_get_by_ptr(tag, &m_file_set, 1, &data, &sz);
- if (rval != moab::MB_SUCCESS)
- throw pargal_except("Error: " + m_mb.get_error_string(rval),
- __FILE__, __LINE__, __PRETTY_FUNCTION__);
- const char * p = static_cast<const char *>(data);
- m_grid_type = std::string(&p[0], sz);
+ std::string att_name(&concatString[start], i - start);
+ start = i + 1;
+ while (concatString[i] != ';')
+ ++i;
+ std::string data_type(&concatString[start], i - start);
+ ++i;
+ start = i;
+ i = gattLen[att_counter];
+ if (concatString[i] != ';')
+ ERRORR(MB_FAILURE, "Error parsing attributes ");
+
+ std::string data_val(&concatString[start], i - start);
+ start = i + 1;
+ AttData attrib = attributes[att_name];
+ attrib.attValue = data_val;
+ ++att_counter;
+ dbgOut.tprintf(2, " Process attribute %s with value %s \n",att_name.c_str(), data_val.c_str() );
}
+ }
return MB_SUCCESS;
}
-#endif
} // end moab namespace
diff --git a/src/io/WriteNC.hpp b/src/io/WriteNC.hpp
index c3b893a..6b75d59 100644
--- a/src/io/WriteNC.hpp
+++ b/src/io/WriteNC.hpp
@@ -110,7 +110,7 @@ private:
NCDF_SIZE attLen;
int attVarId;
nc_type attDataType;
- std::string attName;
+ std::string attValue;
};
class VarData
@@ -152,6 +152,9 @@ private:
* ErrorCode NCHelper::create_conventional_tags
*/
ErrorCode process_conventional_tags(EntityHandle fileSet);
+
+ ErrorCode process_concatenated_attribute(const void * gattptr, int globalAttSz, std::vector<int> & gattLen,
+ std::map<std::string, AttData> & globalAtts);
// interface instance
Interface *mbImpl;
WriteUtilIface* mWriteIface;
https://bitbucket.org/fathomteam/moab/commits/e64001b99718/
Changeset: e64001b99718
Branch: ncwriter
User: iulian07
Date: 2014-03-30 17:23:36
Summary: start collecting data
will have to populate VarData with appropriate info;
start gathering tag info for nonset variables
"set" variables are coordinate variables (dimensions), usually
time is integer (time steps, or time values?)
Affected #: 2 files
diff --git a/src/io/WriteNC.cpp b/src/io/WriteNC.cpp
index 5af6fdf..05fcc3f 100644
--- a/src/io/WriteNC.cpp
+++ b/src/io/WriteNC.cpp
@@ -122,6 +122,9 @@ ErrorCode WriteNC::write_file(const char *file_name,
const size_t count[], const double *dp);
*/
+ //
+ rval = collect_variable_data(var_names, tstep_nums, tstep_vals, *file_set);
+ ERRORR(rval, "Trouble collecting data.");
return MB_SUCCESS;
}
@@ -348,7 +351,11 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
dbgOut.tprintf(2, "var name: %s index %d \n", var_name.c_str(), idxVar);
// process var name:
// this will create/initiate map; we will populate variableDataStruct wit info about dims, tags, etc
- VarData variableDataStruct = varInfo[var_name];
+ // reference & is important; otherwise variableDataStruct will go out of scope, and deleted :(
+ VarData & variableDataStruct = varInfo[var_name];
+
+ dbgOut.tprintf(2, "at var name %s varInfo size %d \n", var_name.c_str(), varInfo.size() );
+
sz = 0;
Tag dims_tag = 0;
std::string dim_names = "__" + var_name + "_DIMS";
@@ -371,6 +378,7 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
const void* ptr = NULL;
rval = mbImpl->tag_get_by_ptr(dims_tag, &fileSet, 1, &ptr);
//
+
const Tag * ptags = static_cast<const moab::Tag*>(ptr);
for (std::size_t j = 0; j != static_cast<std::size_t>(sz); ++j)
{
@@ -381,7 +389,8 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
std::vector<std::string>::iterator vit=std::find(dimNames.begin(), dimNames.end(), dim_name);
if (vit==dimNames.end())
ERRORR(MB_FAILURE, "dimension not found\n");
- variableDataStruct.varDims[j]=(int)(vit-dimNames.begin()); // will be used for writing
+ variableDataStruct.varDims[j]= (int)(vit-dimNames.begin()) ; // will be used for writing
+
// do we have a variable for each dimension? I mean, a tag?
//dims[j] = &(get_dim(dim_name));
}
@@ -462,7 +471,7 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
return MB_SUCCESS;
}
-
+// reverse process from create_attrib_string
ErrorCode WriteNC::process_concatenated_attribute(const void * gattptr, int globalAttSz, std::vector<int> & gattLen,
std::map<std::string, AttData> & attributes)
{
@@ -498,4 +507,106 @@ ErrorCode WriteNC::process_concatenated_attribute(const void * gattptr, int glob
return MB_SUCCESS;
}
+ErrorCode WriteNC::collect_variable_data( std::vector<std::string>& var_names, std::vector<int>& tstep_nums,
+ std::vector<double>& tstep_vals, EntityHandle fileSet)
+{
+ // in general, in netcdf, variables that have the same name as their only dimension are called
+ // coordinate variables
+ // for the time being, check if all dimensions for variables are coordinate variables
+ ErrorCode rval;
+
+ usedCoordinates.clear();
+
+ for (size_t i=0; i<var_names.size(); i++)
+ {
+ std::string varname=var_names[i];
+ std::map<std::string, VarData>::iterator vit = varInfo.find(varname);
+ if (vit==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find one variable");
+
+ size_t sizeVar = 1;// get multiplied by dim lengths
+ VarData & currentVarData = vit->second;
+ dbgOut.tprintf(2, " for variable %s varDims.size %d \n", varname.c_str(), (int)currentVarData.varDims.size() );
+ for (size_t j =0; j<currentVarData.varDims.size(); j++)
+ {
+ std::string dimName= dimNames[ currentVarData.varDims[j] ];
+ vit = varInfo.find(dimName);
+ if (vit==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find one coordinate variable");
+
+ if( (dimName == "time" || dimName == "Time" || dimName == "t") &&
+ currentVarData.varDims.size()>1 ) // so it is not time itself
+ currentVarData.has_tsteps=true;
+
+ // probably will have to look at tstep_vals to match them
+ sizeVar *= dimLens[j];
+ usedCoordinates.insert(dimName); // collect those used, we will need to write them to the file
+ dbgOut.tprintf(2, " for variable %s need dimension %s with length %d\n", varname.c_str(), dimName.c_str(), dimLens[j] );
+ }
+
+ currentVarData.sz=sizeVar;
+
+ if (currentVarData.has_tsteps)
+ {
+
+ int index=0;
+ while(1)
+ {
+ Tag indexedTag;
+ std::stringstream ssTagNameWithIndex;
+ ssTagNameWithIndex << varname << index;
+ rval = mbImpl->tag_get_handle(ssTagNameWithIndex.str().c_str(), indexedTag);
+ if (rval!=MB_SUCCESS)
+ break;
+ dbgOut.tprintf(2, " found indexed tag %d with name %s\n", index, ssTagNameWithIndex.str().c_str());
+ currentVarData.varTags.push_back(indexedTag);
+ index++; // we should get out of the loop at some point
+ // we will have to collect data for these tags; maybe even allocate memory again
+ }
+ }
+ else
+ {
+ // get the tag with varname
+ Tag coordtag=0;
+ rval = mbImpl->tag_get_handle(varname.c_str(), coordtag);
+ ERRORR(rval, "can't find one tag");
+ currentVarData.varTags.push_back(coordtag); // really, only one for these
+ const void * data;
+ int sizeCoordinate;
+ rval = mbImpl->tag_get_by_ptr(coordtag, &fileSet, 1, &data, &sizeCoordinate);
+ ERRORR(rval, "can't get coordinate values");
+ assert(currentVarData.memoryHogs.size()==0);// nothing so far
+ currentVarData.memoryHogs.push_back((void*)data);
+ }
+
+ }
+
+ // check that for used coordinates we have found the tags
+ for (std::set<std::string>::iterator setIt = usedCoordinates.begin(); setIt!=usedCoordinates.end(); setIt++)
+ {
+ std::string coordName=*setIt; // a deep copy ; is it needed?
+
+ std::map<std::string, VarData>::iterator vit = varInfo.find(coordName);
+ if (vit==varInfo.end())
+ ERRORR(MB_FAILURE, "can't find one coordinate variable");
+
+ VarData & varCoordData = vit->second;
+ Tag coordtag=0;
+ rval = mbImpl->tag_get_handle(coordName.c_str(), coordtag);
+ ERRORR(rval, "can't find one tag");
+ varCoordData.varTags.push_back(coordtag); // really, only one for these
+
+ const void * data;
+ int sizeCoordinate;
+ rval = mbImpl->tag_get_by_ptr(coordtag, &fileSet, 1, &data, &sizeCoordinate);
+ ERRORR(rval, "can't get coordinate values");
+ dbgOut.tprintf(2, " found coordinate tag with name %s and length %d\n", coordName.c_str(),
+ sizeCoordinate);
+
+ assert(varCoordData.memoryHogs.size()==0);// nothing so far
+ varCoordData.memoryHogs.push_back((void*)data);
+ }
+ return MB_SUCCESS;
+}
+
} // end moab namespace
diff --git a/src/io/WriteNC.hpp b/src/io/WriteNC.hpp
index 6b75d59..df89af1 100644
--- a/src/io/WriteNC.hpp
+++ b/src/io/WriteNC.hpp
@@ -139,6 +139,9 @@ private:
//! Dimension lengths
std::vector<int> dimLens;
+ // will collect used dimensions (ccordinate variables)
+ std::set<std::string> usedCoordinates;
+
//! Global attribs
std::map<std::string, AttData> globalAtts;
@@ -155,6 +158,11 @@ private:
ErrorCode process_concatenated_attribute(const void * gattptr, int globalAttSz, std::vector<int> & gattLen,
std::map<std::string, AttData> & globalAtts);
+
+ // will collect data; it should be only on gather processor, but for the time being, collect
+ // for everybody
+ ErrorCode collect_variable_data( std::vector<std::string>& var_names, std::vector<int>& tstep_nums,
+ std::vector<double>& tstep_vals, EntityHandle fileSet);
// interface instance
Interface *mbImpl;
WriteUtilIface* mWriteIface;
Repository URL: https://bitbucket.org/fathomteam/moab/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1
0
2 new commits in MOAB:
https://bitbucket.org/fathomteam/moab/commits/c2765784f964/
Changeset: c2765784f964
Branch: None
User: iulian07
Date: 2014-03-29 04:56:25
Summary: first pass at nc writer
need to finish processing conventional tags, and form the
VarData and global attributes structure
a test is added for writing a temperature after reading
Affected #: 10 files
diff --git a/src/ReaderWriterSet.cpp b/src/ReaderWriterSet.cpp
index 5015a7f..1f254b0 100644
--- a/src/ReaderWriterSet.cpp
+++ b/src/ReaderWriterSet.cpp
@@ -48,6 +48,7 @@
#ifdef NETCDF_FILE
# include "ReadNCDF.hpp"
# include "WriteNCDF.hpp"
+# include "WriteNC.hpp"
# include "WriteSLAC.hpp"
# include "ReadNC.hpp"
# include "ReadGCRM.hpp"
@@ -105,7 +106,7 @@ ReaderWriterSet::ReaderWriterSet( Core* mdb, Error* handler )
const char* exo_sufxs[] = { "exo", "exoII", "exo2", "g", "gen", NULL };
register_factory( ReadNCDF::factory, WriteNCDF::factory, "Exodus II", exo_sufxs, "EXODUS" );
register_factory( ReadGCRM::factory, NULL, "GCRM NC", "nc", "GCRM" );
- register_factory( ReadNC::factory, NULL, "Climate NC", "nc", "NC" );
+ register_factory( ReadNC::factory, WriteNC::factory, "Climate NC", "nc", "NC" );
#endif
#ifdef CGNS_FILE
diff --git a/src/io/Makefile.am b/src/io/Makefile.am
index 09fe3d3..232de85 100644
--- a/src/io/Makefile.am
+++ b/src/io/Makefile.am
@@ -15,6 +15,9 @@ AM_CPPFLAGS += -DIS_BUILDING_MB \
if NETCDF_FILE
MOAB_NETCDF_SRCS = ReadNCDF.cpp ReadNCDF.hpp \
WriteNCDF.cpp WriteNCDF.hpp \
+ WriteNC.cpp WriteNC.hpp \
+ NCWriteHelper.cpp NCWriteHelper.hpp \
+ NCWriteEuler.cpp NCWriteEuler.hpp \
WriteSLAC.cpp WriteSLAC.hpp \
ReadNC.cpp ReadNC.hpp \
NCHelper.cpp NCHelper.hpp \
diff --git a/src/io/NCWriteEuler.cpp b/src/io/NCWriteEuler.cpp
new file mode 100644
index 0000000..f17727b
--- /dev/null
+++ b/src/io/NCWriteEuler.cpp
@@ -0,0 +1,16 @@
+/*
+ * NCWriteEuler.cpp
+ *
+ * Created on: Mar 28, 2014
+ */
+
+#include "NCWriteEuler.hpp"
+
+namespace moab {
+
+NCWriteEuler::~NCWriteEuler()
+{
+ // TODO Auto-generated destructor stub
+}
+
+} /* namespace moab */
diff --git a/src/io/NCWriteEuler.hpp b/src/io/NCWriteEuler.hpp
new file mode 100644
index 0000000..3e7f728
--- /dev/null
+++ b/src/io/NCWriteEuler.hpp
@@ -0,0 +1,25 @@
+/*
+ * NCWriteEuler.hpp
+ *
+ * nc write helper for euler type data (CAM)
+ * Created on: Mar 28, 2014
+ *
+ */
+
+#ifndef NCWRITEEULER_HPP_
+#define NCWRITEEULER_HPP_
+
+#include "NCWriteHelper.hpp"
+
+namespace moab {
+
+class NCWriteEuler: public NCWriteHelper
+{
+public:
+ NCWriteEuler(WriteNC* writeNC, const FileOptions& opts, EntityHandle fileSet) :
+ NCWriteHelper(writeNC, opts, fileSet) {};
+ virtual ~NCWriteEuler();
+};
+
+} /* namespace moab */
+#endif /* NCWRITEEULER_HPP_ */
diff --git a/src/io/NCWriteHelper.cpp b/src/io/NCWriteHelper.cpp
new file mode 100644
index 0000000..37817d8
--- /dev/null
+++ b/src/io/NCWriteHelper.cpp
@@ -0,0 +1,22 @@
+/*
+ * NCWriteHelper.cpp
+ *
+ * Created on: Mar 28, 2014
+ * Author: iulian
+ */
+
+#include "NCWriteHelper.hpp"
+#include "NCWriteEuler.hpp"
+
+namespace moab {
+
+//! Get appropriate helper instance for WriteNC class; based on some info in the file set
+NCWriteHelper* NCWriteHelper::get_nc_helper(WriteNC* writeNC, const FileOptions& opts, EntityHandle fileSet)
+{
+
+ // right now, get a cam euler helper
+ return new (std::nothrow) NCWriteEuler(writeNC, opts, fileSet);
+}
+
+
+} /* namespace moab */
diff --git a/src/io/NCWriteHelper.hpp b/src/io/NCWriteHelper.hpp
new file mode 100644
index 0000000..54ce967
--- /dev/null
+++ b/src/io/NCWriteHelper.hpp
@@ -0,0 +1,206 @@
+/*
+ * NCWriteHelper.hpp
+ *
+ * Purpose : Climate NC writer file helper; abstract, will be implemented for each type
+ *
+ * Created on: Mar 28, 2014
+ */
+
+#ifndef NCWRITEHELPER_HPP_
+#define NCWRITEHELPER_HPP_
+#include "WriteNC.hpp"
+
+namespace moab {
+
+class NCWriteHelper
+{
+public:
+ NCWriteHelper(WriteNC* writeNC, const FileOptions& opts, EntityHandle fileSet)
+ :_writeNC(writeNC), _opts(opts), _fileSet(fileSet),
+ nTimeSteps(0), nLevels(1), tDim(-1), levDim(-1) {}
+ virtual ~NCWriteHelper() {};
+
+ //! Get appropriate helper instance for WriteNC class; based on some info in the
+ static NCWriteHelper* get_nc_helper(WriteNC* readNC, const FileOptions& opts, EntityHandle fileSet);
+
+ //! process NC conventional tags
+ ErrorCode process_conventional_tags(EntityHandle fileSet);
+protected:
+ //! Allow NCWriteHelper to directly access members of WriteNC
+ WriteNC* _writeNC;
+
+ const FileOptions& _opts;
+ EntityHandle _fileSet;
+
+ //! Dimensions of time and level
+ int nTimeSteps, nLevels;
+
+ //! Values for time and level
+ std::vector<double> tVals, levVals;
+
+ //! Dimension numbers for time and level
+ int tDim, levDim;
+
+ //! Ignored variables
+ std::set<std::string> ignoredVarNames;
+
+ //! Dummy variables
+ std::set<std::string> dummyVarNames;
+};
+
+#if 0
+
+//! Child helper class for scd mesh, e.g. CAM_EL or CAM_FV
+class ScdNCHelper : public NCHelper
+{
+public:
+ ScdNCHelper(ReadNC* readNC, int fileId, const FileOptions& opts, EntityHandle fileSet)
+: NCHelper(readNC, fileId, opts, fileSet),
+ iDim(-1), jDim(-1), iCDim(-1), jCDim(-1)
+ {
+ for (unsigned int i = 0; i < 6; i++) {
+ gDims[i] = -1;
+ lDims[i] = -1;
+ gCDims[i] = -1;
+ lCDims[i] = -1;
+ }
+
+ locallyPeriodic[0] = locallyPeriodic[1] = locallyPeriodic[2] = 0;
+ globallyPeriodic[0] = globallyPeriodic[1] = globallyPeriodic[2] = 0;
+ }
+ virtual ~ScdNCHelper() {}
+
+private:
+ //! Implementation of NCHelper::check_existing_mesh()
+ virtual ErrorCode check_existing_mesh();
+ //! Implementation of NCHelper::create_mesh()
+ virtual ErrorCode create_mesh(Range& faces);
+ //! Implementation of NCHelper::read_variables()
+ virtual ErrorCode read_variables(std::vector<std::string>& var_names, std::vector<int>& tstep_nums);
+
+ //! Read non-set variables for scd mesh
+ ErrorCode read_scd_variable_to_nonset_allocate(std::vector<ReadNC::VarData>& vdatas,
+ std::vector<int>& tstep_nums);
+ ErrorCode read_scd_variable_to_nonset(std::vector<ReadNC::VarData>& vdatas,
+ std::vector<int>& tstep_nums);
+
+ //! Create COORDS tag for quads coordinate
+ ErrorCode create_quad_coordinate_tag();
+
+ template <typename T> ErrorCode kji_to_jik(size_t ni, size_t nj, size_t nk, void* dest, T* source)
+ {
+ size_t nik = ni * nk, nij = ni * nj;
+ T* tmp_data = reinterpret_cast<T*>(dest);
+ for (std::size_t j = 0; j != nj; j++)
+ for (std::size_t i = 0; i != ni; i++)
+ for (std::size_t k = 0; k != nk; k++)
+ tmp_data[j*nik + i*nk + k] = source[k*nij + j*ni + i];
+ return MB_SUCCESS;
+ }
+
+protected:
+ //! Dimensions of global grid in file
+ int gDims[6];
+
+ //! Dimensions of my local part of grid
+ int lDims[6];
+
+ //! Center dimensions of global grid in file
+ int gCDims[6];
+
+ //! Center dimensions of my local part of grid
+ int lCDims[6];
+
+ //! Values for i/j
+ std::vector<double> ilVals, jlVals;
+
+ //! Center values for i/j
+ std::vector<double> ilCVals, jlCVals;
+
+ //! Dimension numbers for i/j
+ int iDim, jDim;
+
+ //! Center dimension numbers for i/j
+ int iCDim, jCDim;
+
+ //! Whether mesh is locally periodic in i or j or k
+ int locallyPeriodic[3];
+
+ //! Whether mesh is globally periodic in i or j or k
+ int globallyPeriodic[3];
+};
+
+//! Child helper class for ucd mesh, e.g. CAM_SE (HOMME) or MPAS
+class UcdNCHelper : public NCHelper
+{
+public:
+ UcdNCHelper(ReadNC* readNC, int fileId, const FileOptions& opts, EntityHandle fileSet)
+: NCHelper(readNC, fileId, opts, fileSet),
+ nCells(0), nEdges(0), nVertices(0),
+ nLocalCells(0), nLocalEdges(0), nLocalVertices(0),
+ cDim(-1), eDim(-1), vDim(-1) {}
+ virtual ~UcdNCHelper() {}
+
+private:
+ //! Implementation of NCHelper::read_variables()
+ virtual ErrorCode read_variables(std::vector<std::string>& var_names,
+ std::vector<int> &tstep_nums);
+
+ //! Read non-set variables for ucd mesh (implemented differently in child classes)
+ virtual ErrorCode read_ucd_variable_to_nonset_allocate(std::vector<ReadNC::VarData>& vdatas,
+ std::vector<int>& tstep_nums) = 0;
+#ifdef PNETCDF_FILE
+ virtual ErrorCode read_ucd_variable_to_nonset_async(std::vector<ReadNC::VarData>& vdatas,
+ std::vector<int>& tstep_nums) = 0;
+#else
+ virtual ErrorCode read_ucd_variable_to_nonset(std::vector<ReadNC::VarData>& vdatas,
+ std::vector<int>& tstep_nums) = 0;
+#endif
+
+protected:
+ //! This version takes as input the moab range, from which we actually need just the
+ //! size of each sequence, for a proper transpose of the data
+ template <typename T> ErrorCode kji_to_jik_stride(size_t , size_t nj, size_t nk, void* dest, T* source, Range& localGid)
+ {
+ std::size_t idxInSource = 0; // Position of the start of the stride
+ // For each subrange, we will transpose a matrix of size
+ // subrange*nj*nk (subrange takes the role of ni)
+ T* tmp_data = reinterpret_cast<T*>(dest);
+ for (Range::pair_iterator pair_iter = localGid.pair_begin();
+ pair_iter != localGid.pair_end(); ++pair_iter) {
+ std::size_t size_range = pair_iter->second - pair_iter->first + 1;
+ std::size_t nik = size_range * nk, nij = size_range * nj;
+ for (std::size_t j = 0; j != nj; j++)
+ for (std::size_t i = 0; i != size_range; i++)
+ for (std::size_t k = 0; k != nk; k++)
+ tmp_data[idxInSource + j*nik + i*nk + k] = source[idxInSource + k*nij + j*size_range + i];
+ idxInSource += (size_range*nj*nk);
+ }
+ return MB_SUCCESS;
+ }
+
+ //! Dimensions of global grid in file
+ int nCells;
+ int nEdges;
+ int nVertices;
+
+ //! Dimensions of my local part of grid
+ int nLocalCells;
+ int nLocalEdges;
+ int nLocalVertices;
+
+ //! Coordinate values for vertices
+ std::vector<double> xVertVals, yVertVals, zVertVals;
+
+ //! Dimension numbers for nCells, nEdges and nVertices
+ int cDim, eDim, vDim;
+
+ //! Local global ID for cells, edges and vertices
+ Range localGidCells, localGidEdges, localGidVerts;
+};
+#endif
+
+} // namespace moab
+
+#endif
+
diff --git a/src/io/WriteNC.cpp b/src/io/WriteNC.cpp
new file mode 100644
index 0000000..4a3fd6e
--- /dev/null
+++ b/src/io/WriteNC.cpp
@@ -0,0 +1,490 @@
+#include "WriteNC.hpp"
+#include "moab/CN.hpp"
+#include "MBTagConventions.hpp"
+#include "MBParallelConventions.h"
+#include "moab/Interface.hpp"
+#include "moab/Range.hpp"
+#include "moab/WriteUtilIface.hpp"
+#include "moab/FileOptions.hpp"
+#include "NCWriteHelper.hpp"
+
+#include <fstream>
+#include <map>
+#include <set>
+
+#include <iostream>
+
+#define ERRORR(rval, str) \
+ if (MB_SUCCESS != rval) { mWriteIface->report_error("%s", str); return rval; }
+
+#define ERRORS(err, str) \
+ if (err) { mWriteIface->report_error("%s", str); return MB_FAILURE; }
+
+namespace moab {
+
+WriterIface *WriteNC::factory( Interface* iface )
+ { return new WriteNC( iface ); }
+
+WriteNC::WriteNC(Interface *impl)
+ : mbImpl(impl), dbgOut(stderr), partMethod(ScdParData::ALLJORKORI), scdi(NULL),
+
+#ifdef USE_MPI
+ myPcomm(NULL),
+#endif
+
+ noMesh(false), noVars(false), /*spectralMesh(false), noMixedElements(false), noEdges(false),*/
+ gatherSetRank(-1), mGlobalIdTag(0), isParallel(false),
+ myHelper(NULL)
+{
+ assert(impl != NULL);
+ impl->query_interface(mWriteIface);
+}
+
+WriteNC::~WriteNC()
+{
+ mbImpl->release_interface(mWriteIface);
+ if (myHelper != NULL)
+ delete myHelper;
+}
+
+//! writes out a file
+ErrorCode WriteNC::write_file(const char *file_name,
+ const bool overwrite,
+ const FileOptions& options,
+ const EntityHandle *file_set,
+ const int num_set,
+ const std::vector<std::string>&,
+ const Tag*,
+ int,
+ int )
+{
+
+ ErrorCode rval;
+ // See if opts has variable(s) specified
+ std::vector<std::string> var_names;
+ std::vector<int> tstep_nums;
+ std::vector<double> tstep_vals;
+
+ // Get and cache predefined tag handles
+ int dum_val = 0;
+ rval = mbImpl->tag_get_handle(GLOBAL_ID_TAG_NAME, 1, MB_TYPE_INTEGER, mGlobalIdTag, MB_TAG_DENSE , &dum_val);
+ if (MB_SUCCESS != rval)
+ return rval;
+
+ // num set has to be 1, we will write only one set, the original file set used to load
+ if (num_set!=1)
+ ERRORR(MB_FAILURE, "we should write only one set, the file set used to read data into");
+
+ rval = parse_options(options, var_names, tstep_nums, tstep_vals);
+ ERRORR(rval, "Trouble parsing option string.");
+
+ // important to create some data that will be used to write the file; dimensions, variables, etc
+ // new variables still need to have some way of defining their dimensions
+ // maybe it will be passed as write options
+ rval = process_conventional_tags(*file_set);
+ ERRORR(rval, "Trouble getting conventional tags.");
+
+ // Create the file ; assume we will overwrite always, for the time being
+ dbgOut.tprintf(1, "creating file %s\n", file_name);
+ fileName = file_name;
+ int success;
+
+#ifdef PNETCDF_FILE
+ int cmode= overwrite ? NC_CLOBBER : NC_NOCLOBBER;
+ if (isParallel)
+ success = NCFUNC(create)(myPcomm->proc_config().proc_comm(), file_name, cmode, MPI_INFO_NULL, &fileId);
+ else
+ success = NCFUNC(create)(MPI_COMM_SELF, file_name, cmode, MPI_INFO_NULL, &fileId);
+#else
+ // this is regular netcdf file
+ success = NCFUNC(create)(file_name, overwrite ? NC_CLOBBER : NC_NOCLOBBER, &fileId);
+#endif
+ ERRORS(success, "failed to create file");
+
+ /* int nc_def_dim (int ncid, const char *name, size_t len, int *dimidp);
+ * example: status = nc_def_dim(fileId, "lat", 18L, &latid);
+ * */
+
+ /*
+ * int nc_def_var (int ncid, const char *name, nc_type xtype,
+ int ndims, const int dimids[], int *varidp);
+ example: http://www.unidata.ucar.edu/software/netcdf/docs/netcdf-c/nc_005fdef_005fva…
+ */
+
+ /*
+ * Write an Entire Variable: nc_put_var_ type (double, int)
+ * int nc_put_var_double(int ncid, int varid, const double *dp);
+ */
+ /*
+ * Write an Array of Values: nc_put_vara_ type
+ * int nc_put_vara_double(int ncid, int varid, const size_t start[],
+ const size_t count[], const double *dp);
+ */
+
+
+ return MB_SUCCESS;
+}
+
+ErrorCode WriteNC::parse_options(const FileOptions& opts, std::vector<std::string>& var_names, std::vector<int>& tstep_nums,
+ std::vector<double>& tstep_vals)
+{
+ int tmpval;
+ if (MB_SUCCESS == opts.get_int_option("DEBUG_IO", 1, tmpval)) {
+ dbgOut.set_verbosity(tmpval);
+ dbgOut.set_prefix("NCWrite");
+ }
+
+ ErrorCode rval = opts.get_strs_option("VARIABLE", var_names);
+ if (MB_TYPE_OUT_OF_RANGE == rval)
+ noVars = true;
+ else
+ noVars = false;
+ opts.get_ints_option("TIMESTEP", tstep_nums);
+ opts.get_reals_option("TIMEVAL", tstep_vals);
+ rval = opts.get_null_option("NOMESH");
+ if (MB_SUCCESS == rval)
+ noMesh = true;
+
+ /* these are not used yet, maybe later
+ rval = opts.get_null_option("SPECTRAL_MESH");
+ if (MB_SUCCESS == rval)
+ spectralMesh = true;
+
+ rval = opts.get_null_option("NO_MIXED_ELEMENTS");
+ if (MB_SUCCESS == rval)
+ noMixedElements = true;
+
+ rval = opts.get_null_option("NO_EDGES");
+ if (MB_SUCCESS == rval)
+ noEdges = true;*/
+
+ if (2 <= dbgOut.get_verbosity()) {
+ if (!var_names.empty()) {
+ std::cerr << "Variables requested: ";
+ for (unsigned int i = 0; i < var_names.size(); i++)
+ std::cerr << var_names[i];
+ std::cerr << std::endl;
+ }
+ if (!tstep_nums.empty()) {
+ std::cerr << "Timesteps requested: ";
+ for (unsigned int i = 0; i < tstep_nums.size(); i++)
+ std::cerr << tstep_nums[i];
+ std::cerr << std::endl;
+ }
+ if (!tstep_vals.empty()) {
+ std::cerr << "Time vals requested: ";
+ for (unsigned int i = 0; i < tstep_vals.size(); i++)
+ std::cerr << tstep_vals[i];
+ std::cerr << std::endl;
+ }
+ }
+
+ // the gather set will be important in parallel, this will be the rank that will accumulate the data
+ // to be written in serial
+ // improvement will be for writing in true parallel
+ rval = opts.get_int_option("GATHER_SET", 0, gatherSetRank);
+ if (MB_TYPE_OUT_OF_RANGE == rval) {
+ mWriteIface->report_error("Invalid value for GATHER_SET option");
+ return rval;
+ }
+// FIXME: copied from readnc, may need revise
+#ifdef USE_MPI
+ isParallel = (opts.match_option("PARALLEL","READ_PART") != MB_ENTITY_NOT_FOUND);
+
+ if (!isParallel)
+ // Return success here, since rval still has _NOT_FOUND from not finding option
+ // in this case, myPcomm will be NULL, so it can never be used; always check for isParallel
+ // before any use for myPcomm
+ return MB_SUCCESS;
+
+ int pcomm_no = 0;
+ rval = opts.get_int_option("PARALLEL_COMM", pcomm_no);
+ if (rval == MB_TYPE_OUT_OF_RANGE) {
+ mWriteIface->report_error("Invalid value for PARALLEL_COMM option");
+ return rval;
+ }
+ myPcomm = ParallelComm::get_pcomm(mbImpl, pcomm_no);
+ if (0 == myPcomm) {
+ myPcomm = new ParallelComm(mbImpl, MPI_COMM_WORLD);
+ }
+ const int rank = myPcomm->proc_config().proc_rank();
+ dbgOut.set_rank(rank);
+
+ int dum;
+ rval = opts.match_option("PARTITION_METHOD", ScdParData::PartitionMethodNames, dum);
+ if (rval == MB_FAILURE) {
+ mWriteIface->report_error("Unknown partition method specified.");
+ partMethod = ScdParData::ALLJORKORI;
+ }
+ else if (rval == MB_ENTITY_NOT_FOUND)
+ partMethod = ScdParData::ALLJORKORI;
+ else
+ partMethod = dum;
+#endif
+
+ return MB_SUCCESS;
+}
+
+// this is the inverse process to create conventional tags
+// will look at <pargal_source>/src/core/fileinfo.cpp, init dim, vars, atts
+ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
+{
+ ErrorCode rval;
+ // start copy
+ Tag tag = 0;
+ std::string tag_name = "__DIM_NAMES";
+ const void * data = NULL;
+ int num_dims = 0;
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_OPAQUE, tag, MB_TAG_ANY);
+ ERRORR(rval, "Failed getting conventional tag __DIM_NAMES.");
+ rval = mbImpl->tag_get_by_ptr(tag, &fileSet, 1, &data, &num_dims);
+ ERRORR(rval, "Failed getting values for conventional tag __DIM_NAMES.");
+
+ dbgOut.tprintf(1, "dim names size: %d\n", num_dims);
+
+ std::size_t start = 0;
+ const char * p = static_cast<const char *>(data);
+ Tag dimValsTag = 0;
+ tag_name = "__DIM_LENS";
+ const void * valdata = NULL;
+ int num_vals = 0;
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_INTEGER,
+ dimValsTag, MB_TAG_ANY);
+ ERRORR(rval, "Failed getting conventional tag __DIM_LENS.");
+
+ rval = mbImpl->tag_get_by_ptr(dimValsTag, &fileSet, 1, &valdata, &num_vals);
+ ERRORR(rval, "Failed getting values for conventional tag __DIM_LENS.");
+
+ dbgOut.tprintf(1, "num vals in dim lens tag %d\n", num_vals);
+ const int * intp = static_cast<const int*>(valdata);
+ int idx = -1;
+
+ for (std::size_t i = 0; i != static_cast<std::size_t>(num_dims); ++i)
+ {
+ if (p[i] == '\0')
+ {
+ std::string dim_name(&p[start], i - start);
+ ++idx;
+ int sz = intp[idx];
+ dimNames.push_back(dim_name);
+ dimLens.push_back(sz);
+ dbgOut.tprintf(2, "dimension %s has length %d\n", dim_name.c_str(), sz);
+ // fixme: need info from moab to set unlimited dimension
+ // currently assume each file has the same number of time dimensions
+ /*if ((dim_name == "time") || (dim_name == "Time"))
+ insert(dim_name,
+ *(new pcdim(dim_name, sz * m_file_names.size(), true)));
+ else
+ insert(dim_name, *(new pcdim(dim_name, sz)));*/
+ start = i + 1;
+ }
+ }
+
+ Tag tagMeshType = 0;
+ tag_name = "__MESH_TYPE";
+ data = NULL;
+ int sz = 0;
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_OPAQUE, tagMeshType, MB_TAG_ANY);
+ ERRORR(rval, "Failed getting conventional tag __MESH_TYPE.");
+ rval = mbImpl->tag_get_by_ptr(tagMeshType, &fileSet, 1, &data, &sz);
+ ERRORR(rval, "Failed getting values for conventional tag __MESH_TYPE.");
+
+ p = static_cast<const char *>(data);
+ grid_type = std::string(&p[0], sz);
+ dbgOut.tprintf(2, "mesh type: %s \n", grid_type.c_str());
+ // read <__VAR_NAMES_LOCATIONS> tag
+ Tag varLocTag = 0;
+ tag_name = "__VAR_NAMES_LOCATIONS";
+ const void * loc_data = NULL;
+ int loc_sz = 0;
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0,
+ MB_TYPE_INTEGER, varLocTag, MB_TAG_ANY);
+ ERRORR(rval, "Failed getting conventional tag __VAR_NAMES_LOCATIONS.");
+ rval = mbImpl->tag_get_by_ptr(varLocTag, &fileSet, 1, &loc_data, &loc_sz);
+ ERRORR(rval, "Failed getting values for conventional tag __VAR_NAMES_LOCATIONS.");
+ const int * loc_p = static_cast<const int *>(loc_data);
+ std::vector<int> varLoc(loc_sz);
+ std::copy(loc_p, loc_p + loc_sz, varLoc.begin());
+
+ /*
+ std::map<int, std::string> locmap;
+ locmap[0] = "VERTEX";
+ locmap[1] = "NSEDGE";
+ locmap[2] = "EWEDGE";
+ if (grid_type == "MPAS")
+ {
+ locmap[3] = "POLYGON";
+ }
+ else
+ {
+ locmap[3] = "QUAD";
+ }
+ locmap[4] = "SET";
+ locmap[5] = "EDGE";
+ locmap[6] = "REGION";
+ */
+ int nthVar = 0;
+
+ Tag tagVarNames = 0;
+ tag_name = "__VAR_NAMES";
+ rval = mbImpl->tag_get_handle(tag_name.c_str(), 0, MB_TYPE_OPAQUE, tagVarNames,
+ MB_TAG_ANY);
+ ERRORR(rval, "Failed getting conventional tag __VAR_NAMES.");
+ data = NULL;
+ int num_vars = 0;
+ rval = mbImpl->tag_get_by_ptr(tagVarNames, &fileSet, 1, &data, &num_vars);
+ ERRORR(rval, "Failed getting values for conventional tag __VAR_NAMES.");
+ p = static_cast<const char *>(data);
+ start = 0;
+ for (std::size_t i = 0; i != static_cast<std::size_t>(num_vars); ++i)
+ {
+ if (p[i] == '\0')
+ {
+ std::string var_name(&p[start], i - start);
+
+ sz = 0;
+ Tag dims_tag = 0;
+ std::string dim_names = "__" + var_name + "_DIMS";
+ rval = mbImpl->tag_get_handle(dim_names.c_str(), 0, MB_TYPE_OPAQUE,
+ dims_tag, MB_TAG_ANY);
+ ERRORR(rval, "FAILED to get tag for a variable dimensions");
+ //fixme: doesn't handle variables have 0 dimension
+ if (rval != moab::MB_SUCCESS)
+ {
+ start = i + 1;
+ ++nthVar;
+ continue;
+ }
+ rval = mbImpl->tag_get_length(dims_tag, sz);
+ ERRORR(rval, " size of dimensions for variable");
+ dbgOut.tprintf(2, "var name: %s has %d dimensions \n", var_name.c_str(), sz);
+ //std::vector<const pcdim*> dims(sz, NULL);
+ const void* ptr = NULL;
+ rval = mbImpl->tag_get_by_ptr(dims_tag, &fileSet, 1, &ptr);
+ //
+ const Tag * ptags = static_cast<const moab::Tag*>(ptr);
+ for (std::size_t j = 0; j != static_cast<std::size_t>(sz); ++j)
+ {
+ std::string dim_name;
+ rval = mbImpl->tag_get_name(ptags[j], dim_name);
+ ERRORR(rval, "name of tag for dimension");
+ dbgOut.tprintf(2, "var name: %s has %d dimensions \n", var_name.c_str(), sz);
+ //dims[j] = &(get_dim(dim_name));
+ }
+ /*insert(var_name,
+ *(new fvar(var_name, moab::MB_TYPE_DOUBLE, dims,
+ locmap[varLoc[nthVar++]])));*/
+ start = i + 1;
+ }
+ }
+
+ // attributes
+#if 0
+ std::vector<std::string> nameVec(num_vars+1);
+ nameVec[0] = "GLOBAL";
+ std::map<std::string, const fvar*>::iterator it = m_vars.begin();
+ for (std::size_t i=1; it != m_vars.end(); ++it, ++i)
+ nameVec[i] = it->first;
+
+ for (std::size_t vec_counter = 0; vec_counter != nameVec.size(); ++vec_counter)
+ {
+ // read __<var_name>_ATTRIBS tag
+ moab::Tag tag = 0;
+ std::string tag_name = "__"+nameVec[vec_counter]+"_ATTRIBS";
+ const void * data = NULL;
+ int sz = 0;
+ moab::ErrorCode rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_OPAQUE, tag, moab::MB_TAG_ANY);
+ if (rval != moab::MB_SUCCESS)
+ throw pargal_except("Error: " + m_mb.get_error_string(rval),
+ __FILE__, __LINE__, __PRETTY_FUNCTION__);
+
+ rval = m_mb.tag_get_by_ptr(tag, &m_file_set, 1, &data, &sz);
+ const char * p = static_cast<const char *>(data);
+ std::string att_val(&p[0], sz);
+ if (vec_counter == 0) nameVec[0]="MOAB_GLOBAL";
+ const std::string& var_name = nameVec[vec_counter];
+
+ // read __<var_name>_ATTRIBS_LEN tag
+ moab::Tag attLenTag = 0;
+ tag_name = tag_name + "_LEN";
+ const void * len_data = NULL;
+ int len_sz = 0;
+ rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_INTEGER, attLenTag, moab::MB_TAG_ANY);
+ rval = m_mb.tag_get_by_ptr(attLenTag, &m_file_set, 1, &len_data, &len_sz);
+ const int * len_p = static_cast<const int *>(len_data);
+ std::vector<int> attLen(len_sz);
+ std::copy(len_p, len_p+len_sz, attLen.begin());
+
+ // create attribute
+ insert(var_name, *(new pcatt(var_name, att_val, attLen)));
+#endif
+ return MB_SUCCESS;
+}
+#if 0
+
+
+ void
+ fileinfo::init_atts()
+ {
+ std::vector<std::string> nameVec(m_vars.size()+1);
+ nameVec[0] = "GLOBAL";
+ std::map<std::string, const fvar*>::iterator it = m_vars.begin();
+ for (std::size_t i=1; it != m_vars.end(); ++it, ++i)
+ nameVec[i] = it->first;
+
+ for (std::size_t vec_counter = 0; vec_counter != nameVec.size(); ++vec_counter)
+ {
+ // read __<var_name>_ATTRIBS tag
+ moab::Tag tag = 0;
+ std::string tag_name = "__"+nameVec[vec_counter]+"_ATTRIBS";
+ const void * data = NULL;
+ int sz = 0;
+ moab::ErrorCode rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_OPAQUE, tag, moab::MB_TAG_ANY);
+ if (rval != moab::MB_SUCCESS)
+ throw pargal_except("Error: " + m_mb.get_error_string(rval),
+ __FILE__, __LINE__, __PRETTY_FUNCTION__);
+
+ rval = m_mb.tag_get_by_ptr(tag, &m_file_set, 1, &data, &sz);
+ const char * p = static_cast<const char *>(data);
+ std::string att_val(&p[0], sz);
+ if (vec_counter == 0) nameVec[0]="MOAB_GLOBAL";
+ const std::string& var_name = nameVec[vec_counter];
+
+ // read __<var_name>_ATTRIBS_LEN tag
+ moab::Tag attLenTag = 0;
+ tag_name = tag_name + "_LEN";
+ const void * len_data = NULL;
+ int len_sz = 0;
+ rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_INTEGER, attLenTag, moab::MB_TAG_ANY);
+ rval = m_mb.tag_get_by_ptr(attLenTag, &m_file_set, 1, &len_data, &len_sz);
+ const int * len_p = static_cast<const int *>(len_data);
+ std::vector<int> attLen(len_sz);
+ std::copy(len_p, len_p+len_sz, attLen.begin());
+
+ // create attribute
+ insert(var_name, *(new pcatt(var_name, att_val, attLen)));
+ }
+ }
+
+ void
+ fileinfo::init_grid_type()
+ {
+ moab::Tag tag = 0;
+ std::string tag_name = "__MESH_TYPE";
+ const void * data = NULL;
+ int sz = 0;
+ moab::ErrorCode rval;
+ rval = m_mb.tag_get_handle(tag_name.c_str(), 0, moab::MB_TYPE_OPAQUE, tag, moab::MB_TAG_ANY);
+ rval = m_mb.tag_get_by_ptr(tag, &m_file_set, 1, &data, &sz);
+ if (rval != moab::MB_SUCCESS)
+ throw pargal_except("Error: " + m_mb.get_error_string(rval),
+ __FILE__, __LINE__, __PRETTY_FUNCTION__);
+ const char * p = static_cast<const char *>(data);
+ m_grid_type = std::string(&p[0], sz);
+ }
+
+ return MB_SUCCESS;
+}
+#endif
+
+} // end moab namespace
diff --git a/src/io/WriteNC.hpp b/src/io/WriteNC.hpp
new file mode 100644
index 0000000..c3b893a
--- /dev/null
+++ b/src/io/WriteNC.hpp
@@ -0,0 +1,208 @@
+/**
+ * MOAB, a Mesh-Oriented datABase, is a software component for creating,
+ * storing and accessing finite element mesh data.
+ *
+ * Copyright 2004 Sandia Corporation. Under the terms of Contract
+ * DE-AC04-94AL85000 with Sandia Coroporation, the U.S. Government
+ * retains certain rights in this software.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ */
+
+#ifndef WRITENC_HPP_
+#define WRITENC_HPP_
+
+
+#ifndef IS_BUILDING_MB
+//#error "ReadNC.hpp isn't supposed to be included into an application"
+#endif
+
+#include <vector>
+#include <map>
+#include <set>
+#include <string>
+
+#include "moab/WriterIface.hpp"
+#include "moab/ScdInterface.hpp"
+#include "DebugOutput.hpp"
+
+#ifdef USE_MPI
+#include "moab_mpi.h"
+#include "moab/ParallelComm.hpp"
+#endif
+
+#ifdef PNETCDF_FILE
+#include "pnetcdf.h"
+#define NCFUNC(func) ncmpi_ ## func
+
+//! Collective I/O mode get
+#define NCFUNCAG(func) ncmpi_get ## func ## _all
+
+//! Independent I/O mode get
+#define NCFUNCG(func) ncmpi_get ## func
+
+//! Nonblocking get (request aggregation), used so far only for ucd mesh
+#define NCFUNCREQG(func) ncmpi_iget ## func
+
+#define NCDF_SIZE MPI_Offset
+#define NCDF_DIFF MPI_Offset
+#else
+#include "netcdf.h"
+#define NCFUNC(func) nc_ ## func
+#define NCFUNCAG(func) nc_get ## func
+#define NCFUNCG(func) nc_get ## func
+#define NCDF_SIZE size_t
+#define NCDF_DIFF ptrdiff_t
+#endif
+
+namespace moab {
+
+class WriteUtilIface;
+class ScdInterface;
+class NCWriteHelper;
+
+/**
+ * \brief Export NC files.
+ */
+
+class WriteNC : public WriterIface
+{
+ friend class NCWriteHelper;
+ friend class NCWriteEuler;
+
+public:
+
+ //! factory method
+ static WriterIface* factory( Interface* );
+
+ //! Constructor
+ WriteNC(Interface *impl);
+
+ //! Destructor
+ virtual ~WriteNC();
+
+
+ //! writes out a file
+ ErrorCode write_file(const char *file_name,
+ const bool overwrite,
+ const FileOptions& opts,
+ const EntityHandle *output_list,
+ const int num_sets,
+ const std::vector<std::string>& qa_list,
+ const Tag* tag_list = NULL,
+ int num_tags = 0,
+ int export_dimension = 3);
+
+
+private:
+
+ enum EntityLocation {ENTLOCVERT = 0, ENTLOCNSEDGE, ENTLOCEWEDGE, ENTLOCFACE, ENTLOCSET, ENTLOCEDGE, ENTLOCREGION};
+
+ class AttData
+ {
+ public:
+ AttData() : attId(-1), attLen(0), attVarId(-2) {}
+ int attId;
+ NCDF_SIZE attLen;
+ int attVarId;
+ nc_type attDataType;
+ std::string attName;
+ };
+
+ class VarData
+ {
+ public:VarData() : varId(-1), numAtts(-1), entLoc(ENTLOCSET), numLev(1), sz(0), has_tsteps(false) {}
+ int varId;
+ int numAtts;
+ nc_type varDataType;
+ std::vector<int> varDims; // The dimension indices making up this multi-dimensional variable
+ std::map<std::string, AttData> varAtts;
+ std::string varName;
+ std::vector<Tag> varTags; // Tags created for this variable, e.g. one tag per timestep
+ std::vector<void*> memoryHogs; // these will point to the real data; fill before writing the data
+ std::vector<NCDF_SIZE> writeStarts; // Starting index for reading data values along each dimension
+ std::vector<NCDF_SIZE> writeCounts; // Number of data values to be read along each dimension
+ int entLoc;
+ int numLev;
+ int sz;
+ bool has_tsteps; // Indicate whether timestep numbers are appended to tag names
+ };
+
+ // this info will be reconstructed from metadata stored on conventional fileSet tags
+ //! Dimension names
+ std::vector<std::string> dimNames;
+
+ //! Dimension lengths
+ std::vector<int> dimLens;
+
+ //! Global attribs
+ std::map<std::string, AttData> globalAtts;
+
+ //! Variable info
+ std::map<std::string, VarData> varInfo;
+
+ ErrorCode parse_options(const FileOptions& opts, std::vector<std::string>& var_names, std::vector<int>& tstep_nums,
+ std::vector<double>& tstep_vals);
+ /*
+ * map out the header, from tags on file set; it is the inverse process from
+ * ErrorCode NCHelper::create_conventional_tags
+ */
+ ErrorCode process_conventional_tags(EntityHandle fileSet);
+ // interface instance
+ Interface *mbImpl;
+ WriteUtilIface* mWriteIface;
+
+ // File var
+ const char *fileName;
+ int IndexFile;
+ //! File numbers assigned by (p)netcdf
+ int fileId;
+
+
+ //! Debug stuff
+ DebugOutput dbgOut;
+
+ //! Partitioning method
+ int partMethod;
+
+ //! Scd interface
+ ScdInterface* scdi;
+
+ //! Parallel data object, to be cached with ScdBox
+ ScdParData parData;
+
+#ifdef USE_MPI
+ ParallelComm* myPcomm;
+#endif
+ //! write options
+ //
+ bool noMesh;
+ bool noVars;
+ /*
+ * not used yet, maybe later
+ bool spectralMesh;
+ bool noMixedElements;
+ bool noEdges;*/
+ int gatherSetRank;
+
+ //! Cached tags for writing. this will be important for ordering the data, in parallel
+ //
+ Tag mGlobalIdTag;
+
+ //! Are we writing in parallel? (probably in the future)
+ bool isParallel;
+
+ // CAM Euler, etc,
+ std::string grid_type;
+ //! Helper class instance
+ NCWriteHelper* myHelper;
+
+};
+
+} // namespace moab
+
+#endif
diff --git a/test/io/Makefile.am b/test/io/Makefile.am
index 61f932a..dd09c0e 100644
--- a/test/io/Makefile.am
+++ b/test/io/Makefile.am
@@ -12,7 +12,7 @@ AM_CPPFLAGS += -DSRCDIR=$(srcdir) \
if NETCDF_FILE
EXODUS_TEST = exodus_test
- NC_TEST = read_nc read_ucd_nc read_mpas_nc
+ NC_TEST = read_nc read_ucd_nc read_mpas_nc write_nc
else
EXODUS_TEST =
NC_TEST =
diff --git a/test/io/write_nc.cpp b/test/io/write_nc.cpp
new file mode 100644
index 0000000..713f886
--- /dev/null
+++ b/test/io/write_nc.cpp
@@ -0,0 +1,90 @@
+#include "TestUtil.hpp"
+#include "moab/Core.hpp"
+
+using namespace moab;
+
+#ifdef MESHDIR
+static const char example_eul[] = STRINGIFY(MESHDIR) "/io/camEul26x48x96.t3.nc";
+#else
+static const char example_eul[] = "/io/camEul26x48x96.t3.nc";
+#endif
+
+#ifdef USE_MPI
+#include "moab_mpi.h"
+#include "moab/ParallelComm.hpp"
+#endif
+
+// CAM-EUL
+void test_read_write_one_var();
+
+ErrorCode get_options(std::string& opts);
+
+int main(int argc, char* argv[])
+{
+ int result = 0;
+
+#ifdef USE_MPI
+ int fail = MPI_Init(&argc, &argv);
+ if (fail)
+ return 1;
+#else
+ argv[0] = argv[argc - argc]; // To remove the warnings in serial mode about unused variables
+#endif
+
+ result += RUN_TEST(test_read_write_one_var);
+
+#ifdef USE_MPI
+ fail = MPI_Finalize();
+ if (fail)
+ return 1;
+#endif
+
+ return result;
+}
+
+void test_read_write_one_var()
+{
+ Core moab;
+ Interface& mb = moab;
+
+ std::string orig;
+ ErrorCode rval = get_options(orig);
+ CHECK_ERR(rval);
+
+ // we will have to read without mesh and without var first, to create some tags that we need
+ // later when we write
+ std::string opts;
+ opts = orig + std::string(";DEBUG_IO=3;NOMESH;VARIABLE=");
+
+ // Need a set for nomesh to work right
+ // this set will have as tags a lot of header information, that will be used for writing back the file
+ EntityHandle set;
+ rval = mb.create_meshset(MESHSET_SET, set);
+ CHECK_ERR(rval);
+
+ rval = mb.load_file(example_eul, &set, opts.c_str());
+ CHECK_ERR(rval);
+
+ // load one variable, and the mesh
+ opts= orig + std::string(";DEBUG_IO=3;VARIABLE=T");
+ rval = mb.load_file(example_eul, &set, opts.c_str());
+ CHECK_ERR(rval);
+
+ // first test will write information about one variable
+ std::string writeopts;
+ writeopts = std::string(";;VARIABLE=T;DEBUG_IO=2;");
+ rval = mb.write_file( "testT.nc", 0, writeopts.c_str(), &set, 1);
+ CHECK_ERR(rval);
+}
+
+ErrorCode get_options(std::string& opts)
+{
+#ifdef USE_MPI
+ // Use parallel options
+ opts = std::string(";;PARALLEL=READ_PART;PARTITION_METHOD=SQIJ");
+ return MB_SUCCESS;
+#else
+ opts = std::string(";;");
+ return MB_SUCCESS;
+#endif
+}
https://bitbucket.org/fathomteam/moab/commits/b92a2bb6602e/
Changeset: b92a2bb6602e
Branch: ncwriter
User: iulian07
Date: 2014-03-29 13:39:46
Summary: print some variables tags during debugging
Affected #: 1 file
diff --git a/src/io/WriteNC.cpp b/src/io/WriteNC.cpp
index 4a3fd6e..a65548a 100644
--- a/src/io/WriteNC.cpp
+++ b/src/io/WriteNC.cpp
@@ -333,15 +333,21 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
data = NULL;
int num_vars = 0;
rval = mbImpl->tag_get_by_ptr(tagVarNames, &fileSet, 1, &data, &num_vars);
+ dbgOut.tprintf(2, "var names has %d names \n", num_vars );
ERRORR(rval, "Failed getting values for conventional tag __VAR_NAMES.");
p = static_cast<const char *>(data);
start = 0;
+ int idxVar=0;
for (std::size_t i = 0; i != static_cast<std::size_t>(num_vars); ++i)
{
if (p[i] == '\0')
{
std::string var_name(&p[start], i - start);
+ dbgOut.tprintf(2, "var name: %s index %d \n", var_name.c_str(), idxVar);
+ // process var name:
+ // this will create/initiate map; we will populate variableDataStruct wit info about dims, tags, etc
+ VarData variableDataStruct = varInfo[var_name];
sz = 0;
Tag dims_tag = 0;
std::string dim_names = "__" + var_name + "_DIMS";
@@ -358,6 +364,7 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
rval = mbImpl->tag_get_length(dims_tag, sz);
ERRORR(rval, " size of dimensions for variable");
dbgOut.tprintf(2, "var name: %s has %d dimensions \n", var_name.c_str(), sz);
+
//std::vector<const pcdim*> dims(sz, NULL);
const void* ptr = NULL;
rval = mbImpl->tag_get_by_ptr(dims_tag, &fileSet, 1, &ptr);
@@ -368,13 +375,14 @@ ErrorCode WriteNC::process_conventional_tags(EntityHandle fileSet)
std::string dim_name;
rval = mbImpl->tag_get_name(ptags[j], dim_name);
ERRORR(rval, "name of tag for dimension");
- dbgOut.tprintf(2, "var name: %s has %d dimensions \n", var_name.c_str(), sz);
+ dbgOut.tprintf(2, "var name: %s has %s as dimension \n", var_name.c_str(), dim_name.c_str() );
//dims[j] = &(get_dim(dim_name));
}
/*insert(var_name,
*(new fvar(var_name, moab::MB_TYPE_DOUBLE, dims,
locmap[varLoc[nthVar++]])));*/
start = i + 1;
+ idxVar++;
}
}
Repository URL: https://bitbucket.org/fathomteam/moab/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1
0
Hello All,
It is my esteemed pleasure to announce that PyTAPS - the Python wrapper to
iTAPS, MOAB, CGM, and Lasso is now available on bitbucket [1]. It is my
hope that this will serve as a launching point for further improvements to
PyTAPS and further collaborations using MOAB.
Vijay and I will be working towards and to enable this goal. Personally, I
am very excited to see this happen. If you are interested in helping PyTAPS
evolve or know someone who is, please let us know!
Be Well
Anthony
1. https://bitbucket.org/fathomteam/pytaps
1
0
See <https://jenkins-ci.mcs.anl.gov/job/moab32par/371/changes>
Changes:
[davisa] Added new default argument to ray_fire to allow entrance intersections to be allowed for geant4
[davisa] Added comments regarding the new default arguments to rayfire
[davisa] updated doxygen comment and made arguments consistent
[davisa] removed extraneous comments
[davisa] made default arguments for ray_fire clear
[davisa] added dagmc test driver file
[davisa] modified to add new dagmc test
[davisa] modified to add new dagmc test
[davisa] added test file to meshdir
[davisa] modified makefile for dagmc tests
[davisa] added files from dagmc_meshdir as input to test
[davisa] added more tests
[davisa] updated args in point_in test
[davisa] updated args in point_in test
[davisa] added more dagmc test to simple tests
[davisa] added point in volume tests
[davisa] renamed file
[davisa] modifed makefile to allow rayfire tests
[davisa] added rayfire tests
[davisa] renamed dagmc_test
[davisa] updated ray_fire with history test
[davisa] updated signature of ray_fire calls
[davisa] removed cgm dependence
[davisa] added CGM_FLAGS to makefile
------------------------------------------
[...truncated 1567 lines...]
dagmc_pointinvol_test.cpp:59:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:59:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:81:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:81:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:103:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:103:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:125:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:125:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:147:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:147:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:169:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:169:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:191:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:191:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:221:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:221:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:251:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:251:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:281:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:281:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:311:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:311:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:341:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:341:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:371:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:371:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp:401:25: warning: integer constant is so large that it is unsigned [enabled by default]
dagmc_pointinvol_test.cpp:401:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_setup_test()’:
dagmc_pointinvol_test.cpp:39:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_in()’:
dagmc_pointinvol_test.cpp:51:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp:52:13: warning: unused variable ‘rval’ [-Wunused-variable]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_in_vol_1()’:
dagmc_pointinvol_test.cpp:59:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_in_vol_2()’:
dagmc_pointinvol_test.cpp:81:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_in_vol_3()’:
dagmc_pointinvol_test.cpp:103:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_in_vol_4()’:
dagmc_pointinvol_test.cpp:125:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_in_vol_5()’:
dagmc_pointinvol_test.cpp:147:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_in_vol_6()’:
dagmc_pointinvol_test.cpp:169:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_1()’:
dagmc_pointinvol_test.cpp:191:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_2()’:
dagmc_pointinvol_test.cpp:221:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_3()’:
dagmc_pointinvol_test.cpp:251:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_4()’:
dagmc_pointinvol_test.cpp:281:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_5()’:
dagmc_pointinvol_test.cpp:311:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_6()’:
dagmc_pointinvol_test.cpp:341:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_7()’:
dagmc_pointinvol_test.cpp:371:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_point_on_corner_8()’:
dagmc_pointinvol_test.cpp:401:25: warning: large integer implicitly truncated to unsigned type [-Woverflow]
dagmc_pointinvol_test.cpp: In function ‘void dagmc_setup_test()’:
dagmc_pointinvol_test.cpp:44:26: warning: ‘vol’ may be used uninitialized in this function [-Wuninitialized]
mv -f .deps/dagmc_pointinvol_test-dagmc_pointinvol_test.Tpo .deps/dagmc_pointinvol_test-dagmc_pointinvol_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -DTEMPLATE_DEFS_INCLUDED -DHAVE_ACIS -I/homes/fathom/lib32/jenkins/cgm/include -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -lcgm -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -lcubiti19 -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o dagmc_pointinvol_test dagmc_pointinvol_test-dagmc_pointinvol_test.o ../../src/libMOAB.la ../../tools/dagmc/DagMC.lo -lm
libtool: link: mpicxx -DTEMPLATE_DEFS_INCLUDED -DHAVE_ACIS -I/homes/fathom/lib32/jenkins/cgm/include -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o dagmc_pointinvol_test dagmc_pointinvol_test-dagmc_pointinvol_test.o ../../tools/dagmc/DagMC.o -L./src/mpl -L./src/openpa/src -lrt -lpthread -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
make[3]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/dagmc'>
make check-TESTS
make[3]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/dagmc'>
make[4]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/dagmc'>
FAIL: dagmc_simple_test
FAIL: dagmc_rayfire_test
FAIL: dagmc_pointinvol_test
=============================
3 of 3 tests failed
See test/dagmc/test-suite.log
=============================
make[4]: *** [test-suite.log] Error 1
make[4]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/dagmc'>
make[3]: *** [check-TESTS] Error 2
make[3]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/dagmc'>
make[2]: *** [check-am] Error 2
make[2]: Target `check' not remade because of errors.
make[2]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/dagmc'>
Making check in h5file
make[2]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
make h5test h5legacy h5varlen h5sets_test h5regression h5partial h5portable dump_sets
make[3]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DSRCDIR=. -I.. -I./.. -I../../src -I../../src/io -I../../src/io/mhdf/include -I../../src -I../../src/parallel -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT h5file_test.o -MD -MP -MF .deps/h5file_test.Tpo -c -o h5file_test.o h5file_test.cpp
mv -f .deps/h5file_test.Tpo .deps/h5file_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o h5test h5file_test.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o h5test h5file_test.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DSRCDIR=. -I.. -I./.. -I../../src -I../../src/io -I../../src/io/mhdf/include -I../../src -I../../src/parallel -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT h5legacy.o -MD -MP -MF .deps/h5legacy.Tpo -c -o h5legacy.o h5legacy.cpp
mv -f .deps/h5legacy.Tpo .deps/h5legacy.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o h5legacy h5legacy.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o h5legacy h5legacy.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DSRCDIR=. -I.. -I./.. -I../../src -I../../src/io -I../../src/io/mhdf/include -I../../src -I../../src/parallel -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT h5varlen.o -MD -MP -MF .deps/h5varlen.Tpo -c -o h5varlen.o h5varlen.cpp
mv -f .deps/h5varlen.Tpo .deps/h5varlen.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o h5varlen h5varlen.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o h5varlen h5varlen.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DSRCDIR=. -I.. -I./.. -I../../src -I../../src/io -I../../src/io/mhdf/include -I../../src -I../../src/parallel -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT h5sets_test.o -MD -MP -MF .deps/h5sets_test.Tpo -c -o h5sets_test.o h5sets_test.cpp
mv -f .deps/h5sets_test.Tpo .deps/h5sets_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o h5sets_test h5sets_test.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o h5sets_test h5sets_test.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DSRCDIR=. -I.. -I./.. -I../../src -I../../src/io -I../../src/io/mhdf/include -I../../src -I../../src/parallel -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT h5regression.o -MD -MP -MF .deps/h5regression.Tpo -c -o h5regression.o h5regression.cpp
mv -f .deps/h5regression.Tpo .deps/h5regression.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o h5regression h5regression.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o h5regression h5regression.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DSRCDIR=. -I.. -I./.. -I../../src -I../../src/io -I../../src/io/mhdf/include -I../../src -I../../src/parallel -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT h5partial.o -MD -MP -MF .deps/h5partial.Tpo -c -o h5partial.o h5partial.cpp
mv -f .deps/h5partial.Tpo .deps/h5partial.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o h5partial h5partial.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o h5partial h5partial.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DSRCDIR=. -I.. -I./.. -I../../src -I../../src/io -I../../src/io/mhdf/include -I../../src -I../../src/parallel -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT h5portable.o -MD -MP -MF .deps/h5portable.Tpo -c -o h5portable.o h5portable.cpp
mv -f .deps/h5portable.Tpo .deps/h5portable.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o h5portable h5portable.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o h5portable h5portable.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
make[3]: `dump_sets' is up to date.
make[3]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
make check-TESTS
make[3]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
make[4]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
PASS: h5test
PASS: h5legacy
PASS: h5varlen
PASS: h5sets_test
PASS: h5regression
PASS: h5partial
PASS: h5portable
==================
All 7 tests passed
==================
make[4]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
make[3]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
make[2]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/h5file'>
Making check in parallel
make[2]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
make pcomm_unit parallel_unit_tests uber_parallel_test scdtest pcomm_serial par_spatial_locator_test scdpart read_nc_par ucdtrvpart mpastrvpart parallel_hdf5_test mhdf_parallel parallel_write_test mbparallelcomm_test partcheck structured3 parmerge
make[3]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT pcomm_unit.o -MD -MP -MF .deps/pcomm_unit.Tpo -c -o pcomm_unit.o pcomm_unit.cpp
mv -f .deps/pcomm_unit.Tpo .deps/pcomm_unit.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o pcomm_unit pcomm_unit.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o pcomm_unit pcomm_unit.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT parallel_unit_tests.o -MD -MP -MF .deps/parallel_unit_tests.Tpo -c -o parallel_unit_tests.o parallel_unit_tests.cpp
mv -f .deps/parallel_unit_tests.Tpo .deps/parallel_unit_tests.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o parallel_unit_tests parallel_unit_tests.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o parallel_unit_tests parallel_unit_tests.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT uber_parallel_test.o -MD -MP -MF .deps/uber_parallel_test.Tpo -c -o uber_parallel_test.o uber_parallel_test.cpp
mv -f .deps/uber_parallel_test.Tpo .deps/uber_parallel_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o uber_parallel_test uber_parallel_test.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o uber_parallel_test uber_parallel_test.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT scdtest.o -MD -MP -MF .deps/scdtest.Tpo -c -o scdtest.o scdtest.cpp
mv -f .deps/scdtest.Tpo .deps/scdtest.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o scdtest scdtest.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o scdtest scdtest.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT pcomm_serial.o -MD -MP -MF .deps/pcomm_serial.Tpo -c -o pcomm_serial.o pcomm_serial.cpp
mv -f .deps/pcomm_serial.Tpo .deps/pcomm_serial.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o pcomm_serial pcomm_serial.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o pcomm_serial pcomm_serial.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT par_spatial_locator_test.o -MD -MP -MF .deps/par_spatial_locator_test.Tpo -c -o par_spatial_locator_test.o par_spatial_locator_test.cpp
mv -f .deps/par_spatial_locator_test.Tpo .deps/par_spatial_locator_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o par_spatial_locator_test par_spatial_locator_test.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o par_spatial_locator_test par_spatial_locator_test.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT scdpart.o -MD -MP -MF .deps/scdpart.Tpo -c -o scdpart.o scdpart.cpp
mv -f .deps/scdpart.Tpo .deps/scdpart.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o scdpart scdpart.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o scdpart scdpart.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT read_nc.o -MD -MP -MF .deps/read_nc.Tpo -c -o read_nc.o `test -f '../io/read_nc.cpp' || echo './'`../io/read_nc.cpp
mv -f .deps/read_nc.Tpo .deps/read_nc.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o read_nc_par read_nc.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o read_nc_par read_nc.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT ucdtrvpart.o -MD -MP -MF .deps/ucdtrvpart.Tpo -c -o ucdtrvpart.o ucdtrvpart.cpp
mv -f .deps/ucdtrvpart.Tpo .deps/ucdtrvpart.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o ucdtrvpart ucdtrvpart.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o ucdtrvpart ucdtrvpart.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT mpastrvpart.o -MD -MP -MF .deps/mpastrvpart.Tpo -c -o mpastrvpart.o mpastrvpart.cpp
mv -f .deps/mpastrvpart.Tpo .deps/mpastrvpart.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o mpastrvpart mpastrvpart.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o mpastrvpart mpastrvpart.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT parallel_hdf5_test.o -MD -MP -MF .deps/parallel_hdf5_test.Tpo -c -o parallel_hdf5_test.o parallel_hdf5_test.cc
mv -f .deps/parallel_hdf5_test.Tpo .deps/parallel_hdf5_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o parallel_hdf5_test parallel_hdf5_test.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o parallel_hdf5_test parallel_hdf5_test.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
/bin/sh ../../libtool --tag=CC --mode=link mpicc -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o mhdf_parallel mhdf_parallel.o ../../src/libMOAB.la -lhdf5 -lm
libtool: link: mpicc -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o mhdf_parallel mhdf_parallel.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -lz -lm -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT parallel_write_test.o -MD -MP -MF .deps/parallel_write_test.Tpo -c -o parallel_write_test.o parallel_write_test.cc
mv -f .deps/parallel_write_test.Tpo .deps/parallel_write_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o parallel_write_test parallel_write_test.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o parallel_write_test parallel_write_test.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT mbparallelcomm_test.o -MD -MP -MF .deps/mbparallelcomm_test.Tpo -c -o mbparallelcomm_test.o mbparallelcomm_test.cpp
mv -f .deps/mbparallelcomm_test.Tpo .deps/mbparallelcomm_test.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o mbparallelcomm_test mbparallelcomm_test.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o mbparallelcomm_test mbparallelcomm_test.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT partcheck.o -MD -MP -MF .deps/partcheck.Tpo -c -o partcheck.o partcheck.cpp
mv -f .deps/partcheck.Tpo .deps/partcheck.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o partcheck partcheck.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o partcheck partcheck.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT structured3.o -MD -MP -MF .deps/structured3.Tpo -c -o structured3.o structured3.cpp
mv -f .deps/structured3.Tpo .deps/structured3.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o structured3 structured3.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o structured3 structured3.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -DIS_BUILDING_MB -DSRCDIR=. -DMESHDIR=../../MeshFiles/unittest -I. -I.. -I./.. -I../../src -I../../src -I../../src/parallel -I../../src/io/mhdf/include -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT parmerge.o -MD -MP -MF .deps/parmerge.Tpo -c -o parmerge.o parmerge.cpp
mv -f .deps/parmerge.Tpo .deps/parmerge.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o parmerge parmerge.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o parmerge parmerge.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
make[3]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
make check-TESTS
make[3]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
make[4]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
PASS: pcomm_unit
PASS: parallel_unit_tests
PASS: uber_parallel_test
PASS: scdtest
PASS: pcomm_serial
PASS: par_spatial_locator_test
PASS: scdpart
PASS: read_nc_par
PASS: ucdtrvpart
PASS: mpastrvpart
PASS: parallel_hdf5_test
PASS: mhdf_parallel
PASS: parallel_write_test
===================
All 13 tests passed
===================
make[4]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
make[3]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
make[2]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/parallel'>
Making check in oldinc
make[2]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/oldinc'>
make test_oldinc
make[3]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/oldinc'>
mpicxx -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src/parallel -I../../src -I/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/include -I/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -isystem /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/include -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE -DHDF5_PARALLEL -DNETCDF_FILE -DCGM -I../../src -I../../src/parallel -I../../src/oldinc -I../../src -I../../src/parallel -DUNORDERED_MAP_NS=std::tr1 -DHAVE_UNORDERED_MAP=tr1/unordered_map -DHAVE_UNORDERED_SET=tr1/unordered_set -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -MT test_oldinc.o -MD -MP -MF .deps/test_oldinc.Tpo -c -o test_oldinc.o test_oldinc.cpp
mv -f .deps/test_oldinc.Tpo .deps/test_oldinc.Po
/bin/sh ../../libtool --tag=CXX --mode=link mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -R/homes/fathom/lib32/jenkins/cgm/lib -R/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -lnetcdf -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -o test_oldinc test_oldinc.o ../../src/libMOAB.la -lm
libtool: link: mpicxx -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG -o test_oldinc test_oldinc.o -L/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -L/homes/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib -L/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -L/homes/fathom/lib32/jenkins/cgm/lib -L/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin ../../src/.libs/libMOAB.a /home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib/libhdf5.so -L/home/fathom/3rdparty/lib32/zlib-1.2.4/gcc/lib /homes/fathom/lib32/jenkins/cgm/lib/libcgm.a -L./src/mpl -L./src/openpa/src -lcubiti19 /homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib/libnetcdf.so -lz /usr/lib/i386-linux-gnu/libcurl.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpichcxx.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpich.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libopa.so /homes/fathom/lib32/mpich2-1.5_gcc/lib/libmpl.so /usr/lib/libcr.so -lm -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/home/fathom/3rdparty/lib32/hdf5-1.8.8-par-gcc/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/lib32/netcdf-4.1.3_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/mpich2-1.5_gcc/lib -Wl,-rpath -Wl,/homes/fathom/lib32/jenkins/cgm/lib -Wl,-rpath -Wl,/homes/fathom/3rdparty/cubit/Cubit32/Cubit-12.2/bin
make[3]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/oldinc'>
make[2]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test/oldinc'>
make[1]: *** [check-recursive] Error 1
make[1]: Target `check' not remade because of errors.
make[1]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/test'>
Making check in doc
make[1]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/doc'>
make[1]: Nothing to be done for `check'.
make[1]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/doc'>
make[1]: Entering directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/'>
make[1]: Leaving directory `<https://jenkins-ci.mcs.anl.gov/job/moab32par/ws/'>
make: *** [check-recursive] Error 1
make: Target `check' not remade because of errors.
Build step 'Execute shell' marked build as failure
2
2
commit/MOAB: danwu: Merged master into error_handling_enhancement
by commits-noreply@bitbucket.org 27 Mar '14
by commits-noreply@bitbucket.org 27 Mar '14
27 Mar '14
1 new commit in MOAB:
https://bitbucket.org/fathomteam/moab/commits/5d3eb97e31f9/
Changeset: 5d3eb97e31f9
Branch: error_handling_enhancement
User: danwu
Date: 2014-03-27 19:50:43
Summary: Merged master into error_handling_enhancement
Affected #: 14 files
diff --git a/.gitignore b/.gitignore
index 4b78fb6..8acb6bb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -130,6 +130,9 @@ test/bsp_tree_test
test/CMakeLists.txt
test/coords_connect_iterate
test/cropvol_test
+test/dagmc/dagmc_pointinvol_test
+test/dagmc/dagmc_rayfire_test
+test/dagmc/dagmc_simple_test
test/dual/dual_test
test/elem_eval_test
test/file_options_test
@@ -156,8 +159,10 @@ test/io/gmsh_test
test/io/ideas_test
test/io/nastran_test
test/io/read_cgm_basic_test
+test/io/read_cgm_connectivity_test
+test/io/read_cgm_group_test
test/io/read_cgm_load_test
-test/io/read_cgm_test
+test/io/read_cgm_senses_test
test/io/read_mpas_nc
test/io/read_nc
test/io/read_ucd_nc
diff --git a/MeshFiles/unittest/Makefile.am b/MeshFiles/unittest/Makefile.am
index ab3e23e..bc4f522 100644
--- a/MeshFiles/unittest/Makefile.am
+++ b/MeshFiles/unittest/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = io
+SUBDIRS = io dagmc iGeom
EXTRA_DIST = 125hex.g \
16_unmerged_hex.h5m \
diff --git a/MeshFiles/unittest/dagmc/Makefile.am b/MeshFiles/unittest/dagmc/Makefile.am
new file mode 100644
index 0000000..0643ad9
--- /dev/null
+++ b/MeshFiles/unittest/dagmc/Makefile.am
@@ -0,0 +1 @@
+EXTRA_DIST = test_geom.h5m
diff --git a/MeshFiles/unittest/dagmc/test_geom.h5m b/MeshFiles/unittest/dagmc/test_geom.h5m
new file mode 100644
index 0000000..18e1d36
Binary files /dev/null and b/MeshFiles/unittest/dagmc/test_geom.h5m differ
diff --git a/MeshFiles/unittest/iGeom/Makefile.am b/MeshFiles/unittest/iGeom/Makefile.am
new file mode 100644
index 0000000..203b676
--- /dev/null
+++ b/MeshFiles/unittest/iGeom/Makefile.am
@@ -0,0 +1 @@
+EXTRA_DIST = shell.h5m
diff --git a/configure.ac b/configure.ac
index 82bf72b..83d8ea5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1223,6 +1223,7 @@ AC_CONFIG_FILES([Makefile
src/parallel/Makefile
src/oldinc/Makefile
test/Makefile
+ test/dagmc/Makefile
test/h5file/Makefile
test/dual/Makefile
test/obb/Makefile
@@ -1254,6 +1255,8 @@ AC_CONFIG_FILES([Makefile
MeshFiles/Makefile
MeshFiles/unittest/Makefile
MeshFiles/unittest/io/Makefile
+ MeshFiles/unittest/iGeom/Makefile
+ MeshFiles/unittest/dagmc/Makefile
])
AC_CONFIG_COMMANDS([src/MOAB_FCDefs.h],
[sed -e "s/FC_FUNC/MOAB_FC_FUNC/" src/FCDefs.h >src/MOAB_FCDefs.h])
diff --git a/test/Makefile.am b/test/Makefile.am
index 4797a49..cf79fd3 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = . io dual obb perf
+SUBDIRS = . io dual obb perf dagmc
if HDF5_FILE
SUBDIRS += h5file
endif
diff --git a/test/dagmc/Makefile.am b/test/dagmc/Makefile.am
new file mode 100644
index 0000000..d092176
--- /dev/null
+++ b/test/dagmc/Makefile.am
@@ -0,0 +1,28 @@
+LDADD = $(top_builddir)/src/libMOAB.la $(top_builddir)/tools/dagmc/DagMC.lo
+
+MESHDIR = $(top_srcdir)/MeshFiles/unittest
+
+AM_CPPFLAGS += -DSRCDIR=$(srcdir) \
+ -DMESHDIR=$(MESHDIR) \
+ -I$(builddir) -I.. -I$(srcdir)/.. \
+ -I$(top_builddir)/src \
+ -I$(top_srcdir)/src \
+ -I$(top_srcdir)/src/io \
+ -I$(top_srcdir)/src/parallel \
+ -I$(top_srcdir)/tools/dagmc
+TESTS =
+if HDF5_FILE
+ TESTS += dagmc_simple_test \
+ dagmc_rayfire_test \
+ dagmc_pointinvol_test
+endif
+check_PROGRAMS = $(TESTS)
+
+dagmc_simple_test_SOURCES = $(srcdir)/../TestUtil.hpp dagmc_simple_test.cpp
+dagmc_simple_test_CXXFLAGS = $(CGM_CPPFLAGS) $(CXXFLAGS) $(CGM_LIBS)
+dagmc_rayfire_test_SOURCES = $(srcdir)/../TestUtil.hpp dagmc_rayfire_test.cpp
+dagmc_rayfire_test_CXXFLAGS = $(CGM_CPPFLAGS) $(CXXFLAGS) $(CGM_LIBS)
+dagmc_pointinvol_test_SOURCES = $(srcdir)/../TestUtil.hpp dagmc_pointinvol_test.cpp
+dagmc_pointinvol_test_CXXFLAGS = $(CGM_CPPFLAGS) $(CXXFLAGS) $(CGM_LIBS)
+
+
diff --git a/test/dagmc/dagmc_pointinvol_test.cpp b/test/dagmc/dagmc_pointinvol_test.cpp
new file mode 100644
index 0000000..47ee7c1
--- /dev/null
+++ b/test/dagmc/dagmc_pointinvol_test.cpp
@@ -0,0 +1,283 @@
+#include <iostream>
+#include "moab/Interface.hpp"
+#ifndef IS_BUILDING_MB
+#define IS_BUILDING_MB
+#endif
+#include "TestUtil.hpp"
+#include "Internals.hpp"
+#include "moab/Core.hpp"
+
+#include "DagMC.hpp"
+
+using namespace moab;
+
+using moab::DagMC;
+
+#define DAG DagMC::instance()
+
+#define CHKERR(A) do { if (MB_SUCCESS != (A)) { \
+ std::cerr << "Failure (error code " << (A) << ") at " __FILE__ ":" \
+ << __LINE__ << std::endl; \
+ return A; } } while(false)
+
+#ifdef MESHDIR
+static const char input_file[] = STRINGIFY(MESHDIR) "/dagmc/test_geom.h5m";
+#else
+static const char input_file[] = STRINGIFY(MESHDIR) "/dagmc/test_geom.h5m";
+#endif
+
+
+void dagmc_setup_test()
+{
+ ErrorCode rval = DAG->load_file(input_file); // open the Dag file
+ CHECK_ERR(rval);
+ rval = DAG->init_OBBTree();
+ CHECK_ERR(rval);
+
+ int num_vols = DAG->num_entities(3);
+ EntityHandle vol;
+ for ( int i = 0 ; i < num_vols ; i++ )
+ {
+ vol = DAG->entity_by_index(3,i);
+ }
+ //EntityHandle volume = 12682136550675316765;
+ //CHECK_EQUAL(volume,vol);
+}
+
+void dagmc_point_in()
+{
+ int result = 0;
+ int expected_result=1;
+ double xyz[3]={0.0,0.0,0.0};
+ int vol_idx=1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ ErrorCode rval = DAG->point_in_volume(vol_h,xyz,result);
+ CHECK_ERR(rval);
+ CHECK_EQUAL(expected_result,result);
+}
+
+int dagmc_point_in_vol_dir(double origin[3],double dir[3],int vol_idx)
+{
+ int result = 0;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ double xyz[3];
+ double next_surf_dist;
+ EntityHandle next_surf;
+
+ // normalise the vector
+ double dir_norm = (dir[0]*dir[0])+(dir[1]*dir[1])+(dir[2]*dir[2]);
+
+ dir[0]=dir[0]/sqrt(dir_norm);
+ dir[1]=dir[1]/sqrt(dir_norm);
+ dir[2]=dir[2]/sqrt(dir_norm);
+
+ ErrorCode rval = DAG->ray_fire(vol_h,origin,dir,next_surf,next_surf_dist);
+
+ xyz[0]=origin[0]+(next_surf_dist*dir[0]);
+ xyz[1]=origin[1]+(next_surf_dist*dir[1]);
+ xyz[2]=origin[2]+(next_surf_dist*dir[2]);
+
+ std::cout << xyz[0] << " " << xyz[1] << " " << xyz[2] << std::endl;
+
+ rval = DAG->point_in_volume(vol_h,xyz,result,dir);
+ CHECK_ERR(rval);
+ return result;
+}
+
+void dagmc_point_in_vol_1()
+{
+ double dir[3]={ -1.0,0.0,0.0};
+ double origin[3]={0.0,0.0,0.0};
+ int vol_idx=1;
+ int expected_result=1;
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+ CHECK_EQUAL(expected_result,result);
+
+}
+
+void dagmc_point_in_vol_2()
+{
+ int expected_result=1;
+ int vol_idx=1;
+ double dir[3]={ 1.0,0.0,0.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_in_vol_3()
+{
+ int expected_result=1;
+ int vol_idx=1;
+ double dir[3]={ 0.0,-1.0,0.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_in_vol_4()
+{
+ int expected_result=1;
+ int vol_idx=1;
+ double dir[3]={ 0.0,1.0,0.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+
+}
+
+void dagmc_point_in_vol_5()
+{
+ int expected_result=1;
+ int vol_idx=1;
+ double dir[3]={ 0.0,0.0,-1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_in_vol_6()
+{
+ int expected_result=1;
+ int vol_idx=1;
+ double dir[3]={ 0.0,0.0,1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+
+}
+
+void dagmc_point_on_corner_1()
+{
+ int expected_result=1;
+ int vol_idx=1;
+ double dir[3]={ 1.0,1.0,1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_on_corner_2()
+{
+ int expected_result=1;
+ int vol_idx=1;
+ double dir[3]={ -1.0,1.0,1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_on_corner_3()
+{
+ int expected_result = 1;
+ int vol_idx=1;
+ double dir[3]={ 1.0,1.0,-1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_on_corner_4()
+{
+ int expected_result = 1;
+ int vol_idx=1;
+ double dir[3]={ -1.0,1.0,-1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_on_corner_5()
+{
+ int expected_result = 1;
+ int vol_idx=1;
+ double dir[3]={ 1.0,-1.0,1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_on_corner_6()
+{
+ int expected_result = 1;
+ int vol_idx=1;
+ double dir[3]={ -1.0,-1.0,1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_on_corner_7()
+{
+ int expected_result = 1;
+ int vol_idx=1;
+ double dir[3]={ 1.0,-1.0,-1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+void dagmc_point_on_corner_8()
+{
+ int expected_result = 1;
+ int vol_idx=1;
+ double dir[3]={ -1.0,-1.0,-1.0};
+ double origin[3]={0.0,0.0,0.0};
+
+ int result = dagmc_point_in_vol_dir(origin,dir,vol_idx);
+
+ CHECK_EQUAL(expected_result,result);
+}
+
+int main(int /* argc */, char** /* argv */)
+{
+ int result = 0;
+ result += RUN_TEST( dagmc_setup_test ); // setup problem
+ result += RUN_TEST( dagmc_point_in ); // point in centre
+ // rays fired along cardinal directions
+ result += RUN_TEST( dagmc_point_in_vol_1); // point in centre
+ result += RUN_TEST( dagmc_point_in_vol_2); // point in centre
+ result += RUN_TEST( dagmc_point_in_vol_3); // point in centre
+ result += RUN_TEST( dagmc_point_in_vol_4); // point in centre
+ result += RUN_TEST( dagmc_point_in_vol_5); // point in centre
+ result += RUN_TEST( dagmc_point_in_vol_6); // point in centre
+ // rays fired at nodes
+ result += RUN_TEST( dagmc_point_on_corner_1);
+ result += RUN_TEST( dagmc_point_on_corner_2);
+ result += RUN_TEST( dagmc_point_on_corner_3);
+ result += RUN_TEST( dagmc_point_on_corner_4);
+
+ // result += RUN_TEST( dagmc_point_in({0.0,0.0,5.0}); // point in centre
+ // result += RUN_TEST( dagmc_point_in({0.0,0.0,-5.0}); // point in centre
+ // result += RUN_TEST( dagmc_point_in({0.0,5.0,0.0}); // point in centre
+ // result += RUN_TEST( dagmc_point_in({0.0,-5.0,0.0}); // point in centre
+ // result += RUN_TEST( dagmc_point_in({5.0,0.0,0.0}); // point in centre
+ // result += RUN_TEST( dagmc_point_in({-5.0,0.0,0.0}); // point in centre
+
+ return result;
+}
diff --git a/test/dagmc/dagmc_rayfire_test.cpp b/test/dagmc/dagmc_rayfire_test.cpp
new file mode 100644
index 0000000..57aa625
--- /dev/null
+++ b/test/dagmc/dagmc_rayfire_test.cpp
@@ -0,0 +1,180 @@
+#include <iostream>
+#include "moab/Interface.hpp"
+#ifndef IS_BUILDING_MB
+#define IS_BUILDING_MB
+#endif
+#include "TestUtil.hpp"
+#include "Internals.hpp"
+#include "moab/Core.hpp"
+
+#include "DagMC.hpp"
+
+using namespace moab;
+
+using moab::DagMC;
+
+#define DAG DagMC::instance()
+
+#define CHKERR(A) do { if (MB_SUCCESS != (A)) { \
+ std::cerr << "Failure (error code " << (A) << ") at " __FILE__ ":" \
+ << __LINE__ << std::endl; \
+ return A; } } while(false)
+
+#ifdef MESHDIR
+static const char input_file[] = STRINGIFY(MESHDIR) "/dagmc/test_geom.h5m";
+#else
+static const char input_file[] = STRINGIFY(MESHDIR) "/dagmc/test_geom.h5m";
+#endif
+
+double eps = 1.0e-6;
+
+void dagmc_setup_test()
+{
+ ErrorCode rval = DAG->load_file(input_file); // open the Dag file
+ CHECK_ERR(rval);
+ rval = DAG->init_OBBTree();
+ CHECK_ERR(rval);
+
+ int num_vols = DAG->num_entities(3);
+ EntityHandle vol_h;
+ for ( int i = 0 ; i < num_vols ; i++ )
+ {
+ vol_h = DAG->entity_by_index(3,i);
+ }
+ // EntityHandle volume = 12682136550675316765;
+ // CHECK_EQUAL(volume,vol);
+}
+
+void dagmc_origin_face_rayfire()
+{
+ int vol_idx = 1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ double dir[3]={-1.0,0.0,0.0};
+ double origin[3]={0.0,0.0,0.0};
+ double next_surf_dist;
+ EntityHandle next_surf;
+ DAG->ray_fire(vol_h,origin,dir,next_surf,next_surf_dist);
+ double expected_next_surf_dist=5.0;
+ CHECK_REAL_EQUAL(expected_next_surf_dist,next_surf_dist,eps);
+}
+
+void dagmc_outside_face_rayfire()
+{
+ int vol_idx = 1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ double dir[3]={1.0,0.0,0.0}; // ray along x direction
+ double origin[3]={-10.0,0.0,0.0}; // origin at -10 0 0
+ double next_surf_dist;
+ EntityHandle next_surf;
+ DAG->ray_fire(vol_h,origin,dir,next_surf,next_surf_dist);
+ std::cout << next_surf_dist << std::endl;
+ double expected_next_surf_dist=15.0;
+ CHECK_REAL_EQUAL(expected_next_surf_dist,next_surf_dist,eps);
+}
+
+void dagmc_outside_face_rayfire_orient_exit()
+{
+ DagMC::RayHistory history;
+ int vol_idx = 1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ double dir[3]={1.0,0.0,0.0}; // ray along x direction
+ double origin[3]={-10.0,0.0,0.0}; // origin at -10 0 0
+ double next_surf_dist;
+ EntityHandle next_surf;
+ DAG->ray_fire(vol_h,origin,dir,next_surf,next_surf_dist,&history,0,1);
+ std::cout << next_surf_dist << std::endl;
+ double expected_next_surf_dist=15.0;
+ CHECK_REAL_EQUAL(expected_next_surf_dist,next_surf_dist,eps);
+}
+
+void dagmc_outside_face_rayfire_orient_entrance()
+{
+ DagMC::RayHistory history;
+ int vol_idx = 1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ double dir[3]={1.0,0.0,0.0}; // ray along x direction
+ double origin[3]={-10.0,0.0,0.0}; // origin at -10 0 0
+ double next_surf_dist;
+ EntityHandle next_surf;
+ DAG->ray_fire(vol_h,origin,dir,next_surf,next_surf_dist,&history,0.0,-1);
+ std::cout << next_surf_dist << std::endl;
+ double expected_next_surf_dist=5.0;
+ CHECK_REAL_EQUAL(expected_next_surf_dist,next_surf_dist,eps);
+}
+
+void dagmc_outside_face_rayfire_history_fail()
+{
+ DagMC::RayHistory history;
+ int vol_idx = 1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ double dir[3]={1.0,0.0,0.0}; // ray along x direction
+ double origin[3]={-10.0,0.0,0.0}; // origin at -10 0 0
+ double xyz[3];
+ double next_surf_dist;
+ EntityHandle next_surf;
+
+ history.reset();
+
+ // ray fired exactly along boundary shared by 2 facets on a single surface,
+ // needs two ray_fires to cross, this is expected and ok
+
+ // first ray fire with history
+ DAG->ray_fire(vol_h,origin,dir,next_surf,next_surf_dist,&history,0,1);
+ // second ray fire with history
+ DAG->ray_fire(vol_h,xyz,dir,next_surf,next_surf_dist,&history,0,1);
+ // this fire should hit graveyard, i.e. next_surf = 0
+ DAG->ray_fire(vol_h,xyz,dir,next_surf,next_surf_dist,&history,0,1);
+
+ // using history with this geom, there should be no next surface, i.e. 0
+ EntityHandle ZERO = 0;
+ CHECK_EQUAL(ZERO ,next_surf);
+}
+
+void dagmc_outside_face_rayfire_history()
+{
+ DagMC::RayHistory history;
+ int vol_idx = 1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ double dir[3]={1.0,0.0,0.0}; // ray along x direction
+ double origin[3]={-10.0,0.0,0.0}; // origin at -10 0 0
+ double xyz[3];
+ double next_surf_dist;
+ EntityHandle next_surf;
+
+ history.reset();
+ // first ray fire with history
+ DAG->ray_fire(vol_h,origin,dir,next_surf,next_surf_dist,&history,0,1);
+ std::cout << next_surf << " " << history.size() << std::endl;
+ // second ray fire with history
+
+ xyz[0]=origin[0]+(next_surf_dist*dir[0]);
+ xyz[1]=origin[1]+(next_surf_dist*dir[1]);
+ xyz[2]=origin[2]+(next_surf_dist*dir[2]);
+
+ // ray fired execacyl
+
+ DAG->ray_fire(vol_h,xyz,dir,next_surf,next_surf_dist,&history,0,1);
+
+ DAG->ray_fire(vol_h,xyz,dir,next_surf,next_surf_dist,&history,0,1);
+
+
+ // using history with this geom, there should be no next surface, i.e. 0
+ EntityHandle ZERO = 0;
+ CHECK_EQUAL(ZERO ,next_surf);
+}
+
+
+int main(int /* argc */, char** /* argv */)
+{
+ int result = 0;
+ result += RUN_TEST( dagmc_setup_test ); // setup problem
+ // rays fired along cardinal directions
+ result += RUN_TEST( dagmc_origin_face_rayfire ); // point in centre
+ result += RUN_TEST( dagmc_outside_face_rayfire );
+ result += RUN_TEST( dagmc_outside_face_rayfire_orient_exit ); // fire ray from point outside volume looking for exit intersections
+ result += RUN_TEST( dagmc_outside_face_rayfire_orient_entrance ); // fire ray from point outside volume looking for entrance intersection
+ result += RUN_TEST( dagmc_outside_face_rayfire_history_fail ); // fire ray from point outside geometry using ray history
+ result += RUN_TEST( dagmc_outside_face_rayfire_history ); // fire ray from point outside geometry using ray history
+
+ return result;
+}
diff --git a/test/dagmc/dagmc_simple_test.cpp b/test/dagmc/dagmc_simple_test.cpp
new file mode 100644
index 0000000..bf253f6
--- /dev/null
+++ b/test/dagmc/dagmc_simple_test.cpp
@@ -0,0 +1,137 @@
+#include <iostream>
+#include "moab/Interface.hpp"
+#ifndef IS_BUILDING_MB
+#define IS_BUILDING_MB
+#endif
+#include "TestUtil.hpp"
+#include "Internals.hpp"
+#include "moab/Core.hpp"
+
+#include "DagMC.hpp"
+
+using namespace moab;
+
+using moab::DagMC;
+
+#define DAG DagMC::instance()
+
+#define CHKERR(A) do { if (MB_SUCCESS != (A)) { \
+ std::cerr << "Failure (error code " << (A) << ") at " __FILE__ ":" \
+ << __LINE__ << std::endl; \
+ return A; } } while(false)
+
+#ifdef MESHDIR
+static const char input_file[] = STRINGIFY(MESHDIR) "/dagmc/test_geom.h5m";
+#else
+static const char input_file[] = STRINGIFY(MESHDIR) "/dagmc/test_geom.h5m";
+#endif
+
+
+void dagmc_load_file()
+{
+ ErrorCode rval = DAG->load_file(input_file); // open the Dag file
+ CHECK_ERR(rval);
+}
+
+void dagmc_build_obb()
+{
+ ErrorCode rval = DAG->init_OBBTree();
+ CHECK_ERR(rval);
+}
+
+void dagmc_num_vols()
+{
+ int expect_num_vols=2;
+ int num_vols = DAG->num_entities(3);
+ CHECK_EQUAL(expect_num_vols,num_vols);
+}
+
+void dagmc_entity_handle()
+{
+ int num_vols = DAG->num_entities(3);
+ EntityHandle vol_h;
+ for ( int i = 0 ; i < num_vols ; i++ )
+ {
+ vol_h = DAG->entity_by_index(3,i);
+ }
+ //EntityHandle expect_vol_h = 12682136550675316765;
+ //CHECK_EQUAL(expect_vol_h,vol_h);
+}
+
+void dagmc_point_in()
+{
+ int result = 0;
+ int expect_result=1;
+ int vol_idx=1;
+ double xyz[3]={0.0,0.0,0.0};
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ ErrorCode rval = DAG->point_in_volume(vol_h,xyz,result);
+ CHECK_EQUAL(expect_result,result);
+}
+
+void dagmc_rayfire()
+{
+ const double eps = 1e-6; // epsilon for test, faceting tol?
+
+ int vol_idx=1;
+ // note model is cube of side 10, centred at 0,0,0, so ray fire along
+ // any unit direction should be exactly 5.0
+ double xyz[3]={0.0,0.0,0.0};
+ double dir[3]={0.0,0.0,1.0};
+ EntityHandle next_surf;
+ double next_surf_dist;
+ double expect_next_surf_dist=5.0;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+
+ ErrorCode rval = DAG->ray_fire(vol_h,xyz,dir,next_surf,next_surf_dist);
+ CHECK_REAL_EQUAL(expect_next_surf_dist,next_surf_dist,eps);
+}
+
+void dagmc_closest_to()
+{
+ const double eps = 1e-6; // epsilon for test, faceting tol?
+
+ int vol_idx=1;
+ // note model is cube of side 10, centred at 0,0,0, so ray fire along
+ // any unit direction should be exactly 5.0
+ double xyz[3]={-6.0,0.0,0.0};
+ double distance; // distance from point to nearest surface
+ double expect_distance=1.0;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+
+ ErrorCode rval = DAG->closest_to_location(vol_h,xyz,distance);
+ // distance should be 1.0 cm
+ CHECK_REAL_EQUAL(expect_distance,distance,eps);
+}
+
+void dagmc_test_boundary()
+{
+ int vol_idx=1;
+ EntityHandle vol_h = DAG->entity_by_index(3,vol_idx);
+ int surf_idx=1;
+ EntityHandle surf_h = DAG->entity_by_index(2,surf_idx);
+
+ double xyz[3]={0.0,0.0,5.0};
+ double dir[3]={0.0,0.0,1.0};
+ int result;
+ int expect_result=0;
+
+ ErrorCode rval = DAG->test_volume_boundary(vol_h,surf_h,xyz,dir,result);
+ // check ray leaving volume
+ CHECK_EQUAL(expect_result,result);
+}
+
+int main(int /* argc */, char** /* argv */)
+{
+ int result = 0;
+ result += RUN_TEST( dagmc_load_file ); // test ray fire
+ result += RUN_TEST( dagmc_build_obb ); // build the obb
+ result += RUN_TEST( dagmc_num_vols ); // make sure the num of vols correct
+ // result += RUN_TEST( dagmc_entity_handle); // check the entity handle correct
+ result += RUN_TEST( dagmc_point_in); // check entity by point
+ result += RUN_TEST( dagmc_rayfire ) ; // ensure ray fire distance is correct
+ result += RUN_TEST( dagmc_closest_to ); // check the distance to surface nearest point
+ result += RUN_TEST( dagmc_test_boundary ); // check particle entering leaving
+
+ return result;
+}
diff --git a/tools/dagmc/DagMC.cpp b/tools/dagmc/DagMC.cpp
index 87f84cb..6e2260a 100755
--- a/tools/dagmc/DagMC.cpp
+++ b/tools/dagmc/DagMC.cpp
@@ -536,6 +536,7 @@ ErrorCode DagMC::ray_fire(const EntityHandle vol,
const double point[3], const double dir[3],
EntityHandle& next_surf, double& next_surf_dist,
RayHistory* history, double user_dist_limit,
+ int ray_orientation,
OrientedBoxTreeTool::TrvStats* stats ) {
// take some stats that are independent of nps
@@ -591,9 +592,6 @@ ErrorCode DagMC::ray_fire(const EntityHandle vol,
// min_tolerance_intersections is passed but not used in this call
const int min_tolerance_intersections = 0;
- // only get exit intersections
- const int desired_orientation = 1;
-
// numericalPrecision is used for box.intersect_ray and find triangles in the
// neighborhood of edge/node intersections.
rval = obbTree.ray_intersect_sets( dists, surfs, facets,
@@ -601,7 +599,7 @@ ErrorCode DagMC::ray_fire(const EntityHandle vol,
min_tolerance_intersections,
point, dir, &nonneg_ray_len,
stats, &neg_ray_len, &vol, &senseTag,
- &desired_orientation,
+ &ray_orientation,
history ? &(history->prev_facets) : NULL );
assert( MB_SUCCESS == rval );
if(MB_SUCCESS != rval) return rval;
diff --git a/tools/dagmc/DagMC.hpp b/tools/dagmc/DagMC.hpp
index 9e71601..fe39082 100755
--- a/tools/dagmc/DagMC.hpp
+++ b/tools/dagmc/DagMC.hpp
@@ -170,6 +170,9 @@ public:
* by this query will also be added to the history.
* @param dist_limit Optional distance limit. If provided and > 0, no intersections at a
* distance further than this value will be returned.
+ * @param ray_orientation Optional ray orientation. If provided determines intersections
+ * along the normal provided, e.g. if -1 allows intersections back along the
+ * the ray direction, Default is 1, i.e. exit intersections
* @param stats Optional TrvStats object used to measure performance of underlying OBB
* ray-firing query. See OrientedBoxTreeTool.hpp for details.
*
@@ -178,6 +181,7 @@ public:
const double ray_start[3], const double ray_dir[3],
EntityHandle& next_surf, double& next_surf_dist,
RayHistory* history = NULL, double dist_limit = 0,
+ int ray_orientation = 1,
OrientedBoxTreeTool::TrvStats* stats = NULL );
/**\brief Test if a point is inside or outside a volume
diff --git a/tools/dagmc/ray_fire_test.cc b/tools/dagmc/ray_fire_test.cc
index 7e5ce30..cc73a38 100644
--- a/tools/dagmc/ray_fire_test.cc
+++ b/tools/dagmc/ray_fire_test.cc
@@ -277,7 +277,8 @@ int main( int argc, char* argv[] )
ray_t ray = rays[i];
std::cout << " Ray: point = " << ray.p << " dir = " << ray.v << std::endl;
- rval = dagmc.ray_fire( vol, ray.p.array(), ray.v.array(), surf, dist, NULL, 0, trv_stats );
+ // added ray orientation
+ rval = dagmc.ray_fire( vol, ray.p.array(), ray.v.array(), surf, dist, NULL, 0, 1, trv_stats );
if(MB_SUCCESS != rval) {
std::cerr << "ERROR: ray_fire() failed!" << std::endl;
@@ -326,8 +327,8 @@ int main( int argc, char* argv[] )
<< " " << uvw << " " << uvw%uvw << std::endl;
uavg += uvw[0]; vavg += uvw[1]; wavg += uvw[2];
#endif
-
- dagmc.ray_fire(vol, xyz.array(), uvw.array(), surf, dist, NULL, 0, trv_stats );
+ // added ray orientation
+ dagmc.ray_fire(vol, xyz.array(), uvw.array(), surf, dist, NULL, 0, 1, trv_stats );
if( surf == 0){ random_rays_missed++; }
Repository URL: https://bitbucket.org/fathomteam/moab/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
2
1
27 Mar '14
1 new commit in MOAB:
https://bitbucket.org/fathomteam/moab/commits/6f5ee0568a20/
Changeset: 6f5ee0568a20
Branch: master
User: danwu
Date: 2014-03-27 19:49:53
Summary: Adding a few ignore items.
Affected #: 1 file
diff --git a/.gitignore b/.gitignore
index c80a80a..ba9fe1e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -127,6 +127,9 @@ test/bsp_tree_test
test/CMakeLists.txt
test/coords_connect_iterate
test/cropvol_test
+test/dagmc/dagmc_pointinvol_test
+test/dagmc/dagmc_rayfire_test
+test/dagmc/dagmc_simple_test
test/dual/dual_test
test/elem_eval_test
test/file_options_test
@@ -153,8 +156,10 @@ test/io/gmsh_test
test/io/ideas_test
test/io/nastran_test
test/io/read_cgm_basic_test
+test/io/read_cgm_connectivity_test
+test/io/read_cgm_group_test
test/io/read_cgm_load_test
-test/io/read_cgm_test
+test/io/read_cgm_senses_test
test/io/read_mpas_nc
test/io/read_nc
test/io/read_ucd_nc
Repository URL: https://bitbucket.org/fathomteam/moab/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1
0
Ive added the lines
dagmc/dagmc_rayfire_test \
dagmc/dagmc_simple_test \
dagmc/dagmc_pointinvol_test
(I also tried without the starting dagmc/)
to if HDF5_FILE in Makefile.am in/test/
I also added the h5m file we require MeshFiles/unittest/Makefile.am
I then build build without hdf5, and the test still run.
Could you please clarify that these are the correct locations for these
files
Thanks
Andy
4
5
I can confirm that I only build out of source.
Thanks
Andy
1
0
Hello,
I found very minor bug.
I tried to execute this fault code,
rval = moab.remove_entities(meshset,&meshet,1); CHKERR(rval);
This generate segmentation fault, instead error message.
Lukasz
2
1