Skip to content

PyLops/pylops-mpi

 
 

Repository files navigation


<!DOCTYPE html>


<html lang="en" data-content_root="./" >

  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    
        <title>Contributing &#8212; PyLops-MPI</title>
    

  
  
  
  <script data-cfasync="false">
    document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
    document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
  </script>
  <!--
    this give us a css class that will be invisible only if js is disabled
  -->
  <noscript>
    <style>
      .pst-js-only { display: none !important; }

    </style>
  </noscript>
  
  <!-- Loaded before other Sphinx assets -->
  <link href="_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
<link href="_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />

    <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=b86133f3" />
    <link rel="stylesheet" type="text/css" href="_static/plot_directive.css" />
    <link rel="stylesheet" type="text/css" href="_static/style.css?v=e5b2244c" />
    <link rel="stylesheet" type="text/css" href="_static/sg_gallery.css?v=d2d258e8" />
    <link rel="stylesheet" type="text/css" href="_static/sg_gallery-binder.css?v=f4aeca0c" />
    <link rel="stylesheet" type="text/css" href="_static/sg_gallery-dataframe.css?v=2082cf3c" />
    <link rel="stylesheet" type="text/css" href="_static/sg_gallery-rendered-html.css?v=1277b6f3" />
    <link rel="stylesheet" type="text/css" href="_static/css/custom.css?v=e45f66c9" />
  
  <!-- So that users can add custom icons -->
  <script src="_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
  <!-- Pre-loaded scripts that we'll load fully later -->
  <link rel="preload" as="script" href="_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
<link rel="preload" as="script" href="_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />

    <script src="_static/documentation_options.js?v=5929fcd5"></script>
    <script src="_static/doctools.js?v=9bcbadda"></script>
    <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
    <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
    <script>DOCUMENTATION_OPTIONS.pagename = 'contributing';</script>
    <link rel="icon" href="_static/favicon.ico"/>
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="Changelog" href="changelog.html" />
    <link rel="prev" title="Implementing new operators" href="adding.html" />
    
    <script src="_static/require.js"></script>

  </head>
  
  
  <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">

  
  
  <div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
  
  <div id="pst-scroll-pixel-helper"></div>
  
  <button type="button" class="btn rounded-pill" id="pst-back-to-top">
    <i class="fa-solid fa-arrow-up"></i>Back to top</button>

  
  <dialog id="pst-search-dialog">
    
<form class="bd-search d-flex align-items-center"
      action="search.html"
      method="get">
  <i class="fa-solid fa-magnifying-glass"></i>
  <input type="search"
         class="form-control"
         name="q"
         placeholder="Search the docs ..."
         aria-label="Search the docs ..."
         autocomplete="off"
         autocorrect="off"
         autocapitalize="off"
         spellcheck="false"/>
  <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
</form>
  </dialog>

  <div class="pst-async-banner-revealer d-none">
  <aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
</div>

  
    <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
<div class="bd-header__inner bd-page-width">
  <button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
    <span class="fa-solid fa-bars"></span>
  </button>
  
  
  <div class="col-lg-3 navbar-header-items__start">
    
      <div class="navbar-item">

  
    
  

<a class="navbar-brand logo" href="index.html">
  
  
  
  
  
    
    
      
    
    
    <img src="_static/pylopsmpi_b.png" class="logo__image only-light" alt="PyLops-MPI - Home"/>
    <img src="_static/pylopsmpi.png" class="logo__image only-dark pst-js-only" alt="PyLops-MPI - Home"/>
  
  
</a></div>
    
  </div>
  
  <div class="col-lg-9 navbar-header-items">
    
    <div class="me-auto navbar-header-items__center">
      
        <div class="navbar-item">
<nav>
  <ul class="bd-navbar-elements navbar-nav">
    
<li class="nav-item ">
  <a class="nav-link nav-internal" href="index.html">
    Overview
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="installation.html">
    Installation
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="gpu.html">
    GPU Support
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="benchmarking.html">
    Benchmarking
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="api/index.html">
    PyLops MPI API
  </a>
</li>

            <li class="nav-item dropdown">
                <button class="btn dropdown-toggle nav-item" type="button"
                data-bs-toggle="dropdown" aria-expanded="false"
                aria-controls="pst-nav-more-links">
                    More
                </button>
                <ul id="pst-nav-more-links" class="dropdown-menu">
                    
<li class=" ">
  <a class="nav-link dropdown-item nav-internal" href="gallery/index.html">
    Gallery
  </a>
</li>


<li class=" ">
  <a class="nav-link dropdown-item nav-internal" href="tutorials/index.html">
    Tutorials
  </a>
</li>


<li class=" ">
  <a class="nav-link dropdown-item nav-internal" href="adding.html">
    Implementing new operators
  </a>
</li>


<li class=" current active">
  <a class="nav-link dropdown-item nav-internal" href="#">
    Contributing
  </a>
</li>


<li class=" ">
  <a class="nav-link dropdown-item nav-internal" href="changelog.html">
    Changelog
  </a>
</li>


<li class=" ">
  <a class="nav-link dropdown-item nav-internal" href="credits.html">
    Credits
  </a>
</li>

                </ul>
            </li>
            
  </ul>
</nav></div>
      
    </div>
    
    
    <div class="navbar-header-items__end">
      
        <div class="navbar-item navbar-persistent--container">
          

<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
 <i class="fa-solid fa-magnifying-glass"></i>
 <span class="search-button__default-text">Search</span>
 <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
        </div>
      
      
        <div class="navbar-item">

<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
</button></div>
      
    </div>
    
  </div>
  
  
    <div class="navbar-persistent--mobile">

<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
 <i class="fa-solid fa-magnifying-glass"></i>
 <span class="search-button__default-text">Search</span>
 <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
    </div>
  

  
    <button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
      <span class="fa-solid fa-outdent"></span>
    </button>
  
</div>

    </header>
  

  <div class="bd-container">
    <div class="bd-container__inner bd-page-width">
      
      
      
      <dialog id="pst-primary-sidebar-modal"></dialog>
      <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
        

  
  <div class="sidebar-header-items sidebar-primary__section">
    
    
      <div class="sidebar-header-items__center">
        
          
          
            <div class="navbar-item">
<nav>
  <ul class="bd-navbar-elements navbar-nav">
    
<li class="nav-item ">
  <a class="nav-link nav-internal" href="index.html">
    Overview
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="installation.html">
    Installation
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="gpu.html">
    GPU Support
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="benchmarking.html">
    Benchmarking
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="api/index.html">
    PyLops MPI API
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="gallery/index.html">
    Gallery
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="tutorials/index.html">
    Tutorials
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="adding.html">
    Implementing new operators
  </a>
</li>


<li class="nav-item current active">
  <a class="nav-link nav-internal" href="#">
    Contributing
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="changelog.html">
    Changelog
  </a>
</li>


<li class="nav-item ">
  <a class="nav-link nav-internal" href="credits.html">
    Credits
  </a>
</li>

  </ul>
</nav></div>
          
        
      </div>
    
    
    
      <div class="sidebar-header-items__end">
        
          <div class="navbar-item">

<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
</button></div>
        
      </div>
    
  </div>
  
    <div class="sidebar-primary-items__start sidebar-primary__section">
        <div class="sidebar-primary-item">
<nav class="bd-docs-nav bd-links"
     aria-label="Section Navigation">
  <p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
  <div class="bd-toc-item navbar-nav"></div>
</nav></div>
    </div>
  
  
  <div class="sidebar-primary-items__end sidebar-primary__section">
      <div class="sidebar-primary-item">
<div id="ethical-ad-placement"
      class="flat"
      data-ea-publisher="readthedocs"
      data-ea-type="readthedocs-sidebar"
      data-ea-manual="true">
</div></div>
  </div>


      </div>
      
      <main id="main-content" class="bd-main" role="main">
        
        
          <div class="bd-content">
            <div class="bd-article-container">
              
              <div class="bd-header-article d-print-none">
<div class="header-article-items header-article__inner">
  
    <div class="header-article-items__start">
      
        <div class="header-article-item">

<nav aria-label="Breadcrumb" class="d-print-none">
  <ul class="bd-breadcrumbs">
    
    <li class="breadcrumb-item breadcrumb-home">
      <a href="index.html" class="nav-link" aria-label="Home">
        <i class="fa-solid fa-home"></i>
      </a>
    </li>
    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Contributing</span></li>
  </ul>
</nav>
</div>
      
    </div>
  
  
</div>
</div>
              
              
              
                
<div id="searchbox"></div>
                <article class="bd-article">
                  
  <section id="contributing">
<span id="id1"></span><h1>Contributing<a class="headerlink" href="#contributing" title="Link to this heading">#</a></h1>
<p>Contributions are welcome and greatly appreciated!</p>
<p>The best way to get in touch with the core developers and maintainers is to
join the <a class="reference external" href="https://pylops.slack.com/">PyLops slack channel</a> as well as
open new <em>Issues</em> directly from the <a class="reference external" href="https://github.com/PyLops/pylops-mpi">GitHub repo</a>.</p>
<section id="welcomed-contributions">
<h2>Welcomed contributions<a class="headerlink" href="#welcomed-contributions" title="Link to this heading">#</a></h2>
<section id="bug-reports">
<h3>Bug reports<a class="headerlink" href="#bug-reports" title="Link to this heading">#</a></h3>
<p>Report bugs at <a class="github reference external" href="https://github.com/PyLops/pylops-mpi/issues">PyLops/pylops-mpi#issues</a>.</p>
<p>If you are playing with the PyLops-MPI library and find a bug, please report it including:</p>
<ul class="simple">
<li><p>Your operating system name and version.</p></li>
<li><p>Any details about your Python environment.</p></li>
<li><p>Detailed steps to reproduce the bug.</p></li>
</ul>
</section>
<section id="new-operators-and-features">
<h3>New operators and features<a class="headerlink" href="#new-operators-and-features" title="Link to this heading">#</a></h3>
<p>Open an issue at <a class="github reference external" href="https://github.com/PyLops/pylops-mpi/issues">PyLops/pylops-mpi#issues</a> with tag <em>enhancement</em>.</p>
<p>If you are proposing a new operator or a new feature:</p>
<ul class="simple">
<li><p>Explain in detail how it should work.</p></li>
<li><p>Keep the scope as narrow as possible, to make it easier to implement.</p></li>
</ul>
</section>
<section id="fix-issues">
<h3>Fix issues<a class="headerlink" href="#fix-issues" title="Link to this heading">#</a></h3>
<p>There is always a backlog of issues that need to be dealt with.
Look through the <a class="reference external" href="https://github.com/PyLops/pylops-mpi/issues">GitHub Issues</a> for operator/feature requests or bugfixes.</p>
</section>
<section id="add-examples-or-improve-documentation">
<h3>Add examples or improve documentation<a class="headerlink" href="#add-examples-or-improve-documentation" title="Link to this heading">#</a></h3>
<p>Writing new operators is not the only way to get involved and contribute. Create examples with existing operators
as well as improving the documentation of existing operators is as important as making new operators and very much
encouraged.</p>
</section>
</section>
<section id="step-by-step-instructions-for-contributing">
<h2>Step-by-step instructions for contributing<a class="headerlink" href="#step-by-step-instructions-for-contributing" title="Link to this heading">#</a></h2>
<p>Ready to contribute?</p>
<ol class="arabic simple">
<li><p>Follow all instructions in <a class="reference internal" href="installation.html#devinstall"><span class="std std-ref">Step-by-step installation for developers</span></a>.</p></li>
<li><p>Create a branch for local development, usually starting from the main branch:</p></li>
</ol>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>&gt;&gt;<span class="w"> </span>git<span class="w"> </span>checkout<span class="w"> </span>-b<span class="w"> </span>name-of-your-branch
</pre></div>
</div>
<p>Now you can make your changes locally.</p>
<p>3. When you’re done making changes, check that your code follows the guidelines for <a class="reference internal" href="adding.html#addingoperator"><span class="std std-ref">Implementing new operators</span></a> and
that the both old and new tests pass successfully:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>&gt;&gt;<span class="w"> </span>make<span class="w"> </span>tests
</pre></div>
</div>
<ol class="arabic simple" start="4">
<li><p>Make sure the <code class="docutils literal notranslate"><span class="pre">examples</span></code> python scripts are executed using 3 processes without any errors:</p></li>
</ol>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>&gt;&gt;<span class="w"> </span>make<span class="w"> </span>run_examples
</pre></div>
</div>
<ol class="arabic simple" start="5">
<li><p>Make sure the <code class="docutils literal notranslate"><span class="pre">tutorials</span></code> python scripts are executed using 3 processes without any errors:</p></li>
</ol>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>&gt;&gt;<span class="w"> </span>make<span class="w"> </span>run_tutorials
</pre></div>
</div>
<ol class="arabic simple" start="6">
<li><p>Run flake8 to check the quality of your code:</p></li>
</ol>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>&gt;&gt;<span class="w"> </span>make<span class="w"> </span>lint
</pre></div>
</div>
<p>Note that PyLops-MPI does not enforce full compliance with flake8, rather this is used as a
guideline and will also be run as part of our CI.
Make sure to limit to a minimum flake8 warnings before making a PR.</p>
<ol class="arabic simple" start="7">
<li><p>Build the docs:</p></li>
</ol>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>&gt;&gt;<span class="w"> </span>make<span class="w"> </span>doc
</pre></div>
</div>
<ol class="arabic simple" start="8">
<li><p>Commit your changes and push your branch to GitHub:</p></li>
</ol>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>&gt;&gt;<span class="w"> </span>git<span class="w"> </span>add<span class="w"> </span>.
&gt;&gt;<span class="w"> </span>git<span class="w"> </span>commit<span class="w"> </span>-m<span class="w"> </span><span class="s2">&quot;Your detailed description of your changes.&quot;</span>
&gt;&gt;<span class="w"> </span>git<span class="w"> </span>push<span class="w"> </span>origin<span class="w"> </span>name-of-your-branch
</pre></div>
</div>
<p>Remember to add <code class="docutils literal notranslate"><span class="pre">-u</span></code> when pushing the branch for the first time.</p>
<ol class="arabic simple" start="9">
<li><p>Submit a pull request through the GitHub website.</p></li>
</ol>
</section>
<section id="pull-request-guidelines">
<h2>Pull Request Guidelines<a class="headerlink" href="#pull-request-guidelines" title="Link to this heading">#</a></h2>
<p>Before you submit a pull request, check that it meets these guidelines:</p>
<ol class="arabic simple">
<li><p>The pull request should include new tests for all the core routines that have been developed.</p></li>
<li><p>If the pull request adds functionality, the docs should be updated accordingly.</p></li>
<li><p>Ensure that the updated code passes all tests.</p></li>
</ol>
</section>
</section>
<section id="project-structure">
<h1>Project structure<a class="headerlink" href="#project-structure" title="Link to this heading">#</a></h1>
<p>This repository is organized as follows:</p>
<ul class="simple">
<li><p><strong>pylops_mpi</strong>: Python library containing various mpi linear operators.</p></li>
<li><p><strong>tests</strong>:      Set of tests using pytest-mpi.</p></li>
<li><p><strong>testdata</strong>:   Sample datasets used in tests and documentation.</p></li>
<li><p><strong>docs</strong>:       Sphinx documentation.</p></li>
<li><p><strong>examples</strong>:   Set of python script examples for each mpi linear operator to be embedded in documentation using sphinx-gallery.</p></li>
<li><p><strong>tutorials</strong>:  Set of python script tutorials to be embedded in documentation using sphinx-gallery.</p></li>
</ul>
</section>


                </article>
              
              
              
              
              
                <footer class="prev-next-footer d-print-none">
                  
<div class="prev-next-area">
    <a class="left-prev"
       href="adding.html"
       title="previous page">
      <i class="fa-solid fa-angle-left"></i>
      <div class="prev-next-info">
        <p class="prev-next-subtitle">previous</p>
        <p class="prev-next-title">Implementing new operators</p>
      </div>
    </a>
    <a class="right-next"
       href="changelog.html"
       title="next page">
      <div class="prev-next-info">
        <p class="prev-next-subtitle">next</p>
        <p class="prev-next-title">Changelog</p>
      </div>
      <i class="fa-solid fa-angle-right"></i>
    </a>
</div>
                </footer>
              
            </div>
            
            
              
                <dialog id="pst-secondary-sidebar-modal"></dialog>
                <div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">


  <div class="sidebar-secondary-item">
<div
    id="pst-page-navigation-heading-2"
    class="page-toc tocsection onthispage">
    <i class="fa-solid fa-list"></i> On this page
  </div>
  <nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
    <ul class="visible nav section-nav flex-column">
<li class="toc-h1 nav-item toc-entry"><a class="reference internal nav-link" href="#">Contributing</a><ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#welcomed-contributions">Welcomed contributions</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#bug-reports">Bug reports</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#new-operators-and-features">New operators and features</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#fix-issues">Fix issues</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#add-examples-or-improve-documentation">Add examples or improve documentation</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#step-by-step-instructions-for-contributing">Step-by-step instructions for contributing</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#pull-request-guidelines">Pull Request Guidelines</a></li>
</ul>
</li>
<li class="toc-h1 nav-item toc-entry"><a class="reference internal nav-link" href="#project-structure">Project structure</a></li>
</ul>

  </nav></div>

</div></div>
              
            
          </div>
          <footer class="bd-footer-content">
            
          </footer>
        
      </main>
    </div>
  </div>
  
  <!-- Scripts loaded after <body> so the DOM is not blocked -->
  <script defer src="_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
<script defer src="_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>

  <footer class="bd-footer">
<div class="bd-footer__inner bd-page-width">
  
    <div class="footer-items__start">
      
        <div class="footer-item">

  <p class="copyright">
    
      © Copyright 2025, PyLops Development Team.
      <br/>
    
  </p>
</div>
      
        <div class="footer-item">

  <p class="sphinx-version">
    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.1.3.
    <br/>
  </p>
</div>
      
    </div>
  
  
  
    <div class="footer-items__end">
      
        <div class="footer-item">
<p class="theme-version">
  <!-- # L10n: Setting the PST URL as an argument as this does not need to be localized -->
  Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.16.1.
</p></div>
      
    </div>
  
</div>

  </footer>
  </body>
</html>

About

MPI-powered PyLops with MPI4Py

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

Languages