- 'EPICS' is a software infrastructure for building distributed control systems to operate devices such as particle accelerators, large experiments and major telescopes. These systems comprise tens or hundreds of computers, networked together so they can communicate and provide control and feedback of the various parts from a control room, or remotely over the Internet. EPICS uses Client/Server and Publish/Subscribe techniques to communicate between the various computers. Most servers (called Input/Output Controllers or IOCs) perform real-world I/O and local control tasks, and publish this information to clients using the Channel Access (CA) network protocol. CA is specially designed for the kind of high bandwidth, soft real-time networking applications that EPICS is used for, and is one reason why it can be used to build a control system comprising hundreds of computers.
- Electric Fields Visualization Python
- This is educational software that demonstrates the field and fluxlines for electric charge particles.
- Elmer includes physical models of fluid dynamics, structural mechanics, electromagnetics and heat transfer. These are described by partial differential equations which Elmer solves by the Finite Element Method (FEM). Elmer comprises of several different parts: The geometry, boundary conditions and physical models are defined in ElmerFront. The resulting problem definition is solved by ElmerSolver. Finally the results are visualized by ElmerPost. Additionally a utility ElmerGrid may be used for simple mesh manipulation. The different parts of Elmer software may also be used independently. The strongest of the components is ElmerSolver which includes many sophisticated features. For pre- and postprosessing the users may find also other alternatives. The software runs on unix and windows platforms and can be compiled on a large variety of compilers. The solver can also be used in parallel mode on platforms that support MPI.<\p>
- Emacs madx-mode
- This program creates a madx major for emacs that highlights the cern (Methodical Accelerator Design) MAD-X 5 syntax. This is not a GNU package.
- FísicaLab is an educational application for solving physics problems creatively.
Current modules includes:
- Kinematics of particles 2D
- Circular kinematics of particles 2D
- Static of particles 2D
- Static of rigid bodies 2D
- Dynamics of particles 2D
- Circular dynamics of particles 2D
- Calorimetry, ideal gas and expansion
- Fosite is a generic framework for the numerical solution of 2D hyperbolic conservation laws in generalized orthogonal coordinates. It is mainly intended for CFD problems with rotational symmetry.
- FreeFem++ is dedicated to the resolution of a large category of partial differential equations in 2D and 3D with complex applications, using finite element discretization and advanced automatic mesh generator. FreeFem++ is written in C++ and it owns documentation in spanich, Japanese and Chinese (http://www.freefem.org/). Finally, FreeFem++ aims the same objectives as Elmer (http://directory.fsf.org/wiki/Elmer) FreeFem++ is free software with LGPL license, developed at Jacques-Louis Lions Laboratory, Pierre and Marie Curie University.
- FroZenLight connects simple line art and mathematics. The source of light can be positioned so that either symmetric reflection patterns or secret messages (Cryptography) are created. Dozens of example light patterns and some math exercises are provided.
- GAMGI (General Atomistic Modelling Graphic Interface) is a program to build, view, and analyze atomic strucures such as molecules, crystals, glasses, liquids, etc. It aims to be useful for: the scientific community working in Atomistic Modelling that needs a graphic interface to build input data and to view and analyse output data, calculated with Ab-Initio and Molecular Mechanics programs; the scientific community at large studying chemistry, physics, materials science, geology, etc., that needs a graphic interface to view and analyse atomic structural information and to prepare images for presentations in classes and seminars; teaching chemistry and physics in secondary schools and universities; science promotion in schools, exhibitions and science museums.
- "GDIS' is a GTK/OpenGL based program for displaying isolated molecules, periodic systems, and crystalline habits. It also acts as a GUI to packages such as GAMESS, GULP, and POVRay to provide energy minimizations and publication quality rendering.
- This is a candidate for deletion: Links broken. No links to page. Email to maintainer broken. Poppy-one (talk) 12:14, 31 July 2018 (EDT) Gravitational Particle Simulator uses numerical methods to simulate the behaviour of particles that obey the gravitational laws of motion. The numerical method used to approximate the differential equations is a 4th order Runge Kutta method. Home page is in Italian only, but the README and the comments in the code are in English.
- Gnome Flow
- Gnome Flow calculates and visualizes simple steady-state fluid flows. It uses the relaxation method, and can calculate flows past symmetric objects. Steady-state means it calculates the flow at a given time and that the physical parameters are constant in time.
- Goptical is a C++ optical design and simulation library. It provides model classes for optical components, surfaces and materials. It enables building optical systems by creating and placing various optical components in a 3d space and simulates light propagation through the system. Classical optical design analysis tools can be used on optical systems.
- 'Gpiv' is a graphic user interface for analyzing images obtained from a fluid flow that has been seeded with tracer particles by the so-called Particle Image Velocimetry technique (PIV). It is meant to have a quick overview of the parameters of all piv processes, easily changing them, running the processes and visualizing their results interactively.
- Gpiv-tools is a package that contains command-line driven programs for the so-called (Digital) Particle Image Velocimetry technique (PIV). The programs perform image evaluation, resulting into a velocity field of the flow, validation programs and post-processing programs to manipulate the data or to extract information from the data (statistics, derivatives). There are some additional programs and scripts for data and image format conversions, chain-processing, batch-processing and for generating graphical output. Though the command-line driven tools are mainly intended for non-graphic processing, its outputs may be visualized in a graphical way by displaying with the aid of gnuplot.
- Programs for Information Topology Data Analysis Information Topology is a program written in Python (compatible with Python 3.4.x), with a graphic interface built using TKinter , plots drawn using Matplotlib , calculations made using NumPy , and scaffold representations drawn using NetworkX . It computes all the results on information presented in the study , that is all the usual information functions: entropy, joint entropy between k random variables (Hk), mutual informations between k random variables (Ik), conditional entropies and mutual informations and provides their cohomological (and homotopy) visualisation in the form of information landscapes and information paths together with an approximation of the minimum information energy complex . It is applicable on any set of empirical data that is data with several trials-repetitions-essays (parameter m), and also allows to compute the undersampling regime, the degree k above which the sample size m is to small to provide good estimations of the information functions . The computational exploration is restricted to the simplicial sublattice of random variable (all the subsets of k=n random variables) and has hence a complexity in O(2^n). In this simplicial setting we can exhaustively estimate information functions on the simplicial information structure, that is joint-entropy Hk and mutual-informations Ik at all degrees k=<n and for every k-tuple, with a standard commercial personal computer (a laptop with processor Intel Core i7-4910MQ CPU @ 2.90GHz * 8) up to k=n=21 in reasonable time (about 3 hours). Using the expression of joint-entropy and the probability obtained using equation and marginalization , it is possible to compute the joint-entropy and marginal entropy of all the variables. The alternated expression of n-mutual information given by equation then allows a direct evaluation of all of these quantities. The definitions, formulas and theorems are sufficient to obtain the algorithm . We will further develop a refined interface (help welcome) but for the moment it works like this, and requires minimum Python use knowledge. Please contact pierre.baudot [at] gmail.com for questions, request, developments (etc.):  J.W. Shipman. Tkinter reference: a gui for python. . New Mexico Tech Computer Center, Socorro, New Mexico, 2010.  J.D. Hunter. Matplotlib: a 2d graphics environment. Comput. Sci. Eng., 9:22–30, 2007.  S. Van Der Walt, C. Colbert, and G. Varoquaux. The numpy array: a structure for efficient numerical computation. Comput. Sci. Eng., 13:22– 30, 2011.  A.A. Hagberg, D.A. Schult, and P.J. Swart. Exploring network structure, dynamics, and function using networkx. Proceedings of the 7th Python in Science Conference (SciPy2008). Gel Varoquaux, Travis Vaught, and Jarrod Millman (Eds), (Pasadena, CA USA), pages 11–15, 2008.  M. Tapia, P. Baudot, M. Dufour, C. Formisano-Tréziny, S. Temporal, M. Lasserre, J. Gabert, K. Kobayashi, JM. Goaillard . Information topology of gene expression profile in dopaminergic neurons doi: https://doi.org/10.1101/168740 http://www.biorxiv.org/content/early/2017/07/26/168740
- 'LIBGPIV' is a library for the (Digital) Particle Image Velocimetry technique (PIV), an image analyzing technology that obtains a velocity field from a fluid flow (gas or liquid) that has been seeded with small tracer particles or smoke. 'LIBGPIV' contains the core functions for image evaluation (resulting into estimators of particle image displacements, i.e. PIV data), validation (on peak-locking effects, erroneous vectors or outliers), post-processing, input/output functions, utility functions like memory allocation etc. The project is designed for maximum flexibility for extending and adapting the code for different applications.
- 'libquantum' is a simulation of a quantum computer. It provides an interface for a quantum register and for all important quantum operations. An efficient model for decoherence allows an analysis of quantum computation in a realistic environment. Features include the simulation of arbitrary algorithms, high performance and low memory consumption and interfaces for quantum error correction (QEC) and the density operator formalism. The package includes implementations of Shor's factoring algorithm and Grover's search algorithm.
- librsb is a library for sparse matrix computations featuring the Recursive Sparse Blocks (RSB) matrix format. This format allows cache efficient and multi-threaded (that is, shared memory parallel) operations on large sparse matrices. The most common operations necessary to iterative solvers are available, e.g.: matrix-vector multiplication, triangular solution, rows/columns scaling, diagonal extraction / setting, blocks extraction, norm computation, formats conversion. The RSB format is especially well suited for symmetric and transposed multiplication variants. On these variants, librsb has been found to be faster than Intel MKL's implementation for CSR. Most numerical kernels code is auto generated, and the supported numerical types can be chosen by the user at build time. librsb implements the Sparse BLAS standard, as specified in the BLAS Forum documents.
- Light Speed!
- Light Speed! is an OpenGL-based program which illustrates the effects of special relativity on the appearance of moving objects. When an object accelerates past a few million meters per second, these effects begin to grow noticeable, becoming more and more pronounced as the speed of light is approached. These relativistic effects are viewpoint-dependent, and include shifts in length, object hue, brightness and shape. The moving object is, by default, a geometric lattice. 3D Studio and LightWave 3D objects may be imported as well. Best of all, the simulator is completely interactive, rendering the exotic distortions in real-time!
- MIT Photonic Bands
- MIT Photonic Bands (MPB) computes the band structures (dispersion relations) and electromagnetic modes of periodic dielectric structures, and is applicable both to photonic crystals (photonic band-gap materials) and other optical problems. Its features include: fully-vectorial, 3D computations; a flexible user-interface based upon the GNU Guile scripting language; output in HDF format; and iterative, targeted eigensolver methods to address very large problems by solving for only a few states near a specified frequency.
- McStas lets you model very precisely a neutron instrument described as a series of various components. A source component shoots each neutron randomly (Monte-Carlo), and the particle is then propagated through the different instrument components. These later act on the neutron characteristics (position, speed, direction, spin, etc.). Usually, one installs some detectors along the neutron path to monitor its characteristics and flux.
- Meep is a free finite-difference time-domain (FDTD) simulation software package developed at MIT to model electromagnetic systems. It supports distributed-memory parallelism, dispersive and nonlinear materials, PML absorbing boundaries, 1d/2d/3d/cylindrical problems, and arbitrary material and source geometries. It is completely scriptable via either C++ or a Scheme (GNU Guile) interface.
- The minfx project is a Python package for numerical optimisation, being a large collection of standard minimisation algorithms. This includes the line search methods: steepest descent, back-and-forth coordinate descent, quasi-Newton BFGS, Newton, Newton-CG; the trust-region methods: Cauchy point, dogleg, CG-Steihaug, exact trust region; the conjugate gradient methods: Fletcher-Reeves, Polak-Ribiere, Polak-Ribiere +, Hestenes-Stiefel; the miscellaneous methods: Grid search, Simplex, Levenberg-Marquardt; and the augmented function constraint algorithms: logarithmic barrier and method of multipliers (or augmented Lagrangian method).
- GNU MPC is a complex floating-point library with exact rounding. It is based on the GNU MPFR floating-point library, which is itself based on the GNU MP library. This is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It extends the principles of the IEEE-754 standard for fixed precision real floating point numbers to complex numbers, providing well-defined semantics for every operation. At the same time, speed of operation at high precision is a major design goal.
- MuTE Toolbox
- A challenge for physiologists and neuroscientists is to map information transfer between components of the systems that they study at different scales, in order to derive important knowledge on structure and function from the analysis of the recorded dynamics. We propose a freeware MATLAB toolbox, MuTE (Multivariate Transfer Entropy), that implements four both Granger causality and transfer entropy estimators according to uniform and non-uniform embedding frameworks. The resulting eight methods can be easily compared showing all the pros and cons of the methodologies used to detect the directed dynamical information transfers. The toolbox provides a completely brand-new approach that bridges machine learning and information theory fields. MuTE is also able to perform bivariate and fully multivariate analyses. Furthermore, users can easily implement their own methods or change some features of the already existing approaches due to the modularity of the toolbox.
- NMod nBody Modelling Toolkit
- nMod nbody toolkit is a collection of tools designed to enable researchers to perform experiments using a particle-particle nBody model that runs on standard home computers.
The toolkit contains a particle-particle model, functions to enable the simulation of spacecraft flight, and an opengl viewer to display the resulting time series data.
- nano-archimedes is for the simulation of quantum systems. It is based on the Wigner equation, a formulation of quantum mechanics in terms of a phase-space which is mathematically equivalent to the Schroedinger equation. GNU nano-archimedes implements the Wigner Monte Carlo method. The code can be easily extended to density functional theory (DFT) and time-dependent ab-initio simulations.
- Network Extraction from Images
- NEFI is an extensible computer vision tool that analyzes images that contain networks and extracts the graph. Examples are leaf venations, insect wings, slime molds, mud crack patterns etc. It determines topological information as well as properties such as edge length and width.
- 'OOF' helps materials scientists calculate macroscopic properties from images of real or simulated microstructures. It consists of two cooperating parts: 'ppm2oof' and 'oof'. 'ppm2oof' reads images in the ppm (Portable Pixel Map) format and assigns material properties to features in the image. 'oof' conducts virtual experiments on the data structures created by ppm2oof to determine the macroscopic properties of the microstructure. There are now two separate versions of OOF available. The original version solves elasticity problems. The new thermal version solves elasticity and thermal diffusion problems. Plans are to include eventually include electric and magnetic field calculations as well.
- OOFEM is an object oriented, parallel, multi-physics finite element code. General features include staggered solution procedures, multiple domain concept, adaptivity, full restart support from any saved state, and built in support for parallel processing. Both sparse matrix storage schemes and corresponding iterative and direct solvers are available. OOFEM comes with structural module with many analysis procedures for all applications. Large material library is provided, special focus is on models for nonlinear fracture mechanics. Transport module can solve linear and non-linear stationary and transient heat transfer and coupled heat&mass transfer problems. Finally, fluid dynamic module can solve incompressible flows, including flows of two inmiscible fluids on a fixed domain (also suitable for free surface flows) using interface tracking algorithms. OOFEM interfaces to IML++, PETSc, ParMetis, and VTK.
- 'octopus' is a computer package for the simulation of the electron-ion dynamics of finite systems in one and three dimensions under the influence of time-dependent electromagnetic fields. The electronic degrees of freedom are treated quantum mechanically within the time-dependent Kohn-Sham formalism, while the ions are handled classically. All quantities are expanded in a regular mesh in real-space; the simulations are performed in real-time. 'octopus' can also obtain static properties like ground-state geometries or static polarizabilities although it is not optimzed for this). The method employed proved quite reliable and general, and has been successfully used to calculate linear and non-linear absorption spectra, harmonic spectra, laser induced fragmentation, etc. of a variety of systems, from small clusters to medium sized quantum dots.
- OpenLB is a C++ library for the implementation of lattice Boltzmann simulations which addresses a vast range of problems in computational fluid dynamics. The package is mainly intended as a programming support for researchers and engineers who simulate fluid flows by means of a lattice Boltzmann method. The source code is written in a modular way, which make is easily extensible to include new physical content. The overall structure of the library enables for a fast implementation of both simple applications and advanced CFD problems.
- PuffinPlot is a user-friendly, cross-platform program which analyses and plots palaeomagnetic data. It provides several plot types and analysis functions commonly used in palaeomagnetism, user-configurable graph layout, CSV data export, and SVG and PDF graph export. It has facilities for both interactive and bulk analysis, and can also be controlled and extended using any JVM-based scripting language (including Python). PuffinPlot is written in Java.
- This package provides an object-oriented interface to the Comedi drivers. The standard Python interface bundled with Comedilib is a simple SWIG clone of the C interface. In pycomedi, we convert the functions into class methods (see
pycomedi.classes), so you don't have to worry about dragging around opaque types like
comedi_t *device pointers. We also bundle related constants together in
pycomedi.constants), to make handling common operations like flag manipulations simpler. Finally, there are a number of utility classes (see
pycomedi.utility) to make common tasks like creating instructions or reading hardware-timed analog input easier.
- QuTiP: Quantum Toolbox in Python
- QuTiP is open-source software for simulating the dynamics of closed and open quantum systems. The QuTiP library depends on the excellent Numpy and Scipy numerical packages. In addition, graphical output is provided by Matplotlib. QuTiP aims to provide user-friendly and efficient numerical simulations of a wide variety of quantum mechanical problems, including those with Hamiltonians and/or collapse operators with arbitrary time-dependence, commonly found in a wide range of physics applications. QuTiP is freely available for use and/or modification on all Unix-based platforms. Being free of any licensing fees, QuTiP is ideal for exploring quantum mechanics in research as well as in the classroom.
- relax is a program designed for the study of molecular dynamics of organic molecules, proteins, RNA, DNA, sugars, and other biomolecules through the analysis of experimental NMR data. It supports exponential curve fitting for the calculation of the R1 and R2 relaxation rates, calculation of the NOE, reduced spectral density mapping, the Lipari and Szabo model-free analysis, study of domain motions via the N-state model or ensemble analysis and frame order dynamics theories using anisotropic NMR parameters such as RDCs and PCSs, the investigation of stereochemistry in dynamic ensembles, and the analysis of relaxation dispersion.
- 'SpecTcl' is a framework for data analysis of nuclear physics event data. It is delivered both as a canned program and as a C++ class framework. It is run-time extensible via the Tcl/Tk scripting language. The class framework allows the program to be easily extended, and class wrappers for Tcl/Tk make it trivial to add to the SpecTcl command set as well as to expose Tcl/Tk variables to user code.
- Sphere Filler
- Recreate the sphere-filling algorithm described by Jean-Francois Ferellec in the following publication: Ferellec, J. & McDowell, G. (2010). Geotechnique 60, No. 3, 227–232 [doi: 10.1680/geot.9.T.015] Application to graphics and Discrete Element Method (DEM) calculations.
- UnitParser (Java)
- UnitParser is a comprehensive unit parsing library which can deal with numerous situations related to units of measurement. It is the first part of FlexibleParser. This page refers to the Java version, a conversion of the code which I originally developed in C#.
- Modular toolkit for very low frequency (VLF) radio signal processing and storage.
- 'vp7wkp' simulates an experiment whereby the radioactive decay of various materials can be studied. The user can choose between many predefined radioactive sources or create new ones. The number of decayed nuclei and the activity of the source is determined with a built-in counter; the beam is attenuated with shields of paper, aluminium, and/or lead.
- wasora is a free computational tool designed to aid a cognizant expert—i.e. you, whether an engineer, scientist, technician, geek, etc.—to analyze complex systems by solving mathematical problems by means of a high-level plain-text input file containing algebraic expressions, data for function interpolation, differential equations and output instructions amongst other facilities. At a first glance, it may look as another high-level interpreted programming language, but—hopefully—it is not: wasora should be seen as a syntactically-sweetened way to ask a computer to perform a certain mathematical calculation. For example, see below to find how the famous Lorenz system may be solved by writing the three differential equations into a plain-text input file as humanly-friendly as possible.
- YAFEMS (Yet Another Finite Element Method Solver) is a FEM solver that reads a MED mesh file produced by Salome (http://www.salome-platform.org/) with certain groups created into the mesh, and with the help of an input text file (.yaf), performs a 3D or 2D plane stress or plane strain analysis and creates results in plain text format and in MED format. This way a complete analysis can be carried inside Salome, where a mesh file can be created, exported and read by YAFEMS with the help of a .yaf input file and post-processed within Salome using ParaView.
- PeerLibrary is an free software project developing a collaborative online community where scholars and researchers can discover, read, and discuss scholarly literature all within one site. This project focuses on expediting access to publications, enabling public recordings of analysis and insights on said publications, and encouraging collaboration and openness in the development of science.
- The purpose of the ZerSol C++ library is the finding all the zeros of an analytic function that are contained in a given rectangular region of a complex plane. It is based on the argument principle and recursive subdivisions of the region coupled with the Newton's iterations at the final stage of the search. The ZerSol library assumes that evaluation of the function is expensive and tries to minimize the number of the function calls by using efficient algorithms and special data structures. Although easy to use, the library provides an extensive set of interface functions for the search customization and detailed diagnostic messages in case of failures. It is supplied with a set of test cases and bindings for C and Fortran users. The library is thoroughly tested on many hard problems and demonstrates a good performance.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.