Teachers

Canvas

This course uses Canvas. See tips and guides for Canvas.

Log into Canvas

Dear all, since we have more or less done with the lecture topics relevant for the projects (and I have not received specific wishes about additional topics), we will from Friday April 26 to Friday May 10, use the time for the lectures to discuss and work on the finalization of project 2. The schedule is thus

April 26: 10.15am-3pm, work (and discussions) on project 2

May 3: 10.15am-3pm, work on and discussions of project 2

May 10: 10.15am-3pm, work on and discussions of project 2 and summary of course

May 17 is a public holiday but we may (if needed) have a lab session on May 24.

Best wishes to you all,

Daniel, H?kon and Morten

p.s. Morten will be there from 10-12pm, while Daniel and H?kon will alternate in covering the time 12pm-3pm

 

Apr. 25, 2024 12:24 PM

Dear all, this week's lecture is a technical one. We will discuss how we can move from systems of bosons to a system of fermions.

This means that we will discuss our wave function ansatz again, and now how to include the anti-symmetry of the total fermion wave function.

This will be done via the introduction of a so-called Slater determinant.

Our last two lectures, that is April 26 and May 3, will be devoted to alternative topics plus discussions of the project. One alternative project is the discussion of diffusion Monte Carlo methods.  Feel free to suggest other topics for the last two lectures.

The material for this week is at for example https://github.com/CompPhysics/ComputationalPhysics2/blob/gh-pages/doc/pub/week13/ipynb/week13.ipynbLinks to an external site...

Apr. 18, 2024 8:31 AM

Hi all, here are the plans for this week

  1. We continue our discussion of Neural Networks and Boltzmann Machines linked with project 2. We will repeat some of the equations from last week and discuss possible implementations.

  2. If time, start discussion on how to implement Slater determinants, see last part of slides. This topic will be continued next week.

The slides are at (jupyter-notebook) at https://github.com/CompPhysics/ComputationalPhysics2/blob/gh-pages/doc/pub/week12/ipynb/week12.ipynb

 

Best wishes to you all,

Daniel, H?kon and Morten

Apr. 12, 2024 7:42 AM

Dear all, welcome back after hopefully a nice break.

Here are our plans for this week:

  1. Discussions of various variants of project 2

  2. Neural Networks and Boltzmann Machines, introduction to Boltzmann machines

You find the lecture notes at https://github.com/CompPhysics/ComputationalPhysics2/blob/gh-pages/doc/pub/week12/ipynb/week12.ipynb

Similarly, all four variants of project 2 are listed at https://github.com/CompPhysics/ComputationalPhysics2/tree/gh-pages/doc/Projects/2024/Project2

During our lectures we will mainly discuss the variants with Boltzmann machines and how ...

Apr. 5, 2024 7:11 AM

Dear all, this week the plans are

  • Discussion of project 1 and possible alternatives for project 2
  • Wrap up of parallelization discussions, see also slides from last week. We will go through both MPI and OpenMP for project 1 for those of you who program in C++.
  • Note change of deadline for project 1 to April 1.

The lecture material  for this week is at https://github.com/CompPhysics/ComputationalPhysics2/tree/gh-pages/doc/pub/week11 in various formats.

See also the slides from last week at https://github.com/CompPhysics/ComputationalPhysics2/tree/gh-pages/doc/pub/week10.

The following books can also be useful, see Using OpenMP by Chapman et al at https://mitpress.mit.edu/books/using-openmp and Using MPI by Gropp et al. at https://mitpress.mit.edu/book...

Mar. 19, 2024 9:49 PM

Dear all and welcome back to FYS4411/9411.

The plans this week aim at 

  1. Reminder from last week about statistical observables, the central limit theorem and bootstrapping, see notes from last week

  2. Resampling Techniques, emphasis on Blocking and discussion of the blocking method

  3. Discussion of one-body densities (whiteboard notes)

  4. Start discussion on optimization and parallelization for Python and C++

Note, these notes contain additional material om optimization and parallelization. Parts of this material will be discussed this week.

We will try to wrap up the discussion of resampling methods during the first hour. Daniel will  give a short presentation on how to optimize and parallelize code with python. We will use the rest of the lecture to discuss how to implement OpenMP with C++.

Else, the jupyte...

Mar. 14, 2024 6:16 PM

Dear all, welcome back!  The plan this week is to introduce another important element to our Monte Carlo machinery, namely the inclusion of resampling techniques. These are statistical analysis tools which aim at getting better estimates of various expectation values and their corresponding errors (read standard deviations). We will focus on the Blocking method and the bootstrap method, two popular methods used in the post-analysis of our data. The plan is as follows

Topics.

  • Reminder from last week on optimization methods

  • Resampling Techniques and statistics: Bootstrap and Blocking

     

     

     

Teaching Material, videos and written material.

  • Overview video on the ...

Mar. 7, 2024 1:12 PM

Dear all, this week we will focus only on project work before we introduce new theoretical elements.

This means that there is no regular lecture on March 1, we start at 10.15am with lab and project work only and end at 3pm as usual.

The hope is that we are all able to have importance sampling implemented and hopefully to start with the implementation of the optimization part discussed last Friday (February 23).

Next week we will introduce our second-last theoretical element that we will need to implement. This elements deals with a proper statistical evaluation of the errors in the Monte Carlo sampling and leads to so-called resampling methods like Bootstrap, Jackknife and Blocking. 

Since we will produce millions of Monte Carlo samples, the preferred method for a reliable statistical evaluation of the standard error is the so-called Blocking method. The slides for next week's lecture can be found ...

Feb. 29, 2024 9:02 AM

Dear all, the topic this week is a discussion of various gradient methods in order to find the optimal parameters for  the large VMC runs.

We will discuss various methods and discuss the pros and cons and outline computational strategies. The topics this week deal thus with various gradient optimization methods and we will cover

a. Semi-Newton methods (Broyden's algorithm, most used for our type of problems) and plain gradient descent

b. Steepest descent and conjugate gradient descent

c. Stochastic gradient descent

d. We will wrap up (see end of the slides for this week and link below) with how we can implement the plain gradient descent approach and quasi-newton methods.


Recommended background literature if you wish to dig deeper, Convex Optimization by Boyd and Vandenberghe. Their lecture slides  at https://web.stanford.edu/~boyd/cvxbook/bv_cvxslides.pdf are very...

Feb. 22, 2024 11:30 AM

Dear all, welcome back to FYS4411/9411.

This week we aim at, after a review of what we did last week, to start with the optimization part. That is how to find the optimal variational parameters without having to run a full scale calculation for all selected parameters.

Before we start with the optimization part, please do take a look at the slides from last week concerning the expressions for the kinetic energy and the quantum force with a given trial wave function. You find those notes at the end of the notes from last week (week 4), see for example https://github.com/CompPhysics/ComputationalPhysics2/blob/gh-pages/doc/pub/week4/ipynb/week4.ipynb

The plan for the lecture this Friday is thus to

Review from last week with an emphasis on computational aspects in calculating gradients and kinetic energies for various wave functions

Reminder on Fokker-Planck equation and Langevin equations

Start optimization:...

Feb. 15, 2024 12:46 AM

Dear all, welcome back to FYS4411/9411.

This week we aim at, after a review of what we did last week, to start with the optimization part. That is how to find the optimal variational parameters without having to run a full scale calculation for all selected parameters.

Before we start with the optimization part, please do take a look at the slides from last week concerning the expressions for the kinetic energy and the quantum force with a given trial wave function. You find those notes at the end of the notes from last week (week 4), see for example https://github.com/CompPhysics/ComputationalPhysics2/blob/gh-pages/doc/pub/week4/ipynb/week4.ipynb

The plan for the lecture this Friday is thus to

Review from last week with an emphasis on computational aspects in calculating gradients and kinetic energies for various wave functions

Reminder on Fokker-Planck equation and Langevin equations

Start optimization:...

Feb. 15, 2024 12:46 AM

Dear all, welcome back to FYS4411/9411.

This week we aim at, after a review of what we did last week, to start with the optimization part. That is how to find the optimal variational parameters without having to run a full scale calculation for all selected parameters.

Before we start with the optimization part, please do take a look at the slides from last week concerning the expressions for the kinetic energy and the quantum force with a given trial wave function. You find those notes at the end of the notes from last week (week 4), see for example https://github.com/CompPhysics/ComputationalPhysics2/blob/gh-pages/doc/pub/week4/ipynb/week4.ipynb

The plan for the lecture this Friday is thus to

Review from last week with an emphasis on computational aspects in calculating gradients and kinetic energies for various wave functions

Reminder on Fokker-Planck equation and Langevin equations

Start optimization:...

Feb. 15, 2024 12:45 AM

Dear all, welcome back to FYS4411. An important note first, our lecture 1015am-12pm on Friday the 9th is via zoom only since Morten is away in the US till February 14. Friday the 16th we have a regular in-person lecture. The lab on February 9 (tomorrow) is in person as usual.

The zoom link is

https://msu.zoom.us/j/6424997467?pwd=d0xQUDZmaU00T1Job1J3RnVuL3l6UT09

Meeting ID: 642 499 7467
Passcode: FYS4411

 

The plans for this week are 

Topics.

  • Short repetition from last week

  • Mathematical and computational details of importance sampling and Fokker-Planck and Langevin equations

  • For the lab session we will continue our discussions on how to build a VMC code for project 1

The jupyter-notebook is attached and we will cove...

Feb. 8, 2024 6:17 PM

Dear all and welcome back to Comp Phys 2. 

Our plans this week are

  • Markov Chain Monte Carlo and repetition from last week
  • Metropolis-Hastings sampling and introducing importance sampling

Importance sampling will allow us to sample more reliably from a transition probability that mimics the physics at play. This will lead us to a discussion of what is called the Fokker-Plank equation and the Langevin equation in actual implementations of importance sampling.

We start with a top-down approach first where we present the equations we have to implement and show how to program this. Thereafter we will discuss the mathematical foundation. In the lab session we continue on implementing the variational Monte Carlo algorithm for a system of non-interacting bosons first.

 

The jupyter-notebook for this week can be retrieved from ...

Feb. 1, 2024 8:03 AM

Dear all, welcome back to FYS4411.

The plans this week are (lecture and lab Friday Jan 26):

Topics for lecture and lab

Repetition from last week and links to code templates in python and C++

Essential ingredients: Variational Monte Carlo methods, Metropolis Algorithm, statistics and Markov Chain theory

How to structure the VMC code

Teaching Material, videos and written material.

 - See the jupyter-notebook at https://github.com/CompPhysics/ComputationalPhysics2/blob/gh-pages/doc/pub/week2/ipynb/week2.ipynb

Code templates for first project (these will be discussed during the lab sessions)


The C++ template at https://github.com/mortele/variational-monte-carlo-fys4411
The python template, using JAX at https://github.com/Daniel-Haas-B/FYS4411-Template


The notes for this week are best viewed via the jupyter-notebook since there are code exam...

Jan. 25, 2024 11:39 AM

Hi all, here are various links of interest.

Video of lecture with subtitles at https://youtu.be/2N0KS7uJJvo

Slides for first week at http://compphysics.github.io/ComputationalPhysics2/doc/pub/week1/html/week1-reveal.html

Discord channel at  https://discord.gg/pnGmStt4A2

Link to c++ template for project 1 at github.com/mortele/variational-monte-carlo-fys4411

The link to the python framework will be made accessible later.

 

Jan. 19, 2024 2:04 PM

Dear all, welcome to a new semester and FYS4411/9411. 

Our first session is January 19 at 10am, room F?434 at the Department of Physics, UiO. 

All lectures will be recorded and the videos will be posted asap online here. Our first lab session follows right after the first lecture.

More information will be sent to all of you during the week of January 8-12. 

Best wishes to you all and welcome.

Daniel, H?kon, Morten and Ruben

Dec. 30, 2023 10:50 AM