Find information on common issues.
Ask questions and find answers from other users.
Suggest a new site feature or improvement.
Check on status of your tickets.
Whether you're simulating the electronic structure of a carbon nanotube or the strain within an automobile part, the
calculations usually boil down to a simple matrix equation,
Ax = f. The faster you can fill the
matrix A with the coefficients for your partial
differential equation (PDE), and the faster you can solve for
the vector x given a forcing function f, the faster you have your overall solution. Things get interesting when the matrix A is too large to fit in the memory available on one machine, or when the coefficients in A cause the matrix to be ill-conditioned.
Ax = f
Many different algorithms have been developed to map a PDE onto a matrix, to pre-condition the matrix to a better form, and to solve the matrix with blinding speed. Different algorithms usually exploit some property of the matrix, such as symmetry, to reduce either memory requirements or solution speed or both.
Learn more about algorithms from the many resources on this site, listed below.
Quantifying Uncertainties in Physical Models
28 Aug 2017 | | Contributor(s):: Ilias Bilionis
Increasing modeling detail is not necessarily correlated with increasing predictive ability. Setting modeling and numerical discretization errors aside, the more detailed a model gets, the larger the number of parameters required to accurately specify its initial/boundary conditions,...
A Distributed Algorithm for Computing a Common Fixed Point of a Family of Paracontractions
21 Jun 2017 | | Contributor(s):: A. Stephen Morse
In this talk a distributed algorithm is described for finding a common fixed point of a family of m paracontractions assuming that such a common fixed point exists. The common fixed point is simultaneously computed by m agents assuming each agent knows only paracontraction, the current estimates...
ECE 695NS Lecture 3: Practical Assessment of Code Performance
25 Jan 2017 | | Contributor(s):: Peter Bermel
Outline:Time ScalingExamplesGeneral performance strategiesComputer architecturesMeasuring code speedReduce strengthMinimize array writesProfiling
ECE 695NS Lecture 2: Computability and NP-hardness
13 Jan 2017 | | Contributor(s):: Peter Bermel
Outline:OverviewDefinitionsComputing MachinesChurch-Turing ThesisPolynomial Time (Class P)Class NPNon-deterministic Turing machinesReducibilityCook-Levin theoremCoping with NP Hardness
Jupyter Notebooks for Scientific Programming
06 Jan 2017 | | Contributor(s):: Martin Hunt
An overview of using Jupyter Notebooks for conveying scientific information.
Machine learned approximations to Density Functional Theory Hamiltonians - Towards High-Throughput Screening of Electronic Structure and Transport in Materials
13 Dec 2016 | | Contributor(s):: Ganesh Krishna Hegde
We present results from our recent work on direct machine learning of DFT Hamiltonians. We show that approximating DFT Hamiltonians accurately by direct learning is feasible and compare them to existing semi-empirical approaches to the problem. The technique we have proposed requires little...
High Accuracy Atomic Force Microscope with Self-Optimizing Scan Control
19 Sep 2016 | | Contributor(s):: Ryan (Young-kook) Yoo
Atomic force microscope (AFM) is a very useful instrument in characterizing nanoscale features, However, the original AFM design, based on piezo-tube scanner, had slow response and non-orthogonal behavior, inadequate to address the metrology needs of industrial applications: accuracy,...
Data-Centric Models for Multilevel Algorithms
07 Feb 2016 | | Contributor(s):: Samuel Guiterrez
Today, computational scientists must contend with a diverse set of supercomputer architectures that are capable of exposing unprecedented levels of parallelism and complexity. Effectively placing, moving, and operating on data residing in complex distributed memory hierarchies is quickly...
Range Decomposition: A Low Communication Algorithm for Solving PDEs on Massively Parallel Machines
07 Feb 2016 | | Contributor(s):: Tom Manteuffel
The Range Decomposition (RD) algorithm uses nested iteration and adaptive mesh refinement locally before performing a global communication step. Only several such steps are observed to be necessary before reaching a solution within a small multiple of discretization error. The target application...
A Scalable Algorithm for Inverse Medium Problems with Multiple Sources
04 Feb 2016 | | Contributor(s):: Keith Kelly
We consider the problem of acoustic scattering as described by the free-space, time-harmonic scalar wave equation given by (0.1) along with radiation boundary conditions. Here, is a point in , is the source term, and is the wavenumber. Our formulation is based on potential theory....
ECE 595E Lecture 36: MEEP Tutorial II
30 Apr 2013 | | Contributor(s):: Peter Bermel
Outline:Recap from MondayExamplesMultimode ring resonatorsIsolating individual resonancesKerr nonlinearitiesQuantifying third-harmonic generation
ECE 595E Lecture 35: MEEP Tutorial I
18 Apr 2013 | | Contributor(s):: Peter Bermel
Outline:MEEP InterfacesMEEP ClassesTutorial examples:WaveguideBent waveguide
Data-adaptive Filtering and the State of the Art in Image Processing
15 Apr 2013 | | Contributor(s):: Peyman Milanfar
In this talk, I will present a practical and unified framework for understanding some common underpinnings of these methods. This leads to new insights and a broad understanding of how these diverse methods interrelate. I will also discuss the statistical performance of the resulting algorithms,...
The Pioneers of Quantum Computing
19 Nov 2010 | | Contributor(s):: David P. Di Vincenzo
This talk profiles the persons whose insights and visions created the subject of quantum information science. Some famous, some not, they all thought deeply about the puzzles and contradictions that were apparent to the founders of quantum theory. After many years of germination, the confluence...
Nanoelectronic Modeling Lecture 29: Introduction to the NEMO3D Tool
04 Aug 2010 | | Contributor(s):: Gerhard Klimeck
This presentation provides a very high level software overview of NEMO3D. The items discussed are:Modeling Agenda and MotivationTight-Binding Motivation and basic formula expressionsTight binding representation of strainSoftware structureNEMO3D algorithm flow NEMO3D parallelization scheme –...
Nanoelectronic Modeling Lecture 28: Introduction to Quantum Dots and Modeling Needs/Requirements
20 Jul 2010 | | Contributor(s):: Gerhard Klimeck
This presentation provides a very high level software overview of NEMO1D.Learning Objectives:This lecture provides a very high level overview of quantum dots. The main issues and questions that are addressed are:Length scale of quantum dotsDefinition of a quantum dotQuantum dot examples and...
Nanoelectronic Modeling Lecture 26: NEMO1D -
09 Mar 2010 | | Contributor(s):: Gerhard Klimeck
NEMO1D demonstrated the first industrial strength implementation of NEGF into a simulator that quantitatively simulated resonant tunneling diodes. The development of efficient algorithms that simulate scattering from polar optical phonons, acoustic phonons, alloy disorder, and interface...
Nanoelectronic Modeling Lecture 27: NEMO1D -
This presentation provides a very high level software overview of NEMO1D. The items discussed are:User requirementsGraphical user interfaceSoftware structureProgram developer requirementsDynamic I/O design for batch and GUIResonance finding algorithmInhomogeneous energy meshingInformation flow,...
Nanoelectronic Modeling Lecture 21: Recursive Green Function Algorithm
07 Feb 2010 | | Contributor(s):: Gerhard Klimeck
The Recursive Green Function (RGF) algorithms is the primary workhorse for the numerical solution of NEGF equations in quasi-1D systems. It is particularly efficient in cases where the device is partitioned into reservoirs which may be characterized by a non-Hermitian Hamiltonian and a central...
Illinois ECE 498AL: Programming Massively Parallel Processors, Lecture 15: Kernel and Algorithm Patterns for CUDA
30 Sep 2009 | | Contributor(s):: Wen-Mei W Hwu
Kernel and Algorithm Patterns for CUDATopics: Reductions and Memory Patterns Reduction Patterns in CUDA Mapping Data into CUDA's Memories Input/Output Convolution Generic Algorithm Description What could each thread be assigned? Thread Assignment Trade-offs What memory Space does the Data use?...