Skip to content

Commit

Permalink
docs: add intro slide to AmpForm mini-demo (#23)
Browse files Browse the repository at this point in the history
* ci: add gitignore to demo folder
* docs: simplify initialization cell
  • Loading branch information
redeboer committed Jul 12, 2021
1 parent a4bc385 commit acf9853
Show file tree
Hide file tree
Showing 3 changed files with 71 additions and 19 deletions.
2 changes: 2 additions & 0 deletions .cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -144,8 +144,10 @@
"pygments",
"pyplot",
"pythoncode",
"q",
"redeboer",
"rtfd",
"rules's",
"savefig",
"scimath",
"seealso",
Expand Down
5 changes: 5 additions & 0 deletions demo/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*
!*.css
!*.ipynb
!.gitignore
!README.md
83 changes: 64 additions & 19 deletions demo/ampform.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
}
},
"source": [
"# AmpForm physics demo"
"# AmpForm physics mini-demo"
]
},
{
Expand All @@ -40,7 +40,7 @@
"source": [
"from IPython.display import Javascript\n",
"\n",
"display(Javascript(\"IPython.notebook.execute_cells_below()\"))"
"Javascript(\"IPython.notebook.execute_cells_below()\")"
]
},
{
Expand Down Expand Up @@ -180,6 +180,42 @@
"particle_selection += PDG.filter(lambda p: p.name.startswith(\"phi\"))"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Common Partial Wave Analysis"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"ComPWA provides an _ecosystem_ of three Python packages:\n",
"1. `QRules`: quantum number conservation rules ('resonance finder')\n",
"2. `AmpForm`: spin formalisms and dynamics\n",
"3. `TensorWaves`: toy MC and model optimization with multiple computational back-ends"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
},
"tags": []
},
"source": [
"Main targets are:\n",
"- to make PWA intelligible with **modern and interactive documentation** ([example](https://ampform.rtfd.io/en/stable/usage/dynamics/k-matrix.html))\n",
"- long-term, open source development that can be picked up by successors (**academic continuity**)\n",
"- to perform PWA with the latest tools from the Python data science community"
]
},
{
"cell_type": "markdown",
"metadata": {
Expand All @@ -201,7 +237,7 @@
},
"source": [
"- **Quantum number conservation rules** are encoded in `QRules`\n",
"- This allows us to **generate particle reactions**"
"- This allows us to investigate potential resonances"
]
},
{
Expand All @@ -222,9 +258,23 @@
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
"slide_type": "fragment"
}
},
"source": [
"`QRules` can also:\n",
"- check **conversation rule violations** in an invalid reaction\n",
"- serve as a **quantum number database** (PDG listings are default input)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
},
"tags": []
},
"source": [
"## 2. [AmpForm](https://ampform.rtfd.io): express transitions as amplitude models"
]
Expand All @@ -239,7 +289,7 @@
},
"source": [
"- `AmpForm` encodes **spin formalisms and dynamics**\n",
"- It can formulate these state transitions as an **amplitude model**"
"- It can formulate QRules's state transitions as an **amplitude model**"
]
},
{
Expand Down Expand Up @@ -279,14 +329,14 @@
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
"slide_type": "fragment"
},
"tags": []
},
"source": [
"`AmpForm` takes care of the spin formalism (helicity), but dynamics have to be chosen:\n",
"- π‘Žβ‚€(1320) lies well within phase space: relativistic Breit-Wigner\n",
"- π‘Žβ‚‚(980) lies below threshold: add **analytic continuation**"
"In our example, **helicity formalism** with the following dynamics:\n",
"- π‘Žβ‚€(1320) lies well within phase space: relativistic Breit-Wigner with form factor\n",
"- π‘Žβ‚‚(980) lies below threshold: **analytic continuation** for phase space factor"
]
},
{
Expand All @@ -296,14 +346,8 @@
"outputs": [],
"source": [
"builder = ampform.get_builder(reaction)\n",
"builder.set_dynamics(\n",
" \"a(2)(1320)+\",\n",
" create_relativistic_breit_wigner_with_ff,\n",
")\n",
"builder.set_dynamics(\n",
" \"a(0)(980)0\",\n",
" create_analytic_breit_wigner,\n",
")\n",
"builder.set_dynamics(\"a(2)(1320)+\", create_relativistic_breit_wigner_with_ff)\n",
"builder.set_dynamics(\"a(0)(980)0\", create_analytic_breit_wigner)\n",
"model = builder.formulate()"
]
},
Expand Down Expand Up @@ -433,8 +477,9 @@
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
"slide_type": "slide"
},
"tags": []
},
"source": [
"## 3. [TensorWaves](https://tensorwaves.rtfd.io): generate toy MC and optimize model"
Expand Down

0 comments on commit acf9853

Please sign in to comment.