From c47afc792b2260cbb4a470d5e9c57347fa09f671 Mon Sep 17 00:00:00 2001
From: Florian Uhlig <f.uhlig@gsi.de>
Date: Fri, 11 Apr 2025 15:05:34 +0200
Subject: [PATCH] Add setup files for CFV and Day1

---
 setup/setup_sis100_cfv.C  | 59 +++++++++++++++++++++++++++++++++++++++
 setup/setup_sis100_day1.C | 54 +++++++++++++++++++++++++++++++++++
 2 files changed, 113 insertions(+)
 create mode 100644 setup/setup_sis100_cfv.C
 create mode 100644 setup/setup_sis100_day1.C

diff --git a/setup/setup_sis100_cfv.C b/setup/setup_sis100_cfv.C
new file mode 100644
index 00000000..355c27f9
--- /dev/null
+++ b/setup/setup_sis100_cfv.C
@@ -0,0 +1,59 @@
+/** ROOT macro to define the Currently Funded Version CBM setup sis_100_cfv
+ **
+ ** @author Eoin Clerkin <e.clerkin@gsi.de>
+ ** @date   21 November 2024
+ **
+ **/
+
+// 2025-02-26 - EC - Bugfix #3510
+// 2025-02-18 - EC - Remove PSD
+// 2025-01-29 - EC - Add v24 bpipe and v25 fsd
+// 2024-11-24 - EC - Introduce CFV MVD after support added
+// 2024-11-25 - EC - Reduced CFV TRD 1D 
+// 2024-11-21 - EC - Branched from sis100_electron
+
+void setup_sis100_cfv()
+{
+  // -----  Geometry Tags  --------------------------------------------------
+  TString magnetGeoTag    = "v22a";
+  TString pipeGeoTag      = "v21d:v24h";
+  TString mvdGeoTag       = "v25a";
+  TString stsGeoTag       = "v22d";
+  TString richGeoTag      = "v23b";
+  TString trdGeoTag       = "v23a_1e"; // CFV TRD 1D (reduced acceptance)
+  TString tofGeoTag       = "v24a";
+  TString fsdGeoTag       = "v25h"; 
+  //TString psdGeoTag       = "v23a"; https://redmine.cbm.gsi.de/issues/3533
+  TString platGeoTag      = "v22b";
+  // ------------------------------------------------------------------------
+
+  // -----  Magnetic field  -------------------------------------------------
+  TString fieldTag      = "v22c"; 
+  Double_t fieldZ       =  0.;            // field centre z position
+  Double_t fieldScale   =  1.;            // field scaling factor
+  // ------------------------------------------------------------------------
+
+  // -----  Create setup  ---------------------------------------------------
+  CbmSetup* setup = CbmSetup::Instance();
+  if ( ! setup->IsEmpty() ) {
+  	std::cout << "-W- setup_sis100_cfv: overwriting existing setup"
+  			      << setup->GetTitle() << std::endl;
+  	setup->Clear();
+  }
+  setup->SetTitle("SIS100 - CFV Setup");
+  setup->SetName("setup_sis100_cfv");
+  setup->SetModule(ECbmModuleId::kMagnet, magnetGeoTag);
+  setup->SetModule(ECbmModuleId::kPipe, pipeGeoTag);
+  setup->SetModule(ECbmModuleId::kMvd, mvdGeoTag);
+  setup->SetModule(ECbmModuleId::kSts, stsGeoTag);
+  setup->SetModule(ECbmModuleId::kRich, richGeoTag);
+  setup->SetModule(ECbmModuleId::kTrd, trdGeoTag);
+  setup->SetModule(ECbmModuleId::kTof, tofGeoTag);
+  setup->SetModule(ECbmModuleId::kFsd, fsdGeoTag);
+  // setup->SetModule(ECbmModuleId::kPsd, psdGeoTag);
+  setup->SetModule(ECbmModuleId::kPlatform, platGeoTag);
+  setup->SetField(fieldTag, fieldScale, 0., 0., fieldZ);
+  // ------------------------------------------------------------------------
+
+}
+
diff --git a/setup/setup_sis100_day1.C b/setup/setup_sis100_day1.C
new file mode 100644
index 00000000..a6b77c9a
--- /dev/null
+++ b/setup/setup_sis100_day1.C
@@ -0,0 +1,54 @@
+/** ROOT macro to define the Day1 version of CBM setup sis_100_day1
+ **
+ ** @author Florian Uhlig <f.uhlig@gsi.de>
+ ** @date   11 April 2025
+ **
+ **/
+
+// 2025-04-11 - FU - Branched from sis100_cfv
+
+void setup_sis100_cfv()
+{
+  // -----  Geometry Tags  --------------------------------------------------
+  TString magnetGeoTag    = "v22a";
+  TString pipeGeoTag      = "v21d:v24h";
+  TString mvdGeoTag       = "v20d_tr";
+  TString stsGeoTag       = "v22d";
+  TString richGeoTag      = "v23a";
+  TString trdGeoTag       = "v20b_1e";
+  TString tofGeoTag       = "v21a_1e";
+  TString fsdGeoTag       = "v25h"; 
+  //TString psdGeoTag       = "v23a"; https://redmine.cbm.gsi.de/issues/3533
+  TString platGeoTag      = "v22b";
+  // ------------------------------------------------------------------------
+
+  // -----  Magnetic field  -------------------------------------------------
+  TString fieldTag      = "v22c"; 
+  Double_t fieldZ       =  0.;            // field centre z position
+  Double_t fieldScale   =  1.;            // field scaling factor
+  // ------------------------------------------------------------------------
+
+  // -----  Create setup  ---------------------------------------------------
+  CbmSetup* setup = CbmSetup::Instance();
+  if ( ! setup->IsEmpty() ) {
+  	std::cout << "-W- setup_sis100_day1: overwriting existing setup"
+  			      << setup->GetTitle() << std::endl;
+  	setup->Clear();
+  }
+  setup->SetTitle("SIS100 - Day1 Setup");
+  setup->SetName("setup_sis100_day1");
+  setup->SetModule(ECbmModuleId::kMagnet, magnetGeoTag);
+  setup->SetModule(ECbmModuleId::kPipe, pipeGeoTag);
+  setup->SetModule(ECbmModuleId::kMvd, mvdGeoTag);
+  setup->SetModule(ECbmModuleId::kSts, stsGeoTag);
+  setup->SetModule(ECbmModuleId::kRich, richGeoTag);
+  setup->SetModule(ECbmModuleId::kTrd, trdGeoTag);
+  setup->SetModule(ECbmModuleId::kTof, tofGeoTag);
+  setup->SetModule(ECbmModuleId::kFsd, fsdGeoTag);
+  // setup->SetModule(ECbmModuleId::kPsd, psdGeoTag);
+  setup->SetModule(ECbmModuleId::kPlatform, platGeoTag);
+  setup->SetField(fieldTag, fieldScale, 0., 0., fieldZ);
+  // ------------------------------------------------------------------------
+
+}
+
-- 
GitLab