// // dekapente input file // Main { max_internal_steps = 5000 integration_cycle = 5.e-2 relative_tolerance = 1.e-9 absolute_tolerance = 1.e-9 // To restart a run, set to true // and provide a non-zero init_time value. restart = FALSE init_time = 0.0 every_admmass = 100000 use_restart_manager = TRUE restart_interval = 20 } Grid_structure { // Number of points for the patches // (CART, A1, B1, A2, B2, OUTER_A, OUTER_A) Mx = 200, 31, 31, 21, 21, 0, 0 My = 200, 31, 31, 21, 21, 0, 0 Mz = 200, 31, 31, 21, 21, 0, 0 // evolve patch trigger (CART, A1, B1, A2, B2, OUTER_A, OUTER_B) evolve_patches = TRUE, FALSE, FALSE, FALSE , FALSE , FALSE , FALSE // Non-cartesian patch coordinate systems (CART, A1, B1, A2, B2, OUTER_A,OUTER_B) // 0 = CARTESIAN, 1 = SPHEROIDAL, 2 = SPHERICAL coord_systems = 0, 1, 1, 1, 1, 2, 2 // If set to false, the cartesian domain is not excised cartesian_excision = FALSE // Cartesian limits (x, y, z) xmin = -100.0, -100.0, -100.0 xmax = 100.0, 100.0, 100.0 // Excision region size (Mask radius) BH1, BH2 spher_mask_radius = 1.0 , 1.0 cart_mask_radius = 3.0 , 3.0 spherical_grid_r = 5.0 , 5.0 // Theta domain: 0 + Theta_overlap_buffer to Pi - Theta_overlap_buffer Theta_domain = 0.6 , 0.6 // Periodic boundary conditions of spherical-spheroidal grids periodic_boundary_on_spher = FALSE refine_op_name = "QUAD_REFINE" coarsen_op_name = "EXACT_COARSEN" } Initial_Data { // Initial data types, implemented "Kerr-Schild", "Puncture", "Brill" initial_data_type = "Puncture" number_of_holes = 2 } Fisheye { // use fisheye transformation use_fisheye = FALSE pos_fisheye = 0.0, 0.0, 0.0 number_of_levels = 2 // Max 10 levels r_center = 15.0, 18.0, 9.5, 10.0, 12.0, 14.0, 16.0, 18.0, 20.0, 22.0 amp = 3.0, 5.0, 9.0, 10.0, 12.0, 14.0, 16.0, 18.0, 20.0, 22.0 stretch = 3.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 } BH_parameters { // Mass, spin parameter and orientation of the two holes (BH1, BH2) M = 1.0 , 1.0 a = 0.0 , 0.0 theta = 0.0 , 0.0 phi = 0.0 , 0.0 // Initial velocity of the two holes (vx, vy, vz) vel_1 = 0.0, 0.0 , 0.0 vel_2 = 0.0, 0.0 , 0.0 // initial location of the two black holes (x, y, z) initial_pos1 = 0.757812 , 0.7578125 , 0.0078125 initial_pos2 = -0.757812 , -0.7578125 , -0.0078125 } Evolution { // Implemented formulations ADM, BSSN, NOR formulation = "BSSN" // Constraint Subtraction parameters subtract_gH = 0.0 subtract_kH = 0.0 subtract_gM = 0.0 subtract_NOR = 0.0 // activates interpolation (SPHER_TO_SPHER, SPHER_TO_CART, CART_TO_SPHER) interpolation = FALSE, FALSE, FALSE // stops the program when there is a failure // in the interpolation exit_when_interp_fails = FALSE ham_only_constr = TRUE // schw_radius_test = TRUE // use robin boundary conditions use_robin = FALSE use_quick_and_dirty = FALSE // GXX GXY GXZ GYY GYZ GZZ KXX KXY KXZ KYY KYZ KZZ ALPHA BETAX BETAY BETAZ BX BY BZ FX FY FZ CPHI TRK n_pow = 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 m_val = 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 // use overlapping spherical patches for the outer boundaries use_spherical_outer_boundaries = FALSE } Gauge { evolve_gauge = TRUE // Gauge type, implemented "Kerr-Schild", "Geodesic", "Puncture" Gauge_type = "Puncture" densitized_lapse = FALSE pow_dense_laps = 0.33333 log_1_with_shift = TRUE pow_gauge_evolve = 0.0 dis_coef = 1.0 } Constraint { initial_constrain = TRUE evolution_constrain = FALSE ksp_rtol = 1.e-8 ksp_maxits = 10000 // Enforce algebraic constraint for BSSN evolution algebraic_constrain = TRUE // Number of points to start the solving away from the inner boundary solve_buffer = 5 // Boundary Options use_quick_and_dirty = FALSE // PHI WX WY WZ LAMX, LAMY, LAMZ n_pow = 1, 2, 2, 2, 1, 1, 1 m_val = 1, 0, 0, 0, 0, 0, 0 } Weyl { use_weyl = FALSE // Compute Weyl Scalars // Method of computing the Weyl Scalars: "Gram-Schmidt", "Transverse-Frame" weyl_extraction = "Gram-Schmidt" } Output { output_visit = TRUE // visit_output_directory = "data_visit_puncture" // visit_output_directory = "data_visit_puncture_lr" // visit_output_directory = "data_visit_puncture_dim" // visit_output_directory = "data_bin_again" visit_output_directory = "data_visit" out_every = 3 output_series = 0 // Output the variables (each variable with the number of components // required -> e.g. metric wants 6 components: gxx,gxy....) output_metric = FALSE, FALSE, FALSE, FALSE, FALSE, FALSE output_extrinsic = FALSE, FALSE, FALSE, FALSE, FALSE, FALSE output_alpha = TRUE output_beta = TRUE, TRUE, TRUE output_f = FALSE, FALSE, FALSE output_B = FALSE, FALSE, FALSE output_ham = TRUE output_cphi = TRUE output_TrK = TRUE output_momentum = FALSE, FALSE, FALSE output_nor = FALSE, FALSE, FALSE output_conformal = FALSE output_vector_pot = FALSE, FALSE, FALSE output_lambda = FALSE, FALSE, FALSE output_mask = FALSE output_dim = FALSE // For the weyl scalars the different components are Psi0_real, Psi0_imaginary, Psi1_re, Psi1_im.... output_weyl = FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE // Output the patches (CART, A1, B1, A2, B2, Outer1, Outer2) output_patches = TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE // Output derivatives (DERIV, LDERIV) output_deriv = FALSE, FALSE } GriddingAlgorithm { // Note: dekatos cannot handle more anything but unigrid currently max_levels = 5 // Maximum number of levels in hierarchy. // Note: For the following regridding information, data is required for each // potential in the patch hierarchy; i.e., levels 0 thru max_levels-1. // If more data values than needed are given, only the number required // will be read in. If fewer values are given, an error will result. // // Specify coarsening ratios for each level 1 through max_levels-1 ratio_to_coarser { // vector ratio to next coarser level level_1 = 2 , 2 , 2 level_2 = 2 , 2 , 2 level_3 = 4 , 4 , 4 level_4 = 4 , 4 , 4 level_5 = 4 , 4 , 4 level_6 = 4 , 4 , 4 level_7 = 4 , 4 , 4 level_8 = 2 , 2 , 2 level_9 = 2 , 2 , 2 level_10 = 2 , 2 , 2 } largest_patch_size { level_0 = 200 , 200 , 200 // all finer levels will use same values as level_0... } smallest_patch_size { level_0 = 15, 15, 15 // all finer levels will use same values as level_0... } efficiency_tolerance = 0.70e0 // min % of tag cells in new patch level combine_efficiency = 0.85e0 // chop box if sum of volumes of smaller // boxes < efficiency * vol of large box } StandardTagAndInitialize { tagging_method = "REFINE_BOXES" RefineBoxes { level_0 = [ (70,70,70) , (129,129,129) ] level_1 = [ (160,160,160) , (239,239,239) ] level_2 = [ (380,380,380) , (419,419,419) ] level_3 = [ (1557,1557,1557) , (1642,1642,1642) ] level_4 = [ (6350,6350,6350) , (6449,6449,6449) ] // level_5 = [ (25560,25560,25560) , (25640,25640,25640) ] // level_6 = [ (102370,102370,102370) , (102430,102430,102430) ] // level_7 = [ (2555,2555,2555) , (2565,2565,2565) ] // level_8 = [ (5115,5115,5115) , (5125,5125,5125) ] // level_9 = [ (10235,10235,10235) , (10245,10245,10245) ] // level_0 = [ (15,15,15) , (25,25,25) ] // level_1 = [ (35,35,35) , (45,45,45) ] // level_2 = [ (75,75,75) , (85,85,85) ] // level_3 = [ (155,155,155) , (165,165,165) ] // level_4 = [ (315,315,315) , (325,325,325) ] // level_5 = [ (635,635,635) , (645,645,645) ] // level_6 = [ (1275,1275,1275) , (1285,1285,1285) ] // level_7 = [ (2555,2555,2555) , (2565,2565,2565) ] // level_8 = [ (5115,5115,5115) , (5125,5125,5125) ] // level_9 = [ (10235,10235,10235) , (10245,10245,10245) ] } } LoadBalancer { processor_layout = 8 , 8 , 8 //bin_pack = "GREEDY" }