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_helmholtz.f90'
00007 include '../Module/radial_green_fn_hrethadv.f90'
00008 include '../Module/copy_array_3d.f90'
00009 include '../Module/copy_array_4d.f90'
00010 
00011 include '../Include_file/include_interface_modulefiles_peos.f90'
00012 include '../Module_interface/interface_error_metric.f90'
00013 include '../Module_interface/interface_grdr_gridpoint_type0.f90'
00014 include '../Module_interface/interface_grdr_gridpoint_type0_nosym.f90'
00015 include '../Module_interface/interface_sourceterm_helmholtz_solver_test.f90'
00016 include '../Module_interface/interface_sourceterm_exsurf_eqm_binary.f90'
00017 include '../Module_interface/interface_sourceterm_surface_int.f90'
00018 include '../Module_interface/interface_sourceterm_surface_int_homosol.f90'
00019 include '../Module_interface/interface_sourceterm_outsurf_eqm_binary.f90'
00020 include '../Module_interface/interface_helmholtz_solver_binary.f90'
00021 include '../Module_interface/interface_helmholtz_solver_binary_vol_int.f90'
00022 include '../Module_interface/interface_helmholtz_solver_binary_surf_int.f90'
00023 include '../Module_interface/interface_helmholtz_solver_outer_surf_int.f90'
00024 include '../Module_interface/interface_helmholtz_solver_binary_bhex_homosol.f90'
00025 include '../Module_interface/interface_helmholtz_solver_bhex_surf_int.f90'
00026 include '../Module_interface/interface_copy_to_bsjy_and_sbsjy.f90'
00027 
00028 include '../Include_file/include_subroutines_peos.f90'
00029 include '../Subroutine/coordinate_patch_kit_bhex.f90'
00030 include '../Subroutine/IO_output_poisson_test_3D.f90'
00031 include '../Subroutine/iteration_helmholtz_solver_binary_test.f90'
00032 include '../Subroutine/iteration_helmholtz_solver_bbh_test.f90'
00033 include '../Subroutine/error_metric.f90'
00034 include '../Subroutine/printout_error_metric.f90'
00035 include '../Subroutine/sourceterm_helmholtz_solver_test.f90'
00036 include '../Subroutine/sourceterm_exsurf_eqm_binary.f90'
00037 include '../Subroutine/sourceterm_surface_int.f90'
00038 include '../Subroutine/sourceterm_surface_int_homosol.f90'
00039 include '../Subroutine/sourceterm_outsurf_eqm_binary.f90'
00040 include '../Subroutine/helmholtz_solver_binary.f90'
00041 include '../Subroutine/helmholtz_solver_binary_bhex_homosol.f90'
00042 include '../Subroutine/helmholtz_solver_binary_vol_int.f90'
00043 include '../Subroutine/helmholtz_solver_binary_surf_int.f90'
00044 include '../Subroutine/helmholtz_solver_bhex_surf_int.f90'
00045 include '../Subroutine/helmholtz_solver_outer_surf_int.f90'
00046 include '../Subroutine/grdr_gridpoint_type0.f90'
00047 include '../Subroutine/grdr_gridpoint_type0_nosym.f90'
00048 include '../Subroutine/test_source_helical_binary.f90'
00049 include '../Subroutine/allocate_poisson_solver_test.f90'
00050 include '../Subroutine/test_analytic_solution.f90'
00051 include '../Subroutine/calc_radial_green_fn_hrethadv.f90'
00052 include '../Subroutine/copy_to_bsjy_and_sbsjy.f90'
00053 include '../Subroutine/sphbess.f90'
00054 include '../Subroutine/sphbess_and_dx.f90'
00055 include '../Subroutine/sphbess_dx.f90'
00056 include '../Subroutine/bessjy.f90'
00057 include '../Subroutine/beschb.f90'
00058 include '../Function/chebev.f90'
00059 
00060 
00061 
00062 
00063 PROGRAM Main_helmholtz_bbh_test
00064 
00065   use grid_parameter, only : indata_type, outdata_type, & 
00066   &                          iter_max
00067   use grid_parameter_binary_excision
00068   use grid_points_binary_excision
00069   use weight_midpoint_binary_excision
00070   use radial_green_fn_helmholtz
00071   use radial_green_fn_hrethadv
00072   implicit none
00073   integer :: iseq, iter_count, total_iteration
00074 
00075   call coordinate_patch_kit_bhex
00076   call read_parameter_binary_excision
00077   call calc_parameter_binary_excision
00078   call allocate_grid_points_binary_excision
00079   call calc_grid_points_binary_excision
00080   call allocate_weight_midpoint_binary_excision
00081   call calc_weight_midpoint_binary_excision
00082   call allocate_poisson_solver_test
00083   call allocate_radial_green_fn_helmholtz
00084   call allocate_radial_green_fn_hrethadv
00085 
00086 
00087 
00088   call iteration_helmholtz_solver_bbh_test(iter_count)
00089   if (total_iteration.ge.iter_max) then
00090     write(6,*)' ** Solution did not converge **'
00091   end if
00092 
00093   if (outdata_type.eq.'3D') call IO_output_poisson_test_3D
00094 
00095 
00096 
00097 END PROGRAM Main_helmholtz_bbh_test