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/def_bh_parameter.f90'
00006 include '../Module/def_metric_excurve_grid.f90'
00007 include '../Module/def_vector_bh.f90'
00008 include '../Module/weight_midpoint_binary_excision.f90'
00009 include '../Module/radial_green_fn_grav_bhex_nb.f90'
00010 include '../Module/radial_green_fn_grav_bhex_dd.f90'
00011 include '../Module/radial_green_fn_grav_bhex_nd.f90'
00012 include '../Module/radial_green_fn_grav_bhex_nh.f90'
00013 include '../Module/radial_green_fn_grav_bhex_dh.f90'
00014 include '../Module/copy_array_3d.f90'
00015 include '../Module/gnufor2.f90'
00016
00017 include '../Include_file/include_interface_modulefiles_peos.f90'
00018 include '../Module_interface/interface_error_metric_type0.f90'
00019 include '../Module_interface/interface_error_metric_type1.f90'
00020 include '../Module_interface/interface_error_metric_type2.f90'
00021 include '../Module_interface/interface_grdr_gridpoint_type0.f90'
00022 include '../Module_interface/interface_grdr_gridpoint_type0_nosym.f90'
00023 include '../Module_interface/interface_grdr_gridpoint_type0_3rd_nosym.f90'
00024 include '../Module_interface/interface_grgrad_4th_gridpoint_bhex.f90'
00025 include '../Module_interface/interface_grgrad_midpoint_r3rd_type0.f90'
00026 include '../Module_interface/interface_grgrad_midpoint_r4th_type0.f90'
00027 include '../Module_interface/interface_sourceterm_poisson_solver_test.f90'
00028 include '../Module_interface/interface_sourceterm_surface_int_homosol.f90'
00029 include '../Module_interface/interface_poisson_solver_binary_bhex_homosol.f90'
00030 include '../Module_interface/interface_sourceterm_exsurf_eqm_binary.f90'
00031 include '../Module_interface/interface_sourceterm_surface_int.f90'
00032 include '../Module_interface/interface_poisson_solver_binary_bhex.f90'
00033 include '../Module_interface/interface_poisson_solver_binary_surf_int.f90'
00034 include '../Module_interface/interface_poisson_solver_binary_vol_int.f90'
00035 include '../Module_interface/interface_poisson_solver_bhex_surf_int.f90'
00036 include '../Module_interface/interface_poisson_solver_bhex_surf_int_all.f90'
00037 include '../Module_interface/interface_copy_to_hgfn_and_gfnsf.f90'
00038 include '../Module_interface/interface_interpo_gr2gr_4th.f90'
00039 include '../Module_interface/interface_update_parameter.f90'
00040 include '../Module_interface/interface_interpolation_fillup_binary.f90'
00041
00042 include '../Module_interface/interface_bh_boundary_d_psi.f90'
00043 include '../Module_interface/interface_bh_boundary_nh_psi_test.f90'
00044 include '../Module_interface/interface_bh_boundary_d_alps.f90'
00045 include '../Module_interface/interface_bh_boundary_d_bvxd.f90'
00046 include '../Module_interface/interface_bh_boundary_d_bvyd.f90'
00047 include '../Module_interface/interface_bh_boundary_d_bvzd.f90'
00048 include '../Module_interface/interface_bh_boundary_d_Bfun.f90'
00049 include '../Module_interface/interface_bh_boundary_n_Bfun.f90'
00050 include '../Module_interface/interface_bh_boundary_d_potx.f90'
00051 include '../Module_interface/interface_bh_boundary_d_poty.f90'
00052 include '../Module_interface/interface_bh_boundary_d_potz.f90'
00053 include '../Module_interface/interface_bh_boundary_AH.f90'
00054 include '../Module_interface/interface_outer_boundary_d_psi.f90'
00055 include '../Module_interface/interface_outer_boundary_d_alps.f90'
00056 include '../Module_interface/interface_outer_boundary_d_bvxd.f90'
00057 include '../Module_interface/interface_outer_boundary_d_bvyd.f90'
00058 include '../Module_interface/interface_outer_boundary_d_bvzd.f90'
00059 include '../Module_interface/interface_outer_boundary_d_Bfun.f90'
00060 include '../Module_interface/interface_outer_boundary_n_Bfun.f90'
00061 include '../Module_interface/interface_outer_boundary_d_potx.f90'
00062 include '../Module_interface/interface_outer_boundary_d_poty.f90'
00063 include '../Module_interface/interface_outer_boundary_d_potz.f90'
00064 include '../Module_interface/interface_sourceterm_HaC_CF.f90'
00065 include '../Module_interface/interface_sourceterm_trG_CF.f90'
00066 include '../Module_interface/interface_sourceterm_MoC_CF.f90'
00067 include '../Module_interface/interface_sourceterm_MoC_CF_type1_bhex.f90'
00068 include '../Module_interface/interface_sourceterm_Bfun.f90'
00069 include '../Module_interface/interface_sourceterm_exsurf_eqm_binary_parity.f90'
00070 include '../Module_interface/interface_interpolation_fillup_binary_parity.f90'
00071 include '../Module_interface/interface_compute_shift_v2.f90'
00072 include '../Module_interface/interface_compute_dBfun.f90'
00073
00074 include '../Include_file/include_subroutines_peos.f90'
00075 include '../Subroutine/read_parameter_bh.f90'
00076 include '../Subroutine/excurve_CF_gridpoint.f90'
00077 include '../Subroutine/excurve_CF_gridpoint_bhex.f90'
00078 include '../Subroutine/calc_vector_bh.f90'
00079 include '../Subroutine/IO_output_poisson_test_3D.f90'
00080 include '../Subroutine/error_metric_type0.f90'
00081 include '../Subroutine/error_metric_type1.f90'
00082 include '../Subroutine/error_metric_type2.f90'
00083 include '../Subroutine/printout_error_metric.f90'
00084 include '../Subroutine/printout_error_all_metric.f90'
00085 include '../Subroutine/coordinate_patch_kit_bhex.f90'
00086 include '../Subroutine/copy_hgfn_nb_to_hgfn.f90'
00087 include '../Subroutine/copy_hgfn_dd_to_hgfn.f90'
00088 include '../Subroutine/copy_to_hgfn_and_gfnsf.f90'
00089 include '../Subroutine/sourceterm_poisson_solver_test.f90'
00090 include '../Subroutine/sourceterm_surface_int_homosol.f90'
00091 include '../Subroutine/sourceterm_exsurf_eqm_binary.f90'
00092 include '../Subroutine/sourceterm_surface_int.f90'
00093 include '../Subroutine/poisson_solver_binary_bhex.f90'
00094 include '../Subroutine/poisson_solver_binary_bhex_homosol.f90'
00095 include '../Subroutine/poisson_solver_binary_vol_int.f90'
00096 include '../Subroutine/poisson_solver_binary_surf_int.f90'
00097 include '../Subroutine/poisson_solver_bhex_surf_int.f90'
00098 include '../Subroutine/poisson_solver_bhex_surf_int_all.f90'
00099 include '../Subroutine/grdr_gridpoint_type0.f90'
00100 include '../Subroutine/grdr_gridpoint_type0_nosym.f90'
00101 include '../Subroutine/grdr_gridpoint_type0_3rd_nosym.f90'
00102 include '../Subroutine/grgrad_4th_gridpoint_bhex.f90'
00103 include '../Subroutine/grgrad_midpoint_r3rd_type0.f90'
00104 include '../Subroutine/grgrad_midpoint_r4th_type0.f90'
00105 include '../Subroutine/interpo_linear1p_type0_2Dsurf.f90'
00106 include '../Subroutine/interpo_gr2gr_4th.f90'
00107 include '../Subroutine/interpolation_fillup_binary.f90'
00108
00109 include '../Subroutine/allocate_BBH_CF.f90'
00110 include '../Subroutine/allocate_BBH_CF_AH.f90'
00111 include '../Subroutine/iteration_BBH_CF_type1.f90'
00112 include '../Subroutine/iteration_BBH_CF_AH.f90'
00113 include '../Subroutine/bh_boundary_d_psi.f90'
00114 include '../Subroutine/bh_boundary_nh_psi_test.f90'
00115 include '../Subroutine/bh_boundary_d_alps.f90'
00116 include '../Subroutine/bh_boundary_d_bvxd.f90'
00117 include '../Subroutine/bh_boundary_d_bvyd.f90'
00118 include '../Subroutine/bh_boundary_d_bvzd.f90'
00119 include '../Subroutine/bh_boundary_d_Bfun.f90'
00120 include '../Subroutine/bh_boundary_n_Bfun.f90'
00121 include '../Subroutine/bh_boundary_d_potx.f90'
00122 include '../Subroutine/bh_boundary_d_poty.f90'
00123 include '../Subroutine/bh_boundary_d_potz.f90'
00124 include '../Subroutine/bh_boundary_AH.f90'
00125 include '../Subroutine/outer_boundary_d_psi.f90'
00126 include '../Subroutine/outer_boundary_d_alps.f90'
00127 include '../Subroutine/outer_boundary_d_bvxd.f90'
00128 include '../Subroutine/outer_boundary_d_bvyd.f90'
00129 include '../Subroutine/outer_boundary_d_bvzd.f90'
00130 include '../Subroutine/outer_boundary_d_Bfun.f90'
00131 include '../Subroutine/outer_boundary_n_Bfun.f90'
00132 include '../Subroutine/outer_boundary_d_potx.f90'
00133 include '../Subroutine/outer_boundary_d_poty.f90'
00134 include '../Subroutine/outer_boundary_d_potz.f90'
00135 include '../Subroutine/sourceterm_HaC_CF.f90'
00136 include '../Subroutine/sourceterm_trG_CF.f90'
00137 include '../Subroutine/sourceterm_MoC_CF.f90'
00138 include '../Subroutine/sourceterm_MoC_CF_type1_bhex.f90'
00139 include '../Subroutine/sourceterm_Bfun.f90'
00140 include '../Subroutine/interpolation_fillup_binary_parity.f90'
00141 include '../Subroutine/printout_error_metric_combined.f90'
00142 include '../Subroutine/printout_error_metric_combined_B.f90'
00143 include '../Subroutine/sourceterm_exsurf_eqm_binary_parity.f90'
00144 include '../Subroutine/compute_shift_v2.f90'
00145 include '../Subroutine/compute_dBfun.f90'
00146 include '../Subroutine/reset_bh_boundary_all.f90'
00147 include '../Subroutine/reset_metric_CF.f90'
00148 include '../Subroutine/initial_metric_CF.f90'
00149 include '../Subroutine/reset_bh_boundary_AH.f90'
00150
00151
00152
00153
00154 PROGRAM Main_BBH_CF_AH
00155
00156 use grid_parameter, only : outdata_type, iter_max
00157 use radial_green_fn_grav
00158 use radial_green_fn_grav_bhex_nb
00159 use radial_green_fn_grav_bhex_dd
00160 use radial_green_fn_grav_bhex_nd
00161 use grid_parameter_binary_excision
00162 use grid_points_binary_excision
00163 use weight_midpoint_binary_excision
00164 use interface_copy_to_hgfn_and_gfnsf
00165 implicit none
00166 integer :: iseq, iter_count, total_iteration
00167
00168 call coordinate_patch_kit_bhex
00169 call allocate_hgfn_bhex
00170 call allocate_hgfn_bhex_dd
00171 call calc_hgfn_bhex_dd
00172 call allocate_hgfn_bhex_nd
00173 call calc_hgfn_bhex_nd
00174
00175 call allocate_hgfn_bhex_nb
00176 call calc_hgfn_bhex_nb
00177
00178
00179 call read_parameter_bh
00180 call read_parameter_binary_excision
00181 call calc_parameter_binary_excision
00182 call allocate_grid_points_binary_excision
00183 call calc_grid_points_binary_excision
00184 call allocate_weight_midpoint_binary_excision
00185 call calc_weight_midpoint_binary_excision
00186 call allocate_BBH_CF_AH
00187
00188
00189 call iteration_BBH_CF_AH(iter_count)
00190 if (total_iteration.ge.iter_max) then
00191 write(6,*)' ** Solution did not converge **'
00192 end if
00193
00194 if (outdata_type.eq.'3D') call IO_output_solution_3D
00195
00196
00197
00198 END PROGRAM Main_BBH_CF_AH