helios
helios copied to clipboard
`pyhelios` deflector and detector settings
Problem
1) verticalAngleMin
and verticalAngleMax
verticalAngleMin
and verticalAngleMax
can be accessed in pyhelios
for the scanner like:
# load and build a simulation
simBuilder = pyhelios.SimulationBuilder(
'data/surveys/demo/tls_arbaro_demo.xml',
'assets/',
'output/'
)
simBuilder.setNumThreads(0)
simBuilder.setLasOutput(True)
simBuilder.setZipOutput(True)
simB = simBuilder.build()
scanner = simB.sim.getScanner()
deflector = scanner.getBeamDeflector()
deflector.verticalAngleMin
deflector.verticalAngleMax
However, verticalAngleMin
and verticalAngleMax
can not be specified at the scanner level (i.e., in the scanner XML files) and will therefore be 0.0. As long as we do not have sth like verticalAngleMin_deg
in the scanner XMLs, we should not have them as deflector attributes in pyhelios either imo
2) deflector type not accessible via pyhelios
The deflector type (optics
, i.e., rotating, oscillating, etc.) is not accessible from pyhelios
.
3) maxNOR
not accessible via pyhelios
The maxNOR
is not yet accessible from pyhelios
.
**4) Notebook kernel dies when trying to acces lasScale
There is a property lasScale
available for the detector in pyhelios
, but it crashed when trying to access it.
Solution
- remove
verticalAngleMin
andverticalAngleMax
from pyhelios scanner deflector properties - add
optics
to pyhelios scanner deflector properties:simB.sim.getScanner().getBeamDeflector().optics
(asstr
) - add
maxNOR
to pyhelios scanner detector properties:simB.sim.getScanner().getBeamDetector().maxNOR (as
int`) - fix or remove
lasScale
property of scanner setector:simB.sim.getScanner().getBeamDetector().lasScale
Note:
It's commented out here, but the stuff can be checked in example notebook 2-the-survey.ipynb