CFLAGS = FFLAGS = CPPFLAGS = FPPFLAGS = LOCDIR = src/dm/examples/tests/ EXAMPLESC = ex1.c ex2.c ex3.c ex4.c ex5.c ex6.c ex7.c ex8.c ex9.c ex10.c\ ex11.c ex12.c ex12.m ex13.c ex14.c ex15.c ex16.c ex17.c ex18.c ex19.c \ ex21.c ex22.c ex23.c ex24.c ex25.c ex26.c ex27.c ex28.c ex30.c \ ex31.c ex32.c ex34.c ex36.c ex37.c ex38.c EXAMPLESF = MANSEC = DM include ${PETSC_DIR}/conf/variables include ${PETSC_DIR}/conf/rules ex1: ex1.o chkopts -${CLINKER} -o ex1 ex1.o ${PETSC_DM_LIB} ${RM} -f ex1.o ex2: ex2.o chkopts -${CLINKER} -o ex2 ex2.o ${PETSC_DM_LIB} ${RM} -f ex2.o ex3: ex3.o chkopts -${CLINKER} -o ex3 ex3.o ${PETSC_DM_LIB} ${RM} -f ex3.o ex4: ex4.o chkopts -${CLINKER} -o ex4 ex4.o ${PETSC_DM_LIB} ${RM} -f ex4.o ex5: ex5.o chkopts -${CLINKER} -o ex5 ex5.o ${PETSC_DM_LIB} ${RM} -f ex5.o ex6: ex6.o chkopts -${CLINKER} -o ex6 ex6.o ${PETSC_DM_LIB} ${RM} -f ex6.o ex7: ex7.o chkopts -${CLINKER} -o ex7 ex7.o ${PETSC_DM_LIB} ${RM} -f ex7.o ex8: ex8.o chkopts -${CLINKER} -o ex8 ex8.o ${PETSC_DM_LIB} ${RM} -f ex8.o ex9: ex9.o chkopts -${CLINKER} -o ex9 ex9.o ${PETSC_DM_LIB} ${RM} -f ex9.o ex10: ex10.o chkopts -${CLINKER} -o ex10 ex10.o ${PETSC_DM_LIB} ${RM} -f ex10.o ex11: ex11.o chkopts -${CLINKER} -o ex11 ex11.o ${PETSC_DM_LIB} ${RM} -f ex11.o ex12: ex12.o chkopts -${CLINKER} -o ex12 ex12.o ${PETSC_DM_LIB} ${RM} -f ex12.o ex13: ex13.o chkopts -${CLINKER} -o ex13 ex13.o ${PETSC_DM_LIB} ${RM} -f ex13.o ex14: ex14.o chkopts -${CLINKER} -o ex14 ex14.o ${PETSC_DM_LIB} ${RM} -f ex14.o ex15: ex15.o chkopts -${CLINKER} -o ex15 ex15.o ${PETSC_DM_LIB} ${RM} -f ex15.o ex16: ex16.o chkopts -${CLINKER} -o ex16 ex16.o ${PETSC_DM_LIB} ${RM} -f ex16.o ex17: ex17.o chkopts -${CLINKER} -o ex17 ex17.o ${PETSC_DM_LIB} ${RM} -f ex17.o ex18: ex18.o chkopts -${CLINKER} -o ex18 ex18.o ${PETSC_DM_LIB} ${RM} -f ex18.o ex19: ex19.o chkopts -${CLINKER} -o ex19 ex19.o ${PETSC_DM_LIB} ${RM} -f ex19.o ex20: ex20.o chkopts -${CLINKER} -o ex20 ex20.o ${PETSC_DM_LIB} ${RM} -f ex20.o ex21: ex21.o chkopts -${CLINKER} -o ex21 ex21.o ${PETSC_DM_LIB} ${RM} -f ex21.o ex22: ex22.o chkopts -${CLINKER} -o ex22 ex22.o ${PETSC_DM_LIB} ${RM} -f ex22.o ex23: ex23.o chkopts -${CLINKER} -o ex23 ex23.o ${PETSC_DM_LIB} ${RM} -f ex23.o ex24: ex24.o chkopts -${CLINKER} -o ex24 ex24.o ${PETSC_DM_LIB} ${RM} -f ex24.o ex25: ex25.o chkopts -${CLINKER} -o ex25 ex25.o ${PETSC_DM_LIB} ${RM} -f ex25.o ex26: ex26.o chkopts -${CLINKER} -o ex26 ex26.o ${PETSC_DM_LIB} ${RM} -f ex26.o ex27: ex27.o chkopts -${CLINKER} -o ex27 ex27.o ${PETSC_DM_LIB} ${RM} -f ex27.o ex28: ex28.o chkopts -${CLINKER} -o ex28 ex28.o ${PETSC_DM_LIB} ${RM} -f ex28.o ex29: ex29.o chkopts -${CLINKER} -o ex29 ex29.o ${PETSC_DM_LIB} ${RM} -f ex29.o ex30: ex30.o chkopts -${CLINKER} -o ex30 ex30.o ${PETSC_DM_LIB} ${RM} -f ex30.o ex31: ex31.o chkopts -${CLINKER} -o ex31 ex31.o ${PETSC_DM_LIB} ${RM} -f ex31.o ex32: ex32.o chkopts -${CLINKER} -o ex32 ex32.o ${PETSC_DM_LIB} ${RM} -f ex32.o ex33: ex33.o chkopts -${CLINKER} -o ex33 ex33.o ${PETSC_DM_LIB} ${RM} -f ex33.o ex34: ex34.o chkopts -${CLINKER} -o ex34 ex34.o ${PETSC_DM_LIB} ${RM} -f ex34.o ex35: ex35.o chkopts -${CLINKER} -o ex35 ex35.o ${PETSC_DM_LIB} ${RM} -f ex35.o ex36: ex36.o chkopts -${CLINKER} -o ex36 ex36.o ${PETSC_DM_LIB} ${RM} -f ex36.o ex37: ex37.o chkopts -${CLINKER} -o ex37 ex37.o ${PETSC_DM_LIB} ${RM} -f ex37.o ex38:ex38.o chkopts -${CLINKER} -o ex38 ex38.o ${PETSC_DM_LIB} ${RM} -f ex38.o #------------------------------------------------------------------------------- runex1: -@${MPIEXEC} -n 2 ./ex1 -nox | grep -v -i Object > ex1_1.tmp 2>&1; \ if (${DIFF} output/ex1_1.out ex1_1.tmp) then true; \ else echo "Possible problem with ex1_1, diffs above"; fi; \ ${RM} -f ex1_1.tmp runex2: -@${MPIEXEC} -n 2 ./ex2 -nox > ex2_1.tmp 2>&1; \ if (${DIFF} output/ex2_1.out ex2_1.tmp) then true; \ else echo "Possible problem with ex2_1, diffs above"; fi; \ ${RM} -f ex2_1.tmp runex2_2: -@${MPIEXEC} -n 3 ./ex2 -wrap nonperiodic -local_print -nox > ex2_2.tmp 2>&1; \ if (${DIFF} output/ex2_2.out ex2_2.tmp) then true; \ else echo "Possible problem with ex2_2, diffs above"; fi; \ ${RM} -f ex2_2.tmp runex2_3: -@${MPIEXEC} -n 3 ./ex2 -wrap xyzghosted -local_print -nox > ex2_3.tmp 2>&1; \ if (${DIFF} output/ex2_3.out ex2_3.tmp) then true; \ else echo "Possible problem with ex2_3, diffs above"; fi; \ ${RM} -f ex2_3.tmp runex3: -@${MPIEXEC} -n 3 ./ex3 -time 50 -nox runex4: -@${MPIEXEC} -n 4 ./ex4 -nox | grep -v -i Object > ex4_1.tmp 2>&1; \ if (${DIFF} output/ex4_1.out ex4_1.tmp) then true; \ else echo "Possible problem with ex4_1, diffs above"; fi; \ ${RM} -f ex4_1.tmp runex5: -@${MPIEXEC} -n 3 ./ex5 -time 50 -nox runex6: -@${MPIEXEC} -n 6 ./ex6 -testorder -nox runex12: -@echo "path([getenv('PETSC_DIR') '/bin/matlab'],path); ex12(2) ; exit" | ${MATLAB_COMMAND} -display ${DISPLAY} > ex12_1.tmp 2>&1; grep -v flops ex12_1.tmp | grep -v Completed | grep -v About | grep -v Color | grep -v "at line 27" > ex12_1.tmp2 ; if (${DIFF} output/ex12_1.out ex12_1.tmp2) then true; \ else echo "Possible problem with PETSC SOCKET MATLAB INTERFACE ex12_1, diffs above"; fi; \ ${RM} -f ex12_1.tmp ex12_1.tmp2 # ex13 uses the output of ex14 runex13: -@${MPIEXEC} -n 3 ./ex13 -@${RM} -f daoutput daoutput.info runex14: -@${MPIEXEC} -n 4 ./ex14 ; sleep 1 runex16: -@${MPIEXEC} -n 3 ./ex16 > ex16_1.tmp 2>&1; \ ${DIFF} output/ex16_1.out ex16_1.tmp || echo "Possible problem with ex16, diffs above"; \ ${RM} -f ex16_1.tmp runex16_2: -@${MPIEXEC} -n 3 ./ex16 -gather_add > ex16_2.tmp 2>&1; \ ${DIFF} output/ex16_2.out ex16_2.tmp || echo "Possible problem with ex16_2, diffs above"; \ ${RM} -f ex16_2.tmp runex21: -@for procs in '-da_processors_x 10' '-da_processors_y 10' '-da_processors_z 10' ''; do \ ${MPIEXEC} -n 10 ./ex21 -mx 30 -my 30 -mz 30 -periodic 0 $procs ;\ ${MPIEXEC} -n 10 ./ex21 -mx 29 -my 30 -mz 30 -periodic 1 $procs ;\ ${MPIEXEC} -n 10 ./ex21 -mx 30 -my 29 -mz 30 -periodic 2 $procs ;\ ${MPIEXEC} -n 10 ./ex21 -mx 30 -my 30 -mz 29 -periodic 3 $procs ;\ done; runex23: -@for d in -1d -2d -3d; do \ for np in 1 2 3 4; do \ for dof in 1 2 3; do \ for stencil_type in 0 1; do \ ${MPIEXEC} -n $$np ./ex23 $$d -dof $$dof -stencil_type $$stencil_type ;\ done; \ done; \ done; \ done; runex24: -@${MPIEXEC} -n 1 ./ex24 | grep -v -i Process > ex24_1.tmp 2>&1; \ if (${DIFF} output/ex24_1.out ex24_1.tmp) then true; \ else echo "Possible problem with ex24_1 1 process, diffs above"; fi; ${RM} -f ex24_1.tmp -@${MPIEXEC} -n 2 ./ex24 | grep -v -i Process > ex24_1.tmp 2>&1; \ if (${DIFF} output/ex24_1.out ex24_1.tmp) then true; \ else echo "Possible problem with ex24_1 2 processes, diffs above"; fi; ${RM} -f ex24_1.tmp -@${MPIEXEC} -n 3 ./ex24 | grep -v -i Process > ex24_1.tmp 2>&1; \ if (${DIFF} output/ex24_1.out ex24_1.tmp) then true; \ else echo "Possible problem with ex24_1 3 processes, diffs above"; fi; ${RM} -f ex24_1.tmp -@${MPIEXEC} -n 4 ./ex24 | grep -v -i Process > ex24_1.tmp 2>&1; \ if (${DIFF} output/ex24_1.out ex24_1.tmp) then true; \ else echo "Possible problem with ex24_1 4 processes, diffs above"; fi; ${RM} -f ex24_1.tmp -@${MPIEXEC} -n 5 ./ex24 | grep -v -i Process > ex24_1.tmp 2>&1; \ if (${DIFF} output/ex24_1.out ex24_1.tmp) then true; \ else echo "Possible problem with ex24_1 5 processes, diffs above"; fi; ${RM} -f ex24_1.tmp -@${MPIEXEC} -n 6 ./ex24 | grep -v -i Process > ex24_1.tmp 2>&1; \ if (${DIFF} output/ex24_1.out ex24_1.tmp) then true; \ else echo "Possible problem with ex24_1 6 processes, diffs above"; fi; ${RM} -f ex24_1.tmp runex25: -@${MPIEXEC} -n 1 ./ex25 | grep -v -i Process > ex25_1.tmp 2>&1; \ if (${DIFF} output/ex25_1.out ex25_1.tmp) then true; \ else echo "Possible problem with ex25_1 1 process, diffs above"; fi; ${RM} -f ex25_1.tmp -@${MPIEXEC} -n 2 ./ex25 | grep -v -i Process > ex25_1.tmp 2>&1; \ if (${DIFF} output/ex25_1.out ex25_1.tmp) then true; \ else echo "Possible problem with ex25_1 2 processes, diffs above"; fi; ${RM} -f ex25_1.tmp -@${MPIEXEC} -n 3 ./ex25 | grep -v -i Process > ex25_1.tmp 2>&1; \ if (${DIFF} output/ex25_1.out ex25_1.tmp) then true; \ else echo "Possible problem with ex25_1 3 processes, diffs above"; fi; ${RM} -f ex25_1.tmp -@${MPIEXEC} -n 4 ./ex25 | grep -v -i Process > ex25_1.tmp 2>&1; \ if (${DIFF} output/ex25_1.out ex25_1.tmp) then true; \ else echo "Possible problem with ex25_1 4 processes, diffs above"; fi; ${RM} -f ex25_1.tmp -@${MPIEXEC} -n 5 ./ex25 | grep -v -i Process > ex25_1.tmp 2>&1; \ if (${DIFF} output/ex25_1.out ex25_1.tmp) then true; \ else echo "Possible problem with ex25_1 5 processes, diffs above"; fi; ${RM} -f ex25_1.tmp -@${MPIEXEC} -n 6 ./ex25 | grep -v -i Process > ex25_1.tmp 2>&1; \ if (${DIFF} output/ex25_1.out ex25_1.tmp) then true; \ else echo "Possible problem with ex25_1 6 processes, diffs above"; fi; ${RM} -f ex25_1.tmp runex30: -@${MPIEXEC} -n 2 ./ex30 -bs 2 -block 0 -sliced_mat_type baij -alpha 10 -u0 0.1 > ex30_1.tmp; \ ${DIFF} output/ex30_1.out ex30_1.tmp || echo "Possible problem with ex30_1, diffs above"; \ ${RM} -f ex30_1.tmp runex30_2: -@${MPIEXEC} -n 2 ./ex30 -bs 2 -block 1 -sliced_mat_type aij -alpha 10 -u0 0.1 > ex30_2.tmp; \ ${DIFF} output/ex30_2.out ex30_2.tmp || echo "Possible problem with ex30_2, diffs above"; \ ${RM} -f ex30_2.tmp runex30_3: -@${MPIEXEC} -n 2 ./ex30 -bs 2 -block 0 -sliced_mat_type aij -alpha 10 -u0 0.1 > ex30_3.tmp; \ ${DIFF} output/ex30_3.out ex30_3.tmp || echo "Possible problem with ex30_3, diffs above"; \ ${RM} -f ex30_3.tmp runex31: -@${MPIEXEC} -n 2 ./ex31 runex32: -@${MPIEXEC} -n 2 ./ex32 > ex32_1.tmp; \ ${DIFF} output/ex32_1.out ex32_1.tmp || echo "Possible problem with ex32, diffs above"; \ ${RM} -f ex32_1.tmp runex34: -@${MPIEXEC} -n 12 ./ex34 -da_view -dim 3 -da_grid_x 11 -da_grid_y 5 -da_grid_z 7 > ex34_1.tmp; \ ${DIFF} output/ex34_1.out ex34_1.tmp || echo "Possible problem with ex34, diffs above"; \ ${RM} -f ex34_1.tmp runex36_1d: -@${MPIEXEC} -n 1 ./ex36 -mx 10 -nl 6 -dim 1 > ex36_1d.tmp; \ ${DIFF} output/ex36_1d.out ex36_1d.tmp || echo "Possible problem with ex36_1d, diffs above"; \ ${RM} -f ex36_1d.tmp runex36_2d: -@${MPIEXEC} -n 1 ./ex36 -mx 10 -my 10 -nl 6 -dim 2 -cmap 0 > ex36_2d.tmp; \ ${MPIEXEC} -n 1 ./ex36 -mx 10 -my 10 -nl 6 -dim 2 -cmap 1 >> ex36_2d.tmp; \ ${MPIEXEC} -n 1 ./ex36 -mx 10 -my 10 -nl 6 -dim 2 -cmap 2 >> ex36_2d.tmp; \ ${MPIEXEC} -n 1 ./ex36 -mx 10 -my 10 -nl 6 -dim 2 -cmap 3 >> ex36_2d.tmp; \ ${DIFF} output/ex36_2d.out ex36_2d.tmp || echo "Possible problem with ex36_2d, diffs above"; \ ${RM} -f ex36_2d.tmp runex36_2dp1: -@${MPIEXEC} -n 32 ./ex36 -mx 10 -my 10 -nl 4 -dim 2 -cmap 3 -da_refine_x 3 -da_refine_y 4 > ex36_2dp1.tmp; \ ${DIFF} output/ex36_2dp1.out ex36_2dp1.tmp || echo "Possible problem with ex36_2dp1, diffs above"; \ ${RM} -f ex36_2dp1.tmp runex36_2dp2: -@${MPIEXEC} -n 32 ./ex36 -mx 10 -my 10 -nl 4 -dim 2 -cmap 3 -da_refine_x 3 -da_refine_y 1 > ex36_2dp2.tmp; \ ${DIFF} output/ex36_2dp2.out ex36_2dp2.tmp || echo "Possible problem with ex36_2dp1, diffs above"; \ ${RM} -f ex36_2dp2.tmp runex36_3d: -@${MPIEXEC} -n 1 ./ex36 -mx 5 -my 5 -mz 5 -nl 4 -dim 3 -cmap 3 > ex36_3d.tmp; \ ${DIFF} output/ex36_3d.out ex36_3d.tmp || echo "Possible problem with ex36_3d, diffs above"; \ ${RM} -f ex36_3d.tmp runex36_3dp1: -@${MPIEXEC} -n 32 ./ex36 -mx 5 -my 5 -mz 5 -nl 3 -dim 3 -cmap 1 -da_refine_x 1 -da_refine_y 3 -da_refine_z 4 > ex36_3dp1.tmp; \ ${DIFF} output/ex36_3dp1.out ex36_3dp1.tmp || echo "Possible problem with ex36_3dp1, diffs above"; \ ${RM} -f ex36_3dp1.tmp runex37: -@${MPIEXEC} -n 2 ./ex37 ;\ ${RM} -f ex32_1.tmp TESTEXAMPLES_C = ex1.PETSc runex1 ex1.rm ex4.PETSc runex4 ex4.rm ex16.PETSc ex16.rm \ ex21.PETSc runex21 ex21.rm ex24.PETSc runex24 ex24.rm ex25.PETSc \ runex25 ex25.rm ex30.PETSc runex30 runex30_2 runex30_3 ex30.rm ex31.PETSc runex31 ex31.rm ex32.PETSc runex32 ex32.rm \ ex34.PETSc runex34 ex34.rm ex36.PETSc runex36_1d runex36_2d runex36_2dp1 runex36_2dp2 runex36_3d runex36_3dp1 ex36.rm TESTEXAMPLES_C_X11 = ex2.PETSc runex2 ex2.rm ex3.PETSc runex3 ex3.rm ex5.PETSc runex5 ex5.rm ex6.PETSc runex6 \ ex6.rm ex7.PETSc ex7.rm ex14.PETSc runex14 ex14.rm \ ex13.PETSc runex13 ex13.rm ex23.PETSc runex23 ex23.rm ex37.PETSc runex37 ex37.rm TESTEXAMPLES_FORTRAN = TESTEXAMPLES_C_X11_MPIUNI = ex1.PETSc ex1.rm ex2.PETSc ex2.rm ex3.PETSc ex3.rm ex4.PETSc ex4.rm ex5.PETSc ex5.rm\ ex6.PETSc ex6.rm ex12.PETSc ex12.rm TESTEXAMPLES_C_COMPLEX = TESTEXAMPLES_C_NOCOMPLEX = ex16.PETSc runex16 runex16_2 ex16.rm TESTEXAMPLES_13 = ex8.PETSc ex8.rm ex9.PETSc ex9.rm ex10.PETSc ex10.rm ex11.PETSc ex11.rm TESTEXAMPLES_MATLAB = ex12.PETSc runex12 ex12.rm include ${PETSC_DIR}/conf/test