Skip to content

TomasOberhuber/gsoc

 
 

Repository files navigation

Google Summer of Code

| Sub organizations | IDEAS LIST | Student guides |

NumFOCUS will be applying again as an umbrella mentoring organization for Google Summer of Code 2022. NumFOCUS supports and promotes world-class, innovative, open source scientific software.

NumFOCUS is committed to promoting and sustaining a professional and ethical community. Our Code of Conduct is our effort to uphold these values and it provides a guideline and some of the tools and resources necessary to achieve this.

Google Summer of Code is an annual open source internship program sponsored by Google. This repository contains information specific to NumFOCUS' participation in GSoC. For general information about the competition, including this year's application timeline and key phases involved, please see the GSoC website

This Git repository stores information about NumFOCUS' application for Google Summer of Code in the current and previous years.

Table of Contents

Students

NumFOCUS is participating as a umbrella organization. This means that you will need to identify a specific project to apply to under the NumFOCUS umbrella. (Projects are listed below.)

Read this document to learn how to apply for the GSoC program with NumFOCUS. Please also check out our ideas list.

For any questions, please open an issue in our issue tracker or send a email to [email protected], our mailing list address. Please also consider subscribing to the mailing list at https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc.

Sub Organizations

If you want to participate as a sub organization of NumFOCUS please read this guide.

Organizations Confirmed Under NumFOCUS Umbrella

In alphabetic order.

AiiDA

AiiDA is a python framework for managing computational science workflows, with roots in computational materials science. It helps researchers manage large numbers of simulations (10k, 100k, 1M, ...) and complex workflows involving multiple executables. At the same time, it records the provenance of the entire simulation pipeline with the aim to make it fully reproducible.

Website | Ideas List | Google Groups | Source Code

ArviZ

ArviZ, is a project dedicated to promote and build tools for exploratory analysis of Bayesian models. It currently has a Python and a Julia interface. ArviZ aims to integrate seamlessly with established probabilistic programming languages like PyStan, PyMC (3 and 4), Turing, Soss, emcee or Pyro. Where the aim of the probabilistic programming languages is to make it easy to build and solve Bayesian models, the aim of the ArviZ libraries is to make it easy to process and analyze the results from those Bayesian models.

Website | Ideas List | Contact (Gitter) | Source Code

CB-Geo MPM

CB-Geo MPM is an HPC-enabled Material Point Method solver for large-deformation modeling. It supports isoparametric elements to model complex geometries and creates photo-realistic rendering.

Website | Ideas List | Discourse | Source Code

Colour

Colour is an open-source Python package providing a comprehensive number of algorithms and datasets for colour science.

It is freely available under the New BSD License terms.

Website | Ideas List | Contact | Source Code

CuPy

CuPy is a NumPy/SciPy-compatible array library for GPU-accelerated computing with Python. CuPy acts as a drop-in replacement to run existing NumPy/SciPy code on NVIDIA CUDA or AMD ROCm platforms.

Website | Ideas List | Chat on Gitter | Contact | Source Code

CVXPY

CVXPY is an open source Python-embedded modeling language for convex optimization problems. It lets you express your problem in a natural way that follows the math, rather than in the restrictive standard form required by solvers.

Website | Ideas List | Contact (Discord) | Source Code

Data Retriever

The Data Retriever ecosystem improves reproducible research through data product management. The platform takes advantage of freely available data sources in a variety of formats, standardizes them, and makes them available to scientists in a form that is ready to analyze. Data sources range from tabular data, spatial data packages and APIs. Several data packages use the ecosystems, and many projects support or rely on the ecosystem.

Website | Ideas List | Contact (Gitter) | Source Code

FEniCS

FEniCS is an automated finite element library used to solve equations used in modeling, featuring a domain-specific language and automated code generation. Users input a problem that looks very much like mathematical notation; FEniCS then translates that into computer code. It solves problems for which there is no analytical (exact) solution numerically.

Website | Ideas List | Contact | Source Code

FluxML

FluxML is a 100%-pure Julia machine learning stack built on top of Julia's native automatic differentiation and GPU support. Our organization maintains packages for building and training neural networks, data pre-processing pipelines, standard deep learning models, automatic differentiation, and more. By writing our complete toolchain in Julia, we aim to make machine learning simple, extensible, and performant.

Website | Ideas List | Contact (Slack or Zulip) | Source Code

GeoPandas

GeoPandas is an open-source project that makes it easier to work with geospatial data in Python. GeoPandas combines the capabilities of pandas and shapely (python interface to the GEOS library), providing geospatial operations in pandas and a high-level and performant interface to multiple geometries to shapely. GeoPandas enables you to easily do operations in Python that would otherwise require desktop applications like ArcGIS or QGIS or a spatial database such as PostGIS.

Website | Ideas List | Contact | Source Code

Gridap

Gridap is a new generation, open-source, finite element (FE) library implemented in the Julia programming language. Gridap aims at adopting a more modern programming style than existing FE applications written in C/C++ or Fortran.

Website | Ideas List | Contact (Gitter) | Source Code

JuMP

JuMP is a modeling language and supporting packages for mathematical optimization in Julia. JuMP makes it easy to formulate and solve linear programming, semidefinite programming, integer programming, convex optimization, constrained nonlinear optimization, and related classes of optimization problems.

Website | Developers chat on Gitter | Ideas Page | Source Code

LFortran

LFortran is a modern open-source (BSD licensed) interactive Fortran compiler built on top of LLVM. It can execute user’s code interactively to allow exploratory work (much like Python, MATLAB or Julia) as well as compile to binaries with the goal to run user’s code on modern architectures such as multi-core CPUs and GPUs.

Website | Developers chat on Zulip | Ideas Page | Source Code

Matplotlib

Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. Matplotlib makes easy things easy and hard things possible.

Website | Ideas List | Gitter | Source Code

NetworkX

NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.

Website | Ideas Page | Contact (GitHub Discussions) | Source Code

Optuna

Optuna is an open source hyperparameter optimization framework to automate hyperparameter search. Optuna provides eager search spaces for automated search for optimal hyperparameters using Python conditionals, loops, and syntax, state-of-the-art algorithms to efficiently search large spaces and prune unpromising trials for faster results, and easy parallelization for hyperparameter searches over multiple threads or processes without modifying code.

Website | Developers chat on Gitter | Ideas Page | Source Code

pvlib

pvlib python provides a set of functions and classes for simulating the performance of photovoltaic energy systems.

Website | Google Group Forum | Ideas Page | Source Code

PyBaMM

PyBaMM (Python Battery Mathematical Modelling) solves physics-based electrochemical DAE models by using state-of-the-art automatic differentiation and numerical solvers.

Website | Contact | Ideas Page | Source Code

PyLops

PyLops is an open-source Python library focused on providing a backend-agnostic, idiomatic, matrix-free library of linear operators and related computations. It is inspired by the iconic MATLAB Spot – A Linear-Operator Toolbox project.

Website | Slack | Ideas Page | Source Code

PyMC

PyMC is a python module for Bayesian statistical modeling and model fitting which focuses on advanced Markov chain Monte Carlo and variational fitting algorithms. Its flexibility and extensibility make it applicable to a large suite of problems.

Website | discourse | Ideas Page | Source Code

PySAL

PySAL is an open source cross-platform library for geospatial data science. It supports many different areas of statistics and geographical analyses, such as the detection of spatial clusters, hotspots, and outliers; the construction of graphs from geographic data; Bayesian and Maximum Likelihood spatial regression and statistical modelling for geographical networks; spatial econometrics; space-time Markov modelling; and distribution dynamics for segregation and inequality.

Website | Contact (Gitter chat room) | Ideas Page | Source Code

PyTorch-Ignite

PyTorch-Ignite is a high-level library to help with training neural networks in PyTorch

Website | Discord | GitHub Discussions | Ideas Page | Source Code

QuTiP

QuTiP is a software for simulating quantum systems. QuTiP aims to provide tools for user-friendly and efficient numerical simulations of open quantum systems. It can be used to simulate a wide range of physical phenomenon in areas such as quantum optics, trapped ions, superconducting circuits and quantum nanomechanical resonators. In addition, it contains a number of other modules to simplify the numerical simulation and study of many topics in quantum physics such as quantum optimal control, quantum information, and computing.

Website | Contact | Ideas Page | Source Code

SciML

SciML is an open source software organization created to unify the packages for scientific machine learning. This includes the development of modular scientific simulation support software, such as differential equation solvers, along with the methodologies for inverse problems and automated model discovery. By providing a diverse set of tools with a common interface, we provide a modular, easily-extendable, and highly performant ecosystem for handling a wide variety of scientific simulations.

Website | Discourse | Ideas Page | Source Code

signac

The signac framework is a complete solution for managing workflows operating on file-based data designed to scale to HPC systems.

Website | Ideas Page | Source Code

Taskflow

Parallel and heterogeneous programming with high performance and simultaneous high productivity

Website | Contact | Ideas Page | Source Code

Zarr

Zarr is a format for the storage of chunked, compressed, N-dimensional arrays. These documents describe the Zarr format and its Python implementation.

Website | Gitter | Ideas Page | Source Code

About

NumFOCUS Google Summer of Code Materials

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TeX 55.3%
  • Jupyter Notebook 44.7%