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/grid_points_asymptotic_patch.f90'
00006 include '../Module/make_char1_array_2d.f90'
00007 include '../Module/make_char2_array_2d.f90'
00008 include '../Module/make_int_array_3d.f90'
00009 include '../Module/weight_midpoint_binary_excision.f90'
00010 include '../Module_mpatch/grid_points_asymptotic_patch_mpt.f90'
00011
00012 include '../Include_file/include_interface_modulefiles_peos.f90'
00013 include '../Include_file/include_subroutines_peos.f90'
00014 include '../Include_file/include_modulefiles_mpatch.f90'
00015
00016 include '../Analysis/Module/grid_parameter_cartesian.f90'
00017 include '../Analysis/Module/coordinate_grav_xyz.f90'
00018 include '../Analysis/Module/def_metric_cartesian.f90'
00019 include '../Analysis/Module/def_matter_cartesian.f90'
00020 include '../Analysis/Module/interface_modules_cartesian.f90'
00021
00022 include '../Analysis/Subroutine/coordinate_patch_kit_grav_noGreen.f90'
00023 include '../Analysis/Subroutine/coordinate_patch_kit_grav_noGreen_mpt.f90'
00024 include '../Analysis/Subroutine/coordinate_patch_cartesian.f90'
00025 include '../Analysis/Subroutine/allocate_metric_and_matter_cartesian.f90'
00026 include '../Analysis/Subroutine/IO_output_cartesian_contour_potential_test.f90'
00027 include '../Analysis/Subroutine/IO_output_cartesian_contour_potential_test_mpt.f90'
00028 include '../Analysis/Subroutine/interpo_gr2cgr_4th.f90'
00029 include '../Analysis/Subroutine/interpo_fl2cgr_4th.f90'
00030 include '../Analysis/Subroutine/interpolation_fillup_cartesian.f90'
00031 include '../Analysis/Subroutine/interpolation_fillup_cartesian_mpt.f90'
00032 include '../Analysis/Subroutine/interpolation_matter.f90'
00033 include '../Analysis/Subroutine/IO_output_plot_xyz.f90'
00034 include '../Analysis/Subroutine/IO_output_plot_xyz_mpt.f90'
00035 include '../Analysis/Subroutine/IO_output_plot_averaged_error_mpt.f90'
00036 include '../Analysis/Subroutine/copy_to_mpatch_interpolation_utility.f90'
00037 include '../Analysis/Subroutine/copy_from_mpatch_interpolation_utility.f90'
00038
00039 include '../Subroutine/allocate_metric_and_matter_BHNS_test.f90'
00040 include '../Subroutine/allocate_poisson_solver_test.f90'
00041 include '../Subroutine/interpo_lag4th_2Dsurf.f90'
00042 include '../Subroutine/IO_input_potential_test_3D.f90'
00043 include '../Subroutine_mpatch/IO_input_potential_test_3D_mpt.f90'
00044 include '../Subroutine_mpatch/test_analytic_BHNS_solution_mpt.f90'
00045 include '../Subroutine_mpatch/test_analytic_bns_solution_mpt.f90'
00046 include '../Subroutine_mpatch/test_analytic_solution_bhex_mpt.f90'
00047 include '../Subroutine_mpatch/allocate_grid_points_asymptotic_patch_mpt.f90'
00048 include '../Subroutine_mpatch/allocate_metric_and_matter_BHNS_test_mpt.f90'
00049 include '../Subroutine_mpatch/copy_grid_points_asymptotic_patch_to_mpt.f90'
00050 include '../Subroutine_mpatch/copy_grid_points_asymptotic_patch_from_mpt.f90'
00051 include '../Include_file/include_subroutines_mpatch.f90'
00052
00053
00054
00055
00056 PROGRAM interpolation_contour_potential_binary_test_mpt
00057
00058 use grid_parameter_binary_excision
00059 use grid_points_asymptotic_patch
00060 use phys_constant
00061 use def_metric, only : psi
00062 use def_metric_cartesian, only : psica
00063 use interface_modules_cartesian
00064 use grid_points_binary_excision
00065 use trigonometry_grav_phi
00066 implicit none
00067 integer :: impt, impt_ex
00068
00069
00070 call allocate_grid_parameter_mpt
00071 call allocate_grid_parameter_binary_excision_mpt
00072 do impt = 1, nmpt
00073 call read_parameter_mpt(impt)
00074 call copy_grid_parameter_to_mpt(impt)
00075 call read_parameter_binary_excision_mpt(impt)
00076 call copy_grid_parameter_binary_excision_to_mpt(impt)
00077 end do
00078
00079
00080 call set_allocate_size_mpt
00081
00082 call allocate_grid_points_binary_excision
00083 call allocate_grid_points_asymptotic_patch
00084 call allocate_metric_and_matter_BHNS_test
00085 call allocate_grid_points_binary_excision_mpt
00086 call allocate_grid_points_asymptotic_patch_mpt
00087 call allocate_metric_and_matter_BHNS_test_mpt
00088 call allocate_trig_grav_mphi
00089 call coordinate_patch_cartesian
00090 call allocate_metric_and_matter_cartesian
00091 call allocate_mpatch_all_test
00092 call allocate_coordinate_patch_kit_grav_mpt
00093
00094 do impt = 1, nmpt
00095 call copy_grid_parameter_from_mpt(impt)
00096 call copy_grid_parameter_binary_excision_from_mpt(impt)
00097 call coordinate_patch_kit_grav_noGreen_mpt
00098 call calc_parameter_binary_excision
00099 call calc_grid_points_binary_excision
00100 call copy_to_mpatch_interpolation_utility(impt)
00101 call IO_input_potential_test_3D_mpt(impt)
00102 call copy_poisson_solver_test_to_mpt(impt)
00103 end do
00104 if (nmpt.gt.2) then
00105 call copy_from_mpatch_interpolation_utility(nmpt)
00106 do impt = 1, nmpt
00107
00108 call calc_grid_points_asymptotic_patch(impt,nmpt)
00109 call copy_grid_points_asymptotic_patch_to_mpt(impt)
00110 end do
00111 end if
00112
00113 do impt = 1, nmpt
00114 call copy_from_mpatch_interpolation_utility(impt)
00115 call copy_poisson_solver_test_from_mpt(impt)
00116
00117 call test_analytic_solution_bhex_mpt(impt)
00118 call IO_output_plot_xyz_mpt(impt)
00119 call IO_output_plot_averaged_error_mpt(impt)
00120 if(impt.eq.1) impt_ex = 2
00121 if(impt.eq.2) impt_ex = 1
00122 call interpolation_fillup_cartesian_mpt(psi, psica, impt, impt_ex)
00123 call IO_output_cartesian_contour_potential_test_mpt(impt)
00124 end do
00125
00126 END PROGRAM interpolation_contour_potential_binary_test_mpt