00001 
00002 include '../Include_file/include_modulefiles_peos.f90'
00003 include '../Module/grid_parameter_binary_excision.f90'
00004 include '../Module/grid_points_binary_excision.f90'
00005 include '../Module/weight_midpoint_binary_excision.f90'
00006 include '../Module/radial_green_fn_grav_bhex_nb.f90'
00007 include '../Module/radial_green_fn_grav_bhex_di.f90'
00008 include '../Module/radial_green_fn_grav_bhex_dd.f90'
00009 include '../Module/radial_green_fn_grav_bhex_dh.f90'
00010 include '../Module/radial_green_fn_grav_bhex_nh.f90'
00011 include '../Module/copy_array_3d.f90'
00012 
00013 include '../Include_file/include_interface_modulefiles_peos.f90'
00014 include '../Module_interface/interface_error_metric_type0.f90'
00015 include '../Module_interface/interface_grdr_gridpoint_type0.f90'
00016 include '../Module_interface/interface_grdr_gridpoint_type0_nosym.f90'
00017 include '../Module_interface/interface_sourceterm_poisson_solver_test.f90'
00018 include '../Module_interface/interface_sourceterm_exsurf_eqm_binary.f90'
00019 include '../Module_interface/interface_sourceterm_surface_int.f90'
00020 include '../Module_interface/interface_sourceterm_surface_int_homosol.f90'
00021 include '../Module_interface/interface_poisson_solver_binary_bhex_homosol.f90'
00022 include '../Module_interface/interface_poisson_solver_binary_bhex.f90'
00023 include '../Module_interface/interface_poisson_solver_binary_surf_int.f90'
00024 include '../Module_interface/interface_poisson_solver_binary_vol_int.f90'
00025 include '../Module_interface/interface_poisson_solver_bhex_surf_int.f90'
00026 include '../Module_interface/interface_poisson_solver_bhex_surf_int_all.f90'
00027 include '../Module_interface/interface_copy_to_hgfn_and_gfnsf.f90'
00028 include '../Module_interface/interface_bh_boundary_test.f90'
00029 
00030 include '../Include_file/include_subroutines_peos.f90'
00031 include '../Subroutine/IO_output_poisson_test_3D.f90'
00032 include '../Subroutine/iteration_poisson_bbh_test.f90'
00033 include '../Subroutine/error_metric_type0.f90'
00034 include '../Subroutine/printout_error_metric.f90'
00035 include '../Subroutine/coordinate_patch_kit_bhex.f90'
00036 include '../Subroutine/copy_hgfn_nb_to_hgfn.f90'
00037 include '../Subroutine/copy_hgfn_di_to_hgfn.f90'
00038 include '../Subroutine/copy_hgfn_dd_to_hgfn.f90'
00039 include '../Subroutine/copy_hgfn_dh_to_hgfn.f90'
00040 include '../Subroutine/copy_to_hgfn_and_gfnsf.f90'
00041 include '../Subroutine/sourceterm_poisson_solver_test.f90'
00042 include '../Subroutine/sourceterm_exsurf_eqm_binary.f90'
00043 include '../Subroutine/sourceterm_surface_int.f90'
00044 include '../Subroutine/sourceterm_surface_int_homosol.f90'
00045 include '../Subroutine/poisson_solver_binary_bhex.f90'
00046 include '../Subroutine/poisson_solver_binary_bhex_homosol.f90'
00047 include '../Subroutine/poisson_solver_binary_vol_int.f90'
00048 include '../Subroutine/poisson_solver_binary_surf_int.f90'
00049 include '../Subroutine/poisson_solver_bhex_surf_int.f90'
00050 include '../Subroutine/poisson_solver_bhex_surf_int_all.f90'
00051 include '../Subroutine/grdr_gridpoint_type0.f90'
00052 include '../Subroutine/grdr_gridpoint_type0_nosym.f90'
00053 include '../Subroutine/reset_bh_boundary.f90'
00054 include '../Subroutine/bh_boundary_test.f90'
00055 include '../Subroutine/allocate_poisson_bbh_test.f90'
00056 include '../Subroutine/test_analytic_solution_bhex.f90'
00057 
00058 
00059 
00060 
00061 PROGRAM Main_poisson_bbh_test
00062 
00063   use grid_parameter, only : outdata_type, iter_max
00064   use radial_green_fn_grav
00065 
00066 
00067   use radial_green_fn_grav_bhex_nb
00068   use radial_green_fn_grav_bhex_dh
00069   use radial_green_fn_grav_bhex_nh
00070   use grid_parameter_binary_excision
00071   use grid_points_binary_excision
00072   use weight_midpoint_binary_excision
00073   use interface_copy_to_hgfn_and_gfnsf
00074   implicit none
00075   integer :: iseq, iter_count, total_iteration
00076 
00077   call coordinate_patch_kit_bhex
00078   call allocate_hgfn_bhex
00079 
00080 
00081 
00082 
00083 
00084 
00085 
00086 
00087   call allocate_hgfn_bhex_nb
00088   call calc_hgfn_bhex_nb
00089 
00090 
00091 
00092   call allocate_hgfn_bhex_dh
00093   call calc_hgfn_bhex_dh
00094   call copy_to_hgfn_and_gfnsf(hgfn_dh,gfnsf_dh)
00095 
00096 
00097 
00098 
00099 
00100   call read_parameter_binary_excision
00101   call calc_parameter_binary_excision
00102   call allocate_grid_points_binary_excision
00103   call calc_grid_points_binary_excision
00104   call allocate_weight_midpoint_binary_excision
00105   call calc_weight_midpoint_binary_excision
00106   call allocate_poisson_bbh_test
00107   call test_analytic_solution_bhex
00108 
00109   call iteration_poisson_bbh_test(iter_count)
00110   if (total_iteration.ge.iter_max) then
00111     write(6,*)' ** Solution did not converge **'
00112   end if
00113 
00114   if (outdata_type.eq.'3D') call IO_output_poisson_test_3D
00115 
00116 
00117 
00118 END PROGRAM Main_poisson_bbh_test