Index: /issm/trunk/src/c/Makefile.am
===================================================================
--- /issm/trunk/src/c/Makefile.am	(revision 4030)
+++ /issm/trunk/src/c/Makefile.am	(revision 4031)
@@ -942,9 +942,6 @@
 					./modules/OutputRiftsx/OutputRiftsx.cpp\
 					./solutions/diagnostic_core.cpp\
-					./solutions/diagnostic_core_linear.cpp\
-					./solutions/diagnostic_core_nonlinear.cpp\
 					./solutions/convergence.cpp\
 					./solutions/thermal_core.cpp\
-					./solutions/thermal_core_nonlinear.cpp\
 					./solutions/WriteLockFile.cpp\
 					./solutions/control_core.cpp\
@@ -958,6 +955,8 @@
 					./solutions/balancedthickness2_core.cpp\
 					./solutions/balancedvelocities_core.cpp\
-					./solutions/slopecompute_core.cpp\
-					./solutions/slope_core.cpp\
+					./solutions/surfaceslope.cpp\
+					./solutions/surfaceslope_core.cpp\
+					./solutions/bedslope.cpp\
+					./solutions/bedslope_core.cpp\
 					./solutions/transient_core.cpp\
 					./solutions/transient_core_2d.cpp\
@@ -965,5 +964,7 @@
 					./solutions/steadystate_core.cpp\
 					./solutions/ResetBoundaryConditions.cpp\
-					./solutions/solve_linear.cpp\
+					./solvers/solver_linear.cpp\
+					./solvers/solver_diagnostic_nonlinear.cpp\
+					./solvers/solver_thermal_nonlinear.cpp\
 					./modules/Bamgx/Bamgx.cpp\
 					./modules/Bamgx/Bamgx.h\
@@ -976,37 +977,39 @@
 bin_PROGRAMS = 
 else 
-bin_PROGRAMS = DiagnosticAnalysis.exe 
-dnl bin_PROGRAMS = DiagnosticAnalysis.exe ThermalAnalysis.exe PrognosticAnalysis.exe Prognostic2Analysis.exe BalancedthicknessAnalysis.exe Balancedthickness2Analysis.exe BalancedvelocitiesAnalysis.exe TransientAnalysis.exe SteadystateAnalysis.exe SlopecomputeAnalysis.exe
+bin_PROGRAMS = DiagnosticSolution.exe ThermalSolution.exe PrognosticSolution.exe Prognostic2Solution.exe BalancedthicknessSolution.exe Balancedthickness2Solution.exe BalancedvelocitiesSolution.exe TransientSolution.exe SteadystateSolution.exe SurfaceSlopeSolution.exe BedSlopeSolution.exe 
 endif
 
 LDADD =    ./libpISSM.a $(PETSCLIB)    $(FLIBS)  $(PLAPACKLIB)  $(MUMPSLIB) $(SCALAPACKLIB)  $(BLACSLIB)  $(DAKOTALIB) $(METISLIB) $(BLASLAPACKLIB)  $(MKLLIB) $(MPILIB) $(MATHLIB) $(FORTRANLIB) $(GRAPHICSLIB) libOverload.a $(MULTITHREADINGLIB)
 
-DiagnosticAnalysis_exe_SOURCES = solutions/diagnostic.cpp
-DiagnosticAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-SteadystateAnalysis_exe_SOURCES = solutions/steadystate.cpp
-SteadystateAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-ThermalAnalysis_exe_SOURCES = solutions/thermal.cpp
-ThermalAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-PrognosticAnalysis_exe_SOURCES = solutions/prognostic.cpp
-PrognosticAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-Prognostic2Analysis_exe_SOURCES = solutions/prognostic2.cpp
-Prognostic2Analysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-BalancedthicknessAnalysis_exe_SOURCES = solutions/balancedthickness.cpp
-BalancedthicknessAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-Balancedthickness2Analysis_exe_SOURCES = solutions/balancedthickness2.cpp
-Balancedthickness2Analysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-BalancedvelocitiesAnalysis_exe_SOURCES = solutions/balancedvelocities.cpp
-BalancedvelocitiesAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-SlopecomputeAnalysis_exe_SOURCES = solutions/slopecompute.cpp
-SlopecomputeAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
-
-TransientAnalysis_exe_SOURCES = solutions/transient.cpp
-TransientAnalysis_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+DiagnosticSolution_exe_SOURCES = solutions/diagnostic.cpp
+DiagnosticSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+SteadystateSolution_exe_SOURCES = solutions/steadystate.cpp
+SteadystateSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+ThermalSolution_exe_SOURCES = solutions/thermal.cpp
+ThermalSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+PrognosticSolution_exe_SOURCES = solutions/prognostic.cpp
+PrognosticSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+Prognostic2Solution_exe_SOURCES = solutions/prognostic2.cpp
+Prognostic2Solution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+BalancedthicknessSolution_exe_SOURCES = solutions/balancedthickness.cpp
+BalancedthicknessSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+Balancedthickness2Solution_exe_SOURCES = solutions/balancedthickness2.cpp
+Balancedthickness2Solution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+BalancedvelocitiesSolution_exe_SOURCES = solutions/balancedvelocities.cpp
+BalancedvelocitiesSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+SurfaceSlopeSolution_exe_SOURCES = solutions/surfaceslope.cpp
+SurfaceSlopeSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+BedSlopeSolution_exe_SOURCES = solutions/bedslope.cpp
+BedSlopeSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
+
+TransientSolution_exe_SOURCES = solutions/transient.cpp
+TransientSolution_exe_CXXFLAGS= -fPIC -D_PARALLEL_ 
