00001 !______________________________________________ 00002 include '../Include_file/include_modulefiles_BH_WL.f90' 00003 include '../Include_file/include_interface_modulefiles_BH_WL.f90' 00004 include '../Include_file/include_subroutines_BH_WL.f90' 00005 include '../Include_file/include_functions.f90' 00006 !______________________________________________ 00007 ! 00008 ! Main Program 00009 !______________________________________________ 00010 PROGRAM Main_BH_WL 00011 ! 00012 use grid_parameter, only : indata_type, outdata_type, iter_max 00013 use radial_green_fn_grav 00014 use radial_green_fn_grav_bhex_nb 00015 use radial_green_fn_grav_bhex_dd 00016 use radial_green_fn_grav_bhex_nd 00017 use radial_green_fn_grav_bhex_sd 00018 use def_formulation 00019 implicit none 00020 integer :: iseq, iter_count, total_iteration 00021 ! 00022 call read_parameter_bh 00023 call coordinate_patch_kit_bhex 00024 call reset_kerr_parameter 00025 call allocate_hgfn_bhex 00026 call allocate_hgfn_bhex_nb 00027 call allocate_hgfn_bhex_dd 00028 call allocate_hgfn_bhex_nd 00029 call allocate_hgfn_bhex_sd 00030 ! -- 00031 call allocate_metric_BH_WL 00032 if (indata_type.eq.'IN') call initial_metric_BH_WL 00033 if (indata_type.eq.'3D') call IO_input_initial_3D_CF_BH 00034 if (indata_type.eq.'3D') call IO_input_initial_3D_WL 00035 ! 00036 call choose_formulation 00037 ! 00038 call iteration_BH_WL(iter_count) 00039 if (total_iteration.ge.iter_max) then 00040 write(6,*)' ** Solution did not converge **' 00041 end if 00042 if (outdata_type.eq.'3D') call IO_output_solution_3D_CF_BH 00043 if (outdata_type.eq.'3D') call IO_output_solution_3D_WL 00044 ! 00045 !!! call allocate_horizon 00046 !!! call initial_AHfinder 00047 !!! call excurve_TrpBH 00048 !!! call excurve_TrpBH_gridpoint 00049 !!! call copy_Aij_pBH_to_tfkij 00050 !!! call iteration_AHfinder(iter_count) 00051 !!! if (total_iteration.ge.iter_max) then 00052 !!! write(6,*)' ** Solution did not converge AH finder **' 00053 !!! end if 00054 !!! call copy_Aij_pBH_to_tfkij 00055 !!! call calc_AHarea_AHfinder 00056 !!! call IO_output_AHfinder 00057 !!! call IO_output_AHfinder_gnuplot 00058 ! 00059 iseq = 1 00060 call calc_physical_quantities_BH_WL 00061 call printout_physq_BH(iseq) 00062 ! 00063 END PROGRAM Main_BH_WL