*** empty log message ***
authorIsaac Dooley <idooley2@illinois.edu>
Mon, 12 Mar 2007 17:47:03 +0000 (17:47 +0000)
committerIsaac Dooley <idooley2@illinois.edu>
Mon, 12 Mar 2007 17:47:03 +0000 (17:47 +0000)
src/libs/ck-libs/ParFUM-Tops/ParFUM_TOPS.C
src/libs/ck-libs/ParFUM-Tops/ParFUM_TOPS.h

index c23f3a9aa8245217408b703dcb631082113d3ca4..2123c88097fc602472977d5cf1c4533ba718e96b 100644 (file)
@@ -180,7 +180,15 @@ void topModel_Destroy(TopModel* m){
 }
 
 
-TopNode topModel_InsertNode(TopModel* m, FP_TYPE x, FP_TYPE y, FP_TYPE z){
+TopNode topModel_InsertNode(TopModel* m, double x, double y, double z){
+  int newNode = FEM_add_node_local(m->mesh,false,false,false);
+  (*m->coord_T)(newNode,0)=x;
+  (*m->coord_T)(newNode,1)=y;
+  (*m->coord_T)(newNode,2)=z;
+  return newNode;
+}
+
+TopNode topModel_InsertNode(TopModel* m, float x, float y, float z){
   int newNode = FEM_add_node_local(m->mesh,false,false,false);
   (*m->coord_T)(newNode,0)=x;
   (*m->coord_T)(newNode,1)=y;
@@ -323,7 +331,15 @@ int topElement_GetNNodes(TopModel* model, TopElement elem){
 }
 
 /** @todo make sure we are in a getting mesh */
-void topNode_GetPosition(TopModel*model, TopNode node,FP_TYPE*x,FP_TYPE*y,FP_TYPE*z){
+void topNode_GetPosition(TopModel*model, TopNode node,double*x,double*y,double*z){
+  CkAssert(node>=0);
+  *x = (*model->coord_T)(node,0);
+  *y = (*model->coord_T)(node,1);
+  *z = (*model->coord_T)(node,2);
+}
+
+/** @todo make sure we are in a getting mesh */
+void topNode_GetPosition(TopModel*model, TopNode node,float*x,float*y,float*z){
   CkAssert(node>=0);
   *x = (*model->coord_T)(node,0);
   *y = (*model->coord_T)(node,1);
index b3c2ef3c956eeeddb2054e77ef4c46ac27016655..efc072255568900c3c65467fb72f31c62284c603 100644 (file)
@@ -23,10 +23,14 @@ put example here!
 
 #ifdef FP_TYPE_FLOAT
 #warning "Using floats for various things"
-typedef float FP_TYPE;
+typedef double FP_TYPE_HIGH;
+typedef float FP_TYPE_LOW;
+typedef float FP_TYPE_SYNC;
 #else
 #warning "Using doubles for various things"
-typedef double FP_TYPE;
+typedef double FP_TYPE_HIGH;
+typedef double FP_TYPE_LOW;
+typedef double FP_TYPE_SYNC;
 #endif
 
 
@@ -38,7 +42,7 @@ typedef struct{
     AllocTable2d<unsigned char> *ElemData_T;
     AllocTable2d<unsigned char> *NodeData_T;
     AllocTable2d<int> *ElemConn_T;
-    AllocTable2d<FP_TYPE> *coord_T;
+    AllocTable2d<FP_TYPE_LOW> *coord_T;
     AllocTable2d<int> *node_id_T;
     AllocTable2d<int> *elem_id_T;
 
@@ -131,7 +135,9 @@ TopModel* topModel_Create_Driver(int elem_attr_sz, int node_attr_sz, int model_a
 void topModel_Destroy(TopModel* m);
 
 /** Insert a node */
-TopNode topModel_InsertNode(TopModel*, FP_TYPE x, FP_TYPE y, FP_TYPE z);
+TopNode topModel_InsertNode(TopModel*, float x, float y, float z);
+TopNode topModel_InsertNode(TopModel*, double x, double y, double z);
+
 
 /** Set id of a node */
 void topNode_SetId(TopModel*, TopNode, TopID id);
@@ -165,8 +171,8 @@ int topModel_GetNNodes(TopModel *model);
 
 int topElement_GetNNodes(TopModel* model, TopElement elem);
 
-void topNode_GetPosition(TopModel*model, TopNode node,FP_TYPE*x,FP_TYPE*y,FP_TYPE*z);
-
+void topNode_GetPosition(TopModel*model, TopNode node,float*x,float*y,float*z);
+void topNode_GetPosition(TopModel*model, TopNode node,double*x,double*y,double*z);
 
 /** Create Iterator for nodes */
 TopNodeItr*  topModel_CreateNodeItr(TopModel*);