Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

longitudinal-tomography

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

longitudinal-tomography

A python library for longitudinal particle beam tomography

  • 3.4.3
  • PyPI
  • Socket score

Maintainers
1

.. image:: https://gitlab.cern.ch/longitudinaltomography/tomographyv3/badges/master/pipeline.svg .. image:: https://gitlab.cern.ch/longitudinaltomography/tomographyv3/badges/master/coverage.svg :target: https://gitlab.cern.ch/anlu/longitudinaltomography/-/jobs/artifacts/master/download?job=pages

Copyright 2020 CERN. This software is distributed under the terms of the GNU General Public Licence version 3 (GPL Version 3), copied verbatim in the file LICENCE.txt. In applying this licence, CERN does not waive the privileges and immunities granted to it by virtue of its status as an Intergovernmental Organization or submit itself to any jurisdiction.

INSTALLATION

The computationally intensive or time-critical parts of the library is written in C++ and python bindings are provided using pybind11 <https://pybind11.readthedocs.io/en/stable/>_. The installation and usage of the library is the same for all operating systems, but different dependencies are needed for different operating systems.

Prerequisites

""""" Linux """""

You need a C++ compiler like g++ installed. This is not required if installing a prebuilt package from acc-py or pypi.

""""""" Windows """""""

On Windows computers MSVC >= 14.0 <https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=BuildTools>_ with the Windows 10 SDK is required.

In MinGW and WSL environments the standard g++ compiler works out of the box.

""""" MacOS """""

No offical tests have been done on MacOS, but presumably g++, clang/llvm should work.

Install

The Longitudinal Tomography package is available in prebuilt wheels for Python 3.6-3.9 on CERN Acc-Py and pypy.org as longitudinal-tomography. The package can thus easily be installed on a Linux machine using

::

pip install longitudinal-tomography

The package can be installed on a MacOS or Windows machine in the same manner, but the C++ extension will be built on install.

""""""""""""""""""""" Other ways to install """""""""""""""""""""

Clone the repository and run ::

pip install .

The C++ extension will be built on install.

For development environments where it's preferable to compile the C++ extension inplace, it's possible to run the command ::

pip install -e .

which will compile the C++ extension using the available compiler (decided by setuptools).

""""""""""""" Documentation """""""""""""

This development is based on the well tested and widely used FORTRAN95 code, documented and available here: http://tomograp.web.cern.ch/tomograp/ Details on the algorithms in both codes, and the differences between them, can be found here: https://cdsweb.cern.ch/record/2750116?ln=ka

Parallelization using OpenMP

The C++ extension is accelerated by OpenMP parallel for loops. It is possible to limit the number of launched threads by setting it in the extension, by ::

from longitudinal_tomography.cpp_routines import libtomo
libtomo.set_num_threads([num_threads])

which will set the maximum number of used threads to :code:[num_threads].

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc