Index: /issm/trunk-jpl/src/c/cores/control_core.cpp
===================================================================
--- /issm/trunk-jpl/src/c/cores/control_core.cpp	(revision 23216)
+++ /issm/trunk-jpl/src/c/cores/control_core.cpp	(revision 23217)
@@ -143,5 +143,6 @@
 	/*Update control input*/
 	SetControlInputsFromVectorx(femmodel,X);
-
+	
+	
 	/*solve forward: */
 	switch(solution_type){
@@ -152,6 +153,18 @@
 		case StressbalanceSolutionEnum:
 			femmodel->SetCurrentConfiguration(StressbalanceAnalysisEnum);
-			solutionsequence_nonlinear(femmodel,conserve_loads); 
-			break;
+			
+			bool is_schur_cg_solver = false;
+			#ifdef _HAVE_PETSC_
+			int solver_type;
+			PetscOptionsDetermineSolverType(&solver_type);
+			if(solver_type==FSSolverEnum) is_schur_cg_solver = true;
+			#endif
+			
+			if(is_schur_cg_solver){
+			 solutionsequence_schurcg(femmodel);
+			}else{
+			 solutionsequence_nonlinear(femmodel,conserve_loads); 
+			}
+			 break;
 		case BalancethicknessSolutionEnum:
 			femmodel->SetCurrentConfiguration(BalancethicknessAnalysisEnum);
