00001 !______________________________________________ 00002 include '../Include_file/include_modulefiles_peos.f90' 00003 include '../Module/grid_parameter_binary_excision.f90' 00004 include '../Include_file/include_interface_modulefiles_peos.f90' 00005 include '../Include_file/include_subroutines_peos.f90' 00006 ! 00007 include '../Subroutine/interpo_lag4th_2Dsurf.f90' 00008 ! 00009 include '../Analysis/Module/grid_parameter_cartesian.f90' 00010 include '../Analysis/Module/coordinate_grav_xyz.f90' 00011 include '../Analysis/Module/def_metric_cartesian.f90' 00012 include '../Analysis/Module/def_matter_cartesian.f90' 00013 include '../Analysis/Module/interface_modules_cartesian.f90' 00014 include '../Module/grid_points_binary_excision.f90' 00015 include '../Module/make_char1_array_2d.f90' 00016 include '../Module/make_char2_array_2d.f90' 00017 include '../Module/make_int_array_3d.f90' 00018 include '../Module/weight_midpoint_binary_excision.f90' 00019 include '../Include_file/include_modulefiles_mpatch.f90' 00020 ! 00021 include '../Analysis/Subroutine/coordinate_patch_kit_grav_noGreen.f90' 00022 include '../Analysis/Subroutine/coordinate_patch_kit_grav_noGreen_mpt.f90' 00023 include '../Analysis/Subroutine/coordinate_patch_cartesian.f90' 00024 include '../Analysis/Subroutine/allocate_metric_and_matter_cartesian.f90' 00025 include '../Analysis/Subroutine/IO_output_cartesian_contour_potential_test.f90' 00026 include '../Analysis/Subroutine/IO_output_cartesian_contour_potential_test_mpt.f90' 00027 include '../Analysis/Subroutine/interpo_gr2cgr_4th.f90' 00028 include '../Analysis/Subroutine/interpo_fl2cgr_4th.f90' 00029 include '../Analysis/Subroutine/interpolation_fillup_cartesian.f90' 00030 include '../Analysis/Subroutine/interpolation_fillup_cartesian_mpt.f90' 00031 include '../Analysis/Subroutine/interpolation_matter.f90' 00032 include '../Analysis/Subroutine/IO_output_plot_xyz.f90' 00033 include '../Analysis/Subroutine/IO_output_plot_xyz_mpt.f90' 00034 include '../Analysis/Subroutine/copy_to_mpatch_interpolation_utility.f90' 00035 include '../Analysis/Subroutine/copy_from_mpatch_interpolation_utility.f90' 00036 include '../Subroutine/allocate_poisson_solver_test.f90' 00037 include '../Subroutine/IO_input_potential_test_3D.f90' 00038 include '../Subroutine_mpatch/IO_input_potential_test_3D_mpt.f90' 00039 include '../Subroutine_mpatch/test_analytic_BHNS_solution_mpt.f90' 00040 include '../Subroutine_mpatch/test_analytic_bns_solution_mpt.f90' 00041 include '../Subroutine_mpatch/allocate_metric_and_matter_BHNS_test_mpt.f90' 00042 include '../Subroutine/allocate_metric_and_matter_BHNS_test.f90' 00043 include '../Include_file/include_subroutines_mpatch.f90' 00044 !______________________________________________ 00045 ! 00046 ! Interpolation Program 00047 !______________________________________________ 00048 PROGRAM interpolation_contour_potential_binary_test_mpt 00049 ! 00050 use grid_parameter_binary_excision 00051 use phys_constant 00052 use def_metric, only : psi 00053 use def_metric_cartesian, only : psica 00054 use interface_modules_cartesian 00055 use grid_points_binary_excision 00056 use trigonometry_grav_phi 00057 implicit none 00058 integer :: impt, impt_ex 00059 ! 00060 ! -- Read parameters 00061 call allocate_grid_parameter_mpt 00062 call allocate_grid_parameter_binary_excision_mpt 00063 call read_parameter_mpt(1) 00064 call copy_grid_parameter_to_mpt(1) 00065 call read_parameter_binary_excision_mpt(1) 00066 call copy_grid_parameter_binary_excision_to_mpt(1) 00067 ! 00068 call read_parameter_mpt(2) 00069 call copy_grid_parameter_to_mpt(2) 00070 call read_parameter_binary_excision_mpt(2) 00071 call copy_grid_parameter_binary_excision_to_mpt(2) 00072 ! 00073 00074 ! -- Allocate arrays 00075 call set_allocate_size_mpt 00076 ! 00077 call allocate_grid_points_binary_excision 00078 call allocate_metric_and_matter_BHNS_test 00079 call allocate_metric_and_matter_BHNS_test_mpt 00080 call allocate_trig_grav_mphi 00081 call coordinate_patch_cartesian 00082 call allocate_metric_and_matter_cartesian 00083 call allocate_mpatch_all_test 00084 call allocate_coordinate_patch_kit_grav_mpt 00085 ! 00086 do impt = 1, nmpt 00087 call copy_grid_parameter_from_mpt(impt) 00088 call copy_grid_parameter_binary_excision_from_mpt(impt) 00089 call coordinate_patch_kit_grav_noGreen_mpt 00090 call calc_parameter_binary_excision 00091 call calc_grid_points_binary_excision 00092 call copy_to_mpatch_interpolation_utility(impt) 00093 call IO_input_potential_test_3D_mpt(impt) 00094 call copy_poisson_solver_test_to_mpt(impt) 00095 ! call test_analytic_BHNS_solution_mpt(impt) 00096 call test_analytic_bns_solution_mpt(impt) 00097 call IO_output_plot_xyz_mpt(impt) 00098 end do 00099 ! 00100 do impt = 1, nmpt 00101 call copy_from_mpatch_interpolation_utility(impt) 00102 call copy_poisson_solver_test_from_mpt(impt) 00103 if(impt.eq.1) impt_ex = 2 00104 if(impt.eq.2) impt_ex = 1 00105 call interpolation_fillup_cartesian_mpt(psi, psica, impt, impt_ex) 00106 call IO_output_cartesian_contour_potential_test_mpt(impt) 00107 end do 00108 ! 00109 END PROGRAM interpolation_contour_potential_binary_test_mpt