From 38d55a3ebed879ab7264da77812d33a0c36a64b5 Mon Sep 17 00:00:00 2001 From: Zaher Salman Date: Thu, 3 Sep 2015 10:13:40 +0200 Subject: [PATCH] The chemical formula from the GUI will be added to the _Seq_Results.dat file header and used by the root macro when plotting the fractions. --- trimsp/src/TrimSPGUI4/TrimSPGUI4.pm | 21 ++++++++++++++-- trimsp/src/TrimSPGUI4/Ui_TrimSPGUI4.pm | 2 +- trimsp/src/plotFrc.C | 34 +++++++++++++++++--------- 3 files changed, 42 insertions(+), 15 deletions(-) diff --git a/trimsp/src/TrimSPGUI4/TrimSPGUI4.pm b/trimsp/src/TrimSPGUI4/TrimSPGUI4.pm index 8fa2599..7771292 100644 --- a/trimsp/src/TrimSPGUI4/TrimSPGUI4.pm +++ b/trimsp/src/TrimSPGUI4/TrimSPGUI4.pm @@ -617,11 +617,28 @@ sub StartSequenceOne $Progress=90; this->{ui}->progress->setValue($Progress); this->{ui}->progress->update(); - sleep(10); +# sleep(10); } +# An easy way to keep track of chemical formula is to replace impL_i by the corresponding chemical formula of layer i + open (INF,q{<}, "fort.33" ); + my @lines = ; + close(INF); + my $all_lines = join("",@lines); + for (my $i=1;$i<=$All{"numLayer"};$i++){ + my $LComp = "L".$i."Comp"; + my $chem_formula = $All{"$LComp"}; + my $place_holder = "impL".$i; + $all_lines =~ s/$place_holder/$chem_formula/g; + } + + my $seq_file = $All{"fileNamePrefix"}."_Seq_Results.dat"; + open (SEQF,q{>}, "$seq_file" ); + print SEQF $all_lines; + close(SEQF); + # Move the fort.33 file into the subdirectory and change its name - $cmd="rm -f eingabe1.inp; mv -f fort.33 ".$All{"fileNamePrefix"}."_Seq_Results.dat"; + $cmd="rm -f eingabe1.inp; rm -f fort.33"; system($cmd); $Progress=100; this->{ui}->progress->setValue($Progress); diff --git a/trimsp/src/TrimSPGUI4/Ui_TrimSPGUI4.pm b/trimsp/src/TrimSPGUI4/Ui_TrimSPGUI4.pm index cfc926a..ab2ce28 100644 --- a/trimsp/src/TrimSPGUI4/Ui_TrimSPGUI4.pm +++ b/trimsp/src/TrimSPGUI4/Ui_TrimSPGUI4.pm @@ -1531,4 +1531,4 @@ sub retranslate_ui { retranslateUi( $trimSPGUI4 ); } -1; \ No newline at end of file +1; diff --git a/trimsp/src/plotFrc.C b/trimsp/src/plotFrc.C index 1bf9039..b26a25e 100644 --- a/trimsp/src/plotFrc.C +++ b/trimsp/src/plotFrc.C @@ -13,7 +13,7 @@ void plotFrc(char *FileName) { TObjString *ostr; - TString str,xlab,ylab; + TString str,xlab; TString line, label, treeLabel; TString rootFileName; @@ -43,8 +43,6 @@ void plotFrc(char *FileName) nPars=ntokens; ostr = dynamic_cast(labels->At(0)); xlab = ostr->GetString(); - ylab = ostr->GetString(); - } else { token = line.Tokenize(" "); ntokens = token->GetEntries(); @@ -148,14 +146,14 @@ void plotFrc(char *FileName) if (Flag[0]==1){ TGraph *gr1 = new TGraph(i,x,yl1); - gr1->GetXaxis()->SetTitle(xlab); - gr1->GetYaxis()->SetTitle("Implanted Fraction"); // gr1->Draw("APC"); gr1->SetMarkerStyle(20); gr1->SetMarkerColor(TColor::kRed); gr1->SetLineColor(TColor::kRed); // Preferably get the chemical formula from header - legend->AddEntry(gr1,"Layer 1"); + ostr = dynamic_cast(labels->At(10)); + xlab = ostr->GetString(); + legend->AddEntry(gr1,xlab); mg->Add(gr1); } @@ -166,7 +164,9 @@ void plotFrc(char *FileName) gr2->SetLineColor(TColor::kGreen); // gr2->Draw("PC"); // Preferably get the chemical formula from header - legend->AddEntry(gr2,"Layer 2"); + ostr = dynamic_cast(labels->At(11)); + xlab = ostr->GetString(); + legend->AddEntry(gr2,xlab); mg->Add(gr2); } @@ -177,7 +177,9 @@ void plotFrc(char *FileName) gr3->SetLineColor(TColor::kBlue); // gr3->Draw("PC"); // Preferably get the chemical formula from header - legend->AddEntry(gr3,"Layer 3"); + ostr = dynamic_cast(labels->At(12)); + xlab = ostr->GetString(); + legend->AddEntry(gr3,xlab); mg->Add(gr3); } @@ -188,7 +190,9 @@ void plotFrc(char *FileName) gr4->SetLineColor(TColor::kMagenta); // gr4->Draw("PC"); // Preferably get the chemical formula from header - legend->AddEntry(gr4,"Layer 4"); + ostr = dynamic_cast(labels->At(13)); + xlab = ostr->GetString(); + legend->AddEntry(gr4,xlab); mg->Add(gr4); } @@ -199,7 +203,9 @@ void plotFrc(char *FileName) gr5->SetLineColor(TColor::kOrange); // gr5->Draw("PC"); // Preferably get the chemical formula from header - legend->AddEntry(gr5,"Layer 5"); + ostr = dynamic_cast(labels->At(14)); + xlab = ostr->GetString(); + legend->AddEntry(gr5,xlab); mg->Add(gr5); } @@ -210,7 +216,9 @@ void plotFrc(char *FileName) gr6->SetLineColor(TColor::kViolet); // gr6->Draw("PC"); // Preferably get the chemical formula from header - legend->AddEntry(gr6,"Layer 6"); + ostr = dynamic_cast(labels->At(15)); + xlab = ostr->GetString(); + legend->AddEntry(gr6,xlab); mg->Add(gr6); } @@ -221,7 +229,9 @@ void plotFrc(char *FileName) gr7->SetLineColor(TColor::kAzure+7); // gr7->Draw("PC"); // Preferably get the chemical formula from header - legend->AddEntry(gr7,"Layer 7"); + ostr = dynamic_cast(labels->At(16)); + xlab = ostr->GetString(); + legend->AddEntry(gr7,xlab); mg->Add(gr7); }