TkN 2.1
Toolkit for Nuclei
draw_mass_excess.C
1#include "TStyle.h"
2#include "TROOT.h"
3#include "tkmanager.h"
4#include "tknuclear_chart.h"
5
6using namespace tkn;
7
8void draw_mass_excess(){
9
11 auto* nn = new tknuclear_chart("Mass Excess in MeV",tknuclear_chart::kAll,false);
12 for(const auto &nuc : dtm.get_nuclei()) {
13 auto mass_excess = nuc->get_mass_excess_measure();
14 if(!mass_excess) continue;
15 double yy = mass_excess->get_value(tkn::tkunit_manager::units_keys::MeV);
16 nn->set_value(nuc->get_z(), nuc->get_n(), yy);
17 }
18
19 nn->draw();
20 nn->hide_empty_bins();
21
22 gROOT->SetBatch(true);
23 gROOT->ForceStyle(true);
24 gStyle->SetImageScaling(2.);
25 nn->save_as("draw_mass_excess.png");
26 gROOT->SetBatch(false);
27}
28
29void draw_mass_excess_no_systematic(){
30
32 auto* nn = new tknuclear_chart("Measured Mass Excess in MeV",tknuclear_chart::kAll,false);
33 for(const auto &nuc : dtm.get_nuclei()) {
34 auto mass_excess = nuc->get_mass_excess_measure();
35 if(!mass_excess) continue;
36 double yy = mass_excess->get_value(tkn::tkunit_manager::units_keys::MeV);
37 if(!(mass_excess->get_info()==tkproperty::kSystematic)) nn->set_value(nuc->get_z(), nuc->get_n(), yy);
38 }
39
40 nn->draw();
41 nn->hide_empty_bins();
42
43 gROOT->SetBatch(true);
44 gROOT->ForceStyle(true);
45 gStyle->SetImageScaling(2.);
46 nn->save_as("draw_mass_excess_no_systematic.png");
47 gROOT->SetBatch(false);
48}
49
50void draw_mass_excess_from_systematic(){
51
53 auto* nn = new tknuclear_chart("Mass Excess in MeV from systematics",tknuclear_chart::kAll,false);
54 for(const auto &nuc : dtm.get_nuclei()) {
55 auto mass_excess = nuc->get_mass_excess_measure();
56 if(!mass_excess) continue;
57 double yy = mass_excess->get_value(tkn::tkunit_manager::units_keys::MeV);
58 if((mass_excess->get_info()==tkproperty::kSystematic)) nn->set_value(nuc->get_z(), nuc->get_n(), yy);
59 }
60
61 nn->draw();
62 nn->hide_empty_bins();
63
64 gROOT->SetBatch(true);
65 gROOT->ForceStyle(true);
66 gStyle->SetImageScaling(2.);
67 nn->save_as("draw_mass_excess_from_systematic.png");
68 gROOT->SetBatch(false);
69}
Manages the database loading and provides access to the physics properties.
Definition: tkmanager.h:55
vector< shared_ptr< tknucleus > > get_nuclei(std::function< bool(shared_ptr< tknucleus >)>const &_selection)
return a vector containing all the known nuclei filtered by the lambda function
Definition: tkmanager.cpp:367
nuclear chart plot with ROOT
Definition: tklog.cpp:39