00001 #include "sigma.h"
00002
00003 #ifndef TOOLBOX
00004
00005 #ifdef USE_specific_function
00006 #ifdef USE_MPI
00007 void print_scatter_specific_information(sdyn *b,
00008 sigma_input input,
00009 scatter_exp experiment) {
00010
00011 char *prefered_string = "(p1,p2,(t1,t2))";
00012
00013
00014 if(!strcmp(experiment.get_final_form(), "((p1,t1),p2,t2)") ||
00015 !strcmp(experiment.get_final_form(), "(p1,(p2,t1),t2)") ||
00016 !strcmp(experiment.get_final_form(), "(p1,p2,(t1,t2))")) {
00017
00018 int myid = MPI::COMM_WORLD.Get_rank();
00019 MPI::Status status;
00020 int request_for_data = myid;
00021 int request_granted = 1;
00022 int master = 0;
00023 int length = 1;
00024
00025 MPI::COMM_WORLD.Send(&request_for_data, length, MPI::INT, master,
00026 WRITE_REQUEST_TAG);
00027 MPI::COMM_WORLD.Recv(&request_granted, length, MPI::INT, master,
00028 WRITE_REQUEST_TAG, status);
00029
00030
00031
00032 cerr << "Found prefered final state: "
00033 << experiment.get_final_form() << endl;
00034 ppn(b, cerr);
00035 vector center = b->get_pos();
00036 print_structure_recursive(b, 0., center, true, true, 4);
00037
00038 MPI::COMM_WORLD.Send(&request_for_data, length, MPI::INT,
00039 master, WRITE_READY_TAG);
00040
00041
00042 }
00043
00044 }
00045
00046 #else // No MPI
00047 void print_scatter_specific_information(sdyn *b,
00048 sigma_input input,
00049 scatter_exp experiment) {
00050
00051 char *prefered_string = "(p1,p2,(t1,t2))";
00052
00053
00054 if(!strcmp(experiment.get_final_form(), "((p1,t1),p2,t2)") ||
00055 !strcmp(experiment.get_final_form(), "(p1,(p2,t1),t2)") ||
00056 !strcmp(experiment.get_final_form(), "(p1,p2,(t1,t2))")) {
00057
00058 cerr << "Found prefered final state: "
00059 << experiment.get_final_form() << endl;
00060 ppn(b, cerr);
00061 vector center = b->get_pos();
00062 print_structure_recursive(b, 0., center, true, true, 4);
00063
00064 }
00065 }
00066 #endif
00067
00068 #else
00069 void print_scatter_specific_information(sdyn *b,
00070 sigma_input input,
00071 scatter_exp experiment) {
00072
00073 }
00074 #endif
00075 #endif