int on_program_start(Tcl_Interp *interp) { EVENT_TRACE(fprintf(stderr, "%d: on_program_start\n", this_node)); /* call the initialization of the modules here */ init_random(); init_bit_random(); setup_node_grid(); /* calculate initial minimimal number of cells (see tclcallback_min_num_cells) */ min_num_cells = calc_processor_min_num_cells(); cells_pre_init(); ghost_init(); /* Initialise force and energy tables */ force_and_energy_tables_init(); #ifdef ADRESS #ifdef INTERFACE_CORRECTION adress_force_and_energy_tables_init(); #endif /** #ifdef THERMODYNAMIC_FORCE */ tf_tables_init(); /** #endif */ #endif #ifdef ELP3M fft_pre_init(); #endif #ifdef LB_GPU if(this_node == 0){ lb_pre_init_gpu(); } #endif #ifdef LB lb_pre_init(); #endif /* call all initializations to do only on the master node here. */ if (this_node == 0) { /* interaction_data.c: make sure 0<->0 ia always exists */ make_particle_type_exist(0); init_tcl(interp); } return TCL_OK; }
void on_program_start() { EVENT_TRACE(fprintf(stderr, "%d: on_program_start\n", this_node)); /* tell Electric fence that we do realloc(0) on purpose. */ #ifdef EFENCE extern int EF_ALLOW_MALLOC_0; EF_ALLOW_MALLOC_0 = 1; #endif register_sigint_handler(); if (this_node == 0) { /* master node */ #ifdef FORCE_CORE /* core should be the last exit handler (process dies) */ atexit(core); #endif atexit(mpi_stop); } /* call the initialization of the modules here */ init_random(); init_bit_random(); setup_node_grid(); /* calculate initial minimimal number of cells (see tclcallback_min_num_cells) */ min_num_cells = calc_processor_min_num_cells(); /* initially go for domain decomposition */ dd_topology_init(&local_cells); ghost_init(); /* Initialise force and energy tables */ force_and_energy_tables_init(); #ifdef ADRESS #ifdef INTERFACE_CORRECTION adress_force_and_energy_tables_init(); #endif /* #ifdef THERMODYNAMIC_FORCE */ tf_tables_init(); /* #endif */ #endif #ifdef P3M p3m_pre_init(); #endif #ifdef DP3M dp3m_pre_init(); #endif #ifdef LB_GPU if(this_node == 0) { //lb_pre_init_gpu(); } #endif #ifdef LB lb_pre_init(); #endif #ifdef REACTIONS reaction.back_rate=-1.0; #endif /* call all initializations to do only on the master node here. */ if (this_node == 0) { /* interaction_data.c: make sure 0<->0 ia always exists */ make_particle_type_exist(0); } }