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
Semi-supervised Transfer Learning for Image Rain Removal. In CVPR 2019.

Semi-supervised Transfer Learning for Image Rain Removal This package contains the Python implementation of "Semi-supervised Transfer Learning for Ima

Wei Wei 59 Dec 26, 2022
Pytorch implementation for Semantic Segmentation/Scene Parsing on MIT ADE20K dataset

Semantic Segmentation on MIT ADE20K dataset in PyTorch This is a PyTorch implementation of semantic segmentation models on MIT ADE20K scene parsing da

MIT CSAIL Computer Vision 4.5k Jan 08, 2023
TransMorph: Transformer for Medical Image Registration

TransMorph: Transformer for Medical Image Registration keywords: Vision Transformer, Swin Transformer, convolutional neural networks, image registrati

Junyu Chen 180 Jan 07, 2023
PyTorch implementation for Stochastic Fine-grained Labeling of Multi-state Sign Glosses for Continuous Sign Language Recognition.

Stochastic CSLR This is the PyTorch implementation for the ECCV 2020 paper: Stochastic Fine-grained Labeling of Multi-state Sign Glosses for Continuou

Zhe Niu 28 Dec 19, 2022
✂️ EyeLipCropper is a Python tool to crop eyes and mouth ROIs of the given video.

EyeLipCropper EyeLipCropper is a Python tool to crop eyes and mouth ROIs of the given video. The whole process consists of three parts: frame extracti

Zi-Han Liu 9 Oct 25, 2022
Out-of-distribution detection using the pNML regret. NeurIPS2021

OOD Detection Load conda environment conda env create -f environment.yml or install requirements: while read requirement; do conda install --yes $requ

Koby Bibas 23 Dec 02, 2022
Intrusion Test Tool with Python

P3ntsT00L Uma ferramenta escrita em Python, feita para Teste de intrusão. Requisitos ter o python 3.9.8 instalado em sua máquina. ter a git instalada

josh washington 2 Dec 27, 2021
Lucid Sonic Dreams syncs GAN-generated visuals to music.

Lucid Sonic Dreams Lucid Sonic Dreams syncs GAN-generated visuals to music. By default, it uses NVLabs StyleGAN2, with pre-trained models lifted from

731 Jan 02, 2023
Implement the Pareto Optimizer and pcgrad to make a self-adaptive loss for multi-task

multi-task_losses_optimizer Implement the Pareto Optimizer and pcgrad to make a self-adaptive loss for multi-task 已经实验过了,不会有cuda out of memory情况 ##Par

14 Dec 25, 2022
Implementation of U-Net and SegNet for building segmentation

Specialized project Created by Katrine Nguyen and Martin Wangen-Eriksen as a part of our specialized project at Norwegian University of Science and Te

Martin.w-e 3 Dec 07, 2022
Combinatorially Hard Games where the levels are procedurally generated

puzzlegen Implementation of two procedurally simulated environments with gym interfaces. IceSlider: the agent needs to reach and stop on the pink squa

Autonomous Learning Group 3 Jun 26, 2022
Code and description for my BSc Project, September 2021

BSc-Project Disclaimer: This repo consists of only the additional python scripts necessary to run the agent. To run the project on your own personal d

Matin Tavakoli 20 Jul 19, 2022
A Simple Long-Tailed Rocognition Baseline via Vision-Language Model

BALLAD This is the official code repository for A Simple Long-Tailed Rocognition Baseline via Vision-Language Model. Requirements Python3 Pytorch(1.7.

Teli Ma 4 Jan 20, 2022
Dialect classification

Dialect-Classification This repository presents the data that was used in a talk at ICKL-5 (5th International Conference on Kurdish Linguistics) at th

Kurdish-BLARK 0 Nov 12, 2021
Codes and models for the paper "Learning Unknown from Correlations: Graph Neural Network for Inter-novel-protein Interaction Prediction".

GNN_PPI Codes and models for the paper "Learning Unknown from Correlations: Graph Neural Network for Inter-novel-protein Interaction Prediction". Lear

Ursa Zrimsek 2 Dec 14, 2022
Using NumPy to solve the equations of fluid mechanics together with Finite Differences, explicit time stepping and Chorin's Projection methods

Computational Fluid Dynamics in Python Using NumPy to solve the equations of fluid mechanics 🌊 🌊 🌊 together with Finite Differences, explicit time

Felix Köhler 4 Nov 12, 2022
Datasets and pretrained Models for StyleGAN3 ...

Datasets and pretrained Models for StyleGAN3 ... Dear arfiticial friend, this is a collection of artistic datasets and models that we have put togethe

lucid layers 34 Oct 06, 2022
MarcoPolo is a clustering-free approach to the exploration of bimodally expressed genes along with group information in single-cell RNA-seq data

MarcoPolo is a method to discover differentially expressed genes in single-cell RNA-seq data without depending on prior clustering Overview MarcoPolo

Chanwoo Kim 13 Dec 18, 2022
catch-22: CAnonical Time-series CHaracteristics

catch22 - CAnonical Time-series CHaracteristics About catch22 is a collection of 22 time-series features coded in C that can be run from Python, R, Ma

Carl H Lubba 229 Oct 21, 2022
QAT(quantize aware training) for classification with MQBench

MQBench Quantization Aware Training with PyTorch I am using MQBench(Model Quantization Benchmark)(http://mqbench.tech/) to quantize the model for depl

Ling Zhang 29 Nov 18, 2022