Main Page

From Thom Group Wiki
Jump to navigation Jump to search

# _________  # ___   ___     # ______      # ___ __ __     #
#/________/\ #/__/\ /__/\    #/_____/\     #/__//_//_/\    #
#\__.::.__\/ #\::\ \\  \ \   #\:::_ \ \    #\::\| \| \ \   #
#   \::\ \   # \::\/_\ .\ \  # \:\ \ \ \   # \:.      \ \  #
#    \::\ \  #  \:: ___::\ \ #  \:\ \ \ \  #  \:.\-/\  \ \ #
#     \::\ \ #   \: \ \\::\ \#   \:\_\ \ \ #   \. \  \  \ \#
#      \__\/ #    \__\/ \::\/#    \_____\/ #    \__\/ \__\/#
#            #               #             #               #

# _______     # ______       # ______      # __  __      # ______    #
#/______/\    #/_____/\      #/_____/\     #/_/\/_/\     #/_____/\   #
#\::::__\/__  #\:::_ \ \     #\:::_ \ \    #\:\ \:\ \    #\:::_ \ \  #
# \:\ /____/\ # \:(_) ) )_   # \:\ \ \ \   # \:\ \:\ \   # \:(_) \ \ #
#  \:\\_  _\/ #  \: __ `\ \  #  \:\ \ \ \  #  \:\ \:\ \  #  \: ___\/ #
#   \:\_\ \ \ #   \ \ `\ \ \ #   \:\_\ \ \ #   \:\_\:\ \ #   \ \ \   #
#    \_____\/ #    \_\/ \_\/ #    \_____\/ #    \_____\/ #    \_\/   #
#             #              #             #             #           #

Hello, Guten Abend, and Bienvenue to the new Thom Group Wiki. (Apparently evenings are good times to read the Wiki.)

In this Wiki you can find various pieces of useful information, such as when group meetings are, who is going to bring cake, how to run a particular calculation or perform a certain computer trick, who's using which computer in the group, and so on. You can also see how fun we are as a group by looking at our various photos.

Group Calendar

https://calendar.google.com/calendar/render?mode=day&date=20160601T153539#main_7%7Cday-1+23745+23745+23745

Group Expectations

The Group Expectations document is available on overleaf https://www.overleaf.com/read/yddfjrvpjckj


Group Meetings

Past Group Meetings here. Group Meetings (usually) take place every other Monday Friday Thursday at 2pm 3.30pm.



Lent 2025

Date Talk Cake
23rd January INFORMAL Chiara
30th January Bence Charlie
6th February INFORMAL Reka
13th February Rowan Lila
20th February INFORMAL Jack
27th February Reka
6th March INFORMAL
20th March Charlie

Journal Club

12pm in the cybercafe with pizza provided (alternative possible).

Past Journal Clubs here.

2024-25

Date Contributor Paper
30 October 2024 Bence Solving olympiad geometry without human demonstrations
25 Nov 2024 Jack Sustained Quantum Coherence and Entanglement in the Avian Compass
22 Jan 2025 Alex Nonuniversality for crossword puzzle percolation
13 Feb 2025 Charlie Starquakes in millisecond pulsars and gravitational waves emission

Potentially Interesting Seminar Series

Quantum Computing Resources

Quantum Club

Quantum Computing for Quantum Chemistry Discussion Group (QCQCDG) info available at https://www.ch.cam.ac.uk/group/thom/quantum-computing-quantum-chemistry-discussion-group .

Quantum Brainstorm

Informal quantum discussions taking place at 10am on Tuesdays in the supervision area. Notes available here.

Quantum computing Open Questions

Outstanding questions, along with answers and helpful reading material, can be found here.

Summer 'Interns'

Past Summer Interns here.


Dissertations

Project Ideas

Based on recent talks etc.

Group List

The full timeline of all current and past group members is available here. NB autogenerated by `thom-fs-common/group/groupwiki`

An up to date list of group members is also available here.

AJWT group photo 07 11 24 taken by Nathan Pitt University of Cambridge R6B 8515 1 carousel.jpg
Thom Group Retreat, Wales, Lent 2023
Thom Group Retreat, Snowdon, Lent 2023
Thom Group Retreat, Snowdon, Lent 2023
Thom Group photo Summer 2022
Thom Group photo - taken by Nathan Pitt, ©University of Cambridge, August 2021

Front row, left to right: Anna Bui, Brian Zhao, Bang C. Huynh, Arta Safari, Maria-Andreea Filip
Back row, right to left: David Izuogu, Kripa Panchagnula, Zian Wang, Dr Alex Thom
Not in picture: Fabio Albertani, Nicholas Lee, Tarik Benyahia, César Feniou, Benjamin Mokhtar


Thom Group photo - taken by Nathan Pitt, ©University of Cambridge, May 2019
Thom Group photo - taken by Nathan Pitt, ©University of Cambridge, November 2017

Computing Resources

- Group computers available.

- Clusters available.

- Storage available.

Computing Setup Guide

Anaconda takes up a lot of space on /home so it's worth running

  mv ~/.conda /scratch/$USER/.conda
  ln -s /scratch/$USER/.conda ~/.conda

Introduction to basic shell commands

- There are a number of tutorials available which document basic operations that are useful including:

  1. General bash commands
  2. Setting up cygwin
  3. Setting up ssh keys and general bash commands what are helpful
  4. Setting up ssh config files
  5. using GIT
  6. The Ten Git-mmandments
  7. Useful cerebro queue commands
  8. Some vim tidbits

Currently undergoing construction.

How to connect to department machines

On Mac/WSL

  1. Check you have an Admitto account and collect your password from https://www.ch.cam.ac.uk/computing/admitto-service
  2. In the terminal run the command ssh -X crsid@citadel.ch.cam.ac.uk
  3. When prompted input your Admitto username (crsid) and password
  4. Once this has worked run the command ssh -X crsid@machinename in the terminal to log into a particular machine

Set up logging in without a password:

  1. Generate an ssh key by running the command ssh-keygen in the terminal, as described in detail in the section "Introduction to basic shell commands"
  2. Use cd ~/.ssh to navigate to the directory holding the keys, and copy the text from the file "id_rsa.pub" beginning with ssh-rsa. This is your public ssh key
  3. Log into the department citadel machine, and create / navigate to a directory called .ssh
  4. Use chmod 700 .ssh to set permissions for the directory
  5. Input vi authorized_keys to open up the vi text editor. Press i, then paste in your public ssh key. Press escape, then type :wq and press enter to write and quit the editor
  6. Log into the particular machine you want to ssh to, and repeat steps 3 to 5
  7. Exit back to your machine and navigate to the home directory
  8. Input vi .ssh/config to open the vi text editor. Press i, then paste in the following, with your crsid and machine name in the places given:
  Host citadel
     User crsid
     Hostname citadel.ch.cam.ac.uk
     ForwardAgent yes
     ProxyCommand none
  Host machinename
     Hostname machinename
     ProxyCommand ssh citadel -W %h:%p
     User crsid
     ForwardAgent yes
     ServerAliveInterval 60
     ServerAliveCountMax 10


Press escape, then input :wq followed by enter to exit the editor. You can now log straight into citadel with ssh citadel or straight into your machine with ssh machinename. The last two commands stop the ssh being killed if you are idle for too long. The ServerAliveInterval is how many seconds to ping a null packet, and the ServerAliveCountMax are how many consecutive times it needs to fail for the ssh to be killed.


File Transfer Protocol

You may want to transfer files between department machines and your computer. The standard way is to scp via the terminal with commands :

UPLOAD :       
scp -o ProxyCommand="ssh crsid@citadel.ch.cam.ac.uk nc machinename 22" LocalPath/FileName crsid@machinename.ch.cam.ac.uk:/RemotePath
DOWNLOAD :     
scp -o ProxyCommand="ssh crsid@citadel.ch.cam.ac.uk nc machinename 22"  crsid@machinename.ch.cam.ac.uk:/RemotePath/FileName LocalPath

However, a more convenient way is to set up a File Transfer Protocol (FTP) between machines. It can come with a graphic user interface, where you can drag and drop files from the department machine to your computer.

Windows

I recommend the WinSCP software. You can download it from here. Once installed, click New Session, and choose SFTP protocol with :

Hostname = machinename
Port number = 22
Username = crsid
Leave 'Password' entry empty.

Then click on Advanced..., Tunnel tab, check the Connect through SSH tunnel tickbox and enter:

Hostname = citadel.ch.cam.ac.uk
Port number = 22
Username = crsid
Leave 'Password' entry empty.

Click OK and click Save, and finally Login. Enter your admitto password twice. You can now navigate in the directories of the remote machine on the right tab, and of your local computer on the left tab, and you can transfer files between the two with a drag and drop. Enjoy !


Mac/Linux

You can download FileZilla for MacOS or linux. The problem is that FileZilla does not support tunnel ssh. To open the connection, you need to use a ssh client like puTTY. On MacOS please follow this guide.

On Linux you can do :

sudo apt-get install -y putty

Open it by typing putty on the terminal. The interface should open. Type the following entries :

in the SSH/Tunnels tab :

Source Port = 3111 
Destination = machinename:22 
local 
auto

and click Add. (source port can be any number > 1024)

in the session tab :

Host Name = citadel.ch.cam.ac.uk 
port = 22 
connection type = SSH

Enter a name for this connection in the saved sessions entry, and click Save.

Now click Open. A terminal should open, type your crsid and your admitto password, you're now logged into Citadel (it's normal that it's not your machine).

Now open FileZilla, and enter :

Host = sftp://localhost
username = crsid
password = admitto password
port = 3111 

and click Quickconnect. (port needs to be the same as source port in puTTY).

A window will open (Unknown host key), click OK. Hopefully the connection is successful.

You can now navigate in the directories of the remote machine on the right tab, and of your local computer on the left tab, and you can transfer files between the two with a drag and drop. Enjoy !

Using VSCode Remote

Windows

  1. Find your wsl ssh config file as a Windows path, for example '\\wsl.localhost\Ubuntu\home\<name>\.ssh\config
  2. Make sure you have the 'Remote SSH' extension installed in VSCode
  3. In your config file, instead of using the layout above, change it to
  Host citadel
     User <crsid>
     Hostname citadel.ch.cam.ac.uk
     ForwardAgent yes
     ProxyCommand none
  Host <machinename>
     Hostname <machinename>
     ProxyJump citadel
     User <crsid>
     ServerAliveInterval 60
     ServerAliveCountMax 10

(this has removed the ForwardAgent and ProxyCommand lines and replaced with ProxyJump instead)

  1. In VSCode, set your ssh config file manually to your path. Your wsl ssh folder can be copied into a Windows path (C:\Users\<user>\<blah>)if VSCode is not happy with the wsl path.
  2. At the bottom left, the green arrows is where you will be able to connect to remote machines. Click on it, and it should recognise all the hosts in your config file
  3. Select your host, and you will need to enter your password twice

Installing Slack on department machines

Ubuntu

  1. Download "Slack.deb" from:
  https://slack.com/intl/en-gb/downloads/linux

(NB you need to search a bit for the .deb file as the default download is a .rpm. As at 2025/01/25 I found slack-desktop-4.41.105-amd64.deb)

  1. Make a directory and run dpkg replacing the with the appropriate file name.
  mkdir /scratch/crsid/slack
  dpkg -x Slack.deb /scratch/crsid/slack
  1. Install the desktop shortcut by pasting the following text into ~/.local/share/applications/slack.desktop
  [Desktop Entry]
  Type=Application
  Exec=/scratch/crsid/slack/usr/lib/slack/slack %U
  Icon=/scratch/crsid/slack/usr/share/pixmaps/slack.png
  Name=Slack
  Terminal=false
  StartupWMClass=Slack
  Comment=Slack Desktop
  GenericName=Slack Client for Linux
  StartupNotify=true
  Categories=GNOME;GTK;Network;InstantMessaging;
  MimeType=x-scheme-handler/slack;
  1. Run to register slack://foo.bar urls (necessary for browser integration with the desktop app)
  xdg-mime default launch-slack.desktop x-scheme-handler/slack
  1. Log out then in and it should show up in the search bar (Windows button). Right click to pin to favorites (task bar)

Make sure you've replaced "crsid" with your crsid.

Useful Software

  1. Using QChem
  2. Using QCMagic
  3. SimpleDMC
  4. MRCC
  5. GAMESS

Useful Information

  1. Guidelines on Code Review
  2. How to do things relating to HANDE
  3. How to run PySCF or other Python software on Archer
  4. How to run QChem on darwin
  5. Where to get Travel Money
  6. Backed-up Storage
  7. How to get IQMol to run a local version of Q-Chem via SSH
  8. Slow ubuntu dash
  9. Persistent X sessions for remote working
  10. Paper submission
  11. Getting Started with cerebro
  12. Things to do before leaving
  13. The Ten Git-mmandments: what NOT to do
  14. Mathematical Physics Lectures by Frederic Schuller: Geometrical Anatomy of Theoretical Physics and Lectures on Quantum Theory
  15. Mathematical Physics Lectures by Carl Bender: Perturbation and Asymptotic Series

Archiving data for the university repository

To-do list for the Thom Group Website

Group Activities

To-do list for the Wiki

- Sandbox for safe editing : Sandbox

- A pretty picture

- A "How to:" page on setting up cygwin, ssh keys and general bash commands what are helpful

- A "How to:" page on using qchem

- A Pretty picture for the $wgLogo