Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • a.bercuci/cbmroot_geometry
  • d.ramirez/cbmroot_geometry
  • m.shiroya/cbmroot_geometry
  • ajit.kumar/cbmroot_geometry
  • n.herrmann/cbmroot_geometry
  • a.weber/cbmroot_geometry
  • a.agarwal_AT_vecc.gov.in/cbmroot_geometry
  • l.chlad/cbmroot_geometry
  • a.toia/cbmroot_geometry
  • ma.beyer/cbmroot_geometry
  • a_meye37_AT_uni-muenster.de/cbmroot_geometry
  • praisig/cbmroot_geometry
  • aksharma/cbmroot_geometry
  • hofmanond_AT_fjfi.cvut.cz/cbmroot_geometry
  • r.karabowicz/cbmroot_geometry
  • i.deppner/cbmroot_geometry
  • s.lebedev/cbmroot_geometry
  • osingh/cbmroot_geometry
  • CbmSoft/cbmroot_geometry
  • p.-a.loizeau/cbmroot_geometry
  • f.uhlig/cbmroot_geometry
  • d.emschermann/cbmroot_geometry
  • e.clerkin/cbmroot_geometry
  • rishat.sultanov_AT_cern.ch/cbmroot_geometry
  • se.gorbunov/cbmroot_geometry
  • s.roy/cbmroot_geometry
  • p.chudoba/cbmroot_geometry
  • o.golosov/cbmroot_geometry
  • apuntke/cbmroot_geometry
  • v.singhal/cbmroot_geometry
30 results
Show changes
Commits on Source (95)
Showing
with 629 additions and 7 deletions
stages:
- checkRepository
- checkFormat
- checkGeometries
- finalise
RebaseCheck:
stage: checkRepository
image: alpine
......@@ -117,6 +118,28 @@ FileMediaCheck:
- git fetch upstream
- gawk -f ci_scripts/static_check.awk media.geo
CheckRadLen:
stage: checkGeometries
image: rootproject/root
tags:
- docker
only:
refs:
- merge_requests
variables:
- $CI_MERGE_REQUEST_PROJECT_PATH == "CbmSoft/cbmroot_geometry" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master"
script:
# Get the upstream repository manually. I did not find any other way to have it for
# comparison
- apt update -y && apt install -y git bash
- ci_scripts/connect_upstream_repo.sh $CI_MERGE_REQUEST_PROJECT_URL
- git fetch upstream
- git diff upstream/master --name-only
- touch LIST_GEO_FILES
- FAIL=0
- for file in `git diff upstream/master 2>/dev/null --name-only | sed -ne '/\.geo\.root$/p'`; do if [ -f $file ]; then echo $file; sh ci_scripts/check_radlen.sh $file; if [ $? -ne 0 ]; then let FAIL++; fi; fi; done
- exit $FAIL
InformCodeOwners:
stage: finalise
tags:
......@@ -133,3 +156,18 @@ InformCodeOwners:
- ci_scripts/connect_upstream_repo.sh $CI_MERGE_REQUEST_PROJECT_URL
- git fetch upstream
- ci_scripts/inform_codeowners.sh upstream
Md5Sums:
stage: finalise
image: alpine
only:
refs:
- merge_requests
tags:
- docker
script:
- find . -iname '*.geo.root' | xargs md5sum
Please insert x between square brackets to tick the boxes, add a meaningful description if the title is not enough and check the outcome with the "Preview" tab
**In case you committed a new geometry:**
- [ ] Ran the scripts for materials and radiation length check on my new geometry file? (and read carefully the output of course)
```
bash ci_scripts/check_radlen.sh <path>/<file>.geo.root
```
- [ ] Added also the corresponding creation macro?
- [ ] Checked that the geometry does not contains unexpected overlaps, e.g. either at end of the creation macro or with the something similar to the mCBM macro \
`macro/mcbm/mcbm_check_overlaps.C`
**In case you committed a new setup file:**
- [ ] Checked that all geometries listed are present in the repository?
- [ ] Ran the CBMROOT `macro/geometry/check_media.C` on the corresponding `.geo.root` file? (output by the transport macro)
# Ending a path in a `/` will specify the code owners for every file
# nested in that directory, on any level
/ @f.uhlig @p.-a.loizeau @d.emschermann
/ @f.uhlig @p.-a.loizeau @e.clerkin
# Repository technical side
/ci_scripts/ @f.uhlig @p.-a.loizeau @e.clerkin
## Detectors
# TRD
/trd/ @a.bercuci @p.kaehler
/macro/trd/ @a.bercuci @p.kaehler
# PSD
/psd/ @karpushkin_AT_inr.ru
# PSD/FSD
/psd/ @dvorar10_AT_fjfi.cvut.cz @e.clerkin @i.selyuzhenkov
/macro/psd/ @dvorar10_AT_fjfi.cvut.cz @e.clerkin @i.selyuzhenkov
/fsd/ @dvorar10_AT_fjfi.cvut.cz
/macro/fsd/ @dvorar10_AT_fjfi.cvut.cz
# MUCH
/much/ @v.singhal
/macro/much/ @v.singhal
# TOF
/tof/ @n.herrmann @i.deppner
/macro/tof/ @n.herrmann @i.deppner
# RICH
/rich/ @s.lebedev
/rich/ @s.lebedev @ma.beyer @s.neuhaus
/macro/rich/ @s.lebedev @ma.beyer @s.neuhaus
# STS
/sts/ @v.friese @a.toia
/sts/ @v.friese @a.toia @m.shiroya
/macro/sts/ @v.friese @a.toia @m.shiroya
# MVD
/mvd/ @c.muentz @m.deveaux
/macro/mvd/ @c.muentz @m.deveaux
# passive geometries
/magnet/ @e.clerkin
/passive/ @e.clerkin
/macro/passive/ @e.clerkin
/pipe/ @e.clerkin
/macro/pipe/ @e.clerkin
#setups
# setups
/setup/ @e.clerkin
# mCBM
/mcbm/ @c.sturm
#/bin/bash
# check_radlen.sh - checks radiation length of materials in user supplied geometry
# Author: Eoin Clerkin (FAIR) 2022-01-31
echo "Scanning the geometry" $1
root -l -b -q 'ci_scripts/scan_geometry.C("'$1'")' 1>tmp
ROOT_EXIT=$?;
if [ 0 -ne $ROOT_EXIT ]; then
echo "root command failed, nothing more done";
exit ${ROOT_EXIT};
fi;
grep '^M\(at\|ix\)' tmp | \
sort | \
uniq -c | \
sort -g -k 1 1>MATERIALS
COUNT=0;
FAIL=0;
SKIP=0;
OKAY=0;
while IFS= read -r line;
do
variables=`echo "$line" | sed -e 's/eff//g' | sed -e 's/index/jndex/g' | sed -e 's/.*A=/ A=/g' | sed -e 's/ / -v /g'`
awk \
-v TOL=0.1 \
$variables \
'BEGIN{\
if(Z<1){
printf "SKIP "; \
exit 3;
};
cal_rad_len=(716.4*A/(Z*(Z+1)*log(287/sqrt(Z)))/rho);\
#print cal_rad_len;
diff=(cal_rad_len - radlen);\
if(diff*diff <= TOL*TOL*radlen*radlen ){\
printf "OKAY " cal_rad_len; exit 1;
}else{\
printf "FAIL " cal_rad_len; exit 2;
}}'
STATUS=$?;
if [ $STATUS -eq 1 ]; then OKAY=$((OKAY+1)); fi;
if [ $STATUS -eq 2 ]; then FAIL=$((FAIL+1)); fi;
if [ $STATUS -eq 3 ]; then SKIP=$((SKIP+1)); fi;
COUNT=$((COUNT+1));
echo " \t $line"
done < MATERIALS
rm tmp MATERIALS
echo ${FAIL}" failures in " $COUNT " materials"
echo "ENDED successfully"
exit ${FAIL};
/* Copyright (C) 2021 Facility for Antiproton and Ion Research in Europe, Darmstadt
SPDX-License-Identifier: GPL-3.0-only
Authors: Eoin Clerkin [committer] */
#include <cstdlib>
#include <fstream>
#include <iostream>
#define NODE_DEPTH 25
TGeoNode* node[NODE_DEPTH];
TGeoMedium* med;
TGeoManager* gman;
TGeoVolume* top;
//const char* seekstr1 = "cable";
void scan_geometry(const char* fileName = "test.geo.root")
{
TString myName = "scan_and_graph";
TFile file(fileName, "READ");
if (!file.IsOpen()) {
std::cerr << "Was a root geo file supplied?" << endl;
exit(1);
};
file.GetListOfKeys()->Print();
file.GetSize();
char geo_tag[100];
strcpy(geo_tag, basename(fileName));
char* ptr = strstr(geo_tag, ".geo.root");
*(ptr) = '\0';
gman = (TGeoManager*) file.Get("FAIRGeom");
if (gman != nullptr) { top = gman->GetTopVolume(); };
if (top == nullptr) top = (TGeoVolume*) file.Get(geo_tag);
if (top == nullptr) top = (TGeoVolume*) file.Get("FAIRGeom");
if (top == nullptr) top = (TGeoVolume*) file.Get("top");
if (top == nullptr) top = (TGeoVolume*) file.Get("TOP");
if (top == nullptr) top = (TGeoVolume*) file.Get("Top");
if (top == nullptr) top = (TGeoVolume*) file.Get("geometryFromGDML");
if (top == nullptr) top = (TGeoVolume *) file.Get(file.GetListOfKeys()->First()->GetName());
if (top == nullptr) {
std::cerr << "No Top Volume found. Is the TGeoManager or Top Volume unusally named" << std::endl;
exit(1);
}
FILE* graph = fopen("geo.gv", "w+");
fprintf(graph, "digraph D {\n");
TObjArray* nodes = top->GetNodes();
nodes->Print();
int i_array[NODE_DEPTH], num_array[NODE_DEPTH], j;
for (int i = 0; i < NODE_DEPTH; i++)
i_array[i] = 0;
for (int i = 0; i < NODE_DEPTH; i++)
num_array[i] = 0;
//TGeoNode* node[NODE_DEPTH];
//TGeoMedium* med;
j = 0;
i_array[0] = 0;
num_array[0] = nodes->GetEntries();
std::cout << "\n" << std::endl;
int k = 0;
while (num_array[0] != 0) {
k++; // Only used for stop.
//if(k==3)break;
if (j == 0) { node[0] = static_cast<TGeoNode*>(nodes->At(i_array[0])); }
else {
node[j] = static_cast<TGeoNode*>(node[j - 1]->GetDaughter(i_array[j]));
};
i_array[j]++; // Update number.
std::cout << "Node: \t";
for (int i = 0; i < j + 1; i++)
printf("%d/%d \t", i_array[i], num_array[i]);
printf("\n");
std::cout << "Name: ";
node[j]->Print();
//std::cout << "Mother: ";
//node[j]->GetMotherVolume()->Print();
std::cout << "Shape: ";
node[j]->GetVolume()->GetShape()->Print();
std::cout << node[j]->GetVolume()->GetShape()->GetName() << std::endl;
std::cout << "Medium: ";
med = node[j]->GetMedium();
med->Print();
med->GetMaterial()->Print();
std::cout << "Position: ";
node[j]->GetMatrix()->Print();
num_array[j + 1] = node[j]->GetNdaughters();
std::cout << "Number of daughters: " << num_array[j + 1];
std::cout << endl << endl << endl;
fprintf(graph, "%s (%s) -> %s (%s) \n",
node[j]->GetMotherVolume()->GetName(),
node[j]->GetMotherVolume()->GetMaterial()->GetName(),
node[j]->GetVolume()->GetName(),
node[j]->GetVolume()->GetMaterial()->GetName()
);
if (num_array[j + 1] > 0) {
j++;
num_array[j + 2] = 0;
};
while (i_array[j] == num_array[j]) {
num_array[j] = 0;
i_array[j] = 0; // Reset the counter before falling back.
j--;
};
if (j >= NODE_DEPTH) {
std::cerr << "Maximum depth of " << NODE_DEPTH << " exceeded. Increase NODE_DEPTH in header of macro," << endl;
exit(NODE_DEPTH);
};
};
fprintf(graph, "}\n");
fclose(graph);
file.Close();
printf("Processed %d nodes.\n", k);
std::cout << "Program Ends" << std::endl;
} // End of macro
FSD geometry v23e created with create_fsdgeo_firstRealistic.C
Position for maximum deflection angle, e.g. E_kin_beam = 5A GeV and 100% magnetic field strength
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (36.378, 0, 1000) cm
FSD rotation around y axis: 0.0375246 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (36.4718, 0, 1002.5) cm
File added
FSD geometry v23f created with create_fsdgeo_firstRealistic.C
Position for NO deflection angle
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (-2.47, 0, 1000) cm
FSD rotation around y axis: 0 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (-2.47, 0, 1002.5) cm
File added
FSD geometry v23g created with create_fsdgeo_firstRealistic.C
Position for Au beam at 3.3A GeV/c and 50% magnetic field strength
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (27.5773, 0, 1000) cm
FSD rotation around y axis: 0.0290599 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (27.6499, 0, 1002.5) cm
File added
FSD geometry v23h created with create_fsdgeo_firstRealistic.C
Position for Au beam at 12A GeV/c and 100% magnetic field strength
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (11.3101, 0, 1000) cm
FSD rotation around y axis: 0.0133518 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (11.3435, 0, 1002.5) cm
File added
FSD geometry v23i created with create_fsdgeo_firstRealistic.C
Position for Au beam at 11 AGeV/c (10 AGeV) and 100% magnetic field strength
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (17.5598, 0, 1000) cm
FSD rotation around y axis: 0.0194604 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (17.6084, 0, 1002.5) cm
File added
FSD geometry v25e created with create_fsdgeo_firstRealistic.C
Position for maximum deflection angle, e.g. E_kin_beam = 5A GeV and 100% magnetic field strength
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (31.6478, 0, 1000) cm
FSD rotation around y axis: 0.0329867 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (31.7302, 0, 1002.5) cm
File added
FSD geometry v25h created with create_fsdgeo_firstRealistic.C
Position for Au beam at 12A GeV/c and 100% magnetic field strength
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (15.1229, 0, 1000) cm
FSD rotation around y axis: 0.0171042 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (15.1657, 0, 1002.5) cm
File added
FSD geometry v25i created with create_fsdgeo_firstRealistic.C
Position for Au beam at 11 AGeV/c (10 AGeV) and 100% magnetic field strength
Number of SMALL modules per quadrant: 5 x 3
Number of MEDIUM modules per quadrant: 4 x 3
Number of LARGE modules per quadrant: 2 x 2
FSD thickness: 5 cm
FSD front plane center coordinates: (16.3936, 0, 1000) cm
FSD rotation around y axis: 0.018326 rad
Hole in the wall has a radii of 10 cm
Parameters of module fsdmodule:
Size: 4 cm x 4 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 8 cm x 8 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
Parameters of module fsdmodule:
Size: 16 cm x 16 cm
Thickness: 5 cm
Channel Depth (ratio of thickness): 0.75
Channel Width: 0.2 cm
Channel distance from the edge of scintillator: 0.5 cm
Channel radius at corners: 1 cm
FSD size is 192 cm x 160 cm x 5 cm
FSD contains 372 modules in total,
small sized modules: 156
medium sized modules: 144
large sized modules: 72
FSD volume center coordinates: (16.4394, 0, 1002.5) cm