CFLAGS = FFLAGS = CPPFLAGS = FPPFLAGS = LOCDIR = src/ts/examples/tests/ EXAMPLESC = ex1.c ex2.c ex3.c ex4.c EXAMPLESF = ex1f.F EXAMPLESFH = ex1f.h MANSEC = TS include ${PETSC_DIR}/conf/variables include ${PETSC_DIR}/conf/rules ex1: ex1.o chkopts -${CLINKER} -o ex1 ex1.o ${PETSC_TS_LIB} ${RM} ex1.o ex1f: ex1f.o chkopts -${FLINKER} -o ex1f ex1f.o ${PETSC_TS_LIB} ${RM} ex1f.o ex2: ex2.o chkopts -${CLINKER} -o ex2 ex2.o ${PETSC_TS_LIB} ${RM} ex2.o ex3: ex3.o chkopts -${CLINKER} -o ex3 ex3.o ${PETSC_TS_LIB} ${RM} ex3.o ex4: ex4.o chkopts -${CLINKER} -o ex4 ex4.o ${PETSC_TS_LIB} ${RM} ex4.o #---------------------------------------------------------------------------------- NPROCS = 1 3 runex1_euler: -@${MPIEXEC} -n 1 ./ex1 -ts_type euler -linear_constant_matrix -monitor -nox -time 10 > ex1_euler.tmp 2>&1; \ if (${DIFF} output/ex1_euler.out ex1_euler.tmp) then true; \ else echo "Possible problem with ex1_euler, diffs above"; fi; \ ${RM} -f ex1_euler.tmp runex1_euler_2: -@${MPIEXEC} -n 1 ./ex1 -ts_type euler -linear_variable_matrix -monitor -nox -time 10 > ex1_euler.tmp 2>&1; \ if (${DIFF} output/ex1_euler.out ex1_euler.tmp) then true; \ else echo "Possible problem with ex1_euler_2, diffs above"; fi; \ ${RM} -f ex1_euler.tmp runex1_euler_3: -@${MPIEXEC} -n 1 ./ex1 -ts_type euler -linear_no_matrix -monitor -nox -time 10 > ex1_euler.tmp 2>&1; \ if (${DIFF} output/ex1_euler.out ex1_euler.tmp) then true; \ else echo "Possible problem with ex1_euler_3, diffs above"; fi; \ ${RM} -f ex1_euler.tmp runex1_euler_4: -@${MPIEXEC} -n 1 ./ex1 -ts_type euler -nonlinear_jacobian -monitor -nox -time 10 > ex1_euler.tmp 2>&1; \ if (${DIFF} output/ex1_euler.out ex1_euler.tmp) then true; \ else echo "Possible problem with ex1_euler_4, diffs above"; fi; \ ${RM} -f ex1_euler.tmp runex1_euler_5: -@${MPIEXEC} -n 1 ./ex1 -ts_type euler -nonlinear_no_jacobian -monitor -nox -time 10 > ex1_euler.tmp 2>&1; \ if (${DIFF} output/ex1_euler.out ex1_euler.tmp) then true; \ else echo "Possible problem with ex1_euler_5, diffs above"; fi; \ ${RM} -f ex1_euler.tmp runex1_beuler: -@touch ex1_beuler.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type beuler -ksp_gmres_cgs_refinement_type refine_always -linear_constant_matrix -monitor -nox -time 10 >> ex1_beuler.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_beuler.out ex1_beuler.tmp) then true; \ else echo "Possible problem with ex1_beuler, diffs above"; fi; \ ${RM} -f ex1_beuler.tmp; runex1_beuler_2: -@touch ex1_beuler.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type beuler -linear_variable_matrix -monitor -nox -time 10 >> ex1_beuler.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_beuler.out ex1_beuler.tmp) then true; \ else echo "Possible problem with ex1_beuler_2, diffs above"; fi; \ ${RM} -f ex1_beuler.tmp; runex1_beuler_3: -@touch ex1_beuler.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type beuler -nonlinear_jacobian -monitor -nox -time 10 >> ex1_beuler.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_beuler.out ex1_beuler.tmp) then true; \ else echo "Possible problem with ex1_beuler_3, diffs above"; fi; \ ${RM} -f ex1_beuler.tmp; runex1_beuler_4: -@touch ex1_beuler.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type beuler -nonlinear_no_jacobian -pc_type none -monitor -nox -time 10 >> ex1_beuler.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_beuler.out ex1_beuler.tmp) then true; \ else echo "Possible problem with ex1_4, diffs above"; fi; \ ${RM} -f ex1_beuler.tmp; runex1_beuler_5: -@touch ex1_beuler.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type beuler -linear_no_matrix -pc_type none -monitor -nox -time 10 >> ex1_beuler.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_beuler.out ex1_beuler.tmp) then true; \ else echo "Possible problem with ex1_beuler_5, diffs above"; fi; \ ${RM} -f ex1_beuler.tmp runex1_cn: -@touch ex1_cn.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type crank-nicholson -linear_constant_matrix -monitor -nox -time 10 >> ex1_cn.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_cn.out ex1_cn.tmp) then true; \ else echo "Possible problem with ex1_cn, diffs above"; fi; \ ${RM} -f ex1_cn.tmp runex1_cn_2: -@touch ex1_cn.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type crank-nicholson -linear_variable_matrix -monitor -nox -time 10 >> ex1_cn.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_cn.out ex1_cn.tmp) then true; \ else echo "Possible problem with ex1_cn_2, diffs above"; fi; \ ${RM} -f ex1_cn.tmp runex1_cn_3: -@touch ex1_cn.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type crank-nicholson -linear_no_matrix -pc_type none -monitor -nox -time 10 >> ex1_cn.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_cn.out ex1_cn.tmp) then true; \ else echo "Possible problem with ex1_cn_3, diffs above"; fi; \ ${RM} -f ex1_cn.tmp runex1_cn_4: -@touch ex1_cn.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type crank-nicholson -nonlinear_jacobian -monitor -nox -time 10 >> ex1_cn.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_cn.out ex1_cn.tmp) then true; \ else echo "Possible problem with ex1_cn_4, diffs above"; fi; \ ${RM} -f ex1_cn.tmp runex1_cn_5: -@touch ex1_cn.tmp;\ for np in ${NPROCS}; do \ ${MPIEXEC} -n $$np ./ex1 -ts_type crank-nicholson -nonlinear_no_jacobian -pc_type none -monitor -nox -time 10 >> ex1_cn.tmp 2>&1; \ done; \ if (${DIFF} output/ex1_cn.out ex1_cn.tmp) then true; \ else echo "Possible problem with ex1_cn_5, diffs above"; fi; \ ${RM} -f ex1_cn.tmp; runex1f: -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type euler -linear_no_matrix -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type euler -nonlinear_no_jacobian -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type euler -linear_constant_matrix -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type euler -linear_variable_matrix -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type euler -nonlinear_jacobian -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type beuler -ksp_gmres_cgs_refinement_type refine_always -linear_no_matrix -pc_type none -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type beuler -ksp_gmres_cgs_refinement_type refine_always -nonlinear_no_jacobian -pc_type none -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type beuler -ksp_gmres_cgs_refinement_type refine_always -linear_constant_matrix -pc_type lu -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type beuler -ksp_gmres_cgs_refinement_type refine_always -linear_variable_matrix -@${MPIEXEC} -n 1 ./ex1f -test -nox -ts_type beuler -ksp_gmres_cgs_refinement_type refine_always -nonlinear_jacobian runex3: -@${MPIEXEC} -n 1 ./ex3 > ex3.tmp 2>&1; \ if (${DIFF} output/ex3.out ex3.tmp) then true; \ else echo "Possible problem with ex3, diffs above"; fi; \ ${RM} -f ex3.tmp runex3_2: -@${MPIEXEC} -n 1 ./ex3 -useAlhs > ex3.tmp 2>&1; \ if (${DIFF} output/ex3.out ex3.tmp) then true; \ else echo "Possible problem with ex3_2, diffs above"; fi; \ ${RM} -f ex3.tmp runex4: -@${MPIEXEC} -n 1 ./ex4 -ts_fd -ts_type beuler> ex4.tmp 2>&1; \ if (${DIFF} output/ex4.out ex4.tmp) then true; \ else echo "Possible problem with ex4, diffs above"; fi; \ ${RM} -f ex4.tmp runex4_1: -@${MPIEXEC} -n 2 ./ex4 -ts_fd -ts_type beuler> ex4.tmp 2>&1; \ if (${DIFF} output/ex4.out ex4.tmp) then true; \ else echo "Possible problem with ex4_1, diffs above"; fi; \ ${RM} -f ex4.tmp runex4_2: -@${MPIEXEC} -n 2 ./ex4 -ts_fd -ts_type beuler -snes_mf_operator> ex4.tmp 2>&1; \ if (${DIFF} output/ex4.out ex4.tmp) then true; \ else echo "Possible problem with ex4_2, diffs above"; fi; \ ${RM} -f ex4.tmp runex4_3: -@${MPIEXEC} -n 2 ./ex4 -ts_fd -ts_type crank-nicholson > ex4.tmp 2>&1; \ if (${DIFF} output/ex4_3.out ex4.tmp) then true; \ else echo "Possible problem with ex4_3, diffs above"; fi; \ ${RM} -f ex4.tmp runex4_4: -@${MPIEXEC} -n 2 ./ex4 -ts_fd -ts_type crank-nicholson -snes_mf_operator > ex4.tmp 2>&1; \ if (${DIFF} output/ex4_3.out ex4.tmp) then true; \ else echo "Possible problem with ex4_4, diffs above"; fi; \ ${RM} -f ex4.tmp runex4_5: -@${MPIEXEC} -n 1 ./ex4 -ts_type beuler -ts_fd -fd_color -mat_coloring_type sl > ex4.tmp 2>&1; \ if (${DIFF} output/ex4.out ex4.tmp) then true; \ else echo "Possible problem with ex4_5, diffs above"; fi; \ ${RM} -f ex4.tmp runex4_6: -@${MPIEXEC} -n 2 ./ex4 -ts_type beuler -ts_fd -fd_color -mat_coloring_type sl > ex4.tmp 2>&1; \ if (${DIFF} output/ex4.out ex4.tmp) then true; \ else echo "Possible problem with ex4_6, diffs above"; fi; \ ${RM} -f ex4.tmp runex4_7: -@${MPIEXEC} -n 1 ./ex4 -ts_fd -ts_type beuler -test_PostStep > ex4.tmp 2>&1; \ if (${DIFF} output/ex4_7.out ex4.tmp) then true; \ else echo "Possible problem with ex4_7, diffs above"; fi; \ ${RM} -f ex4.tmp TESTEXAMPLES_C = ex1.PETSc runex1_euler runex1_euler_2 runex1_euler_3 runex1_euler_4 runex1_euler_5 \ runex1_beuler runex1_beuler_2 runex1_beuler_3 runex1_beuler_4 runex1_beuler_5 \ runex1_cn runex1_cn_2 runex1_cn_3 ex1.rm \ ex4.PETSc runex4 runex4_1 runex4_2 runex4_3 runex4_4 runex4_5 runex4_6 \ runex4_7 ex4.rm testexamples_C_NoComplex = ex3.PETSc runex3 runex3_2 ex3.rm TESTEXAMPLES_C_X11 = TESTEXAMPLES_FORTRAN = ex1f.PETSc runex1f ex1f.rm TESTEXAMPLES_C_X11_MPIUNI = TESTEXAMPLES_13 = ex2.PETSc ex2.rm ex4.PETSc ex4.rm include ${PETSC_DIR}/conf/test