An open source Python package for plasma science that is under development

Overview

PlasmaPy

PyPI version Conda version PyPI version License

Matrix Twitter YouTube

GitHub Actions — CI weekly tests Style linters pre-commit.ci status codecov Read the Docs Status Binder

DOI astropy pre-commit Open Source Helpers

PlasmaPy is an open source, community-developed Python 3.7+ package for plasma science. PlasmaPy intends to be for plasma science what Astropy is for astronomy — a collection of functionality commonly used and shared between plasma scientists and researchers globally, running within and leveraging the open source scientific Python ecosystem. The goals of this project are more thoroughly described in this recent video. Current functionality is described in PlasmaPy's online documentation.

We created a guide on contributing to PlasmaPy and have a code of conduct. New contributors are very welcome!

Installation

If you have installed Python, you can install PlasmaPy from pip via

python -m pip install plasmapy

If you have installed conda, then you can also get PlasmaPy from

conda install -c conda-forge plasmapy

To contribute to the package, check out our instructions on installing PlasmaPy from source.

Community

Matrix chat

If you have any questions, the quickest way to get a response is to ask on our Matrix/Gitter channel. Both of these are the same chat channel; Gitter uses a bridge to link the two.

Weekly community meetings

Updated information about our community meetings can be found on plasmapy.org.

As of now, PlasmaPy hosts its weekly online community meeting every Tuesday to cover topics related to code development. This call is hosted on Zoom.

The schedule of our community meetings is on our calendar, and you may access the minutes and agendas. Any last minute changes will be discussed on Matrix. As of November 2021, our meetings are on Tuesdays at 19:00 UTC. Come discuss plasma software with us!

Weekly office hours

PlasmaPy's weekly office hours on Thursdays at 19:00 UTC are an opportunity to chat with active members of the PlasmaPy community about the package and project.

GitHub discussions

We're now trying out GitHub discussions for more varied topics that aren't exactly issues with the existing code base. It's a great place to suggest ideas, bring up discussion topics, and ask questions.

Mailing list

You can subscribe to our low-volume mailing list to receive PlasmaPy newsletters and other announcements.

Suggestion box

We have a suggestion box if you would like to (optionally anonymously) suggest a feature/topic for consideration. These will be reposted on the mailing list or directly in GitHub issues, as appropriate, for further discussion.

License

PlasmaPy is permissively licensed under a 3-clause BSD license with added protections against software patents.

Citing PlasmaPy

An emerging best practice for software citation is to cite the specific version of each software package used in a research project (instead of only citing a journal article, website, or GitHub repository). The citation should include a persistent identifier that uniquely identifies which version of the software was used. We therefore ask that you cite the specific version of PlasmaPy used in your research project. Releases of PlasmaPy are available in the PlasmaPy community on Zenodo, along with many other PlasmaPy resources. Please check our documentation for more detailed citation instructions.

Acknowledgements

Early development on PlasmaPy was supported in part by the U.S. Department of Energy, the Smithsonian Institution, and Google Summer of Code. Ongoing PlasmaPy development is being supported through a collaborative award from the U.S. National Science Foundation's Cyberinfrastructure for Sustained Scientific Innovation program and a NASA Heliophysics Data Environment Enhancements award.

Comments
  • Transport eqs

    Transport eqs

    Addresses #35 Adds coupling parameter for #49 Heavily expands Coulomb logarithm for #154

    Adding a bunch of transport functionality and re-arranging some functions within transport.py. Much of the additions are based off of Gericke, Murillo, and Schlanges (2002) for extending Coulomb logarithm to the dense plasma case where quantum effects become important. To that end, I am also adding a coupling parameter function, which is handy for determining which regime a plasma is in. The coupling parameter itself is quite involve and requires things like: ideal chemical potential, Fermi integral, polylogarithms.

    I am also adding functions for collision frequency and mean free path (which I believe I wrote based off of F. F. Chen's book).

    Transport 
    opened by lemmatum 91
  • Charged Particle Radiography: Detector Stacks

    Charged Particle Radiography: Detector Stacks

    Charged particle radiography detectors are usually comprised of multiple layers of active medium, each of which detects different energies of particles based on their Bragg peak. This PR adds a couple objects that represent these detector stacks and calculates the energies deposited in each layer using stopping power data from NIST.

    This is Step 1 of adding support for detector stacks. Step 2, in a future PR, will create a new synthetic_radiograph function that takes a film stack object and produces a synthetic radiograph in each layer.

    ~~This PR depends on #1486 and should be merged after that PR~~ Done

    Status: ready for review Diagnostics Notebooks 
    opened by pheuer 54
  • Thomson Scattering Module Initial Commit

    Thomson Scattering Module Initial Commit

    This PR adds a file plasmapy/diagnostics/thomson.py which contain a code for simulating Thomson scattering spectra for Maxwellian plasmas in both the collective and non-collective regimes.

    An associated file of tests is also added: plasmapy/diagnostics/tests/test_thomson.py. This file contains two tests that run the program in two regimes (collective and non-collective) and make sure the results match their current output values.

    Diagnostics Needs change log entry 
    opened by pheuer 53
  • Braginskii

    Braginskii

    Working on Issue #35 . I've put in some functionality and done some preliminary checks and tests. Definitely still a work in progress, needs tests and documentation and then is going to need some ruthless refactoring. Oh shoot, and the PEP8 checking-thing is going to have a fit.

    Documentation Formulary Transport 
    opened by samurai688 51
  • Move fundamental collision frequencies to `MaxwellianCollisionFrequencies`

    Move fundamental collision frequencies to `MaxwellianCollisionFrequencies`

    Resolves #1699

    This pull request moves plasmapy.formulary.collisons.fundamental_ion_collision_freq and plasmapy.formulary.collisons.fundamental_electron_collision_freq to CollisionFrequencies.

    • [x] I have added a changelog entry for this pull request.
    • [x] If adding new functionality, I have added tests and docstrings.
    • [x] I have fixed any newly failing tests.
    Formulary Utilities Breaking 
    opened by JaydenR2305 45
  • Issue #759 Serializing and Deserializing particles

    Issue #759 Serializing and Deserializing particles

    Related to Issue #759 Extension on to functionality introduced in PR #833

    This introduces the from_json method for the Particle, CustomParticle, and DimensionlessParticle classes that converts from a JSON representation to the appropriate particle object.

    • [x] I have added a changelog entry for this pull request (please see changelog/README.rst for instructions, and if you need help with picking the PR type, ask!)
    • [x] If adding new functionality, I have added (passing) tests and docstrings. (Tests pop up at the bottom, in the checks box).
    • [x] I have fixed any new failing tests (if you're unsure why they're failing, ask!).

    Suggestions and advice is appreciated :)

    Thank you!

    Particles 
    opened by DarkAEther 44
  • Fitting Thomson Scattering Spectra

    Fitting Thomson Scattering Spectra

    The use of Thomson scattering as a diagnostic depends on the ability to extract plasma parameters (eg. density, temperature, flow velocity) from scattered light spectra. One of the design uses for the diagnostics.thomson.spectral_density function would be as part of a fit function to curve fit experimental data to extract these parameters. As such, I've received requests to develop a function for fitting TS data.

    This function provides a lmfit.Model function (thomson.thomson_model) with which the user can apply any of the lmfit fitting algorithms and other features to Thomson scattering data. The example notebook exhibits in detail how this is done.

    ** EDIT **

    This PR was starting to get big, so I've restricted its scope thus:

    This PR

    • Basic Thomson fitting lmfit model function.
    • Changes to thomson.spectral_density necessary to make the fitting work.
    • One example notebook that demonstrates fitting
    • Minor easy speed improvements.

    Future PRs

    • Optimize thomson.spectral_density and sub-functions to make the fitting algorithm fast enough for research (#1085)
    • Create a function that estimates the errors in a Thomson fit (or maybe more generally in an lmfit result?). PR to come
    Diagnostics Notebooks Breaking 
    opened by pheuer 40
  • Implement a dispersion relation solver

    Implement a dispersion relation solver

    When dealing with plasma waves, it would be helpful to have a dispersion relation solver.

    This was recommended by John Raymond. I believe Carl Sovinec wrote a code that this several years ago, though not in python.

    Formulary Effort: very high Needs subject matter expert 
    opened by namurphy 38
  • Grids

    Grids

    This PR creates a new sets of objects within the 'plasmapy.plasma' package:

    Child classes of 'grids.AbstractGrid' represent 3D grids of positions in various coordinate systems. Further subclasses can provide special types of grids - for example 'IrregularCartesianGrid' is a non-uniformly spaced Cartesian grid for testing post-processing scripts meant for irregularly gridded simulation outputs.

    This PR originated as part of the proton radiography module (PR #895 ) and must be merged before that module can be finalized. In the meantime, that PR serves as an example of one usecase for these objects. The same grid objects could potentially also be useful input forms for simulations, etc.

    • [x] Add methods for calculating volume-averaging values over the grid at a position (at least for CartesianGrid with uniform spacing...)
    Plasma class 
    opened by pheuer 37
  • Fix Volume Weighted Interpolator in CartesianGrid class (grids.py)

    Fix Volume Weighted Interpolator in CartesianGrid class (grids.py)

    I realized the current volume weighted interpolator in grids.CartesianGrid was incorrect. This PR fixes that.

    Here's an example of the old interpolator: the linear interpolation between data points is backwards! image

    And here it is with the corrected algorithm image

    I haven't yet found a good implementation of this algorithm to copy, so my code probably isn't the most efficient. The diagram below shows the idea in 2D

    image

    The particle position "p" is surrounded by a box of size dx * dy. The four surrounding grid points are similarly surrounded. The weight for the field from each grid point is then the area (volume in 3D) of the overlap between the particle box and the box for each grid point.

    Plasma class Diagnostics Breaking 
    opened by pheuer 36
  • Proton Radiography Module

    Proton Radiography Module

    Proton radiography is an increasingly common diagnostic technique used to interrogate the electric and magnetic fields inside high energy density plasmas. The plasma of interest is positioned between a bright pulsed source of protons and a detector plane. Electric and magnetic fields in the plasma deflect the protons, producing patterns on the detector. Since this represents a non-linear and line-integrated measurement of the fields, the interpretation of these "proton radiographs" is a complicated business. The goal of this module is to provide tools for planning these experiments and analyzing their results.

    Eventually, this new module should contain two type different types of functions:

    1. Functions that construct synthetic proton radiographs given simulated or calculated fields, either for planning an experiment or analyzing the results of one.

    2. Functions that use assumptions about symmetries etc. to "invert" experimental radiographs to recover the magnitudes of the fields that created them.

    The SyntheticProtonRadiograph object contained in this initial PR belongs to the first category. The SyntheticProtonRadiograph object is initialized with a plasmapy.plasma.grid.AbstractGrid subclass containing electric and magnetic fields, as well as the locations of the proton source and detector. A particle tracing algorithm is then run to determine the trajectories of the protons, and the resulting positions in the detector plane are used to create a synthetic radiograph (2D histogram).

    This function can currently support field data on either regular or non-uniform (although the former is much faster) to support complicated simulation meshes. Time steps are computed in an adaptive manner based on both the fields currently experienced by the particles and the grid resolution. Source and detector positions can be specified anywhere in Cartesian, cylindrical, or spherical coordinates systems to re-create geometric effects.

    The example fields generated within the function for testing and demonstration are intentionally simple, but this technique can re-create complicated structures, such as this off-axis radiograph of a cylindrical, radial electric field:

    SimPrad

    Diagnostics 
    opened by pheuer 36
  • [DRAFT] Add Particle scattering and stopping to the charged particle radiography class

    [DRAFT] Add Particle scattering and stopping to the charged particle radiography class

    This PR adds particle scattering and stopping in dense matter to the charged particle radiography Tracker class. This capability is important for charged particle radiography in dense plasmas where these effects significantly affect the radiograph.

    Builds on #1799, so merge that first.

    Note: should compare this implementation of scattering + stopping to the MPRAD code described here: https://aip.scitation.org/doi/full/10.1063/1.5123392

    Replaces a previous PR (#1802) because I needed to completely refactor after #1799

    opened by pheuer 3
  • Change signature of `CustomParticle` and improve |ParticleList| compatibility with |Quantity| objects

    Change signature of `CustomParticle` and improve |ParticleList| compatibility with |Quantity| objects

    This PR makes the following changes:

    • Changed the signature of CustomParticle to CustomParticle(*quantities, ...), where quantities can include Quantity objects of physical type mass or charge, or (as its last item) the symbol. See #1873 for some motivation and follow-up discussion. This is a follow-up attempt to do more or less the same thing as #1364, which didn't get merged. Closes #1873.
    • Fixed a new edge case in the particle factory function by assuming that a string passed as the first positional argument to it is meant for Particle and not as a symbol for CustomParticle.
    • Made ParticleList.__init__ accept an iterable containing Quantity objects. Closes #1872.
    • Made ParticleList methods accept Quantity objects of mass or electrical charge.

    The changes to CustomParticle made the changes to ParticleList pretty straightforward to implement, so I addressed them here.

    This PR should make it easier to address #1869 and #1871.

    Particles Status: in progress 
    opened by namurphy 3
  • Improve flexibility of `Quantity` arguments provided  to `CustomParticle`

    Improve flexibility of `Quantity` arguments provided to `CustomParticle`

    Feature description

    I'd like it to be possible to put the mass and charge of a CustomParticle in either order as positional arguments. For example, I would like to be able to do:

    >>> CustomParticle(1 * u.C)
    >>> CustomParticle(1 * u.kg)
    >>> CustomParticle(1 * u.kg, 1 * u.C)
    >>> CustomParticle(1 * u.C, 1 * u.kg)
    

    Motivation

    While working on #1871 and #1872, I've been having to do a bunch of special handling for when the input to CustomParticle is a charge or a mass, including when writing tests. Code downstream of CustomParticle will be cleaner if we have this flexibility.

    Implementation strategy

    Right now the signature of CustomParticle.__init__ is:

    def __init__(self, mass: u.kg = None, charge: (u.C, Real) = None, symbol=None):
    

    I'd like to be able to do CustomParticle(1e-27 * u.kg) or CustomParticle(1e-18 * u.C), which would correspond to a signature like:

    def __init__(self, *quantities, symbol=None):
    

    This change would lead to breaking changes, so we might want to retain mass and charge as keyword arguments, even if we deprecate them. We could perhaps even make it so that if a string is provided in quantities, it would get interpreted as the symbol (though quantities might not be the best name in that case).

    Additional context

    This is inspired by #1364 and discussed further in #1872. This should be addressed after #1866 is merged since they're both working on the same section of code.

    Feature request 
    opened by namurphy 3
  • Make `ParticleList` compatible with `Quantity` objects with physical type of mass or electrical charge

    Make `ParticleList` compatible with `Quantity` objects with physical type of mass or electrical charge

    Feature description

    Right now if we try to create a ParticleList using a Quantity array, we get an InvalidParticleError:

    >>> import astropy.units as u
    >>> ParticleList([5, 6] * u.kg)
    plasmapy.particles.exceptions.InvalidParticleError: The object 5.0 kg supplied to ParticleList is not a particle-like object.
    

    What I'd like to happen is for a CustomParticle to be created based on each element of the Quantity array, i.e.:

    >>> ParticleList([5, 6] * u.kg)
    ParticleList(['CustomParticle(mass=5.0 kg, charge=nan C)', 'CustomParticle(mass=6.0 kg, charge=nan C)'])
    

    Motivation

    As part of the refactoring of particle_input in #1057, we're making it so that a Quantity of physical type mass or electrical charge will be used to construct a CustomParticle instance. I discovered in #1871 that ParticleList works for Quantity non-arrays but not for Quantity arrays. The code downstream of ParticleList will be cleaner and have fewer special cases to handle if ParticleList can handle Quantity iterables of these physical types.

    Implementation strategy

    We'll need to make these changes to not only ParticleList.__init__, but also the append, extend, and insert methods.

    There's some repeated code in these methods, so it might be worth creating a private function that does the particleification or particlizing.

    Additional context

    Implementing this would probably be cleaner by allowing mass and charge as positional arguments in either order in CustomParticle, kind of like what I attempted in #1364, but maybe having a signature like CustomParticle(*quantities, mass: Optional[u.kg] = None, charge=Optional[u.C] = None, symbol: Optional[str]=None).

    Feature request 
    opened by namurphy 2
  • Update relativistic functionality

    Update relativistic functionality

    Description

    • Applied particle_input to relativistic_energy and RelativisticBody
    • Updated docstrings
    • Changed the parameters provided to relativistic_energy:
      • Changed m to particle
      • Changed v to V This would be a breaking change; however, when provided as positional arguments, the change would be transparent. In particular, particle_input would create a CustomParticle from a Quantity for mass.

    Motivation and context

    The goals here are

    • To further implement particle_input in plasmapy.formulary for more compatibility with ParticleList and CustomParticle objects.
    • To improve consistency with function signatures. For example, we mostly use V instead of v to describe velocity, and it helps to be consistent.

    I'm wondering if it would be worth having a deprecation warning for this and still accept the old parameters as keywords, but relativistic_energy might not be widely used enough to warrant the extra complexity this would entail.

    Related issues

    This is approximately 4% of #341!

    Formulary Status: on hold 
    opened by namurphy 3
  • Create a decorator to track relevant citations

    Create a decorator to track relevant citations

    Feature description

    A decorator that attaches references (as BibTex entries?) to objects in PlasmaPy. A helper function would then exist that, given a list of functions, would assemble a list of references (recursively) for that object.

    For example, if the user's code relies on X, but X relies on Y and Z, then the reference manager should return the references associated with all three, perhaps saved as output to a text file that can be directly copied in to Bibtex.

    The helper function could also (maybe by setting a keyword?) include citations for other packages used within the PlasmaPy functionality (e.g. scipy, numpy, etc.)

    Inspired by: https://github.com/duecredit/duecredit

    Motivation

    • Provides a natural place to record relevant references in the code, and consequently adding and updating these references would be covered by the existing code review process.
    • Encourage citation of software!

    Implementation strategy

    See feature description

    Additional context

    No response

    Feature request 
    opened by pheuer 3
Releases(v0.9.1)
  • v0.9.1(Nov 15, 2022)

  • v0.9.0(Nov 11, 2022)

    You can find the full changelog for this release at https://github.com/PlasmaPy/PlasmaPy/blob/v0.9.x/docs/whatsnew/0.9.0.rst .

    New Contributors

    • @MKastek made their first contribution in https://github.com/PlasmaPy/PlasmaPy/pull/1556
    • @JaydenR2305 made their first contribution in https://github.com/PlasmaPy/PlasmaPy/pull/1664
    • @TrestanSimon made their first contribution in https://github.com/PlasmaPy/PlasmaPy/pull/1681
    • @elliotwutingfeng made their first contribution in https://github.com/PlasmaPy/PlasmaPy/pull/1764
    Source code(tar.gz)
    Source code(zip)
  • v0.8.1(Jul 5, 2022)

    Plasmapy v0.8.1 (2022-07-05)

    This release of PlasmaPy includes 158 pull requests closing 60 issues by 37 people, of which 31 are new contributors.

    The people who have contributed to the code for this release are:

    • Afzal Rao*
    • Alexis Jeandet*
    • Andrew Sheng*
    • Anna Lanteri*
    • Chris Hoang*
    • Christopher Arran*
    • Chun Hei Yip*
    • Dominik Stańczak
    • Elliot Johnson*
    • Erik Everson
    • flaixman*
    • Haman Bagherianlemraski*
    • Isaias McHardy*
    • itsraashi*
    • James Kent*
    • Joao Victor Martinelli*
    • Leo Murphy*
    • Luciano Silvestri*
    • Mahima Pannala*
    • Marco Gorelli*
    • Nick Murphy
    • Nicolas Lequette
    • Nikita Smirnov*
    • Peter Heuer
    • Pey Lian Lim*
    • Rajagopalan Gangadharan*
    • Raymon Skjørten Hansen*
    • Reynaldo Rojas Zelaya*
    • Riley Britten*
    • sandshrew118*
    • seanjunheng2*
    • Shane Brown*
    • Suzanne Nie*
    • Terrance Takho Lee*
    • Tien Vo*
    • Tiger Du
    • Tomás Stinson*

    An asterisk indicates that this release contains their first contribution to PlasmaPy.

    The changelog for this release can be found at our docs page.

    Source code(tar.gz)
    Source code(zip)
  • v0.7.0(Nov 18, 2021)

    Plasmapy v0.7.0 (2021-11-18)

    This release of PlasmaPy contains 127 commits in 73 merged pull requests closing 37 issues from 19 people, 14 of which are first-time contributors to PlasmaPy.

    • 127 commits have been added since 0.6
    • 37 issues have been closed since 0.6
    • 73 pull requests have been merged since 0.6
    • 19 people have contributed since 0.6
    • 14 of which are new contributors

    The people who have contributed to the code for this release are:

    • Alf Köhn-Seemann *
    • Andrew *
    • Armando Salcido *
    • Dominik Stańczak
    • FinMacDov *
    • Marco Gorelli *
    • Nick Murphy
    • Nicolas Lequette *
    • Peter Heuer
    • Quettle *
    • RAJAGOPALAN-GANGADHARAN *
    • Sjbrownian *
    • Tiger Du
    • Tomás Stinson *
    • bryancfoo *
    • dependabot[bot] *
    • haman80 *
    • pre-commit-ci[bot] *
    • rocco8773

    Where a * indicates that this release contains their first contribution to PlasmaPy.

    The changelog for this release can be found at our docs page.

    Source code(tar.gz)
    Source code(zip)
    plasmapy-0.7.0-py3-none-any.whl(8.25 MB)
    plasmapy-0.7.0.tar.gz(10.77 MB)
Owner
PlasmaPy
PlasmaPy will be a community developed package for plasma physics
PlasmaPy
scAR (single-cell Ambient Remover) is a package for data denoising in single-cell omics.

scAR scAR (single cell Ambient Remover) is a package for denoising multiple single cell omics data. It can be used for multiple tasks, such as, sgRNA

19 Nov 28, 2022
GAN example for Keras. Cuz MNIST is too small and there should be something more realistic.

Keras-GAN-Animeface-Character GAN example for Keras. Cuz MNIST is too small and there should an example on something more realistic. Some results Trai

160 Sep 20, 2022
Automates Machine Learning Pipeline with Feature Engineering and Hyper-Parameters Tuning :rocket:

MLJAR Automated Machine Learning Documentation: https://supervised.mljar.com/ Source Code: https://github.com/mljar/mljar-supervised Table of Contents

MLJAR 2.4k Dec 31, 2022
This repository is the offical Pytorch implementation of ContextPose: Context Modeling in 3D Human Pose Estimation: A Unified Perspective (CVPR 2021).

Context Modeling in 3D Human Pose Estimation: A Unified Perspective (CVPR 2021) Introduction This repository is the offical Pytorch implementation of

37 Nov 21, 2022
Code for "Steerable Pyramid Transform Enables Robust Left Ventricle Quantification"

Code for "Steerable Pyramid Transform Enables Robust Left Ventricle Quantification" This is an end-to-end framework for accurate and robust left ventr

2 Jul 09, 2022
QuALITY: Question Answering with Long Input Texts, Yes!

QuALITY: Question Answering with Long Input Texts, Yes! Authors: Richard Yuanzhe Pang,* Alicia Parrish,* Nitish Joshi,* Nikita Nangia, Jason Phang, An

ML² AT CILVR 61 Jan 02, 2023
GANSketchingJittor - Implementation of Sketch Your Own GAN in Jittor

GANSketching in Jittor Implementation of (Sketch Your Own GAN) in Jittor(计图). Or

Bernard Tan 10 Jul 02, 2022
Code for "OctField: Hierarchical Implicit Functions for 3D Modeling (NeurIPS 2021)"

OctField(Jittor): Hierarchical Implicit Functions for 3D Modeling Introduction This repository is code release for OctField: Hierarchical Implicit Fun

55 Dec 08, 2022
BBB streaming without Xorg and Pulseaudio and Chromium and other nonsense (heavily WIP)

BBB Streamer NG? Makes a conference like this... ...streamable like this! I also recorded a small video showing the basic features: https://www.youtub

Lukas Schauer 60 Oct 21, 2022
OMNIVORE is a single vision model for many different visual modalities

Omnivore: A Single Model for Many Visual Modalities [paper][website] OMNIVORE is a single vision model for many different visual modalities. It learns

Meta Research 451 Dec 27, 2022
Mapping Conditional Distributions for Domain Adaptation Under Generalized Target Shift

This repository contains the official code of OSTAR in "Mapping Conditional Distributions for Domain Adaptation Under Generalized Target Shift" (ICLR 2022).

Matthieu Kirchmeyer 5 Dec 06, 2022
IDRLnet, a Python toolbox for modeling and solving problems through Physics-Informed Neural Network (PINN) systematically.

IDRLnet IDRLnet is a machine learning library on top of PyTorch. Use IDRLnet if you need a machine learning library that solves both forward and inver

IDRL 105 Dec 17, 2022
Spatial Transformer Nets in TensorFlow/ TensorLayer

MOVED TO HERE Spatial Transformer Networks Spatial Transformer Networks (STN) is a dynamic mechanism that produces transformations of input images (or

Hao 36 Nov 23, 2022
PCGNN - Procedural Content Generation with NEAT and Novelty

PCGNN - Procedural Content Generation with NEAT and Novelty Generation Approach — Metrics — Paper — Poster — Examples PCGNN - Procedural Content Gener

Michael Beukman 8 Dec 10, 2022
Exploiting a Zoo of Checkpoints for Unseen Tasks

Exploiting a Zoo of Checkpoints for Unseen Tasks This repo includes code to reproduce all results in the above Neurips paper, authored by Jiaji Huang,

Baidu Research 8 Sep 06, 2022
JudeasRx - graphical app for doing personalized causal medicine using the methods invented by Judea Pearl et al.

JudeasRX Instructions Read the references given in the Theory and Notation section below Fire up the Jupyter Notebook judeas-rx.ipynb The notebook dra

Robert R. Tucci 19 Nov 07, 2022
Memory-Augmented Model Predictive Control

Memory-Augmented Model Predictive Control This repository hosts the source code for the journal article "Composing MPC with LQR and Neural Networks fo

Fangyu Wu 1 Jun 19, 2022
Datasets, Transforms and Models specific to Computer Vision

torchvision The torchvision package consists of popular datasets, model architectures, and common image transformations for computer vision. Installat

13.1k Jan 02, 2023
The comma.ai Calibration Challenge!

Welcome to the comma.ai Calibration Challenge! Your goal is to predict the direction of travel (in camera frame) from provided dashcam video. This rep

comma.ai 697 Jan 05, 2023
DRIFT is a tool for Diachronic Analysis of Scientific Literature.

About DRIFT is a tool for Diachronic Analysis of Scientific Literature. The application offers user-friendly and customizable utilities for two modes:

Rajaswa Patil 108 Dec 12, 2022