Phys 581 - The Standard Model of Particle Physics#
This is the main project for the WSU Physics course Phys 581: The Standard Model of Particle Physics first offered in Fall 2023.
Physics has a successful track record of providing effective solutions to complex problems outside its specific domain. This course will focus on using efficient numerical techniques inspired by physics to solve challenging problems in a wide variety of applications. Techniques will be chosen from physics applications, but also applied to problems outside of the physics domain including economics, biology, sociology, etc. Students will be introduced to powerful numerical toolkits based on the SciPy and NumFocus ecosystem. Using the CoCalc platform will enable rapid development and prototyping with an explicit path to stable, tested, and performant codes capable of supporting research, or industry applications.
Docs#
To build the documents interactively:
make doc-server
This will run sphinx-autobuild
which will launch a webserver on http://127.0.0.1:8000 and rebuild the docs whenever you
save a change.
Here is the play-by-play for setting up the documentation.
cd Docs
sphinx-quickstart
wget https://brand.wsu.edu/wp-content/themes/brand/images/pages/logos/wsu-signature-vertical.svg -O _static/wsu-logo.svg
cp -r ../envs/default/lib/python3.9/site-packages/sphinx_book_theme/_templates/* _templates
I then edited the conf.py
hg add local.bib _static/ _templates/
CoCalc Setup#
Purchase a license with 2 projects to allow the course and WSU Courses CoCalc project and Shared CoCalc Project to run. This approach requires the students to pay $14 for access four the term (4 months). They can optionally use any license they already have instead.
Optionally, one might opt to purchase a license for \(n+2\) projects where \(n\) is the number of students, if there is central funding available. See Course Upgrading Students for more details.
Next, create a course. I do this in my WSU Courses CoCalc project.
Create a Shared CoCalc Project and activate the license for this project so that it can run. I then add the SSH key to may
.ssh/configfiles so I can quickly login.Clone the repos into the shared project and initialize the project. Optional, but highly recommend – use my
mmf-setupproject to provide some useful featuresssh smc<project name> # My alias in .ssh/config python3 -m pip install mmf_setup mmf_setup cocalc
This provides some instructions on how to use the CoCalc configuration. The most important is to forward your user agent and set your
hgandgitusernames:~$ mmf_setup cocalc ... If you use version control, then to get the most of the configuration, please make sure that you set the following variables on your personal computer, and forward them when you ssh to the project: # ~/.bashrc or similar LC_HG_USERNAME=Your Full Name <your.email.address+hg@gmail.com> LC_GIT_USEREMAIL=your.email.address+git@gmail.com LC_GIT_USERNAME=Your Full Name To forward these, your SSH config file (~/.ssh/config) might look like: # ~/.ssh/config Host cc_phys-581-the-standard-model-of-particle-physics User 4578ccc855cf413d9e4c82c69e30121e Host cc_phys-581-the-standard-model-of-particle-physics HostName ssh.cocalc.com ForwardAgent yes SendEnv LC_HG_USERNAME SendEnv LC_GIT_USERNAME SendEnv LC_GIT_USEREMAIL SetEnv LC_EDITOR=vi
Logout and log back in so we have the forwarded credentials, and now clone the repos.
git clone https://gitlab.com/wsu-courses/physics-581-the-standard-model.git phys-581-the-standard-model-of-particle-physics cd phys-581-the-standard-model-of-particle-physics make
The last step runs
git clone git@gitlab.com:wsu-courses/physics-581-the-standard-model_resources.git _ext/Resourceswhich puts the resources folder in_ext/Resources.Create an environment:
ssh cc_phys-581-the-standard-model-of-particle-physics cd phys-581-the-standard-model-of-particle-physics anaconda2021 anaconda-project prepare conda activate envs/phys-581 python -m ipykernel install --user --name "phys-581" --display-name "Python 3 (phys-581)"
This will create a Conda environment as specified in
anaconda-project.ymlinenvs/phys-581.
Funding#
Some of the material presented here is based upon work supported by the National Science Foundation under Grant Number 2012190. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.
