Index: /issm/trunk-jpl/src/c/cores/adjointstressbalance_core.cpp
===================================================================
--- /issm/trunk-jpl/src/c/cores/adjointstressbalance_core.cpp	(revision 18826)
+++ /issm/trunk-jpl/src/c/cores/adjointstressbalance_core.cpp	(revision 18827)
@@ -16,13 +16,26 @@
 	bool save_results;
 	bool conserve_loads   = true;
+	int fe_FS;
 
 	/*retrieve parameters:*/
 	femmodel->parameters->FindParam(&isFS,FlowequationIsFSEnum);
 	femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
+	femmodel->parameters->FindParam(&fe_FS,FlowequationFeFSEnum);
 
 	/*Compute velocities*/
 	if(VerboseSolution()) _printf0_("   computing velocities\n");
 	femmodel->SetCurrentConfiguration(StressbalanceAnalysisEnum);
-	solutionsequence_nonlinear(femmodel,conserve_loads); 
+
+	if(VerboseSolution()) _printf0_("   computing velocities\n");
+	femmodel->SetCurrentConfiguration(StressbalanceAnalysisEnum);
+	if(isFS){
+		if (fe_FS==LATaylorHoodEnum || fe_FS==LACrouzeixRaviartEnum)
+		 solutionsequence_la(femmodel);
+		else
+		 solutionsequence_nonlinear(femmodel,conserve_loads); 
+	}
+	else{
+		solutionsequence_nonlinear(femmodel,conserve_loads); 
+	}
 
 	/*Call SurfaceAreax, because some it might be needed by PVector*/
@@ -37,9 +50,13 @@
 	if(save_results || true){
 		if(VerboseSolution()) _printf0_("   saving results\n");
-		if (isFS){
-			//int outputs[4] = {AdjointxEnum,AdjointyEnum,AdjointzEnum,AdjointpEnum};
-			//femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],4);
-			int outputs[3] = {AdjointxEnum,AdjointyEnum,AdjointpEnum};
-			femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],3);
+		if(isFS){
+			if(fe_FS==LATaylorHoodEnum || fe_FS==LACrouzeixRaviartEnum){
+				int outputs[2] = {AdjointxEnum,AdjointyEnum};
+				femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],2);
+			}
+			else{
+				int outputs[3] = {AdjointxEnum,AdjointyEnum,AdjointpEnum};
+				femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],3);
+			}
 		}
 		else{
