Special Course at GaTech (CSE-8903-C18)
We have regular classes on BlueJeans on Wednesday and Fridays from 3:15 pm to 4:15 pm EST.
If you are interested to participate in the class or you are looking for a collaborative project email us at abouzar.kaboudian@physics.gatech.edu, flavio.fenton@physics.gatech.edu, or echerry30@gatech.edu.
The files and video recordings of the lectures will be regularly posted here.
-
If you need a refresher on HTML and JavaScript visit w3schools.com that can also serve as a wonderful reference manual for JavaScript and HTML.
-
Step by step tutorials on our first sessions can be found at tutorials section of abubujs.org. While the documentation of the library is still lacking, the tutorial section is a great starting point.
-
A quick reference guide for the GLSL language can be found here.
- Basic familiarity with computer coding preferably HTML, JavaScript and C programming
- Having access to a text editor suitable for modifying computer code (Atom, Sublime, Notepad++, WinEdit, Bracket, VIM, EMACS)
- Having access to a modern browser such as Google Chrome, Firefox, or similar (not Internet Explorer or Safari!)
^^ Watch the video lecture from the link above! ^^
- Using functions with multiple output for RK4 implementation
- Using functions with single output for RK4 implementation
You can download the necessary files for October 09 session from here
^^ Watch the video lecture from the link above! ^^
- Introduction to Volume Ray Casting (VRC) algorithm
- Implementing a VRC in WebGL using Abubu.js library
You can download the necessary files for October 02 session from here
^^ Watch the video lecture from the link above! ^^
- Performing serial reduction operation on textured data
- Using texelFetch
- Performing parallel reduction operations on texture data using multi-step reduction.
- Understanding the difference in performance of parallel vs. serial reductions.
You can download the necessary files for September 25 session from here
^^ Watch the video lecture from the link above! ^^
- Adding signal plots
- Adding further interactivity to the codes
- Terminating spiral waves using ATP with an interactive code
- Doing your own projects...
You can download the necessary files for September 23 session from here
^^ Watch the video lecture from the link above! ^^
- Preparing tabulated data on CPU
- Using tabulated data in shaders
- Solving a reaction-diffusion model with more than 4 state variables
- A preview on how to setup a WebGL program using multiple source files with a server side solution (PHP)
You can download the necessary files for September 16 session from here
The Beeler-Reuter model can be found from this link.
^^ Watch the video lecture from the link above! ^^
- Initializing a texture from the CPU/JavaScript side
- Accessing the values of the texture on the CPU/JavaScript side
- Writing the texture data to disk
- Reading the texture data from disk
You can download the necessary files for September 11 session from here
^^ Watch the video lecture from the link above! ^^
- Get familiar with implementing 3D data using 2D textures
- Get familiar with using the 3D data in the shader
- Get familiar with visualizing 3D data
You can download the necessary files for September 9 session from here
^^ Watch the video lecture from the link above! ^^
- Use a time variable as one of the color channels of a texture inside a shader.
- A better way defining the set of uniforms for the even and odd time steps of a numerical simulations.
- A reminder that variables changed in the GUI need to be send to all solvers that utilize them.
- Handling mouse events (drag) and integration with an ongoing simulation
You can download the necessary files for September 4 session from here
^^ Watch the video lecture from the link above! ^^
- Initialize a domain using a solver
- Visualize the solution
- Implement a simple time marching algorithm
- Understand even and odd time steps and why they are treated individually
- Understand how to use a single shader to implement both even and odd time steps
- Create the time marching loop
- Interactive with a live simulation via GUI
You can download the necessary files for September 2 session from here
^^ Watch the video lecture from the link above! ^^
- Writing rendering results onto textures
- Visualizing a particular channel of a texture
- Sending information to the GPU via uniforms
- Interacting with a WebGL code and designing a graphical interface
You can download the files for August 28 - Session from here.
^^ Watch the video lecture from the link above! ^^
- Writing loops in GLSL
- Implementing macros and functions
You can download the necessary files for August 21 Session from here.
^^ Watch the video lecture from the link above! ^^
- Grasp a basic understanding of the graphics pipeline
- Being able to utilize the Abubu.js library to draw basic shapes
- Understand the basic roles of the vertex shaders
- Understand the basics of coloring in fragment shaders
- Understand the default geometries and the default geometry in Abubu.js
You can download the files for August 19 - Session from here.