Index: /issm/trunk/src/c/DataSet/DataSet.cpp
===================================================================
--- /issm/trunk/src/c/DataSet/DataSet.cpp	(revision 4213)
+++ /issm/trunk/src/c/DataSet/DataSet.cpp	(revision 4214)
@@ -565,5 +565,5 @@
 /*Objects methods*/
 /*FUNCTION DataSet::Configure{{{1*/
-void DataSet::Configure(DataSet* elements,DataSet* loads, DataSet* nodes, Vertices* vertices, DataSet* materials,Parameters* parameters){
+void DataSet::Configure(DataSet* elements,Loads* loads, DataSet* nodes, Vertices* vertices, DataSet* materials,Parameters* parameters){
 
 	vector<Object*>::iterator object;
Index: /issm/trunk/src/c/DataSet/DataSet.h
===================================================================
--- /issm/trunk/src/c/DataSet/DataSet.h	(revision 4213)
+++ /issm/trunk/src/c/DataSet/DataSet.h	(revision 4214)
@@ -14,4 +14,5 @@
 class Parameters;
 class Vertices;
+class Loads;
 class Nodes;
 class DataSet;
@@ -68,5 +69,5 @@
 		void  FlagNodeSets(Vec pv_g, Vec pv_m, Vec pv_n, Vec pv_f, Vec pv_s,int analysis_type);
 		void  clear();
-		void  Configure(DataSet* elements,DataSet* loads, DataSet* nodes, Vertices* vertices, DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads, DataSet* nodes, Vertices* vertices, DataSet* materials,Parameters* parameters);
 		Object* GetObjectByOffset(int offset);
 		Object* GetObjectById(int* poffset,int eid);
@@ -168,4 +169,19 @@
 
 
+/********************************************************LOADS************************************************/
+
+class Loads: public DataSet{
+
+	public:
+
+		/*constructors, destructors: {{{1*/
+		Loads();
+		Loads(int enum_type);
+		~Loads();
+		/*}}}*/
+		/*numerics: {{{1*/
+		/*}}}*/
+
+};
 
 
Index: /issm/trunk/src/c/DataSet/Loads.cpp
===================================================================
--- /issm/trunk/src/c/DataSet/Loads.cpp	(revision 4214)
+++ /issm/trunk/src/c/DataSet/Loads.cpp	(revision 4214)
@@ -0,0 +1,44 @@
+/*
+ * \file Loads.c
+ * \brief: implementation of the Loads class, derived from DataSet class
+ */
+
+/*Headers: {{{1*/
+#ifdef HAVE_CONFIG_H
+	#include "config.h"
+#else
+#error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
+#endif
+
+#include <vector>
+#include <functional>
+#include <algorithm>
+#include <iostream>
+
+#include "./DataSet.h"
+#include "../shared/shared.h"
+#include "../include/include.h"
+#include "../EnumDefinitions/EnumDefinitions.h"
+
+using namespace std;
+/*}}}*/
+
+/*Object constructors and destructor*/
+/*FUNCTION Loads::Loads(){{{1*/
+Loads::Loads(){
+	return;
+}
+/*}}}*/
+/*FUNCTION Loads::Loads(int in_enum){{{1*/
+Loads::Loads(int in_enum): DataSet(in_enum){
+	//do nothing;
+	return;
+}
+/*}}}*/
+/*FUNCTION Loads::~Loads(){{{1*/
+Loads::~Loads(){
+	return;
+}
+/*}}}*/
+
+/*Object management*/
Index: /issm/trunk/src/c/Makefile.am
===================================================================
--- /issm/trunk/src/c/Makefile.am	(revision 4213)
+++ /issm/trunk/src/c/Makefile.am	(revision 4214)
@@ -206,4 +206,5 @@
 					./DataSet/Nodes.cpp\
 					./DataSet/Vertices.cpp\
+					./DataSet/Loads.cpp\
 					./shared/shared.h\
 					./shared/Alloc/alloc.h\
@@ -734,4 +735,5 @@
 					./DataSet/Nodes.cpp\
 					./DataSet/Vertices.cpp\
+					./DataSet/Loads.cpp\
 					./shared/shared.h\
 					./shared/Threads/issm_threads.h\
Index: /issm/trunk/src/c/modules/ComputeBasalStressx/ComputeBasalStressx.cpp
===================================================================
--- /issm/trunk/src/c/modules/ComputeBasalStressx/ComputeBasalStressx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ComputeBasalStressx/ComputeBasalStressx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void	ComputeBasalStressx( Vec* psigma,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,Parameters* parameters){
+void	ComputeBasalStressx( Vec* psigma,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,Parameters* parameters){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/ComputeBasalStressx/ComputeBasalStressx.h
===================================================================
--- /issm/trunk/src/c/modules/ComputeBasalStressx/ComputeBasalStressx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/ComputeBasalStressx/ComputeBasalStressx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void	ComputeBasalStressx( Vec* pp_g,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,
+void	ComputeBasalStressx( Vec* pp_g,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,
 			int analysis_type,int sub_analysis_type);
 
Index: /issm/trunk/src/c/modules/ComputePressurex/ComputePressurex.cpp
===================================================================
--- /issm/trunk/src/c/modules/ComputePressurex/ComputePressurex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ComputePressurex/ComputePressurex.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void	ComputePressurex( Vec* pp_g,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,Parameters* parameters){
+void	ComputePressurex( Vec* pp_g,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,Parameters* parameters){
 
 	/*intermediary*/
Index: /issm/trunk/src/c/modules/ComputePressurex/ComputePressurex.h
===================================================================
--- /issm/trunk/src/c/modules/ComputePressurex/ComputePressurex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/ComputePressurex/ComputePressurex.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void	ComputePressurex( Vec* pp_g,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,
+void	ComputePressurex( Vec* pp_g,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,
 			int analysis_type,int sub_analysis_type);
 
Index: /issm/trunk/src/c/modules/ComputeStrainRatex/ComputeStrainRatex.cpp
===================================================================
--- /issm/trunk/src/c/modules/ComputeStrainRatex/ComputeStrainRatex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ComputeStrainRatex/ComputeStrainRatex.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void	ComputeStrainRatex( Vec* peps,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,Parameters* parameters){
+void	ComputeStrainRatex( Vec* peps,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,Parameters* parameters){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/ComputeStrainRatex/ComputeStrainRatex.h
===================================================================
--- /issm/trunk/src/c/modules/ComputeStrainRatex/ComputeStrainRatex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/ComputeStrainRatex/ComputeStrainRatex.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void	ComputeStrainRatex(Vec* eps_g,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,
+void	ComputeStrainRatex(Vec* eps_g,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,
 			int analysis_type,int sub_analysis_type);
 
Index: /issm/trunk/src/c/modules/ConfigureObjectsx/ConfigureObjectsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/ConfigureObjectsx/ConfigureObjectsx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ConfigureObjectsx/ConfigureObjectsx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-int	ConfigureObjectsx( DataSet* elements, DataSet* loads, Nodes* nodes, Vertices* vertices, DataSet* materials,Parameters* parameters){
+int	ConfigureObjectsx( DataSet* elements, Loads* loads, Nodes* nodes, Vertices* vertices, DataSet* materials,Parameters* parameters){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/ConfigureObjectsx/ConfigureObjectsx.h
===================================================================
--- /issm/trunk/src/c/modules/ConfigureObjectsx/ConfigureObjectsx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/ConfigureObjectsx/ConfigureObjectsx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-int ConfigureObjectsx( DataSet* elements, DataSet* loads, Nodes* nodes, Vertices* vertices, DataSet* materials, Parameters* parameters);
+int ConfigureObjectsx( DataSet* elements, Loads* loads, Nodes* nodes, Vertices* vertices, DataSet* materials, Parameters* parameters);
 
 #endif  /* _CONFIGUREOBJECTSX_H */
Index: /issm/trunk/src/c/modules/CostFunctionx/CostFunctionx.cpp
===================================================================
--- /issm/trunk/src/c/modules/CostFunctionx/CostFunctionx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/CostFunctionx/CostFunctionx.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void CostFunctionx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void CostFunctionx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/CostFunctionx/CostFunctionx.h
===================================================================
--- /issm/trunk/src/c/modules/CostFunctionx/CostFunctionx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/CostFunctionx/CostFunctionx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void CostFunctionx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void CostFunctionx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MISFITX_H */
Index: /issm/trunk/src/c/modules/Dux/Dux.cpp
===================================================================
--- /issm/trunk/src/c/modules/Dux/Dux.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/Dux/Dux.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void Dux( Vec* pdu_g, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters){
+void Dux( Vec* pdu_g, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/Dux/Dux.h
===================================================================
--- /issm/trunk/src/c/modules/Dux/Dux.h	(revision 4213)
+++ /issm/trunk/src/c/modules/Dux/Dux.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void Dux( Vec* pdu_g, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void Dux( Vec* pdu_g, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 #endif  /* _DUX_H */
 
Index: /issm/trunk/src/c/modules/FieldAverageOntoVerticesx/FieldAverageOntoVerticesx.cpp
===================================================================
--- /issm/trunk/src/c/modules/FieldAverageOntoVerticesx/FieldAverageOntoVerticesx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/FieldAverageOntoVerticesx/FieldAverageOntoVerticesx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void FieldAverageOntoVerticesx(Vec* pfield, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters){
+void FieldAverageOntoVerticesx(Vec* pfield, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/FieldAverageOntoVerticesx/FieldAverageOntoVerticesx.h
===================================================================
--- /issm/trunk/src/c/modules/FieldAverageOntoVerticesx/FieldAverageOntoVerticesx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/FieldAverageOntoVerticesx/FieldAverageOntoVerticesx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void FieldAverageOntoVerticesx(Vec* field, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void FieldAverageOntoVerticesx(Vec* field, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _FIELDDEPTHAVERAGEX_H */
Index: /issm/trunk/src/c/modules/FieldDepthAveragex/FieldDepthAveragex.cpp
===================================================================
--- /issm/trunk/src/c/modules/FieldDepthAveragex/FieldDepthAveragex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/FieldDepthAveragex/FieldDepthAveragex.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void FieldDepthAveragex( Vec field, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,char* fieldname){
+void FieldDepthAveragex( Vec field, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,char* fieldname){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/FieldDepthAveragex/FieldDepthAveragex.h
===================================================================
--- /issm/trunk/src/c/modules/FieldDepthAveragex/FieldDepthAveragex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/FieldDepthAveragex/FieldDepthAveragex.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void FieldDepthAveragex( Vec field, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,char* fieldname);
+void FieldDepthAveragex( Vec field, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,char* fieldname);
 
 #endif  /* _FIELDDEPTHAVERAGEX_H */
Index: /issm/trunk/src/c/modules/GetSolutionFromInputsx/GetSolutionFromInputsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/GetSolutionFromInputsx/GetSolutionFromInputsx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/GetSolutionFromInputsx/GetSolutionFromInputsx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void	GetSolutionFromInputsx( Vec* psolution, DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters){
+void	GetSolutionFromInputsx( Vec* psolution, DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters){
 
 	/*intermediary: */
Index: /issm/trunk/src/c/modules/GetSolutionFromInputsx/GetSolutionFromInputsx.h
===================================================================
--- /issm/trunk/src/c/modules/GetSolutionFromInputsx/GetSolutionFromInputsx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/GetSolutionFromInputsx/GetSolutionFromInputsx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void GetSolutionFromInputsx( Vec* psolution, DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters);
+void GetSolutionFromInputsx( Vec* psolution, DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters);
 
 #endif  /* _GETSOLUTIONFROMINPUTSXX_H */
Index: /issm/trunk/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void GetVectorFromInputsx( Vec* pvector, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters, int NameEnum, int TypeEnum){
+void GetVectorFromInputsx( Vec* pvector, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters, int NameEnum, int TypeEnum){
 
 
@@ -40,5 +40,5 @@
 }
 
-void GetVectorFromInputsx( double** pvector, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters, int NameEnum, int TypeEnum){
+void GetVectorFromInputsx( double** pvector, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters, int NameEnum, int TypeEnum){
 	
 	/*output: */
Index: /issm/trunk/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.h
===================================================================
--- /issm/trunk/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.h	(revision 4214)
@@ -9,6 +9,6 @@
 
 /* local prototypes: */
-void	GetVectorFromInputsx( Vec* pvector, DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,int NameEnum,int TypeEnum);
-void	GetVectorFromInputsx( double** pvector, DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,int NameEnum,int TypeEnum);
+void	GetVectorFromInputsx( Vec* pvector, DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,int NameEnum,int TypeEnum);
+void	GetVectorFromInputsx( double** pvector, DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,int NameEnum,int TypeEnum);
 
 #endif  /* _GETVECTORFROMINPUTSXX_H */
Index: /issm/trunk/src/c/modules/Gradjx/Gradjx.cpp
===================================================================
--- /issm/trunk/src/c/modules/Gradjx/Gradjx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/Gradjx/Gradjx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void Gradjx( Vec* pgradient, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int control_type){
+void Gradjx( Vec* pgradient, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int control_type){
 
 	int i;
Index: /issm/trunk/src/c/modules/Gradjx/Gradjx.h
===================================================================
--- /issm/trunk/src/c/modules/Gradjx/Gradjx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/Gradjx/Gradjx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void Gradjx(Vec* pgrad_g, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,  Parameters* parameters, int control_type);
+void Gradjx(Vec* pgrad_g, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,  Parameters* parameters, int control_type);
 
 #endif  /* _GRADJX_H */
Index: /issm/trunk/src/c/modules/InputAXPYx/InputAXPYx.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputAXPYx/InputAXPYx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputAXPYx/InputAXPYx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputAXPYx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int YEnum, double scalar, int XEnum){
+void InputAXPYx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int YEnum, double scalar, int XEnum){
 
 	/*intermediary:*/
Index: /issm/trunk/src/c/modules/InputAXPYx/InputAXPYx.h
===================================================================
--- /issm/trunk/src/c/modules/InputAXPYx/InputAXPYx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputAXPYx/InputAXPYx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void InputAXPYx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int YEnum, double scalar, int XEnum);
+void InputAXPYx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int YEnum, double scalar, int XEnum);
 
 #endif  /* _AXPYINPUTX_H */
Index: /issm/trunk/src/c/modules/InputControlConstrainx/InputControlConstrainx.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputControlConstrainx/InputControlConstrainx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputControlConstrainx/InputControlConstrainx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputControlConstrainx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int control_type,double cm_min, double cm_max){
+void InputControlConstrainx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int control_type,double cm_min, double cm_max){
 
 	/*intermediary:*/
Index: /issm/trunk/src/c/modules/InputControlConstrainx/InputControlConstrainx.h
===================================================================
--- /issm/trunk/src/c/modules/InputControlConstrainx/InputControlConstrainx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputControlConstrainx/InputControlConstrainx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void InputControlConstrainx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int control_type,double cm_min, double cm_max);
+void InputControlConstrainx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int control_type,double cm_min, double cm_max);
 
 #endif  /* _ControlConstrainINPUTX_H */
Index: /issm/trunk/src/c/modules/InputConvergencex/InputConvergencex.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputConvergencex/InputConvergencex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputConvergencex/InputConvergencex.cpp	(revision 4214)
@@ -8,5 +8,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-int InputConvergencex(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int* enums, int num_enums, int* criterionenums, double* criterionvalues,int num_criterionenums){
+int InputConvergencex(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int* enums, int num_enums, int* criterionenums, double* criterionvalues,int num_criterionenums){
 
 	/*intermediary:*/
Index: /issm/trunk/src/c/modules/InputConvergencex/InputConvergencex.h
===================================================================
--- /issm/trunk/src/c/modules/InputConvergencex/InputConvergencex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputConvergencex/InputConvergencex.h	(revision 4214)
@@ -8,5 +8,5 @@
 
 /* local prototypes: */
-int InputConvergencex(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int* enums, int num_enums, int* criterionenums, double* criterionvalues,int num_criterionenums);
+int InputConvergencex(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int* enums, int num_enums, int* criterionenums, double* criterionvalues,int num_criterionenums);
 
 #endif  /* _INPUTCONVERGENCEX_H */
Index: /issm/trunk/src/c/modules/InputDepthAveragex/InputDepthAveragex.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputDepthAveragex/InputDepthAveragex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputDepthAveragex/InputDepthAveragex.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputDepthAveragex( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int enum_type,int average_enum_type){
+void InputDepthAveragex( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int enum_type,int average_enum_type){
 	
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/InputDepthAveragex/InputDepthAveragex.h
===================================================================
--- /issm/trunk/src/c/modules/InputDepthAveragex/InputDepthAveragex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputDepthAveragex/InputDepthAveragex.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void InputDepthAveragex( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int enum_type,int average_enum_type);
+void InputDepthAveragex( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int enum_type,int average_enum_type);
 
 #endif  /* _DEPTHAVERAGEINPUTX_H */
Index: /issm/trunk/src/c/modules/InputDuplicatex/InputDuplicatex.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputDuplicatex/InputDuplicatex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputDuplicatex/InputDuplicatex.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputDuplicatex(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int original_enum, int new_enum){
+void InputDuplicatex(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int original_enum, int new_enum){
 
 	/*intermediary:*/
Index: /issm/trunk/src/c/modules/InputDuplicatex/InputDuplicatex.h
===================================================================
--- /issm/trunk/src/c/modules/InputDuplicatex/InputDuplicatex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputDuplicatex/InputDuplicatex.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void InputDuplicatex(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int reinitialized_enum, int original_enum);
+void InputDuplicatex(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int reinitialized_enum, int original_enum);
 
 #endif  /* _INPUTDUPLICATEX_H */
Index: /issm/trunk/src/c/modules/InputExtrudex/InputExtrudex.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputExtrudex/InputExtrudex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputExtrudex/InputExtrudex.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputExtrudex( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int enum_type){
+void InputExtrudex( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int enum_type){
 
 	int i;
Index: /issm/trunk/src/c/modules/InputExtrudex/InputExtrudex.h
===================================================================
--- /issm/trunk/src/c/modules/InputExtrudex/InputExtrudex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputExtrudex/InputExtrudex.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void InputExtrudex( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int enum_type);
+void InputExtrudex( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int enum_type);
 
 #endif  /* _INPUTEXTRUDEX_H */
Index: /issm/trunk/src/c/modules/InputScalex/InputScalex.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputScalex/InputScalex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputScalex/InputScalex.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputScalex(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int enum_type, double scale_factor){
+void InputScalex(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int enum_type, double scale_factor){
 
 	/*intermediary:*/
Index: /issm/trunk/src/c/modules/InputScalex/InputScalex.h
===================================================================
--- /issm/trunk/src/c/modules/InputScalex/InputScalex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputScalex/InputScalex.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void InputScalex(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int enum_type, double scale_factor);
+void InputScalex(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int enum_type, double scale_factor);
 
 #endif  /* _SCALEINPUTX_H */
Index: /issm/trunk/src/c/modules/InputToResultx/InputToResultx.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputToResultx/InputToResultx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputToResultx/InputToResultx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputToResultx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int enum_type,int step, double time){
+void InputToResultx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int enum_type,int step, double time){
 
 	/*intermediary:*/
Index: /issm/trunk/src/c/modules/InputToResultx/InputToResultx.h
===================================================================
--- /issm/trunk/src/c/modules/InputToResultx/InputToResultx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputToResultx/InputToResultx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void InputToResultx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,int enum_type,int step=1, double time=0);
+void InputToResultx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,int enum_type,int step=1, double time=0);
 
 #endif  /* _INPUTTORESULTX_H */
Index: /issm/trunk/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,bool   constant, int name){
+void InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,bool   constant, int name){
 
 	int i;
@@ -30,5 +30,5 @@
 	}
 }
-void InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int    constant, int name){
+void InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int    constant, int name){
 	
 	int i;
@@ -51,5 +51,5 @@
 	}
 }
-void InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,double constant, int name){
+void InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,double constant, int name){
 
 	int i;
Index: /issm/trunk/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.h
===================================================================
--- /issm/trunk/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.h	(revision 4214)
@@ -10,7 +10,7 @@
 
 /* local prototypes: */
-void		InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters, bool   constant, int name);
-void		InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters, int    constant, int name);
-void		InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters, double constant, int name);
+void		InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters, bool   constant, int name);
+void		InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters, int    constant, int name);
+void		InputUpdateFromConstantx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters, double constant, int name);
 
 #endif  /* _UPDATEINPUTSFROMCONSTANTXX_H */
Index: /issm/trunk/src/c/modules/InputUpdateFromSolutionx/InputUpdateFromSolutionx.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputUpdateFromSolutionx/InputUpdateFromSolutionx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputUpdateFromSolutionx/InputUpdateFromSolutionx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,Vec solution){
+void InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,Vec solution){
 
 	double* serial_solution=NULL;
@@ -25,5 +25,5 @@
 
 
-void InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,double* solution){
+void InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,double* solution){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/InputUpdateFromSolutionx/InputUpdateFromSolutionx.h
===================================================================
--- /issm/trunk/src/c/modules/InputUpdateFromSolutionx/InputUpdateFromSolutionx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputUpdateFromSolutionx/InputUpdateFromSolutionx.h	(revision 4214)
@@ -10,10 +10,10 @@
 
 /* local prototypes: */
-void		InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,Vec solution);
-void        InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,double* solution);
+void		InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,Vec solution);
+void        InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,double* solution);
 
 //with timestep
-void		InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,Vec solution,int timestep);
-void        InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,double* solution, int timestep);
+void		InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,Vec solution,int timestep);
+void        InputUpdateFromSolutionx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,double* solution, int timestep);
 
 #endif  /* _UPDATEINPUTSFROMSOLUTIONXX_H */
Index: /issm/trunk/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.cpp
===================================================================
--- /issm/trunk/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.cpp	(revision 4214)
@@ -9,5 +9,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,Vec vector, int NameEnum, int TypeEnum){
+void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,Vec vector, int NameEnum, int TypeEnum){
 
 	double* serial_vector=NULL;
@@ -22,5 +22,5 @@
 
 	
-void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,double* vector, int NameEnum, int TypeEnum){
+void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,double* vector, int NameEnum, int TypeEnum){
 
 	int i;
@@ -60,5 +60,5 @@
 }
 
-void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int* vector, int NameEnum, int TypeEnum){
+void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int* vector, int NameEnum, int TypeEnum){
 	
 	int i;
@@ -98,5 +98,5 @@
 }
 
-void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,bool* vector, int NameEnum, int TypeEnum){
+void InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,bool* vector, int NameEnum, int TypeEnum){
 
 	int i;
Index: /issm/trunk/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.h
===================================================================
--- /issm/trunk/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.h	(revision 4214)
@@ -10,8 +10,8 @@
 
 /* local prototypes: */
-void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,Vec vector, int NameEnum,int TypeEnum);
-void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,double* vector, int NameEnum,int TypeEnum);
-void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,int* vector, int NameEnum,int TypeEnum);
-void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,bool* vector, int NameEnum,int TypeEnum);
+void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,Vec vector, int NameEnum,int TypeEnum);
+void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,double* vector, int NameEnum,int TypeEnum);
+void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,int* vector, int NameEnum,int TypeEnum);
+void	InputUpdateFromVectorx( DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials,  Parameters* parameters,bool* vector, int NameEnum,int TypeEnum);
 
 #endif  /* _UPDATEINPUTSFROMVECTORXX_H */
Index: /issm/trunk/src/c/modules/MassFluxx/MassFluxx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MassFluxx/MassFluxx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MassFluxx/MassFluxx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void MassFluxx(double* pmass_flux, DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters,  double* segments,int num_segments){
+void MassFluxx(double* pmass_flux, DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters,  double* segments,int num_segments){
 
 	int i,j;
Index: /issm/trunk/src/c/modules/MassFluxx/MassFluxx.h
===================================================================
--- /issm/trunk/src/c/modules/MassFluxx/MassFluxx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MassFluxx/MassFluxx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MassFluxx(double* pmass_flux, DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads,DataSet* materials, Parameters* parameters,double* segments,int num_segments);
+void MassFluxx(double* pmass_flux, DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads,DataSet* materials, Parameters* parameters,double* segments,int num_segments);
 
 
Index: /issm/trunk/src/c/modules/MaxAbsVxx/MaxAbsVxx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MaxAbsVxx/MaxAbsVxx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxAbsVxx/MaxAbsVxx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MaxAbsVxx( double* pmaxabsvx, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MaxAbsVxx( double* pmaxabsvx, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MaxAbsVxx/MaxAbsVxx.h
===================================================================
--- /issm/trunk/src/c/modules/MaxAbsVxx/MaxAbsVxx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxAbsVxx/MaxAbsVxx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MaxAbsVxx( double* pmaxabsvx, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MaxAbsVxx( double* pmaxabsvx, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MAXABSVXX_H */
Index: /issm/trunk/src/c/modules/MaxAbsVyx/MaxAbsVyx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MaxAbsVyx/MaxAbsVyx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxAbsVyx/MaxAbsVyx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MaxAbsVyx( double* pmaxabsvy, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MaxAbsVyx( double* pmaxabsvy, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MaxAbsVyx/MaxAbsVyx.h
===================================================================
--- /issm/trunk/src/c/modules/MaxAbsVyx/MaxAbsVyx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxAbsVyx/MaxAbsVyx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MaxAbsVyx( double* pmaxabsvy, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MaxAbsVyx( double* pmaxabsvy, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MAXABSVYX_H */
Index: /issm/trunk/src/c/modules/MaxAbsVzx/MaxAbsVzx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MaxAbsVzx/MaxAbsVzx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxAbsVzx/MaxAbsVzx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MaxAbsVzx( double* pmaxabsvz, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MaxAbsVzx( double* pmaxabsvz, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MaxAbsVzx/MaxAbsVzx.h
===================================================================
--- /issm/trunk/src/c/modules/MaxAbsVzx/MaxAbsVzx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxAbsVzx/MaxAbsVzx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MaxAbsVzx( double* pmaxabsvz, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MaxAbsVzx( double* pmaxabsvz, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MAXABSVZX_H */
Index: /issm/trunk/src/c/modules/MaxVelx/MaxVelx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MaxVelx/MaxVelx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVelx/MaxVelx.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MaxVelx( double* pmaxvel, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MaxVelx( double* pmaxvel, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MaxVelx/MaxVelx.h
===================================================================
--- /issm/trunk/src/c/modules/MaxVelx/MaxVelx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVelx/MaxVelx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MaxVelx( double* pmaxvel, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MaxVelx( double* pmaxvel, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MAXVELX_H */
Index: /issm/trunk/src/c/modules/MaxVxx/MaxVxx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MaxVxx/MaxVxx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVxx/MaxVxx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MaxVxx( double* pmaxvx, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MaxVxx( double* pmaxvx, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MaxVxx/MaxVxx.h
===================================================================
--- /issm/trunk/src/c/modules/MaxVxx/MaxVxx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVxx/MaxVxx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void MaxVxx( double* pmaxvx, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MaxVxx( double* pmaxvx, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MAXVXX_H */
Index: /issm/trunk/src/c/modules/MaxVyx/MaxVyx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MaxVyx/MaxVyx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVyx/MaxVyx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MaxVyx( double* pmaxvy, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MaxVyx( double* pmaxvy, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MaxVyx/MaxVyx.h
===================================================================
--- /issm/trunk/src/c/modules/MaxVyx/MaxVyx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVyx/MaxVyx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MaxVyx( double* pmaxvy, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MaxVyx( double* pmaxvy, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MAXVYX_H */
Index: /issm/trunk/src/c/modules/MaxVzx/MaxVzx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MaxVzx/MaxVzx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVzx/MaxVzx.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MaxVzx( double* pmaxvz, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MaxVzx( double* pmaxvz, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MaxVzx/MaxVzx.h
===================================================================
--- /issm/trunk/src/c/modules/MaxVzx/MaxVzx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MaxVzx/MaxVzx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MaxVzx( double* pmaxvz, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MaxVzx( double* pmaxvz, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MAXVZX_H */
Index: /issm/trunk/src/c/modules/MinVelx/MinVelx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MinVelx/MinVelx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVelx/MinVelx.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MinVelx( double* pminvel, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MinVelx( double* pminvel, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MinVelx/MinVelx.h
===================================================================
--- /issm/trunk/src/c/modules/MinVelx/MinVelx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVelx/MinVelx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MinVelx( double* pminvel, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MinVelx( double* pminvel, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MINVELX_H */
Index: /issm/trunk/src/c/modules/MinVxx/MinVxx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MinVxx/MinVxx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVxx/MinVxx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MinVxx( double* pminvx, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MinVxx( double* pminvx, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MinVxx/MinVxx.h
===================================================================
--- /issm/trunk/src/c/modules/MinVxx/MinVxx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVxx/MinVxx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MinVxx( double* pminvx, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MinVxx( double* pminvx, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MINVX_H */
Index: /issm/trunk/src/c/modules/MinVyx/MinVyx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MinVyx/MinVyx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVyx/MinVyx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MinVyx( double* pminvy, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MinVyx( double* pminvy, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MinVyx/MinVyx.h
===================================================================
--- /issm/trunk/src/c/modules/MinVyx/MinVyx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVyx/MinVyx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MinVyx( double* pminvy, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MinVyx( double* pminvy, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MINVYX_H */
Index: /issm/trunk/src/c/modules/MinVzx/MinVzx.cpp
===================================================================
--- /issm/trunk/src/c/modules/MinVzx/MinVzx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVzx/MinVzx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void MinVzx( double* pminvz, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void MinVzx( double* pminvz, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	int i;
Index: /issm/trunk/src/c/modules/MinVzx/MinVzx.h
===================================================================
--- /issm/trunk/src/c/modules/MinVzx/MinVzx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/MinVzx/MinVzx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void MinVzx( double* pminvz, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void MinVzx( double* pminvz, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MINVZX_H */
Index: /issm/trunk/src/c/modules/Misfitx/Misfitx.cpp
===================================================================
--- /issm/trunk/src/c/modules/Misfitx/Misfitx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/Misfitx/Misfitx.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../SurfaceAreax/SurfaceAreax.h"
 
-void Misfitx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void Misfitx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/Misfitx/Misfitx.h
===================================================================
--- /issm/trunk/src/c/modules/Misfitx/Misfitx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/Misfitx/Misfitx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void Misfitx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void Misfitx( double* pJ, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _MISFITX_H */
Index: /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness/CreateLoadsBalancedthickness.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness/CreateLoadsBalancedthickness.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness/CreateLoadsBalancedthickness.cpp	(revision 4214)
@@ -11,8 +11,8 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsBalancedthickness(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsBalancedthickness(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*DataSet*/
-	DataSet*    loads    = NULL;
+	Loads*    loads    = NULL;
 
 	/*Recover pointer: */
@@ -20,5 +20,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 	
 	/*Assign output pointer: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness2/CreateLoadsBalancedthickness2.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness2/CreateLoadsBalancedthickness2.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Balancedthickness2/CreateLoadsBalancedthickness2.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsBalancedthickness2(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsBalancedthickness2(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*Intermediary*/
@@ -17,5 +17,5 @@
 
 	/*Output*/
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 
 	/*Recover pointer: */
@@ -23,5 +23,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Get edges and elements*/
Index: /issm/trunk/src/c/modules/ModelProcessorx/Balancedvelocities/CreateLoadsBalancedvelocities.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Balancedvelocities/CreateLoadsBalancedvelocities.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Balancedvelocities/CreateLoadsBalancedvelocities.cpp	(revision 4214)
@@ -11,8 +11,8 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsBalancedvelocities(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsBalancedvelocities(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*DataSet*/
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 
 	/*Recover pointer: */
@@ -20,5 +20,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Assign output pointer: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/CreateDataSets.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/CreateDataSets.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/CreateDataSets.cpp	(revision 4214)
@@ -16,5 +16,5 @@
 
 
-void CreateDataSets(DataSet** pelements,Nodes** pnodes, Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, DataSet** ploads,Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle,int solution_type,int analysis_type,int nummodels,int analysis_counter){
+void CreateDataSets(DataSet** pelements,Nodes** pnodes, Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, Loads** ploads,Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle,int solution_type,int analysis_type,int nummodels,int analysis_counter){
 
 	bool continuous=true;
Index: /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateLoadsDiagnosticHoriz.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateLoadsDiagnosticHoriz.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateLoadsDiagnosticHoriz.cpp	(revision 4214)
@@ -11,8 +11,8 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsDiagnosticHoriz(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsDiagnosticHoriz(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*DataSets*/
-	DataSet*    loads    = NULL;
+	Loads*    loads    = NULL;
 	Icefront*   icefront = NULL;
 	Riftfront*  riftfront= NULL;
@@ -28,5 +28,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Now, is the flag macayaealpattyn on? otherwise, do nothing: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHutter/CreateLoadsDiagnosticHutter.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHutter/CreateLoadsDiagnosticHutter.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHutter/CreateLoadsDiagnosticHutter.cpp	(revision 4214)
@@ -11,8 +11,8 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsDiagnosticHutter(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsDiagnosticHutter(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*DataSet*/
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 
 	/*Recover pointer: */
@@ -20,5 +20,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 	
 	/*Assign output pointer: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticStokes/CreateLoadsDiagnosticStokes.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticStokes/CreateLoadsDiagnosticStokes.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticStokes/CreateLoadsDiagnosticStokes.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsDiagnosticStokes(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsDiagnosticStokes(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*Intermediary*/
@@ -19,5 +19,5 @@
 	
 	/*DataSet*/
-	DataSet*    loads    = NULL;
+	Loads*    loads    = NULL;
 	Pengrid*    pengrid  = NULL;
 
@@ -30,5 +30,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Now, is the flag ishutter on? otherwise, do nothing: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticVert/CreateLoadsDiagnosticVert.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticVert/CreateLoadsDiagnosticVert.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/DiagnosticVert/CreateLoadsDiagnosticVert.cpp	(revision 4214)
@@ -11,8 +11,8 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsDiagnosticVert(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsDiagnosticVert(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*DataSet*/
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 
 	/*Recover pointer: */
@@ -20,5 +20,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Assign output pointer: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/Melting/CreateLoadsMelting.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Melting/CreateLoadsMelting.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Melting/CreateLoadsMelting.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsMelting(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsMelting(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*Intermediary*/
@@ -17,5 +17,5 @@
 
 	/*DataSet*/
-	DataSet*    loads    = NULL;
+	Loads*    loads    = NULL;
 
 	/*if 2d: Error*/
@@ -26,5 +26,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	//create penalties for grids: no grid can have a temperature over the melting point
Index: /issm/trunk/src/c/modules/ModelProcessorx/ModelProcessorx.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/ModelProcessorx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/ModelProcessorx.cpp	(revision 4214)
@@ -16,5 +16,5 @@
 #include "../../modules/modules.h"
 
-void ModelProcessorx(DataSet** pelements, Nodes** pnodes, Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, DataSet** ploads, Parameters** pparameters, ConstDataHandle IOMODEL,int solution_type,int nummodels, int* analysis_type_list){
+void ModelProcessorx(DataSet** pelements, Nodes** pnodes, Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, Loads** ploads, Parameters** pparameters, ConstDataHandle IOMODEL,int solution_type,int nummodels, int* analysis_type_list){
 
 	int i;
@@ -27,5 +27,5 @@
 	DataSet* materials=NULL;
 	DataSet* constraints=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	Parameters* parameters=NULL;
 
Index: /issm/trunk/src/c/modules/ModelProcessorx/ModelProcessorx.h
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/ModelProcessorx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/ModelProcessorx.h	(revision 4214)
@@ -13,8 +13,8 @@
 #include "../../io/io.h"
 
-void ModelProcessorx(DataSet** pelements, Nodes** pnodes, Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, DataSet** ploads, Parameters** pparameters, ConstDataHandle iomodel_handle,int solution_type,int nummodels, int* analysis_type_list);
+void ModelProcessorx(DataSet** pelements, Nodes** pnodes, Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, Loads** ploads, Parameters** pparameters, ConstDataHandle iomodel_handle,int solution_type,int nummodels, int* analysis_type_list);
 
 /*Creation of fem datasets: general drivers*/
-void  CreateDataSets(DataSet** pelements,Nodes** pnodes,Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, DataSet** ploads,Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle,int solution_type,int analysis_type,int nummodels,int analysis_counter);
+void  CreateDataSets(DataSet** pelements,Nodes** pnodes,Vertices** pvertices, DataSet** pmaterials, DataSet** pconstraints, Loads** ploads,Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle,int solution_type,int analysis_type,int nummodels,int analysis_counter);
 void  CreateElementsVerticesAndMaterials(DataSet** pelements,Vertices** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle,int nummodels);
 void  CreateParameters(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle,int solution_type,int analysis_type,int analysis_counter);
@@ -27,5 +27,5 @@
 void	CreateNodesDiagnosticHoriz(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsDiagnosticHoriz(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void  CreateLoadsDiagnosticHoriz(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void  CreateLoadsDiagnosticHoriz(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsDiagnosticHoriz(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -33,5 +33,5 @@
 void	CreateNodesDiagnosticVert(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsDiagnosticVert(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsDiagnosticVert(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsDiagnosticVert(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsDiagnosticVert(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -39,5 +39,5 @@
 void	CreateNodesDiagnosticHutter(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsDiagnosticHutter(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsDiagnosticHutter(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsDiagnosticHutter(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsDiagnosticHutter(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -45,5 +45,5 @@
 void	CreateNodesDiagnosticStokes(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsDiagnosticStokes(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsDiagnosticStokes(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsDiagnosticStokes(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsDiagnosticStokes(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -51,5 +51,5 @@
 void	CreateNodesSlopeCompute(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsSlopeCompute(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsSlopeCompute(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsSlopeCompute(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsSlopeCompute(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -57,5 +57,5 @@
 void	CreateNodesThermal(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsThermal(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsThermal(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsThermal(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsThermal(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -63,5 +63,5 @@
 void	CreateNodesMelting(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsMelting(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsMelting(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsMelting(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsMelting(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -69,5 +69,5 @@
 void	CreateNodesPrognostic(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsPrognostic(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsPrognostic(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsPrognostic(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsPrognostic(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -75,5 +75,5 @@
 void	CreateNodesPrognostic2(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsPrognostic2(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsPrognostic2(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsPrognostic2(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsPrognostic2(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -81,10 +81,10 @@
 void	CreateNodesBalancedthickness(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsBalancedthickness(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsBalancedthickness(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsBalancedthickness(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsBalancedthickness(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
 void	CreateNodesBalancedthickness2(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsBalancedthickness2(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsBalancedthickness2(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsBalancedthickness2(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsBalancedthickness2(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -92,5 +92,5 @@
 void	CreateNodesBalancedvelocities(Nodes** pnodes,IoModel* iomodel_handle,ConstDataHandle iomodel_handle);
 void	CreateConstraintsBalancedvelocities(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
-void    CreateLoadsBalancedvelocities(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
+void    CreateLoadsBalancedvelocities(Loads** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
 void	UpdateElementsBalancedvelocities(DataSet* elements,IoModel* iomodel_handle,ConstDataHandle iomodel_handle,int analysis_counter,int analysis_type);
 
@@ -104,6 +104,6 @@
 
 /*Diverse: */
-void  SortDataSets(DataSet** pelements,Nodes** pnodes,Vertices** pvertices, DataSet** ploads, DataSet** pmaterials, DataSet** pconstraints, Parameters** pparameters);
-void  UpdateCounters(IoModel* iomodel,Nodes** pnodes,DataSet** ploads, DataSet** pconstraints);
+void  SortDataSets(DataSet** pelements,Nodes** pnodes,Vertices** pvertices, Loads** ploads, DataSet** pmaterials, DataSet** pconstraints, Parameters** pparameters);
+void  UpdateCounters(IoModel* iomodel,Nodes** pnodes,Loads** ploads, DataSet** pconstraints);
 
 #endif
Index: /issm/trunk/src/c/modules/ModelProcessorx/Prognostic/CreateLoadsPrognostic.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Prognostic/CreateLoadsPrognostic.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Prognostic/CreateLoadsPrognostic.cpp	(revision 4214)
@@ -11,8 +11,8 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsPrognostic(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsPrognostic(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*DataSet*/
-	DataSet*    loads    = NULL;
+	Loads*    loads    = NULL;
 
 	/*Recover pointer: */
@@ -20,5 +20,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Assign output pointer: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/Prognostic2/CreateLoadsPrognostic2.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Prognostic2/CreateLoadsPrognostic2.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Prognostic2/CreateLoadsPrognostic2.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsPrognostic2(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsPrognostic2(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*Intermediary*/
@@ -18,5 +18,5 @@
 
 	/*Output*/
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 
 	/*Recover pointer: */
@@ -24,5 +24,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Get edges and elements*/
Index: /issm/trunk/src/c/modules/ModelProcessorx/SlopeCompute/CreateLoadsSlopeCompute.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/SlopeCompute/CreateLoadsSlopeCompute.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/SlopeCompute/CreateLoadsSlopeCompute.cpp	(revision 4214)
@@ -11,8 +11,8 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsSlopeCompute(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsSlopeCompute(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*DataSet*/
-	DataSet*    loads    = NULL;
+	Loads*    loads    = NULL;
 
 	/*Recover pointer: */
@@ -20,5 +20,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*Assign output pointer: */
Index: /issm/trunk/src/c/modules/ModelProcessorx/SortDataSets.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/SortDataSets.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/SortDataSets.cpp	(revision 4214)
@@ -16,10 +16,10 @@
 
 
-void SortDataSets(DataSet** pelements,Nodes** pnodes,Vertices** pvertices, DataSet** ploads, DataSet** pmaterials, DataSet** pconstraints, Parameters** pparameters){
+void SortDataSets(DataSet** pelements,Nodes** pnodes,Vertices** pvertices, Loads** ploads, DataSet** pmaterials, DataSet** pconstraints, Parameters** pparameters){
 
 	DataSet* elements=NULL;
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	DataSet* constraints=NULL;
Index: /issm/trunk/src/c/modules/ModelProcessorx/Thermal/CreateLoadsThermal.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/Thermal/CreateLoadsThermal.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/Thermal/CreateLoadsThermal.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../ModelProcessorx.h"
 
-void	CreateLoadsThermal(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
+void	CreateLoadsThermal(Loads** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
 
 	/*Intermediary*/
@@ -17,5 +17,5 @@
 
 	/*DataSet*/
-	DataSet*    loads    = NULL;
+	Loads*    loads    = NULL;
 	Pengrid*    pengrid  = NULL;
 
@@ -24,5 +24,5 @@
 
 	/*Create loads if they do not exist yet*/
-	if(!loads) loads = new DataSet(LoadsEnum);
+	if(!loads) loads = new Loads(LoadsEnum);
 
 	/*return if 2d mesh*/
Index: /issm/trunk/src/c/modules/ModelProcessorx/UpdateCounters.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/UpdateCounters.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/ModelProcessorx/UpdateCounters.cpp	(revision 4214)
@@ -15,8 +15,8 @@
 #include "./ModelProcessorx.h"
 
-void    UpdateCounters(IoModel* iomodel,Nodes** pnodes,DataSet** ploads, DataSet** pconstraints){
+void    UpdateCounters(IoModel* iomodel,Nodes** pnodes,Loads** ploads, DataSet** pconstraints){
 
 	Nodes* nodes=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* constraints=NULL;
 
Index: /issm/trunk/src/c/modules/OutputResultsx/ElementResultsToPatch.cpp
===================================================================
--- /issm/trunk/src/c/modules/OutputResultsx/ElementResultsToPatch.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/OutputResultsx/ElementResultsToPatch.cpp	(revision 4214)
@@ -15,5 +15,5 @@
 #include "../../objects/objects.h"
 		
-void ElementResultsToPatch(DataSet* elements,  Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,DataSet* results){
+void ElementResultsToPatch(DataSet* elements,  Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,DataSet* results){
 
 	int i;
Index: /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp	(revision 4214)
@@ -17,7 +17,7 @@
 		
 #ifdef _SERIAL_
-void OutputResultsx(mxArray** pdataref, DataSet* elements, Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,DataSet* results){
+void OutputResultsx(mxArray** pdataref, DataSet* elements, Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,DataSet* results){
 #else
-void OutputResultsx(                    DataSet* elements, Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,DataSet* results){
+void OutputResultsx(                    DataSet* elements, Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,DataSet* results){
 #endif
 
Index: /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.h
===================================================================
--- /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.h	(revision 4214)
@@ -16,13 +16,13 @@
 #ifdef _SERIAL_
 #include <mex.h>
-void OutputResultsx(mxArray** pdataref, DataSet* elements, Nodes* nodes, Vertices* vertices, DataSet* loads,  DataSet* materials, Parameters* parameters,DataSet* results);
+void OutputResultsx(mxArray** pdataref, DataSet* elements, Nodes* nodes, Vertices* vertices, Loads* loads,  DataSet* materials, Parameters* parameters,DataSet* results);
 void MatlabWriteResults(mxArray** pdataref, Parameters* parameters, DataSet* results);
 #else
-void OutputResultsx(DataSet* elements, Nodes* nodes, Vertices* vertices, DataSet* loads,  DataSet* materials, Parameters* parameters,DataSet* results);
+void OutputResultsx(DataSet* elements, Nodes* nodes, Vertices* vertices, Loads* loads,  DataSet* materials, Parameters* parameters,DataSet* results);
 void FileWriteResults(Parameters* parameters, DataSet* results);
 #endif
 
 /* local prototypes: */
-void ElementResultsToPatch(DataSet* elements,  Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,DataSet* results);
+void ElementResultsToPatch(DataSet* elements,  Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,DataSet* results);
 
 #endif  /* _OUTPUTRESULTS_H */
Index: /issm/trunk/src/c/modules/OutputRiftsx/OutputRiftsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/OutputRiftsx/OutputRiftsx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/OutputRiftsx/OutputRiftsx.cpp	(revision 4214)
@@ -11,5 +11,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void OutputRiftsx( Vec* priftproperties, DataSet* loads, int numrifts){
+void OutputRiftsx( Vec* priftproperties, Loads* loads, int numrifts){
 
 	/*output: */
Index: /issm/trunk/src/c/modules/OutputRiftsx/OutputRiftsx.h
===================================================================
--- /issm/trunk/src/c/modules/OutputRiftsx/OutputRiftsx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/OutputRiftsx/OutputRiftsx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void OutputRiftsx( Vec* priftproperties, DataSet* loads, int numrifts);
+void OutputRiftsx( Vec* priftproperties, Loads* loads, int numrifts);
 
 #endif  /* _OUTPUTRIFTSX_H */
Index: /issm/trunk/src/c/modules/PenaltyConstraintsx/PenaltyConstraintsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/PenaltyConstraintsx/PenaltyConstraintsx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/PenaltyConstraintsx/PenaltyConstraintsx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void PenaltyConstraintsx(int* pconverged, int* pnum_unstable_constraints, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads,DataSet* materials,  Parameters* parameters){
+void PenaltyConstraintsx(int* pconverged, int* pnum_unstable_constraints, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads,DataSet* materials,  Parameters* parameters){
 
 	int i;
Index: /issm/trunk/src/c/modules/PenaltyConstraintsx/PenaltyConstraintsx.h
===================================================================
--- /issm/trunk/src/c/modules/PenaltyConstraintsx/PenaltyConstraintsx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/PenaltyConstraintsx/PenaltyConstraintsx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void PenaltyConstraintsx(int* pconverged, int* pnum_unstable_constraints, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads,DataSet* materials,  Parameters* parameters); 
+void PenaltyConstraintsx(int* pconverged, int* pnum_unstable_constraints, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads,DataSet* materials,  Parameters* parameters); 
 
 #endif  /* _PENALTYCONSTRAINTSX_H */
Index: /issm/trunk/src/c/modules/PenaltyConstraintsx/RiftConstraints.cpp
===================================================================
--- /issm/trunk/src/c/modules/PenaltyConstraintsx/RiftConstraints.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/PenaltyConstraintsx/RiftConstraints.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #define _ZIGZAGCOUNTER_
 
-int RiftConstraints(int* pconverged, int* pnum_unstable_constraints,DataSet* loads,int min_mechanical_constraints){
+int RiftConstraints(int* pconverged, int* pnum_unstable_constraints,Loads* loads,int min_mechanical_constraints){
 
 	int num_unstable_constraints=0;
@@ -35,5 +35,5 @@
 }
 
-int IsMaterialStable(DataSet* loads){
+int IsMaterialStable(Loads* loads){
 
 	int i;
@@ -66,5 +66,5 @@
 }
 
-int RiftIsPresent(DataSet* loads){
+int RiftIsPresent(Loads* loads){
 
 
@@ -92,5 +92,5 @@
 }
 
-int IsPreStable(DataSet* loads){
+int IsPreStable(Loads* loads){
 
 
@@ -130,5 +130,5 @@
 }
 
-int SetPreStable(DataSet* loads){
+int SetPreStable(Loads* loads){
 
 
@@ -150,5 +150,5 @@
 }
 
-int PreConstrain(int* pnum_unstable_constraints,DataSet* loads){
+int PreConstrain(int* pnum_unstable_constraints,Loads* loads){
 
 	int			i;
@@ -185,5 +185,5 @@
 }
 
-int Constrain(int* pnum_unstable_constraints,DataSet* loads){
+int Constrain(int* pnum_unstable_constraints,Loads* loads){
 
 	int			i;
@@ -220,5 +220,5 @@
 }
 
-void FreezeConstraints(DataSet* loads){
+void FreezeConstraints(Loads* loads){
 
 	int			i;
@@ -241,5 +241,5 @@
 }
 
-int IsFrozen(DataSet* loads){
+int IsFrozen(Loads* loads){
 
 	int			i;
@@ -273,5 +273,5 @@
 }
 
-int MaxPenetrationInInputs(DataSet* loads){
+int MaxPenetrationInInputs(Loads* loads){
 
 	int			i;
@@ -314,5 +314,5 @@
 }
 
-int PotentialUnstableConstraints(DataSet* loads){
+int PotentialUnstableConstraints(Loads* loads){
 
 	int			i;
Index: /issm/trunk/src/c/modules/PenaltyConstraintsx/RiftConstraints.h
===================================================================
--- /issm/trunk/src/c/modules/PenaltyConstraintsx/RiftConstraints.h	(revision 4213)
+++ /issm/trunk/src/c/modules/PenaltyConstraintsx/RiftConstraints.h	(revision 4214)
@@ -10,24 +10,24 @@
 #include "../../DataSet/DataSet.h"
 
-int RiftConstraints(int* pconverged, int* pnum_unstable_constraints,DataSet* loads,int min_mechanical_constraints);
+int RiftConstraints(int* pconverged, int* pnum_unstable_constraints,Loads* loads,int min_mechanical_constraints);
 
-int RiftIsPresent(DataSet* loads);
+int RiftIsPresent(Loads* loads);
 
-int IsPreStable(DataSet* loads);
+int IsPreStable(Loads* loads);
 
-int SetPreStable(DataSet* loads);
+int SetPreStable(Loads* loads);
 
-int PreConstrain(int* pnum_unstable_constraints,DataSet* loads);
+int PreConstrain(int* pnum_unstable_constraints,Loads* loads);
 
-int Constrain(int* pnum_unstable_constraints,DataSet* loads);
+int Constrain(int* pnum_unstable_constraints,Loads* loads);
 
-void FreezeConstraints(DataSet* loads);
+void FreezeConstraints(Loads* loads);
 
-int MaxPenetrationInInputs(DataSet* loads);
+int MaxPenetrationInInputs(Loads* loads);
 
-int PotentialUnstableConstraints(DataSet* loads);
+int PotentialUnstableConstraints(Loads* loads);
 
-int IsMaterialStable(DataSet* loads);
+int IsMaterialStable(Loads* loads);
 
-int IsFrozen(DataSet* loads);
+int IsFrozen(Loads* loads);
 #endif
Index: /issm/trunk/src/c/modules/PenaltySystemMatricesx/PenaltySystemMatricesx.cpp
===================================================================
--- /issm/trunk/src/c/modules/PenaltySystemMatricesx/PenaltySystemMatricesx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/PenaltySystemMatricesx/PenaltySystemMatricesx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void PenaltySystemMatricesx(Mat Kgg, Vec pg,double* pkmax,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag){
+void PenaltySystemMatricesx(Mat Kgg, Vec pg,double* pkmax,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag){
 	
 	int i;
Index: /issm/trunk/src/c/modules/PenaltySystemMatricesx/PenaltySystemMatricesx.h
===================================================================
--- /issm/trunk/src/c/modules/PenaltySystemMatricesx/PenaltySystemMatricesx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/PenaltySystemMatricesx/PenaltySystemMatricesx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void PenaltySystemMatricesx(Mat Kgg, Vec pg,double* pkmax, DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag);
+void PenaltySystemMatricesx(Mat Kgg, Vec pg,double* pkmax, DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag);
 
 #endif  /* _PENALTYSYSTEMMATRICESX_H */
Index: /issm/trunk/src/c/modules/SurfaceAreax/SurfaceAreax.cpp
===================================================================
--- /issm/trunk/src/c/modules/SurfaceAreax/SurfaceAreax.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/SurfaceAreax/SurfaceAreax.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void SurfaceAreax( double* pS, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials,Parameters* parameters){
+void SurfaceAreax( double* pS, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials,Parameters* parameters){
 	
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/SurfaceAreax/SurfaceAreax.h
===================================================================
--- /issm/trunk/src/c/modules/SurfaceAreax/SurfaceAreax.h	(revision 4213)
+++ /issm/trunk/src/c/modules/SurfaceAreax/SurfaceAreax.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void SurfaceAreax( double* pS, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters);
+void SurfaceAreax( double* pS, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _SURFACEAREAX_H */
Index: /issm/trunk/src/c/modules/SystemMatricesx/SystemMatricesx.cpp
===================================================================
--- /issm/trunk/src/c/modules/SystemMatricesx/SystemMatricesx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/SystemMatricesx/SystemMatricesx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void SystemMatricesx(Mat* pKgg, Vec* ppg,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag){
+void SystemMatricesx(Mat* pKgg, Vec* ppg,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag){
 	
 	/*intermediary: */
Index: /issm/trunk/src/c/modules/SystemMatricesx/SystemMatricesx.h
===================================================================
--- /issm/trunk/src/c/modules/SystemMatricesx/SystemMatricesx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/SystemMatricesx/SystemMatricesx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void SystemMatricesx(Mat* pKgg, Vec* ppg,DataSet* elements,Nodes* nodes, Vertices* vertices,DataSet* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag);
+void SystemMatricesx(Mat* pKgg, Vec* ppg,DataSet* elements,Nodes* nodes, Vertices* vertices,Loads* loads,DataSet* materials, Parameters* parameters, int kflag,int pflag);
 
 #endif  /* _SYSTEMMATRICESX_H */
Index: /issm/trunk/src/c/modules/UpdateGeometryx/UpdateGeometryx.cpp
===================================================================
--- /issm/trunk/src/c/modules/UpdateGeometryx/UpdateGeometryx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/UpdateGeometryx/UpdateGeometryx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../DataSet/DataSet.h"
 
-void UpdateGeometryx( DataSet* elements, Nodes* nodes, Vertices* vertices,DataSet* loads, DataSet* materials, Parameters* parameters){
+void UpdateGeometryx( DataSet* elements, Nodes* nodes, Vertices* vertices,Loads* loads, DataSet* materials, Parameters* parameters){
 
 	/*Intermediary*/
Index: /issm/trunk/src/c/modules/UpdateGeometryx/UpdateGeometryx.h
===================================================================
--- /issm/trunk/src/c/modules/UpdateGeometryx/UpdateGeometryx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/UpdateGeometryx/UpdateGeometryx.h	(revision 4214)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void UpdateGeometryx(DataSet* elements, Nodes* nodes,Vertices* vertices,DataSet* loads, DataSet* materials, Parameters* parameters);
+void UpdateGeometryx(DataSet* elements, Nodes* nodes,Vertices* vertices,Loads* loads, DataSet* materials, Parameters* parameters);
 
 #endif  /* _UPDATEGEOMETRYX_H */
Index: /issm/trunk/src/c/modules/UpdateVertexPositionsx/UpdateVertexPositionsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/UpdateVertexPositionsx/UpdateVertexPositionsx.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/UpdateVertexPositionsx/UpdateVertexPositionsx.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-int UpdateVertexPositionsx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters){
+int UpdateVertexPositionsx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters){
 
 	int i;
Index: /issm/trunk/src/c/modules/UpdateVertexPositionsx/UpdateVertexPositionsx.h
===================================================================
--- /issm/trunk/src/c/modules/UpdateVertexPositionsx/UpdateVertexPositionsx.h	(revision 4213)
+++ /issm/trunk/src/c/modules/UpdateVertexPositionsx/UpdateVertexPositionsx.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-int UpdateVertexPositionsx(DataSet* elements,Nodes* nodes,Vertices* vertices,DataSet* loads,DataSet* materials,Parameters* parameters);
+int UpdateVertexPositionsx(DataSet* elements,Nodes* nodes,Vertices* vertices,Loads* loads,DataSet* materials,Parameters* parameters);
 
 #endif  /* _UPDATEVERTEXPOSITIONSXX_H */
Index: /issm/trunk/src/c/modules/VecExtrudex/VecExtrudex.cpp
===================================================================
--- /issm/trunk/src/c/modules/VecExtrudex/VecExtrudex.cpp	(revision 4213)
+++ /issm/trunk/src/c/modules/VecExtrudex/VecExtrudex.cpp	(revision 4214)
@@ -10,5 +10,5 @@
 #include "../../EnumDefinitions/EnumDefinitions.h"
 
-void VecExtrudex( Vec vector, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int collapse){
+void VecExtrudex( Vec vector, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int collapse){
 
 	double* vector_serial=NULL;
Index: /issm/trunk/src/c/modules/VecExtrudex/VecExtrudex.h
===================================================================
--- /issm/trunk/src/c/modules/VecExtrudex/VecExtrudex.h	(revision 4213)
+++ /issm/trunk/src/c/modules/VecExtrudex/VecExtrudex.h	(revision 4214)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void VecExtrudex( Vec vector, DataSet* elements,Nodes* nodes, Vertices* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,int collapse);
+void VecExtrudex( Vec vector, DataSet* elements,Nodes* nodes, Vertices* vertices, Loads* loads, DataSet* materials, Parameters* parameters,int collapse);
 
 #endif  /* _VECEXTRUDEX_H */
Index: /issm/trunk/src/c/objects/Elements/Beam.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Beam.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Beam.cpp	(revision 4214)
@@ -67,5 +67,5 @@
 /*}}}*/
 /*FUNCTION Beam::Configure {{{1*/
-void  Beam::Configure(DataSet* elementsin,DataSet* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
+void  Beam::Configure(DataSet* elementsin,Loads* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
 
 	ISSMERROR(" not supported yet!");
Index: /issm/trunk/src/c/objects/Elements/Beam.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Beam.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Beam.h	(revision 4214)
@@ -44,5 +44,5 @@
 		/*}}}*/
 		/*object management: {{{1*/
-		void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
 		void  Echo();
 		void  DeepEcho();
Index: /issm/trunk/src/c/objects/Elements/Element.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Element.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Element.h	(revision 4214)
@@ -25,5 +25,5 @@
 		
 		virtual        ~Element(){};
-		virtual void   Configure(DataSet* elements,DataSet* loads,DataSet* nodes,DataSet* materials,Parameters* parameters)=0;
+		virtual void   Configure(DataSet* elements,Loads* loads,DataSet* nodes,DataSet* materials,Parameters* parameters)=0;
 		
 		virtual void   CreateKMatrix(Mat Kgg)=0;
Index: /issm/trunk/src/c/objects/Elements/Penta.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 4214)
@@ -275,5 +275,5 @@
 /*Object management: */
 /*FUNCTION Penta::Configure {{{1*/
-void  Penta::Configure(DataSet* elementsin, DataSet* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
+void  Penta::Configure(DataSet* elementsin, Loads* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
 
 	int analysis_counter;
Index: /issm/trunk/src/c/objects/Elements/Penta.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Penta.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Penta.h	(revision 4214)
@@ -49,5 +49,5 @@
 		/*}}}*/
 		/*FUNCTION object management {{{1*/
-		void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
 		Object* copy();
 		void  DeepEcho();
Index: /issm/trunk/src/c/objects/Elements/Sing.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Sing.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Sing.cpp	(revision 4214)
@@ -39,5 +39,5 @@
 /*Object management*/
 /*FUNCTION Sing::Configure {{{1*/
-void  Sing::Configure(DataSet* elementsin,DataSet* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
+void  Sing::Configure(DataSet* elementsin,Loads* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
 
 	ISSMERROR(" not supported yet!");
Index: /issm/trunk/src/c/objects/Elements/Sing.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Sing.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Sing.h	(revision 4214)
@@ -44,5 +44,5 @@
 		/*}}}*/
 		/*object management: {{{1*/
-		void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
 		Object* copy();
 		void  DeepEcho();
Index: /issm/trunk/src/c/objects/Elements/Tria.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Tria.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Tria.cpp	(revision 4214)
@@ -256,5 +256,5 @@
 /*Object management: */
 /*FUNCTION Tria::Configure {{{1*/
-void  Tria::Configure(DataSet* elementsin, DataSet* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
+void  Tria::Configure(DataSet* elementsin, Loads* loadsin, DataSet* nodesin, DataSet* materialsin, Parameters* parametersin){
 
 	int analysis_counter;
Index: /issm/trunk/src/c/objects/Elements/Tria.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Tria.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Elements/Tria.h	(revision 4214)
@@ -44,5 +44,5 @@
 		/*}}}*/
 		/*FUNCTION object management {{{1*/
-		void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,DataSet* materials,Parameters* parameters);
 		Object* copy();
 		void  DeepEcho(void);
Index: /issm/trunk/src/c/objects/FemModel.h
===================================================================
--- /issm/trunk/src/c/objects/FemModel.h	(revision 4213)
+++ /issm/trunk/src/c/objects/FemModel.h	(revision 4214)
@@ -28,8 +28,8 @@
 		
 		DataSet*            elements; //elements (one set for all analyses)
-		Nodes*            nodes; //one set of nodes
-		Vertices*            vertices; //one set of vertices
+		Nodes*              nodes; //one set of nodes
+		Vertices*           vertices; //one set of vertices
 		DataSet*            constraints; //one set of constraints. each constraint knows which analysis_type it handles
-		DataSet*            loads;  //one set of constraints. each constraint knows which analysis_type it handles
+		Loads*              loads;  //one set of constraints. each constraint knows which analysis_type it handles
 		DataSet*            materials;  //one set of materials, for each element
 		Parameters*         parameters; //one set of parameters, independent of the analysis_type
Index: /issm/trunk/src/c/objects/Loads/Icefront.cpp
===================================================================
--- /issm/trunk/src/c/objects/Loads/Icefront.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Icefront.cpp	(revision 4214)
@@ -136,5 +136,5 @@
 /*Object marshall*/
 /*FUNCTION Icefront::Configure {{{1*/
-void  Icefront::Configure(DataSet* elementsin,DataSet* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
+void  Icefront::Configure(DataSet* elementsin,Loads* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
 
 	/*Take care of hooking up all objects for this element, ie links the objects in the hooks to their respective 
Index: /issm/trunk/src/c/objects/Loads/Icefront.h
===================================================================
--- /issm/trunk/src/c/objects/Loads/Icefront.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Icefront.h	(revision 4214)
@@ -40,5 +40,5 @@
 		/*}}}*/
 		/*object management: {{{1*/
-		void  Configure(DataSet* elementsin,DataSet* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin);
+		void  Configure(DataSet* elementsin,Loads* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin);
 		void  DeepEcho();
 		void  Demarshall(char** pmarshalled_dataset);
Index: /issm/trunk/src/c/objects/Loads/Load.h
===================================================================
--- /issm/trunk/src/c/objects/Loads/Load.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Load.h	(revision 4214)
@@ -29,5 +29,5 @@
 		virtual int   MarshallSize()=0;
 		virtual void  Demarshall(char** pmarshalled_dataset)=0;
-		virtual void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters)=0;
+		virtual void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters)=0;
 		virtual void  CreateKMatrix(Mat Kgg)=0;
 		virtual void  CreatePVector(Vec pg)=0;
Index: /issm/trunk/src/c/objects/Loads/Numericalflux.cpp
===================================================================
--- /issm/trunk/src/c/objects/Loads/Numericalflux.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Numericalflux.cpp	(revision 4214)
@@ -156,5 +156,5 @@
 /*Object marshall*/
 /*FUNCTION Numericalflux::Configure {{{1*/
-void  Numericalflux::Configure(DataSet* elementsin,DataSet* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
+void  Numericalflux::Configure(DataSet* elementsin,Loads* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
 
 	/*Take care of hooking up all objects for this element, ie links the objects in the hooks to their respective 
Index: /issm/trunk/src/c/objects/Loads/Numericalflux.h
===================================================================
--- /issm/trunk/src/c/objects/Loads/Numericalflux.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Numericalflux.h	(revision 4214)
@@ -35,5 +35,5 @@
 		/*}}}*/
 		/*Object management: {{{1*/
-		void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters);
 		void  DeepEcho();
 		void  Demarshall(char** pmarshalled_dataset);
Index: /issm/trunk/src/c/objects/Loads/Pengrid.cpp
===================================================================
--- /issm/trunk/src/c/objects/Loads/Pengrid.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Pengrid.cpp	(revision 4214)
@@ -107,5 +107,5 @@
 /*Object management*/
 /*FUNCTION Pengrid::Configure {{{1*/
-void  Pengrid::Configure(DataSet* elementsin,DataSet* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
+void  Pengrid::Configure(DataSet* elementsin,Loads* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
 
 	/*Take care of hooking up all objects for this load, ie links the objects in the hooks to their respective 
Index: /issm/trunk/src/c/objects/Loads/Pengrid.h
===================================================================
--- /issm/trunk/src/c/objects/Loads/Pengrid.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Pengrid.h	(revision 4214)
@@ -41,5 +41,5 @@
 		/*}}}*/
 		/*FUNCTION object management {{{1*/
-		void  Configure(DataSet* elementsin,DataSet* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin);
+		void  Configure(DataSet* elementsin,Loads* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin);
 		void  DeepEcho();
 		void  Demarshall(char** pmarshalled_dataset);
Index: /issm/trunk/src/c/objects/Loads/Penpair.cpp
===================================================================
--- /issm/trunk/src/c/objects/Loads/Penpair.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Penpair.cpp	(revision 4214)
@@ -73,5 +73,5 @@
 /*Object marshall*/
 /*FUNCTION Penpair::Configure {{{1*/
-void  Penpair::Configure(DataSet* elementsin,DataSet* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
+void  Penpair::Configure(DataSet* elementsin,Loads* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
 
 	/*Take care of hooking up all objects for this element, ie links the objects in the hooks to their respective 
Index: /issm/trunk/src/c/objects/Loads/Penpair.h
===================================================================
--- /issm/trunk/src/c/objects/Loads/Penpair.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Penpair.h	(revision 4214)
@@ -32,5 +32,5 @@
 		/*}}}*/
 		/*object management: {{{1*/
-		void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters);
 		void  DeepEcho();
 		void  Demarshall(char** pmarshalled_dataset);
Index: /issm/trunk/src/c/objects/Loads/Riftfront.cpp
===================================================================
--- /issm/trunk/src/c/objects/Loads/Riftfront.cpp	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Riftfront.cpp	(revision 4214)
@@ -131,5 +131,5 @@
 /*Object marshall*/
 /*FUNCTION Riftfront::Configure {{{1*/
-void  Riftfront::Configure(DataSet* elementsin,DataSet* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
+void  Riftfront::Configure(DataSet* elementsin,Loads* loadsin,DataSet* nodesin,Vertices* verticesin,DataSet* materialsin,Parameters* parametersin){
 
 	/*Take care of hooking up all objects for this element, ie links the objects in the hooks to their respective 
Index: /issm/trunk/src/c/objects/Loads/Riftfront.h
===================================================================
--- /issm/trunk/src/c/objects/Loads/Riftfront.h	(revision 4213)
+++ /issm/trunk/src/c/objects/Loads/Riftfront.h	(revision 4214)
@@ -49,5 +49,5 @@
 		/*}}}*/
 		/*object management: {{{1*/
-		void  Configure(DataSet* elements,DataSet* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters);
+		void  Configure(DataSet* elements,Loads* loads,DataSet* nodes,Vertices* vertices,DataSet* materials,Parameters* parameters);
 		Object* copy();
 		void  DeepEcho();
Index: /issm/trunk/src/c/solvers/solver_diagnostic_nonlinear.cpp
===================================================================
--- /issm/trunk/src/c/solvers/solver_diagnostic_nonlinear.cpp	(revision 4213)
+++ /issm/trunk/src/c/solvers/solver_diagnostic_nonlinear.cpp	(revision 4214)
@@ -18,5 +18,5 @@
 	Vec old_ug=NULL; 
 	Vec old_uf=NULL; 
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 
 	/*intermediary: */
@@ -51,8 +51,8 @@
 	/*Were loads requested as output? : */
 	if(conserve_loads){
-		loads=femmodel->loads->Copy(); //protect loads from being modified by the solution
+		loads=(Loads*)femmodel->loads->Copy(); //protect loads from being modified by the solution
 	}
 	else{
-		loads=femmodel->loads; //modify loads  in this solution
+		loads=(Loads*)femmodel->loads; //modify loads  in this solution
 	}
 
Index: /issm/trunk/src/mex/ComputeBasalStress/ComputeBasalStress.cpp
===================================================================
--- /issm/trunk/src/mex/ComputeBasalStress/ComputeBasalStress.cpp	(revision 4213)
+++ /issm/trunk/src/mex/ComputeBasalStress/ComputeBasalStress.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL; 
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -34,5 +34,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/ComputePressure/ComputePressure.cpp
===================================================================
--- /issm/trunk/src/mex/ComputePressure/ComputePressure.cpp	(revision 4213)
+++ /issm/trunk/src/mex/ComputePressure/ComputePressure.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL; 
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -34,5 +34,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/ConfigureObjects/ConfigureObjects.cpp
===================================================================
--- /issm/trunk/src/mex/ConfigureObjects/ConfigureObjects.cpp	(revision 4213)
+++ /issm/trunk/src/mex/ConfigureObjects/ConfigureObjects.cpp	(revision 4214)
@@ -12,5 +12,5 @@
 	/*input datasets: */
 	DataSet* elements=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
@@ -28,5 +28,5 @@
 	/*Input datasets: */
 	FetchData(&elements,ELEMENTSIN);
-	FetchData(&loads,LOADSIN);
+	FetchData((DataSet**)&loads,LOADSIN);
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
Index: /issm/trunk/src/mex/CostFunction/CostFunction.cpp
===================================================================
--- /issm/trunk/src/mex/CostFunction/CostFunction.cpp	(revision 4213)
+++ /issm/trunk/src/mex/CostFunction/CostFunction.cpp	(revision 4214)
@@ -12,5 +12,5 @@
 	/*input datasets: */
 	DataSet* elements=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
@@ -31,5 +31,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/Du/Du.cpp
===================================================================
--- /issm/trunk/src/mex/Du/Du.cpp	(revision 4213)
+++ /issm/trunk/src/mex/Du/Du.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -31,5 +31,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/FieldAverageOntoVertices/FieldAverageOntoVertices.cpp
===================================================================
--- /issm/trunk/src/mex/FieldAverageOntoVertices/FieldAverageOntoVertices.cpp	(revision 4213)
+++ /issm/trunk/src/mex/FieldAverageOntoVertices/FieldAverageOntoVertices.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -29,5 +29,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/FieldDepthAverage/FieldDepthAverage.cpp
===================================================================
--- /issm/trunk/src/mex/FieldDepthAverage/FieldDepthAverage.cpp	(revision 4213)
+++ /issm/trunk/src/mex/FieldDepthAverage/FieldDepthAverage.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -30,5 +30,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/GetSolutionFromInputs/GetSolutionFromInputs.cpp
===================================================================
--- /issm/trunk/src/mex/GetSolutionFromInputs/GetSolutionFromInputs.cpp	(revision 4213)
+++ /issm/trunk/src/mex/GetSolutionFromInputs/GetSolutionFromInputs.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -31,5 +31,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADSIN);
+	FetchData((DataSet**)&loads,LOADSIN);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/Gradj/Gradj.cpp
===================================================================
--- /issm/trunk/src/mex/Gradj/Gradj.cpp	(revision 4213)
+++ /issm/trunk/src/mex/Gradj/Gradj.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes      *nodes        = NULL;
 	Vertices    *vertices     = NULL;
-	DataSet    *loads        = NULL;
+	Loads     *loads        = NULL;
 	DataSet    *materials    = NULL;
 	Parameters *parameters   = NULL;
@@ -33,5 +33,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/InputControlConstrain/InputControlConstrain.cpp
===================================================================
--- /issm/trunk/src/mex/InputControlConstrain/InputControlConstrain.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputControlConstrain/InputControlConstrain.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 Nodes      *nodes             = NULL;
 Vertices    *vertices          = NULL;
-DataSet    *loads             = NULL;
+Loads     *loads             = NULL;
 DataSet    *materials         = NULL;
 Parameters *parameters        = NULL;
@@ -31,5 +31,5 @@
 FetchData((DataSet**)&nodes,NODESIN);
 FetchData((DataSet**)&vertices,VERTICESIN);
-FetchData(&loads,LOADSIN);
+FetchData((DataSet**)&loads,LOADSIN);
 FetchData(&materials,MATERIALSIN);
 FetchParams(&parameters,PARAMETERSIN);
Index: /issm/trunk/src/mex/InputDepthAverage/InputDepthAverage.cpp
===================================================================
--- /issm/trunk/src/mex/InputDepthAverage/InputDepthAverage.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputDepthAverage/InputDepthAverage.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 Nodes       *nodes             = NULL;
 Vertices    *vertices          = NULL;
-DataSet    *loads             = NULL;
+Loads     *loads             = NULL;
 DataSet    *materials         = NULL;
 Parameters *parameters        = NULL;
@@ -30,5 +30,5 @@
 FetchData((DataSet**)&nodes,NODESIN);
 FetchData((DataSet**)&vertices,VERTICESIN);
-FetchData(&loads,LOADSIN);
+FetchData((DataSet**)&loads,LOADSIN);
 FetchData(&materials,MATERIALSIN);
 FetchParams(&parameters,PARAMETERSIN);
Index: /issm/trunk/src/mex/InputDuplicate/InputDuplicate.cpp
===================================================================
--- /issm/trunk/src/mex/InputDuplicate/InputDuplicate.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputDuplicate/InputDuplicate.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -29,5 +29,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/InputExtrude/InputExtrude.cpp
===================================================================
--- /issm/trunk/src/mex/InputExtrude/InputExtrude.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputExtrude/InputExtrude.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -29,5 +29,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/InputScale/InputScale.cpp
===================================================================
--- /issm/trunk/src/mex/InputScale/InputScale.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputScale/InputScale.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -30,5 +30,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/InputToResult/InputToResult.cpp
===================================================================
--- /issm/trunk/src/mex/InputToResult/InputToResult.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputToResult/InputToResult.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -30,5 +30,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/InputUpdateFromConstant/InputUpdateFromConstant.cpp
===================================================================
--- /issm/trunk/src/mex/InputUpdateFromConstant/InputUpdateFromConstant.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputUpdateFromConstant/InputUpdateFromConstant.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 Nodes* nodes=NULL;
 Vertices* vertices=NULL;
-DataSet* loads=NULL;
+Loads* loads=NULL;
 DataSet* materials=NULL;
 Parameters* parameters=NULL;
@@ -30,5 +30,5 @@
 FetchData((DataSet**)&nodes,NODESIN);
 FetchData((DataSet**)&vertices,VERTICESIN);
-FetchData(&loads,LOADSIN);
+FetchData((DataSet**)&loads,LOADSIN);
 FetchData(&materials,MATERIALSIN);
 FetchParams(&parameters,PARAMETERSIN);
Index: /issm/trunk/src/mex/InputUpdateFromSolution/InputUpdateFromSolution.cpp
===================================================================
--- /issm/trunk/src/mex/InputUpdateFromSolution/InputUpdateFromSolution.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputUpdateFromSolution/InputUpdateFromSolution.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 Nodes* nodes=NULL;
 Vertices* vertices=NULL;
-DataSet* loads=NULL;
+Loads* loads=NULL;
 DataSet* materials=NULL;
 Parameters* parameters=NULL;
@@ -29,5 +29,5 @@
 FetchData((DataSet**)&nodes,NODESIN);
 FetchData((DataSet**)&vertices,VERTICESIN);
-FetchData(&loads,LOADSIN);
+FetchData((DataSet**)&loads,LOADSIN);
 FetchData(&materials,MATERIALSIN);
 FetchParams(&parameters,PARAMETERSIN);
Index: /issm/trunk/src/mex/InputUpdateFromVector/InputUpdateFromVector.cpp
===================================================================
--- /issm/trunk/src/mex/InputUpdateFromVector/InputUpdateFromVector.cpp	(revision 4213)
+++ /issm/trunk/src/mex/InputUpdateFromVector/InputUpdateFromVector.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 Nodes* nodes=NULL;
 Vertices* vertices=NULL;
-DataSet* loads=NULL;
+Loads* loads=NULL;
 DataSet* materials=NULL;
 Parameters* parameters=NULL;
@@ -32,5 +32,5 @@
 FetchData((DataSet**)&nodes,NODESIN);
 FetchData((DataSet**)&vertices,VERTICESIN);
-FetchData(&loads,LOADSIN);
+FetchData((DataSet**)&loads,LOADSIN);
 FetchData(&materials,MATERIALSIN);
 FetchParams(&parameters,PARAMETERSIN);
Index: /issm/trunk/src/mex/MassFlux/MassFlux.cpp
===================================================================
--- /issm/trunk/src/mex/MassFlux/MassFlux.cpp	(revision 4213)
+++ /issm/trunk/src/mex/MassFlux/MassFlux.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -34,5 +34,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/Misfit/Misfit.cpp
===================================================================
--- /issm/trunk/src/mex/Misfit/Misfit.cpp	(revision 4213)
+++ /issm/trunk/src/mex/Misfit/Misfit.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -31,5 +31,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/ModelProcessor/ModelProcessor.cpp
===================================================================
--- /issm/trunk/src/mex/ModelProcessor/ModelProcessor.cpp	(revision 4213)
+++ /issm/trunk/src/mex/ModelProcessor/ModelProcessor.cpp	(revision 4214)
@@ -21,5 +21,5 @@
 	Vertices* vertices=NULL;
 	DataSet* constraints=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
Index: /issm/trunk/src/mex/OutputResults/OutputResults.cpp
===================================================================
--- /issm/trunk/src/mex/OutputResults/OutputResults.cpp	(revision 4213)
+++ /issm/trunk/src/mex/OutputResults/OutputResults.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes*   nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -32,5 +32,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/OutputRifts/OutputRifts.cpp
===================================================================
--- /issm/trunk/src/mex/OutputRifts/OutputRifts.cpp	(revision 4213)
+++ /issm/trunk/src/mex/OutputRifts/OutputRifts.cpp	(revision 4214)
@@ -12,5 +12,5 @@
 
 	/*input datasets: */
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 
 	/* output datasets: */
@@ -25,5 +25,5 @@
 
 	/*Input datasets: */
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&numrifts,mxGetField(PARAMETERS,0,"numrifts"));
 
Index: /issm/trunk/src/mex/ParameterOutput/ParameterOutput.cpp
===================================================================
--- /issm/trunk/src/mex/ParameterOutput/ParameterOutput.cpp	(revision 4213)
+++ /issm/trunk/src/mex/ParameterOutput/ParameterOutput.cpp	(revision 4214)
@@ -13,5 +13,5 @@
 	DataSet* elements=NULL;
 	Nodes* nodes=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	DataSet* results=NULL;
@@ -32,5 +32,5 @@
 	FetchData(&elements,ELEMENTS);
 	FetchData((DataSet**)&nodes,NODES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchData(&results,RESULTS);
Index: /issm/trunk/src/mex/PenaltyConstraints/PenaltyConstraints.cpp
===================================================================
--- /issm/trunk/src/mex/PenaltyConstraints/PenaltyConstraints.cpp	(revision 4213)
+++ /issm/trunk/src/mex/PenaltyConstraints/PenaltyConstraints.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -32,5 +32,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADSIN);
+	FetchData((DataSet**)&loads,LOADSIN);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/PenaltySystemMatrices/PenaltySystemMatrices.cpp
===================================================================
--- /issm/trunk/src/mex/PenaltySystemMatrices/PenaltySystemMatrices.cpp	(revision 4213)
+++ /issm/trunk/src/mex/PenaltySystemMatrices/PenaltySystemMatrices.cpp	(revision 4214)
@@ -19,5 +19,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -36,5 +36,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/SystemMatrices/SystemMatrices.cpp
===================================================================
--- /issm/trunk/src/mex/SystemMatrices/SystemMatrices.cpp	(revision 4213)
+++ /issm/trunk/src/mex/SystemMatrices/SystemMatrices.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 	Nodes* nodes=NULL;
 	Vertices* vertices=NULL;
-	DataSet* loads=NULL;
+	Loads* loads=NULL;
 	DataSet* materials=NULL;
 	Parameters* parameters=NULL;
@@ -33,5 +33,5 @@
 	FetchData((DataSet**)&nodes,NODES);
 	FetchData((DataSet**)&vertices,VERTICES);
-	FetchData(&loads,LOADS);
+	FetchData((DataSet**)&loads,LOADS);
 	FetchData(&materials,MATERIALS);
 	FetchParams(&parameters,PARAMETERS);
Index: /issm/trunk/src/mex/UpdateGeometry/UpdateGeometry.cpp
===================================================================
--- /issm/trunk/src/mex/UpdateGeometry/UpdateGeometry.cpp	(revision 4213)
+++ /issm/trunk/src/mex/UpdateGeometry/UpdateGeometry.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 Nodes      *nodes             = NULL;
 Vertices    *vertices          = NULL;
-DataSet    *loads             = NULL;
+Loads     *loads             = NULL;
 DataSet    *materials         = NULL;
 Parameters *parameters        = NULL;
@@ -28,5 +28,5 @@
 FetchData((DataSet**)&nodes,NODESIN);
 FetchData((DataSet**)&vertices,VERTICESIN);
-FetchData(&loads,LOADSIN);
+FetchData((DataSet**)&loads,LOADSIN);
 FetchData(&materials,MATERIALSIN);
 FetchParams(&parameters,PARAMETERSIN);
Index: /issm/trunk/src/mex/UpdateVertexPositions/UpdateVertexPositions.cpp
===================================================================
--- /issm/trunk/src/mex/UpdateVertexPositions/UpdateVertexPositions.cpp	(revision 4213)
+++ /issm/trunk/src/mex/UpdateVertexPositions/UpdateVertexPositions.cpp	(revision 4214)
@@ -14,5 +14,5 @@
 Nodes      *nodes             = NULL;
 Vertices    *vertices          = NULL;
-DataSet    *loads             = NULL;
+Loads     *loads             = NULL;
 DataSet    *materials         = NULL;
 Parameters *parameters        = NULL;
@@ -28,5 +28,5 @@
 FetchData((DataSet**)&nodes,NODESIN);
 FetchData((DataSet**)&vertices,VERTICESIN);
-FetchData(&loads,LOADSIN);
+FetchData((DataSet**)&loads,LOADSIN);
 FetchData(&materials,MATERIALSIN);
 FetchParams(&parameters,PARAMETERSIN);
