Index: issm/trunk/src/c/modules/Mergesolutionfromftogx/Mergesolutionfromftogx.cpp
===================================================================
--- issm/trunk/src/c/modules/Mergesolutionfromftogx/Mergesolutionfromftogx.cpp	(revision 6579)
+++ issm/trunk/src/c/modules/Mergesolutionfromftogx/Mergesolutionfromftogx.cpp	(revision 6580)
@@ -5,5 +5,5 @@
 #include "./Mergesolutionfromftogx.h"
 
-void	Mergesolutionfromftogx( Vec* pug, Vec uf, Vec ys, NodeSets* nodesets,Parameters* parameters,bool flag_ys0){
+void	Mergesolutionfromftogx( Vec* pug, Vec uf, Vec ys, NodeSets* nodesets,bool flag_ys0){
 
 	/*output: */
Index: issm/trunk/src/c/modules/Mergesolutionfromftogx/Mergesolutionfromftogx.h
===================================================================
--- issm/trunk/src/c/modules/Mergesolutionfromftogx/Mergesolutionfromftogx.h	(revision 6579)
+++ issm/trunk/src/c/modules/Mergesolutionfromftogx/Mergesolutionfromftogx.h	(revision 6580)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void	Mergesolutionfromftogx( Vec* pug, Vec uf,Vec ys, NodeSets* nodesets,Parameters* parameters,bool flag_ys0=false);
+void	Mergesolutionfromftogx( Vec* pug, Vec uf,Vec ys, NodeSets* nodesets,bool flag_ys0=false);
 
 #endif  /* _MERGESOLUTIONFROMFTOGX_H */
Index: issm/trunk/src/c/modules/Reduceloadfromgtofx/Reduceloadfromgtofx.cpp
===================================================================
--- issm/trunk/src/c/modules/Reduceloadfromgtofx/Reduceloadfromgtofx.cpp	(revision 6579)
+++ issm/trunk/src/c/modules/Reduceloadfromgtofx/Reduceloadfromgtofx.cpp	(revision 6580)
@@ -10,5 +10,5 @@
 #include "./Reduceloadfromgtofx.h"
 
-void	Reduceloadfromgtofx( Vec* ppf, Vec pg, Mat Kfs, Vec y_s, NodeSets* nodesets,Parameters* parameters,bool flag_ys0){
+void	Reduceloadfromgtofx( Vec* ppf, Vec pg, Mat Kfs, Vec y_s, NodeSets* nodesets,bool flag_ys0){
 
 	/*output: */
@@ -23,56 +23,49 @@
 
 	/*Parameters: */
-	bool kffpartition=false;
 	bool fromlocalsize=true;
 
-	parameters->FindParam(&kffpartition,KffEnum);
 	_printf_(VerboseModule(),"   Reducing Load vector from gset to fset\n");
 
-	if(!pg){
-		pf=NULL;
+	/* Reduce pg to pn:*/
+	VecDuplicate(pg,&pn);  
+	VecCopy(pg,pn);  
+
+	/*% Reduce pn to pf:*/
+
+	if (nodesets->GetSSize()){
+
+		if(nodesets->GetFSize()){
+			VecPartition(&pf, pn, nodesets->GetPV_F(),nodesets->GetFSize(),false);
+
+			/*pf = pf - Kfs * y_s;*/
+			MatGetLocalSize(Kfs,&Kfsm,&Kfsn);
+			Kfsy_s=NewVec(Kfsm,fromlocalsize);
+			if (flag_ys0){
+
+				/*Create y_s0, full of 0: */
+				VecDuplicate(y_s,&y_s0);
+				VecSet(y_s0,0.0);
+				VecAssemblyBegin(y_s0);
+				VecAssemblyEnd(y_s0);
+
+				MatMultPatch(Kfs,y_s0,Kfsy_s);
+			}
+			else{
+				MatMultPatch(Kfs,y_s,Kfsy_s);
+			}
+
+			a=-1;
+			VecAXPY(pf,a,Kfsy_s);  
+		}
+		else{
+			pf=NULL;
+		}
 	}
 	else{
-		/* Reduce pg to pn:*/
-		VecDuplicate(pg,&pn);  
-		VecCopy(pg,pn);  
-		
-		/*% Reduce pn to pf:*/
+		/*pf=pn*/
+		VecDuplicate(pn,&pf);  
+		VecCopy(pn,pf);  
+	}
 
-		if (nodesets->GetSSize()){
-
-			if(nodesets->GetFSize()){
-				VecPartition(&pf, pn, nodesets->GetPV_F(),nodesets->GetFSize(),kffpartition);
-
-				/*pf = pf - Kfs * y_s;*/
-				MatGetLocalSize(Kfs,&Kfsm,&Kfsn);
-				Kfsy_s=NewVec(Kfsm,fromlocalsize);
-				if (flag_ys0){
-
-					/*Create y_s0, full of 0: */
-					VecDuplicate(y_s,&y_s0);
-					VecSet(y_s0,0.0);
-					VecAssemblyBegin(y_s0);
-					VecAssemblyEnd(y_s0);
-
-					MatMultPatch(Kfs,y_s0,Kfsy_s);
-				}
-				else{
-					MatMultPatch(Kfs,y_s,Kfsy_s);
-				}
-
-				a=-1;
-				VecAXPY(pf,a,Kfsy_s);  
-			}
-			else{
-				pf=NULL;
-			}
-		}
-		else{
-			/*pf=pn*/
-			VecDuplicate(pn,&pf);  
-			VecCopy(pn,pf);  
-		}
-	}
-	
 	
 	/*Assign correct pointer*/
@@ -83,4 +76,3 @@
 	VecFree(&pn);
 	VecFree(&Kfsy_s);
-
 }
Index: issm/trunk/src/c/modules/Reduceloadfromgtofx/Reduceloadfromgtofx.h
===================================================================
--- issm/trunk/src/c/modules/Reduceloadfromgtofx/Reduceloadfromgtofx.h	(revision 6579)
+++ issm/trunk/src/c/modules/Reduceloadfromgtofx/Reduceloadfromgtofx.h	(revision 6580)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void	Reduceloadfromgtofx( Vec* ppf, Vec pg, Mat Kfs, Vec ys, NodeSets* nodesets,Parameters* parameters, bool flag_ys0=false);
+void	Reduceloadfromgtofx( Vec* ppf, Vec pg, Mat Kfs, Vec ys, NodeSets* nodesets,bool flag_ys0=false);
 
 #endif  /* _REDUCELOADFROMGTOFX_H */
Index: issm/trunk/src/c/modules/Reduceloadx/Reduceloadx.cpp
===================================================================
--- issm/trunk/src/c/modules/Reduceloadx/Reduceloadx.cpp	(revision 6579)
+++ issm/trunk/src/c/modules/Reduceloadx/Reduceloadx.cpp	(revision 6580)
@@ -11,5 +11,5 @@
 #include "./Reduceloadx.h"
 
-void	Reduceloadx( Vec pf, Mat Kfs, Vec y_s,Parameters* parameters,bool flag_ys0){
+void	Reduceloadx( Vec pf, Mat Kfs, Vec y_s,bool flag_ys0){
 
 	/*intermediary*/
Index: issm/trunk/src/c/modules/Reduceloadx/Reduceloadx.h
===================================================================
--- issm/trunk/src/c/modules/Reduceloadx/Reduceloadx.h	(revision 6579)
+++ issm/trunk/src/c/modules/Reduceloadx/Reduceloadx.h	(revision 6580)
@@ -9,5 +9,5 @@
 
 /* local prototypes: */
-void	Reduceloadx( Vec pf, Mat Kfs, Vec ys,Parameters* parameters, bool flag_ys0=false);
+void	Reduceloadx( Vec pf, Mat Kfs, Vec ys,bool flag_ys0=false);
 
 #endif  /* _REDUCELOADX_H */
Index: issm/trunk/src/c/modules/Reducematrixfromgtofx/Reducematrixfromgtofx.cpp
===================================================================
--- issm/trunk/src/c/modules/Reducematrixfromgtofx/Reducematrixfromgtofx.cpp	(revision 6579)
+++ issm/trunk/src/c/modules/Reducematrixfromgtofx/Reducematrixfromgtofx.cpp	(revision 6580)
@@ -4,5 +4,5 @@
 #include "./Reducematrixfromgtofx.h"
 
-void Reducematrixfromgtofx( Mat* pKff, Mat* pKfs,Mat Kgg,NodeSets* nodesets,Parameters* parameters){
+void Reducematrixfromgtofx( Mat* pKff, Mat* pKfs,Mat Kgg,NodeSets* nodesets){
 
 	/*output: */
Index: issm/trunk/src/c/modules/Reducematrixfromgtofx/Reducematrixfromgtofx.h
===================================================================
--- issm/trunk/src/c/modules/Reducematrixfromgtofx/Reducematrixfromgtofx.h	(revision 6579)
+++ issm/trunk/src/c/modules/Reducematrixfromgtofx/Reducematrixfromgtofx.h	(revision 6580)
@@ -10,5 +10,5 @@
 
 /* local prototypes: */
-void	Reducematrixfromgtofx( Mat* pKff, Mat* pKfs,Mat Kgg,NodeSets* nodesets,Parameters* parameters);
+void	Reducematrixfromgtofx( Mat* pKff, Mat* pKfs,Mat Kgg,NodeSets* nodesets);
 
 #endif  /* _REDUCEMATRIXFROMGTOFX_H */
Index: issm/trunk/src/c/modules/Reducevectorgtofx/Reducevectorgtofx.cpp
===================================================================
--- issm/trunk/src/c/modules/Reducevectorgtofx/Reducevectorgtofx.cpp	(revision 6579)
+++ issm/trunk/src/c/modules/Reducevectorgtofx/Reducevectorgtofx.cpp	(revision 6580)
@@ -19,9 +19,6 @@
 	if(nodesets){
 
-
 		if (nodesets->GetGSize() && nodesets->GetFSize()){
-
 			VecPartition(&uf,ug,nodesets->GetPV_F(),nodesets->GetFSize(),kffpartitioning);
-		
 		}
 	}
Index: issm/trunk/src/c/solvers/solver_adjoint_linear.cpp
===================================================================
--- issm/trunk/src/c/solvers/solver_adjoint_linear.cpp	(revision 6579)
+++ issm/trunk/src/c/solvers/solver_adjoint_linear.cpp	(revision 6580)
@@ -23,16 +23,14 @@
 	if(kffpartitioning){
 		SystemMatricesx(NULL,&Kff, &Kfs, NULL,&pf, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-		Reduceloadx(pf, Kfs, femmodel->ys,femmodel->parameters,true); MatFree(&Kfs); //true means spc = 0
+		Reduceloadx(pf, Kfs, femmodel->ys,true); MatFree(&Kfs); //true means spc = 0
 	}
 	else{
 		SystemMatricesx(&Kgg, NULL, NULL, &pg,NULL, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-		Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets,femmodel->parameters); MatFree(&Kgg);
-		Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets,femmodel->parameters,true);VecFree(&pg); MatFree(&Kfs);//true means spc = 0
+		Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets); MatFree(&Kgg);
+		Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets,true);VecFree(&pg); MatFree(&Kfs);//true means spc = 0
 	}
 
 	Solverx(&uf, Kff, pf, NULL, femmodel->parameters); MatFree(&Kff); VecFree(&pf);
-
-	Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets,femmodel->parameters,true); VecFree(&uf);//true means spc0
-
-	InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); VecFree(&ug); VecFree(&uf);
+	Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets,true); VecFree(&uf);//true means spc0
+	InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); VecFree(&ug); VecFree(&uf);
 }
Index: issm/trunk/src/c/solvers/solver_diagnostic_nonlinear.cpp
===================================================================
--- issm/trunk/src/c/solvers/solver_diagnostic_nonlinear.cpp	(revision 6579)
+++ issm/trunk/src/c/solvers/solver_diagnostic_nonlinear.cpp	(revision 6580)
@@ -54,16 +54,14 @@
 		if(kffpartitioning){
 			SystemMatricesx(NULL,&Kff, &Kfs, NULL,&pf, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,loads,femmodel->materials,femmodel->parameters);
-			Reduceloadx(pf, Kfs, femmodel->ys,femmodel->parameters); MatFree(&Kfs);
+			Reduceloadx(pf, Kfs, femmodel->ys); MatFree(&Kfs);
 		}
 		else{
 			SystemMatricesx(&Kgg, NULL, NULL, &pg,NULL, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,loads,femmodel->materials,femmodel->parameters);
-			Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets,femmodel->parameters); MatFree(&Kgg);
-			Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets,femmodel->parameters); VecFree(&pg); MatFree(&Kfs);
+			Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets); MatFree(&Kgg);
+			Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets); VecFree(&pg); MatFree(&Kfs);
 		}
 		
 		Solverx(&uf, Kff, pf, old_uf, femmodel->parameters);
-
-		Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets,femmodel->parameters);
-
+		Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets);
 		InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug);
 
@@ -72,5 +70,4 @@
 
 		convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); MatFree(&Kff);VecFree(&pf);
-		
 		InputUpdateFromConstantx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,converged,ConvergedEnum);
 
Index: issm/trunk/src/c/solvers/solver_linear.cpp
===================================================================
--- issm/trunk/src/c/solvers/solver_linear.cpp	(revision 6579)
+++ issm/trunk/src/c/solvers/solver_linear.cpp	(revision 6580)
@@ -21,15 +21,14 @@
 	if(kffpartitioning){
 		SystemMatricesx(NULL,&Kff, &Kfs, NULL,&pf, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-		Reduceloadx(pf, Kfs, femmodel->ys,femmodel->parameters); MatFree(&Kfs);
+		Reduceloadx(pf, Kfs, femmodel->ys); MatFree(&Kfs);
 	}
 	else{
 		SystemMatricesx(&Kgg, NULL, NULL, &pg,NULL, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-		Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets,femmodel->parameters); MatFree(&Kgg);
-		Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets,femmodel->parameters);VecFree(&pg); MatFree(&Kfs);
+		Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets); MatFree(&Kgg);
+		Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets);VecFree(&pg); MatFree(&Kfs);
 	}
 
 	Solverx(&uf, Kff, pf, NULL, femmodel->parameters); MatFree(&Kff); VecFree(&pf);
-	Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets,femmodel->parameters);VecFree(&uf);
-
+	Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets);VecFree(&uf);
 	InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); VecFree(&ug); VecFree(&uf);
 }
Index: issm/trunk/src/c/solvers/solver_stokescoupling_nonlinear.cpp
===================================================================
--- issm/trunk/src/c/solvers/solver_stokescoupling_nonlinear.cpp	(revision 6579)
+++ issm/trunk/src/c/solvers/solver_stokescoupling_nonlinear.cpp	(revision 6580)
@@ -42,5 +42,4 @@
 	Reducevectorgtofx(&uf_horiz, ug_horiz, femmodel->nodesets,femmodel->parameters);
 
-
 	for(;;){
 
@@ -58,16 +57,14 @@
 		if(kffpartitioning){
 			SystemMatricesx(NULL,&Kff_horiz, &Kfs_horiz, NULL,&pf_horiz, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-			Reduceloadx(pf_horiz, Kfs_horiz, femmodel->ys,femmodel->parameters); MatFree(&Kfs_horiz);
+			Reduceloadx(pf_horiz, Kfs_horiz, femmodel->ys); MatFree(&Kfs_horiz);
 		}
 		else{
 			SystemMatricesx(&Kgg_horiz, NULL, NULL, &pg_horiz,NULL, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-			Reducematrixfromgtofx(&Kff_horiz,&Kfs_horiz,Kgg_horiz,femmodel->nodesets,femmodel->parameters); MatFree(&Kgg_horiz);
-			Reduceloadfromgtofx(&pf_horiz, pg_horiz, Kfs_horiz, femmodel->ys, femmodel->nodesets,femmodel->parameters); VecFree(&pg_horiz); MatFree(&Kfs_horiz);
+			Reducematrixfromgtofx(&Kff_horiz,&Kfs_horiz,Kgg_horiz,femmodel->nodesets); MatFree(&Kgg_horiz);
+			Reduceloadfromgtofx(&pf_horiz, pg_horiz, Kfs_horiz, femmodel->ys, femmodel->nodesets); VecFree(&pg_horiz); MatFree(&Kfs_horiz);
 		}
 		
 		Solverx(&uf_horiz, Kff_horiz, pf_horiz, old_uf_horiz, femmodel->parameters);
-
-		Mergesolutionfromftogx(&ug_horiz, uf_horiz,femmodel->ys,femmodel->nodesets,femmodel->parameters);
-
+		Mergesolutionfromftogx(&ug_horiz, uf_horiz,femmodel->ys,femmodel->nodesets);
 		InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_horiz);
 
@@ -78,15 +75,14 @@
 		if(kffpartitioning){
 			SystemMatricesx(NULL,&Kff_vert, &Kfs_vert, NULL,&pf_vert, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-			Reduceloadx(pf_vert, Kfs_vert, femmodel->ys,femmodel->parameters); MatFree(&Kfs_vert);
+			Reduceloadx(pf_vert, Kfs_vert, femmodel->ys); MatFree(&Kfs_vert);
 		}
 		else{
 			SystemMatricesx(&Kgg_vert, NULL, NULL, &pg_vert,NULL, NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-			Reducematrixfromgtofx(&Kff_vert,&Kfs_vert,Kgg_vert,femmodel->nodesets,femmodel->parameters); MatFree(&Kgg_vert);
-			Reduceloadfromgtofx(&pf_vert, pg_vert, Kfs_vert, femmodel->ys, femmodel->nodesets,femmodel->parameters);VecFree(&pg_vert); MatFree(&Kfs_vert);
+			Reducematrixfromgtofx(&Kff_vert,&Kfs_vert,Kgg_vert,femmodel->nodesets); MatFree(&Kgg_vert);
+			Reduceloadfromgtofx(&pf_vert, pg_vert, Kfs_vert, femmodel->ys, femmodel->nodesets);VecFree(&pg_vert); MatFree(&Kfs_vert);
 		}
 
 		Solverx(&uf_vert, Kff_vert, pf_vert, NULL, femmodel->parameters); MatFree(&Kff_vert); VecFree(&pf_vert);
-		Mergesolutionfromftogx(&ug_vert, uf_vert,femmodel->ys,femmodel->nodesets,femmodel->parameters);VecFree(&uf_vert);
-
+		Mergesolutionfromftogx(&ug_vert, uf_vert,femmodel->ys,femmodel->nodesets);VecFree(&uf_vert);
 		InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_vert); VecFree(&ug_vert); VecFree(&uf_vert);
 
Index: issm/trunk/src/c/solvers/solver_thermal_nonlinear.cpp
===================================================================
--- issm/trunk/src/c/solvers/solver_thermal_nonlinear.cpp	(revision 6579)
+++ issm/trunk/src/c/solvers/solver_thermal_nonlinear.cpp	(revision 6580)
@@ -51,10 +51,10 @@
 		if(kffpartitioning){
 			SystemMatricesx(NULL,&Kff, &Kfs, NULL,&pf,&melting_offset,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-			Reduceloadx(pf, Kfs, femmodel->ys,femmodel->parameters); MatFree(&Kfs);
+			Reduceloadx(pf, Kfs, femmodel->ys); MatFree(&Kfs);
 		}
 		else{
 			SystemMatricesx(&Kgg,NULL, NULL, &pg,NULL, &melting_offset,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
-			Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets,femmodel->parameters); MatFree(&Kgg);
-			Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets,femmodel->parameters);VecFree(&pg); MatFree(&Kfs);
+			Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets); MatFree(&Kgg);
+			Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets);VecFree(&pg); MatFree(&Kfs);
 		}
 
@@ -62,8 +62,7 @@
 		Solverx(&tf, Kff, pf,tf_old, femmodel->parameters);
 		VecFree(&tf_old); VecDuplicatePatch(&tf_old,tf);
-	
 		MatFree(&Kff);VecFree(&pf);VecFree(&tg);
 
-		Mergesolutionfromftogx(&tg, tf,femmodel->ys,femmodel->nodesets,femmodel->parameters);
+		Mergesolutionfromftogx(&tg, tf,femmodel->ys,femmodel->nodesets);
 		InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,tg);
 
