var Chart_els,AngDist_els=new AngularDistribution(); M_els={system:"lab",crossSection:"ratio",scaleLog:true,gridLines:true,mouseState:false,legend:true }; var Chart_fus,EnDist_fus=new EnergyDistribution(); M_fus={system:"lab",crossSection:"mb",scaleLog:true,gridLines:true,mouseState:false,legend:true }; var Chart_evr,Mass_exc_evr; M_evr={system:"lab",crossSection:"mb",scaleLog:true,gridLines:true,mouseState:false,legend:true }; var EnDist_evr=new EvrEnergyDistribution(); //--------------------------------------------------------------------------- var Chart_els2,AngDist_els2=new AngularDistribution(); M_els2={system:"cm",crossSection:"ratio",scaleLog:true,gridLines:true,mouseState:false,legend:true }; var Chart_fus2,EnDist_fus2=new EnergyDistribution(); M_fus2={system:"lab",crossSection:"mb",scaleLog:true,gridLines:true,mouseState:false,legend:true }; var Chart_evr2,Mass_exc_evr2; M_evr2={system:"lab",crossSection:"mb",scaleLog:true,gridLines:true,mouseState:false,legend:true }; var EnDist_evr2=new EvrEnergyDistribution(); //--------------------------------------------------------------------------- // Основные объекты //--------------------------------------------------------------------------- var obj_els,obj_fus,obj_evr; var relcode_els,relcode_fus,relcode_evr; var OBJ_els=new Array(); var OBJ_fus=new Array(); var OBJ_evr=new Array(); var COUNT_els=0,COUNT_fus=0,COUNT_evr=0; //--------------------------------------------------------------------------- // Инициализация чартов //--------------------------------------------------------------------------- function init() { Chart_els=new Chart('ID_CANVAS_ELS','14px Arial','black','16px Arial','black',"","",1,true,"gray","lightgoldenrodyellow",8,true,false,false); Chart_fus=new Chart('ID_CANVAS_FUS','14px Arial','black','16px Arial','black',"","",1,true,"gray","lightgoldenrodyellow",8,true,false,false); Chart_evr=new Chart('ID_CANVAS_EVR','14px Arial','black','16px Arial','black',"","",1,true,"gray","lightgoldenrodyellow",8,true,false,false); Chart_els2=new Chart('ID_CANVAS_ELS_COMPARE','14px Arial','black','16px Arial','black',"","",1,true,"gray","lightgoldenrodyellow",8,true,false,false); Chart_fus2=new Chart('ID_CANVAS_FUS_COMPARE','14px Arial','black','16px Arial','black',"","",1,true,"gray","lightgoldenrodyellow",8,true,false,false); Chart_evr2=new Chart('ID_CANVAS_EVR_COMPARE','14px Arial','black','16px Arial','black',"","",1,true,"gray","lightgoldenrodyellow",8,true,false,false); } //--------------------------------------------------------------------------- function link2jornal(jornal,volume,year,page) { if ((jornal=="Physical Review")&&(volume.substr(0,1)=="C")) { vol = volume.substr(1).trim(); if (vol >= 60) pg = "e"+page; else { dash_pos = page.indexOf("-"); if ((dash_pos>0) && (dash_pos"); } else if (jornal=="Physical Review") { dash_pos = page.indexOf("-"); if ((dash_pos>0) && (dash_pos"); } else if (jornal=="J.Nucl.Rad.Sci.") { return(""); } else if (jornal=="Physica Scripta") { return(""); } else if (jornal=="Europhysics Letters") { return(""); } else if (jornal=="Chinese Physics Letters"){ return(""); } else if (jornal=="Journal of Physics: Nuclear Physics") { return(""); } else if (jornal=="European Physical Journal") { return(""); } else if (jornal=="Nucl.Instr.andMeth.") { return(""); } else if (jornal=="Nuclear Physics") { return(""); } else if (jornal=="Journal of Physics") { return(""); } else if (jornal=="Zeitschrift fur Physik") { return(""); } else if (jornal=="Physical Review Letters") { return(""); } else if (jornal=="Physics letters") { return(""); } return(""); } //--------------------------------------------------------------------------- function search(show_all) { s=""; if (!show_all) { if (document.f1.z1_min.value!="") s=s+"&z1_min="+document.f1.z1_min.value; if (document.f1.z1_max.value!="") s=s+"&z1_max="+document.f1.z1_max.value; if (document.f1.z2_min.value!="") s=s+"&z2_min="+document.f1.z2_min.value; if (document.f1.z2_max.value!="") s=s+"&z2_max="+document.f1.z2_max.value; if (document.f1.a1_min.value!="") s=s+"&a1_min="+document.f1.a1_min.value; if (document.f1.a1_max.value!="") s=s+"&a1_max="+document.f1.a1_max.value; if (document.f1.a2_min.value!="") s=s+"&a2_min="+document.f1.a2_min.value; if (document.f1.a2_max.value!="") s=s+"&a2_max="+document.f1.a2_max.value; } if ($('#tabs').tabs('option','active')==0) { // Elastic scattering s="reactions_list.php?task=elastic_scattering&order="+document.f1.order.value+s; document.getElementById("id_list_els").src=s; } if ($('#tabs').tabs('option','active')==1) { // Fusion s="reactions_list.php?task=fusion&order="+document.f1.order.value+s; document.getElementById("id_list_fus").src=s; } if ($('#tabs').tabs('option','active')==2) { // Evaporation residues s="reactions_list.php?task=evaporation_residues&order="+document.f1.order.value+s; document.getElementById("id_list_evr").src=s; } } //--------------------------------------------------------------------------- function call_reaction(task,relcode,p,n,a,channel) { if (task=="elastic_scattering") { relcode_els=relcode; $.ajax({ url: "get_reaction.php", type: "GET", data: { task: task, id: relcode }, success: function( data ) { //alert(data); obj_els=JSON.parse(data); // Reaction, energy l2j=link2jornal(obj_els.jornal,obj_els.volume,obj_els.year,obj_els.page); source=l2j+obj_els.jornal+", "+obj_els.volume+" ("+obj_els.year+") "+obj_els.page; // Authors, journal if (l2j!="") source=source+""; s=""; // Comments if (obj_els.data_obtained=="author graph") obj_els.data_obtained="author graph (digitized with GSYS 2.4)"; s=s+"
"+obj_els.a_proj+""+obj_els.elem_proj+ " + "+obj_els.a_targ+""+obj_els.elem_targ+ ", E"+obj_els.e_sys+"="+obj_els.e+" MeV"+ obj_els.authors+"
"+source+"
Beam quality:"+obj_els.beam_quality+"
Target:"+obj_els.target+"
Data obtained:"+obj_els.data_obtained+"
Comment:"+obj_els.comment+"
\n"; document.getElementById("information_els").innerHTML=s; document.getElementById("id_theta_sys_els").innerHTML=obj_els.theta_sys; document.getElementById("id_sigma_units_els").innerHTML=obj_els.sigma_units; //--------------------------------------------------------------------------- // Denikin, 21/12/2016: изменим состояние меню на основании загруженных данных M_els.system = obj_els.theta_sys; M_els.crossSection = obj_els.sigma_units; //--------------------------------------------------------------------------- DATA_ELS.setValue(obj_els.data); draw_els(); // Рисуем данные } }); } if (task=="fusion") { relcode_fus=relcode; $.ajax({ url: "get_reaction.php", type: "GET", data: { task: task, id: relcode }, success: function( data ) { //alert(data); obj_fus=JSON.parse(data); // Reaction, energy l2j=link2jornal(obj_fus.jornal,obj_fus.volume,obj_fus.year,obj_fus.page); source=l2j+obj_fus.jornal+", "+obj_fus.volume+" ("+obj_fus.year+") "+obj_fus.page; // Authors, journal if (l2j!="") source=source+""; s=""; // Comments if (obj_fus.data_obtained=="author graph") obj_fus.data_obtained="author graph (digitized with GSYS 2.4)"; s=s+"
"+obj_fus.a_proj+""+obj_fus.elem_proj+" + "+obj_fus.a_targ+""+obj_fus.elem_targ+""+obj_fus.authors+"
"+source+"
Beam quality:"+obj_fus.beam_quality+"
Target:"+obj_fus.target+"
Data obtained:"+obj_fus.data_obtained+"
Comment:"+obj_fus.comment+"
\n"; document.getElementById("information_fus").innerHTML=s; document.getElementById("id_e_sys_fus").innerHTML=obj_fus.e_sys; document.getElementById("id_sigma_units_fus").innerHTML=obj_fus.sigma_units; DATA_FUS.setValue(obj_fus.data); draw_fus(); // Рисуем данные } }); } if (task=="evaporation_residues") { relcode_evr=relcode; $.ajax({ url: "get_reaction.php", type: "GET", data: { task: task, id: relcode,p:p,n:n,a:a,channel:channel }, success: function( data ) { //alert(data); obj_evr=JSON.parse(data); // Reaction, energy l2j=link2jornal(obj_evr.jornal,obj_evr.volume,obj_evr.year,obj_evr.page); source=l2j+obj_evr.jornal+", "+obj_evr.volume+" ("+obj_evr.year+") "+obj_evr.page; // Authors, journal if (l2j!="") source=source+""; s=""; // Comments if (obj_evr.data_obtained=="author graph") obj_evr.data_obtained="author graph (digitized with GSYS 2.4)"; s=s+"" +"" +"" +"" +"
"+obj_evr.a_proj+""+obj_evr.elem_proj+" + "+obj_evr.a_targ+""+obj_evr.elem_targ+""+obj_evr.authors+"
"+source+"
Beam quality:"+obj_evr.beam_quality+"
Target:"+obj_evr.target+"
Detected particles:"+obj_evr.detected_particles+"
Data obtained:"+obj_evr.data_obtained+"
Comment:"+obj_evr.comment+"
\n"; document.getElementById("information_evr").innerHTML=s; document.getElementById("id_e_sys_evr").innerHTML=obj_evr.e_sys; document.getElementById("id_sigma_units_evr").innerHTML=obj_evr.sigma_units; //alert(obj_evr.data); DATA_EVR.setValue(obj_evr.data); draw_evr(obj_evr.z_proj,obj_evr.a_proj,obj_evr.z_targ,obj_evr.a_targ); // Рисуем данные } }); } } //--------------------------------------------------------------------------- function add_reaction_to_my_list(task,relcode) { if (task=="elastic_scattering") { if (isNaN(relcode)) return; $.ajax({ url: "add_reaction_to_my_list.php", type: "GET", data: { TYPE: task, RELCODE: relcode }, success: function( data ) { alert(data); } }); } } //--------------------------------------------------------------------------- function add_to_compare(task) { if (task=="elastic_scattering")// Denikin, 21/12/2016 { if(COUNT_els == 0) { M_els2.system = obj_els.theta_sys; M_els2.crossSection = obj_els.sigma_units; } OBJ_els[COUNT_els] = obj_els; COUNT_els++; draw_els_compare(); } if (task=="fusion") { OBJ_fus[COUNT_fus]=obj_fus; COUNT_fus++; draw_fus_compare(); } if (task=="evaporation_residues") { OBJ_evr[COUNT_evr]=obj_evr; COUNT_evr++; draw_evr_compare(); } } //--------------------------------------------------------------------------- function remove_all_added_data(task) { if (task=="elastic_scattering") { COUNT_els=0; draw_els_compare(); } if (task=="fusion") { COUNT_fus=0; draw_fus_compare(); } if (task=="evaporation_residues") { COUNT_evr=0; draw_evr_compare(); } } //--------------------------------------------------------------------------- function redraw() { } //--------------------------------------------------------------------------- // ELASTIC_SCATTERING //--------------------------------------------------------------------------- function save_els() { var jsonString='\ {\ "Z_PROJ": "'+PROJ_ELS.getZ()+'",\ "A_PROJ": "'+PROJ_ELS.getA()+'",\ "Z_TARG": "'+TARG_ELS.getZ()+'",\ "A_TARG": "'+TARG_ELS.getA()+'",\ "E": "'+ENV_ELS.getE()+'",\ "E_SYS": "'+ENV_ELS.getSystem()+'",\ "ANGLE": "'+ANGLE_ELS.getValue()+'",\ "CROSS_SECTION": "'+CROSS_SECTION_ELS.getValue()+'",\ "ERROR": "'+ERROR_ELS.getValue()+'",\ "DATA": "'+DATA_ELS.getValue().replace(/\n/g,"\\n")+'"\ }\ '; return(jsonString); } //--------------------------------------------------------------------------- function draw_els() { var i,j,k,l,n,pts,s,ss,s2,res="",w,w2,xmin,xmax,ymin,ymax,error,cs_units; // Значение Error error = "abs"; cs_units = obj_els.sigma_units; angle_units = obj_els.theta_sys; //------------------------------------------------------------------- // Denikin, 21/12/2016 ElsData = new AngularCrossSection(); ElsData.setReaction(obj_els.z_proj,obj_els.a_proj,obj_els.z_targ,obj_els.a_targ, obj_els.e,obj_els.e_sys,0,0,0,'elastic'); //------------------------------------------------------------------- // Получаем значение s = DATA_ELS.getValue(); // Проверка, что строка не пустая if (s!="") { // Разбиваем на строки s=s.split("\n"); pts=s.length; var th = [], cs = [], err = []; for (i=0;ixmax) xmax=gf[i][0]; if (1*gf[i][0]ymax) ymax=gf[i][1]; if (1*gf[i][1]1*xmax) xmax=gf[i][0]; if (1*gf[i][0]<1*xmin) xmin=gf[i][0]; if (1*gf[i][1]>1*ymax) ymax=gf[i][1]; if (1*gf[i][1]<1*ymin) ymin=gf[i][1]; } } // Сортируем каналы channel=channel.sort(); // Сортируем строки по каналам for (j=0;jxmax) xmax=gf[i][0]; if (1*gf[i][0]ymax) ymax=gf[i][1]; if (1*gf[i][1]1*xmax) xmax=gf[i][0]; if (1*gf[i][0]<1*xmin) xmin=gf[i][0]; if (1*gf[i][1]>1*ymax) ymax=gf[i][1]; if (1*gf[i][1]<1*ymin) ymin=gf[i][1]; } } // Сортируем каналы channel=channel.sort(); // Сортируем строки по каналам for (j=0;j