Skip to content

wwjCMP/ScientificComputingDemos

 
 

Repository files navigation

(Work in progress) Demos projects in the book: Scientific Computing for Physicists

CI

Get started

Please make sure you have Julia installed on your local machine. If not, please download and install it with juliaup.

  1. Clone this repository to your local machine:
    $ git clone https://github.com/GiggleLiu/ScientificComputingDemos.git
  2. Initialize the environment first by running the following command in the terminal:
    $ make init-PhysicsSimulation
  3. Run the demos by running the following command in the terminal:
    $ make test-PhysicsSimulation
    $ make example-PhysicsSimulation
    make-test-% is used to run the tests in the PhysicsSimulation directory. make-example-% is used to run the examples in the PhysicsSimulation directory. The PhysicsSimulation is the name of the directory where the demos are located. You can replace it with the name of the directory where the demos are located.

Contents

Basic

  1. MyFirstPackage - Lorenz attractor

Matrix computation

  1. SimpleLinearAlgebra - Implement LU decomposition, QR decomposition and FFT et al.
  2. ImageProcessing - FFT and SVD for image processing
  3. CompressedSensing - Compressed sensing for image compression

Machine learning and optimization

  1. GraphClustering - Spectral clustering algorithm
  2. KernelPCA - Kernel method and Kernel PCA

Physics simulation

  1. PhysicsSimulation - Simulate a spring system, leapfrog method, and eigenvalue problem
  2. LatticeBoltzmannModel - Lattice Boltzmann Fluid Dynamics
  3. LatticeGasCA - Lattice gas cellular automata

Statistical physics and computational complexity

  1. IsingModel - Ferromagnetic Ising model using the Monte Carlo method
  2. Spinglass - Spin glass model using tensor networks and simulated annealing.
  3. SimpleTensorNetwork - Tensor networks for solving spin glass and inference problems

About

Demos for book: Scientific computing for physicists.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Julia 99.4%
  • Makefile 0.6%