コード例 #1
0
import subprocess
import sys

# Cannot conveniently catch linker errors, so we launch a suprocess to
# try importing and see if it works in order to provide a useful error message
try:
    subprocess.check_call(
        [sys.executable, "-c", "from acts import ActsPythonBindingsGeant4"])
except subprocess.CalledProcessError as e:
    print(
        "Error encountered importing DD4hep. Likely you need to set LD_LIBRARY_PATH."
    )
    sys.exit(1)

from acts._adapter import _patch_config
from acts import ActsPythonBindingsGeant4

_patch_config(ActsPythonBindingsGeant4)

from acts.ActsPythonBindingsGeant4 import *
コード例 #2
0
import subprocess
import sys

# Cannot conveniently catch linker errors, so we launch a suprocess to
# try importing and see if it works in order to provide a useful error message
try:
    subprocess.check_call(
        [sys.executable, "-c", "from acts import ActsPythonBindingsDD4hep"])
except subprocess.CalledProcessError as e:
    print(
        "Error encountered importing DD4hep. Likely you need to set LD_LIBRARY_PATH."
    )
    sys.exit(1)

from acts._adapter import _patch_config, _detector_create
from acts import ActsPythonBindingsDD4hep

_patch_config(ActsPythonBindingsDD4hep)
ActsPythonBindingsDD4hep.DD4hepDetector.create = _detector_create(
    ActsPythonBindingsDD4hep.DD4hepDetector,
    ActsPythonBindingsDD4hep.DD4hepGeometryService.Config,
)

from acts.ActsPythonBindingsDD4hep import *
コード例 #3
0
ファイル: hepmc3.py プロジェクト: hrzhao76/acts
from acts._adapter import _patch_config
from acts import ActsPythonBindings

_patch_config(ActsPythonBindings._examples._hepmc3)

from acts.ActsPythonBindings._examples._hepmc3 import *
コード例 #4
0
ファイル: hepmc3.py プロジェクト: hrzhao76/acts
from acts._adapter import _patch_config
from acts.ActsPythonBindingsGeant4 import hepmc3 as _hepmc3

_patch_config(_hepmc3)

from acts.ActsPythonBindingsGeant4.hepmc3 import *
コード例 #5
0
for prefix in ("Eigen", "Atlas", "StraightLine"):
    _propagators.append(getattr(ActsPythonBindings._propagator, f"{prefix}Propagator"))
    _concrete_propagators.append(
        getattr(ActsPythonBindings._propagator, f"{prefix}ConcretePropagator")
    )


def ConcretePropagator(propagator):
    for prop, prop_if in zip(_propagators, _concrete_propagators):
        if isinstance(propagator, prop):
            return prop_if(propagator)

    raise TypeError(f"Unknown propagator {type(propagator).__name__}")


_patch_config(ActsPythonBindings._examples)

_patch_detectors(ActsPythonBindings._examples)


def _makeLayerTriplet(*args, **kwargs):

    if len(args) == 1:
        _type = type(args[0])
        negative = central = positive = args[0]
    else:
        negative = kwargs.get("negative")
        central = kwargs.get("central")
        positive = kwargs.get("positive")
        types = []
        if negative is not None:
コード例 #6
0
import subprocess
import sys


# Cannot conveniently catch linker errors, so we launch a suprocess to
# try importing and see if it works in order to provide a useful error message
try:
    subprocess.check_call(
        [sys.executable, "-c", "from acts import ActsPythonBindingsDDG4"]
    )
except subprocess.CalledProcessError as e:
    print("Error encountered importing DD4hep. Likely you need to set LD_LIBRARY_PATH.")
    sys.exit(1)

from acts._adapter import _patch_config
from acts import ActsPythonBindingsDDG4

_patch_config(ActsPythonBindingsDDG4)

from acts.ActsPythonBindingsDDG4 import *