Tags: algorithms

Description

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.

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.

All Categories (21-40 of 107)

  1. 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...

  2. 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 –...

  3. 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...

  4. 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...

  5. Nanoelectronic Modeling Lecture 27: NEMO1D -

    09 Mar 2010 | | Contributor(s):: Gerhard Klimeck

    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,...

  6. 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...

  7. Lecture 6: Neighbor Lists

    05 Jan 2010 | | Contributor(s):: Ashlie Martini

    Topics:Saving simulation timeVerlet listsCell lists

  8. Lecture 3: Integration Algorithms

    05 Jan 2010 | | Contributor(s):: Ashlie Martini

    Topics:General guidelinesVerlet algorithmPredictor-corrector methods

  9. Short Course on Molecular Dynamics Simulation

    13 Oct 2009 | | Contributor(s):: Ashlie Martini

    This set of ten presentations accompanied a graduate level course on Molecular Dynamics simulation. The specific objective of the course (and the presentations) is to provide:1. Awareness of the opportunities and limitations of Molecular Dynamics as a tool for scientific and engineering...

  10. 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?...

  11. Illinois ECE 498AL: Programming Massively Parallel Processors, Lecture 13: Reductions and their Implementation

    15 Sep 2009 | | Contributor(s):: Wen-Mei W Hwu

    Structuring Parallel AlgorithmsTopics: Parallel Reductions Parallel Prefix Sum Relevance of Scan Application of Scan Scan on the CPU First attempt Parallel Scan Algorithm Work efficiency considerations Improving Efficiency Use Padding to reduce conflicts Global Synchronization in CUDAThese...

  12. Illinois ECE 498AL: Programming Massively Parallel Processors, Lecture 12: Structuring Parallel Algorithms

    15 Sep 2009 | | Contributor(s):: Wen-Mei W Hwu

    Structuring Parallel AlgorithmsTopics: Key Parallel Programming Steps Algorithms Choosing Algorithm Structure Mapping a Divide and Conquer algorithm Tiled Algorithms Increased work per thread Double Buffering Loop Fusion and Memory Privatization Pipeline or "Spatial Computing Model" These...

  13. Experiment vs. Modelling: What's the problem?

    10 Aug 2009 | | Contributor(s):: William L. Barnes

    Progress in plasmonics has been greatly assisted by developments in experimental techniques and in numerical modelling. This talk will look at some of the difficulties that emerge when comparisons are made between experiment and theory. Through the use of four examples I will illustrate what...

  14. Quantitative, Kinetic Models of Cellular Circuits

    04 Apr 2009 | | Contributor(s):: Michael R. Brent

    Living cells contain complex, analog circuits that regulate the rate at which each gene produces its product. The kinetic properties of these circuits enable cells to respond to changes in their environments and thus to survive, reproduce, and compete. For decades, molecular biologists have been...

  15. The Multicore Era: Crisis or (and?) Opportunity?

    27 Mar 2009 | | Contributor(s):: Mithuna Thottethodi

    This talk will provide a brief overview of how we got to the multicore era, the implications and challenges for hardware/software developers and users, and some informed speculation on where the trends may be headed.

  16. Experiences with nonintrusive polynomial Chaos and stochastic collocation methods for uncertainty analysis and design

    13 Mar 2009 | | Contributor(s):: Michael S. Eldred

    Non—intrusive polynomial chaos expansion (PCE) and stochastic collocation (SC) methods are attractive techniques for uncertainty quantification due to their abilities to produce functional representations of stochastic variability and to achieve exponential convergence rates in statistics of...

  17. Nanoparticle and Colloidal Simulations with Molecular Dynamics

    05 Dec 2008 | | Contributor(s):: Steve Plimpton

    Modeling nanoparticle or colloidal systems in a molecular dynamics (MD) code requires coarse-graining on several levels to achieve meaningful simulation times for study of rheological and other manufacturing properties. These include treating colloids as single particles, moving from explicit to...

  18. OpenMP Tutorial

    25 Nov 2008 | | Contributor(s):: Seung-Jai Min

    This tutorial consists of three parts. First, we will discuss abouthow OpenMP is typically used and explain OpenMP programming model. Second, we will describe important OpenMP constructs and data enviroments. Finally, we will show a simple example to illustrate how OpenMP APIs are used to...

  19. Purdue School on High Performance and Parallel Computing

    24 Nov 2008 | | Contributor(s):: Alejandro Strachan, Faisal Saied

    The goal of this workshop is to provide training in the area of high performance scientific computing for graduate students and researchers interested in scientific computing. The School will address current hardware and software technologies and trends for parallel computing and their...

  20. Introduction to Parallel Programming with MPI

    24 Nov 2008 | | Contributor(s):: David Seaman

    Single-session course illustrating message-passing techniques. The examples include point-to-point and collective communication using blocking and nonblocking transmission. One application illustrates the manager/worker model with buffered communications. Code examples provided in C, C++,...