From d8cb35a476954d31d62ebaaf33203c819fa2b57d Mon Sep 17 00:00:00 2001 From: BrieucF Date: Mon, 2 Dec 2024 14:49:44 +0100 Subject: [PATCH 01/11] Add DriftChamberDigi data type --- README.md | 4 ++-- edm4hep.yaml | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 812b1ef2b..9465ab12a 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ A generic event data model for future HEP collider experiments. | [CalorimeterHit](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L394) | [ParticleID](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L405) | [Cluster](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L419) | | [TrackerHit3D](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L451) | [TrackerHitPlane](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L477) | [RawTimeSeries](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L507) | | [Track](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L521) | [Vertex](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L538) | [ReconstructedParticle](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L584) | -| [TimeSeries](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L813) | [RecDqdx](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L825) | | +| [TimeSeries](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L813) | [RecDqdx](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L825) | [DriftChamberDigi](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L506) | **Links** @@ -35,7 +35,7 @@ A generic event data model for future HEP collider experiments. |-|-|-| | [RecoMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L622) | [CaloHitSimCaloHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L649) | [TrackerHitSimTrackerHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L677) | | [CaloHitMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L704) | [ClusterMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L731) | [TrackMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L758) | -| [VertexRecoParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L785) | | | +| [VertexRecoParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L785) | [DriftChamberDigiSimTrackerHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L828) | | **Generator related (meta-)data** diff --git a/edm4hep.yaml b/edm4hep.yaml index 5fff0bc63..6bf4c80f0 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -503,6 +503,22 @@ datatypes: void setCovMatrix(float value, edm4hep::Cartesian dimI, edm4hep::Cartesian dimJ) { getCovMatrix().setValue(value, dimI, dimJ); }\n " + edm4hep::DriftChamberDigi: + Description: "Digitized drift chamber hit (before tracking)" + Author: "EDM4hep authors" + Members: + - uint64_t cellID // ID of the sensor that created this hit + - int32_t type // type of the raw data hit + - int32_t quality // quality bit flag of the hit + - float time [ns] // time of the hit + - float eDep [GeV] // energy deposited on the hit + - float eDepError [GeV] // error measured on eDep + - edm4hep::Vector3d position [mm] // point on the sensitive wire (SW) which is closest to the simhit + - edm4hep::Vector3d directionSW // direction of SW + - float distanceToWire [mm] // distance hit-wire + - uint32_t nCluster // number of clusters associated to this hit + VectorMembers: + - uint16_t nElectrons // number of electrons for each cluster (vector size = nCluster) edm4hep::RawTimeSeries: Description: "Raw data of a detector readout" @@ -809,6 +825,33 @@ datatypes: void {name}::setRec(const edm4hep::ReconstructedParticle& rec) { setTo(rec); }\n " + edm4hep::DriftChamberDigiSimTrackerHitLink: + Description: "Link between a DriftChamberDigi and a SimTrackerHit" + Author: "EDM4hep authors" + Members: + - float weight // weight of this link + OneToOneRelations: + - edm4hep::DriftChamberDigi from // reference to the DriftChamberDigi + - edm4hep::SimTrackerHit to // reference to the SimTrackerHit + ExtraCode: + declaration: " + [[deprecated(\"use getFrom instead\")]] edm4hep::DriftChamberDigi getRec() const;\n + [[deprecated(\"use getTo instead\")]] edm4hep::SimTrackerHit getSim() const;\n" + implementation: " + edm4hep::DriftChamberDigi {name}::getRec() const { return getFrom(); }\n + edm4hep::SimTrackerHit {name}::getSim() const { return getTo(); }\n" + MutableExtraCode: + declaration: " + [[deprecated(\"use setFrom instead\")]]\n + void setRec(const edm4hep::DriftChamberDigi& rec);\n + [[deprecated(\"use setTo instead\")]]\n + void setSim(const edm4hep::SimTrackerHit& sim);\n + " + implementation: " + void {name}::setRec(const edm4hep::DriftChamberDigi& digi) { setFrom(digi); }\n + void {name}::setSim(const edm4hep::SimTrackerHit& simHit) { setTo(simHit); }\n + " + edm4hep::TimeSeries: Description: "Calibrated Detector Data" @@ -875,3 +918,4 @@ interfaces: Types: - edm4hep::TrackerHit3D - edm4hep::TrackerHitPlane + - edm4hep::DriftChamberDigi From a048b6372fb12eba52d2accdf86160c05249a05d Mon Sep 17 00:00:00 2001 From: BrieucF Date: Mon, 2 Dec 2024 14:50:33 +0100 Subject: [PATCH 02/11] Update README --- README.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 9465ab12a..3c7a0e806 100644 --- a/README.md +++ b/README.md @@ -25,30 +25,30 @@ A generic event data model for future HEP collider experiments. | [EventHeader](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L242) | [MCParticle](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L254) | [SimTrackerHit](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L321) | | [CaloHitContribution](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L362) | [SimCalorimeterHit](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L374) | [RawCalorimeterHit](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L385) | | [CalorimeterHit](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L394) | [ParticleID](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L405) | [Cluster](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L419) | -| [TrackerHit3D](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L451) | [TrackerHitPlane](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L477) | [RawTimeSeries](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L507) | -| [Track](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L521) | [Vertex](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L538) | [ReconstructedParticle](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L584) | -| [TimeSeries](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L813) | [RecDqdx](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L825) | [DriftChamberDigi](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L506) | +| [TrackerHit3D](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L451) | [TrackerHitPlane](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L477) | [RawTimeSeries](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L523) | +| [Track](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L537) | [Vertex](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L554) | [ReconstructedParticle](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L600) | +| [TimeSeries](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L856) | [RecDqdx](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L868) | [DriftChamberDigi](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L506) | **Links** | | | | |-|-|-| -| [RecoMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L622) | [CaloHitSimCaloHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L649) | [TrackerHitSimTrackerHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L677) | -| [CaloHitMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L704) | [ClusterMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L731) | [TrackMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L758) | -| [VertexRecoParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L785) | [DriftChamberDigiSimTrackerHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L828) | | +| [RecoMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L638) | [CaloHitSimCaloHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L665) | [TrackerHitSimTrackerHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L693) | +| [CaloHitMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L720) | [ClusterMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L747) | [TrackMCParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L774) | +| [VertexRecoParticleLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L801) | [DriftChamberDigiSimTrackerHitLink](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L828) | | **Generator related (meta-)data** | | | | |-|-|-| -| [GeneratorEventParameters](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L837) | | | -| [GeneratorPdfInfo](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L853) | | | +| [GeneratorEventParameters](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L880) | | | +| [GeneratorPdfInfo](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L896) | | | **Interfaces** | | | | |-|-|-| -| [TrackerHit](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L864) | | | +| [TrackerHit](https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L907) | | | The tests and examples in the `tests` directory show how to read, write, and use these types in your code. From a8522271d958c4df1e83d2be1435531d839b1561 Mon Sep 17 00:00:00 2001 From: BrieucF Date: Mon, 2 Dec 2024 16:17:29 +0100 Subject: [PATCH 03/11] Clearer comments --- edm4hep.yaml | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index 6bf4c80f0..5b3694634 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -503,8 +503,8 @@ datatypes: void setCovMatrix(float value, edm4hep::Cartesian dimI, edm4hep::Cartesian dimJ) { getCovMatrix().setValue(value, dimI, dimJ); }\n " - edm4hep::DriftChamberDigi: - Description: "Digitized drift chamber hit (before tracking)" + edm4hep::SensitiveWireHit: + Description: "Sensitive wire hit, before the hit position degeneracy is resolved. The circle representing possible positions is parametrized with its center, radius and normal vector." Author: "EDM4hep authors" Members: - uint64_t cellID // ID of the sensor that created this hit @@ -513,12 +513,12 @@ datatypes: - float time [ns] // time of the hit - float eDep [GeV] // energy deposited on the hit - float eDepError [GeV] // error measured on eDep - - edm4hep::Vector3d position [mm] // point on the sensitive wire (SW) which is closest to the simhit - - edm4hep::Vector3d directionSW // direction of SW - - float distanceToWire [mm] // distance hit-wire - - uint32_t nCluster // number of clusters associated to this hit + - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) + - edm4hep::Vector3d directionSW // direction of the sensitive wire (normal vector to the circle) + - float distanceToWire [mm] // distance hit-wire (radius of the circle) + - uint32_t nClusters // number of clusters associated to this hit VectorMembers: - - uint16_t nElectrons // number of electrons for each cluster (vector size = nCluster) + - uint16_t nElectrons // number of electrons for each cluster (number of clusters = vector size) edm4hep::RawTimeSeries: Description: "Raw data of a detector readout" @@ -825,31 +825,31 @@ datatypes: void {name}::setRec(const edm4hep::ReconstructedParticle& rec) { setTo(rec); }\n " - edm4hep::DriftChamberDigiSimTrackerHitLink: - Description: "Link between a DriftChamberDigi and a SimTrackerHit" + edm4hep::SensitiveWireHitSimTrackerHitLink: + Description: "Link between a SensitiveWireHit and a SimTrackerHit" Author: "EDM4hep authors" Members: - float weight // weight of this link OneToOneRelations: - - edm4hep::DriftChamberDigi from // reference to the DriftChamberDigi + - edm4hep::SensitiveWireHit from // reference to the SensitiveWireHit - edm4hep::SimTrackerHit to // reference to the SimTrackerHit ExtraCode: declaration: " - [[deprecated(\"use getFrom instead\")]] edm4hep::DriftChamberDigi getRec() const;\n + [[deprecated(\"use getFrom instead\")]] edm4hep::SensitiveWireHit getRec() const;\n [[deprecated(\"use getTo instead\")]] edm4hep::SimTrackerHit getSim() const;\n" implementation: " - edm4hep::DriftChamberDigi {name}::getRec() const { return getFrom(); }\n + edm4hep::SensitiveWireHit {name}::getRec() const { return getFrom(); }\n edm4hep::SimTrackerHit {name}::getSim() const { return getTo(); }\n" MutableExtraCode: declaration: " [[deprecated(\"use setFrom instead\")]]\n - void setRec(const edm4hep::DriftChamberDigi& rec);\n + void setRec(const edm4hep::SensitiveWireHit& rec);\n [[deprecated(\"use setTo instead\")]]\n void setSim(const edm4hep::SimTrackerHit& sim);\n " implementation: " - void {name}::setRec(const edm4hep::DriftChamberDigi& digi) { setFrom(digi); }\n - void {name}::setSim(const edm4hep::SimTrackerHit& simHit) { setTo(simHit); }\n + void {name}::setRec(const edm4hep::SensitiveWireHit& rec) { setFrom(rec); }\n + void {name}::setSim(const edm4hep::SimTrackerHit& sim) { setTo(sim); }\n " @@ -918,4 +918,4 @@ interfaces: Types: - edm4hep::TrackerHit3D - edm4hep::TrackerHitPlane - - edm4hep::DriftChamberDigi + - edm4hep::SensitiveWireHit From ece583864e3e4add420cbff4a57e75646ef97800 Mon Sep 17 00:00:00 2001 From: BrieucF Date: Mon, 2 Dec 2024 16:18:50 +0100 Subject: [PATCH 04/11] Remove deprecated code --- edm4hep.yaml | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index 5b3694634..24ffa31bd 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -833,24 +833,6 @@ datatypes: OneToOneRelations: - edm4hep::SensitiveWireHit from // reference to the SensitiveWireHit - edm4hep::SimTrackerHit to // reference to the SimTrackerHit - ExtraCode: - declaration: " - [[deprecated(\"use getFrom instead\")]] edm4hep::SensitiveWireHit getRec() const;\n - [[deprecated(\"use getTo instead\")]] edm4hep::SimTrackerHit getSim() const;\n" - implementation: " - edm4hep::SensitiveWireHit {name}::getRec() const { return getFrom(); }\n - edm4hep::SimTrackerHit {name}::getSim() const { return getTo(); }\n" - MutableExtraCode: - declaration: " - [[deprecated(\"use setFrom instead\")]]\n - void setRec(const edm4hep::SensitiveWireHit& rec);\n - [[deprecated(\"use setTo instead\")]]\n - void setSim(const edm4hep::SimTrackerHit& sim);\n - " - implementation: " - void {name}::setRec(const edm4hep::SensitiveWireHit& rec) { setFrom(rec); }\n - void {name}::setSim(const edm4hep::SimTrackerHit& sim) { setTo(sim); }\n - " edm4hep::TimeSeries: From 46586463b7175a5214b074e856455b5103c05aff Mon Sep 17 00:00:00 2001 From: BrieucF Date: Mon, 2 Dec 2024 16:38:25 +0100 Subject: [PATCH 05/11] Remove nCluster, add a helper method to retrieve it --- edm4hep.yaml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index 24ffa31bd..fde4b4f87 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -516,9 +516,14 @@ datatypes: - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) - edm4hep::Vector3d directionSW // direction of the sensitive wire (normal vector to the circle) - float distanceToWire [mm] // distance hit-wire (radius of the circle) - - uint32_t nClusters // number of clusters associated to this hit VectorMembers: - uint16_t nElectrons // number of electrons for each cluster (number of clusters = vector size) + ExtraCode: + declaration: " + /// Return the number of clusters associated to the hit\n + uint32_t nClusters() const { return getNElectrons().size(); }\n + " + edm4hep::RawTimeSeries: Description: "Raw data of a detector readout" From e42afc2d153c323df7b3f2e952fa6e28f6f953ab Mon Sep 17 00:00:00 2001 From: BrieucF Date: Mon, 2 Dec 2024 20:45:31 +0100 Subject: [PATCH 06/11] nClusters -> getNClusters and auto return type --- edm4hep.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index fde4b4f87..aecc9cc61 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -521,7 +521,7 @@ datatypes: ExtraCode: declaration: " /// Return the number of clusters associated to the hit\n - uint32_t nClusters() const { return getNElectrons().size(); }\n + auto getNClusters() const { return getNElectrons().size(); }\n " From 8c9d38a6c914677795bc9d4f08cd35f9e01e6b1e Mon Sep 17 00:00:00 2001 From: BrieucF Date: Tue, 3 Dec 2024 10:15:17 +0100 Subject: [PATCH 07/11] Add errors on the spatial measurements --- edm4hep.yaml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index aecc9cc61..259a161f6 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -511,11 +511,13 @@ datatypes: - int32_t type // type of the raw data hit - int32_t quality // quality bit flag of the hit - float time [ns] // time of the hit - - float eDep [GeV] // energy deposited on the hit - - float eDepError [GeV] // error measured on eDep - - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) + - float eDep [GeV] // energy deposited by the hit + - float eDepError [GeV] // error on eDep - edm4hep::Vector3d directionSW // direction of the sensitive wire (normal vector to the circle) - - float distanceToWire [mm] // distance hit-wire (radius of the circle) + - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) + - double positionAlongWireError [mm] // error on the hit position along the wire direction + - float distanceToWire [mm] // distance between the hit and the wire (radius of the circle) + - float distanceToWireError [mm] // error on distanceToWire VectorMembers: - uint16_t nElectrons // number of electrons for each cluster (number of clusters = vector size) ExtraCode: From 2bfcdacc36e9739eafe8c4b8870f3fccc22d69da Mon Sep 17 00:00:00 2001 From: BrieucF Date: Tue, 3 Dec 2024 10:22:19 +0100 Subject: [PATCH 08/11] directionSW as vector3d -> sensitiveWireDirection as vector2d --- edm4hep.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index 259a161f6..283ab9dc6 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -513,7 +513,7 @@ datatypes: - float time [ns] // time of the hit - float eDep [GeV] // energy deposited by the hit - float eDepError [GeV] // error on eDep - - edm4hep::Vector3d directionSW // direction of the sensitive wire (normal vector to the circle) + - edm4hep::Vector2d sensitiveWireDirection // direction of the sensitive wire (normal vector to the circle) - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) - double positionAlongWireError [mm] // error on the hit position along the wire direction - float distanceToWire [mm] // distance between the hit and the wire (radius of the circle) From f211f7c93b9be52e07f9a4f178f02f56ef7f4083 Mon Sep 17 00:00:00 2001 From: BrieucF Date: Tue, 3 Dec 2024 10:52:15 +0100 Subject: [PATCH 09/11] Explicit stereo/azimuthal angles instead of vector2d --- edm4hep.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index 283ab9dc6..dbae0868d 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -504,7 +504,7 @@ datatypes: " edm4hep::SensitiveWireHit: - Description: "Sensitive wire hit, before the hit position degeneracy is resolved. The circle representing possible positions is parametrized with its center, radius and normal vector." + Description: "Sensitive wire hit, before the hit position degeneracy is resolved. The circle representing possible positions is parametrized with its center, radius and normal vector (given by the wire direction)." Author: "EDM4hep authors" Members: - uint64_t cellID // ID of the sensor that created this hit @@ -513,7 +513,8 @@ datatypes: - float time [ns] // time of the hit - float eDep [GeV] // energy deposited by the hit - float eDepError [GeV] // error on eDep - - edm4hep::Vector2d sensitiveWireDirection // direction of the sensitive wire (normal vector to the circle) + - float wireStereoAngle // stereo angle of the sensitive wire (use it together with wireAzimuthalAngle to get the wire direction) + - float wireAzimuthalAngle // azimuthal angle of the sensitive wire (use it together with wireStereoAngle to get the wire direction) - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) - double positionAlongWireError [mm] // error on the hit position along the wire direction - float distanceToWire [mm] // distance between the hit and the wire (radius of the circle) From 9913ad07516af8a9be0f3abb518e47aa4e4337f6 Mon Sep 17 00:00:00 2001 From: BrieucF Date: Tue, 17 Dec 2024 09:04:15 +0100 Subject: [PATCH 10/11] Clarify angle definitions --- edm4hep.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index dbae0868d..4392d5664 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -513,8 +513,8 @@ datatypes: - float time [ns] // time of the hit - float eDep [GeV] // energy deposited by the hit - float eDepError [GeV] // error on eDep - - float wireStereoAngle // stereo angle of the sensitive wire (use it together with wireAzimuthalAngle to get the wire direction) - - float wireAzimuthalAngle // azimuthal angle of the sensitive wire (use it together with wireStereoAngle to get the wire direction) + - float wireStereoAngle // angle between the sensitive wire axis and the drift chamber axis (usually the z-axis) - use it together with wireAzimuthalAngle to get the wire direction + - float wireAzimuthalAngle // azimuthal angle at the middle of the sensitive wire - use it together with wireStereoAngle to get the wire direction - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) - double positionAlongWireError [mm] // error on the hit position along the wire direction - float distanceToWire [mm] // distance between the hit and the wire (radius of the circle) From 75a5b9b6240c42caefb72eac36844613c5612beb Mon Sep 17 00:00:00 2001 From: BrieucF Date: Tue, 17 Dec 2024 09:10:22 +0100 Subject: [PATCH 11/11] Sensitive wire --> Sense wire --- edm4hep.yaml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/edm4hep.yaml b/edm4hep.yaml index 4392d5664..20db33868 100644 --- a/edm4hep.yaml +++ b/edm4hep.yaml @@ -503,8 +503,8 @@ datatypes: void setCovMatrix(float value, edm4hep::Cartesian dimI, edm4hep::Cartesian dimJ) { getCovMatrix().setValue(value, dimI, dimJ); }\n " - edm4hep::SensitiveWireHit: - Description: "Sensitive wire hit, before the hit position degeneracy is resolved. The circle representing possible positions is parametrized with its center, radius and normal vector (given by the wire direction)." + edm4hep::SenseWireHit: + Description: "Sense wire hit, before the hit position degeneracy is resolved. The circle representing possible positions is parametrized with its center, radius and normal vector (given by the wire direction)." Author: "EDM4hep authors" Members: - uint64_t cellID // ID of the sensor that created this hit @@ -513,9 +513,9 @@ datatypes: - float time [ns] // time of the hit - float eDep [GeV] // energy deposited by the hit - float eDepError [GeV] // error on eDep - - float wireStereoAngle // angle between the sensitive wire axis and the drift chamber axis (usually the z-axis) - use it together with wireAzimuthalAngle to get the wire direction - - float wireAzimuthalAngle // azimuthal angle at the middle of the sensitive wire - use it together with wireStereoAngle to get the wire direction - - edm4hep::Vector3d position [mm] // point on the sensitive wire which is closest to the hit (center of the circle) + - float wireStereoAngle // angle between the sense wire axis and the drift chamber axis (usually the z-axis) - use it together with wireAzimuthalAngle to get the wire direction + - float wireAzimuthalAngle // azimuthal angle at the middle of the sense wire - use it together with wireStereoAngle to get the wire direction + - edm4hep::Vector3d position [mm] // point on the sense wire which is closest to the hit (center of the circle) - double positionAlongWireError [mm] // error on the hit position along the wire direction - float distanceToWire [mm] // distance between the hit and the wire (radius of the circle) - float distanceToWireError [mm] // error on distanceToWire @@ -833,13 +833,13 @@ datatypes: void {name}::setRec(const edm4hep::ReconstructedParticle& rec) { setTo(rec); }\n " - edm4hep::SensitiveWireHitSimTrackerHitLink: - Description: "Link between a SensitiveWireHit and a SimTrackerHit" + edm4hep::SenseWireHitSimTrackerHitLink: + Description: "Link between a SenseWireHit and a SimTrackerHit" Author: "EDM4hep authors" Members: - float weight // weight of this link OneToOneRelations: - - edm4hep::SensitiveWireHit from // reference to the SensitiveWireHit + - edm4hep::SenseWireHit from // reference to the SenseWireHit - edm4hep::SimTrackerHit to // reference to the SimTrackerHit @@ -908,4 +908,4 @@ interfaces: Types: - edm4hep::TrackerHit3D - edm4hep::TrackerHitPlane - - edm4hep::SensitiveWireHit + - edm4hep::SenseWireHit