Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
339 commits
Select commit Hold shift + click to select a range
1199784
Merge branch 'feature/20pager_1ghz_plots' of https://github.com/proje…
cclaessens Jun 21, 2023
45105a7
Performing tests
taliaweiss Jun 22, 2023
546dca6
added loaded Q print
cclaessens Jun 22, 2023
b18425e
sensitivity vs. frequency plot
cclaessens Jul 2, 2023
75a668b
Performing tests
taliaweiss Jul 3, 2023
a2dc6f2
Merge fix
taliaweiss Jul 3, 2023
f5aa6ad
Molecular<->atomic direct comparison plot
taliaweiss Jul 6, 2023
0a76fa6
changes to frequency scaling plot
cclaessens Jul 8, 2023
ecae6db
Merge branch 'feature/20pager_1ghz_plots' of https://github.com/proje…
cclaessens Jul 8, 2023
368521f
SNR calculations
taliaweiss Jul 19, 2023
e41af73
Merge branch 'feature/20pager_1ghz_plots' of https://github.com/proje…
taliaweiss Jul 19, 2023
6d5d7b4
added more noise and snr prints
cclaessens Jul 20, 2023
f3e35bc
Check cavity Q compared with Hamish's formula
taliaweiss Jul 21, 2023
6d18b75
Merge branch 'feature/20pager_1ghz_plots' of https://github.com/proje…
taliaweiss Jul 21, 2023
a22be80
"finding factor 22"
cclaessens Jul 21, 2023
4014d9f
Merge branch 'feature/20pager_1ghz_plots' of https://github.com/proje…
taliaweiss Jul 21, 2023
20309d6
added cca test scenario
cclaessens Sep 26, 2023
61d1f64
Merge branch 'feature/20pager_1ghz_plots' of https://github.com/proje…
cclaessens Sep 26, 2023
cf195d4
moved cavity sensitivity to Cavity_sensitivity_analysis.py in test_an…
cclaessens Oct 6, 2023
5abc55e
some path cleaning
cclaessens Oct 6, 2023
c8c2dbe
Merge pull request #60 from project8/feature/20pager_1ghz_plots
cclaessens Oct 6, 2023
fecdba8
adding pdf to gitignore and cca sensitivity script
cclaessens Oct 6, 2023
808c32c
added DS_Store to gitignore
cclaessens Oct 8, 2023
970c82c
Change configuration in Sensitivity_test.py to recreate proposal dens…
cclaessens Oct 8, 2023
710da2a
checked all plots in Cavity_Sensitivity_analysis.py still work and ma…
cclaessens Oct 9, 2023
c5ada97
some cleaning in test script
cclaessens Oct 10, 2023
93a9e6d
implementation of configurable crlb constant from Mermithid workshop
jkgaison65 Oct 12, 2023
0bad252
implemented feature to calculate pitch angle-dependent trapping effic…
jkgaison65 Oct 13, 2023
c5b8ac7
made it possible to not optimize density. added LFA_Sensitivity script
cclaessens Feb 7, 2024
49dc55c
Remove unneeded division by 2 in SNR calcualtions
taliaweiss Feb 13, 2024
5016426
Testing LFA sensitivity options
taliaweiss Mar 12, 2024
ec59de5
starting the config file parameter documentation
cclaessens Mar 12, 2024
35e4e5b
Added sensitivity documentation file with some systematics description
taliaweiss Mar 12, 2024
a40b010
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss Mar 12, 2024
7ed5ac4
Finished systematic list; made systematics section headings
taliaweiss Mar 12, 2024
b271128
copied all parameters that are in LFA config file and started replaci…
cclaessens Mar 12, 2024
acd4a67
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
cclaessens Mar 12, 2024
9ca1e98
Small changes
taliaweiss Mar 12, 2024
254125d
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss Mar 12, 2024
85e38a4
trying to include new documentation in index
cclaessens Mar 12, 2024
575fce1
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
cclaessens Mar 12, 2024
320b1be
more parameter descriptions
cclaessens Mar 12, 2024
b531563
new processor for scanning arbitrary sensitivity parameter and optimi…
cclaessens Mar 15, 2024
8ea753b
made radial and detection efficiency configurable
cclaessens Mar 15, 2024
81b4c4d
Merge pull request #62 from project8/feature/pitch_dependent_efficiency
cclaessens Mar 15, 2024
79cb363
updated documentation to reflect update in efficiency calculation.
cclaessens Mar 15, 2024
060bdbc
Merge branch 'feature/sensitivity_curve' into feature/scan_sensitivit…
cclaessens Mar 15, 2024
fc4bdbd
removed parameter category from plot labels and filenames
cclaessens Mar 15, 2024
d8fc9a7
Small additions to sensitivity documentation file
taliaweiss Mar 20, 2024
24dccda
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss Mar 20, 2024
f8768bf
Initial 1 GHz LFA scenario optimization and plots
taliaweiss Mar 21, 2024
2ffb378
small updates in parameter descriptions
cclaessens Mar 21, 2024
d405c40
added script description. not sure if links work.
cclaessens Mar 21, 2024
c0e5304
Added initial description of translational Doppler broadening
taliaweiss Mar 21, 2024
0366a66
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss Mar 21, 2024
8e90b05
Tweaks
taliaweiss Mar 21, 2024
e67d1e7
Try math rendering
taliaweiss Mar 21, 2024
3066a7f
Change formatting of bullets
taliaweiss Mar 21, 2024
10cc160
minor changes
cclaessens Mar 21, 2024
0567008
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
cclaessens Mar 21, 2024
0fd3eb5
improved and cleaned sensitivity scan processor and script. results a…
cclaessens Mar 21, 2024
8d31780
fixed indentation
cclaessens Mar 21, 2024
68400ab
Merge pull request #63 from project8/feature/scan_sensitivity_parameter
cclaessens Mar 21, 2024
af77384
got example l_over_d scan to work
cclaessens Apr 3, 2024
b5d7dc9
1 GHz and 500 MHz LFA comparison
taliaweiss Apr 19, 2024
266a832
Version with reduced efficiency for lower L/D
taliaweiss Apr 19, 2024
4854fdb
removed defaulting to exposure axis. now there is no default.
cclaessens Apr 21, 2024
2ba2ca0
re-organized print_SNRs function.
cclaessens May 2, 2024
020cbc2
reorganized mermthid
cclaessens May 2, 2024
1e031c4
reducing code dublication
cclaessens May 3, 2024
1262db6
Merge pull request #61 from project8/feature/test_configure_CLRB
cclaessens May 3, 2024
cc57be1
replaced pi with np.pi
cclaessens May 3, 2024
c89fb6f
Merge branch 'feature/sensitivity_curve' into feature/reorganize_merm…
cclaessens May 3, 2024
c6ef59a
addressing review comments. also made final state configuration optio…
cclaessens May 7, 2024
9bced1d
Added return statements to cavity formulas print functions to let sca…
benanator77 May 7, 2024
0c2e698
Merge pull request #64 from project8/feature/reorganize_mermithid
cclaessens May 8, 2024
148b644
Improving plot formatting
taliaweiss May 14, 2024
bd31e8b
Clean section on Scripts used in sensitivity calculations
taliaweiss May 14, 2024
b0f962d
Updated readme
cclaessens May 14, 2024
1cc2242
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
cclaessens May 14, 2024
744f267
Add info re config files/documentation; improve formatting
taliaweiss May 14, 2024
99dd6d8
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss May 14, 2024
426a938
fixes in readme
cclaessens May 14, 2024
9e0beb7
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
cclaessens May 14, 2024
fce82da
Fix more formatting
taliaweiss May 14, 2024
d7499c4
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss May 14, 2024
601786b
Fix math formatting
taliaweiss May 14, 2024
8b03bc9
hopefully fixed title
cclaessens May 14, 2024
bcb7b8a
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
cclaessens May 14, 2024
ca462fc
Created readthedocks.yaml
cclaessens May 14, 2024
70dc13f
added spinx_rtd_theme
cclaessens May 14, 2024
d5590c6
typo
cclaessens May 14, 2024
9fe855d
trying requirements.txt
cclaessens May 14, 2024
d927a63
just sphinx_rtd_theme
cclaessens May 14, 2024
e65b5cc
another way
cclaessens May 14, 2024
8b6f39b
adding better-apidoc in requirement
cclaessens May 14, 2024
e1a044f
more requirements
cclaessens May 14, 2024
f425bc9
in case the order matters
cclaessens May 14, 2024
e3fb414
dunno
cclaessens May 14, 2024
fb10716
started conf from scratch
cclaessens May 20, 2024
848f6c3
trying different extension
cclaessens May 20, 2024
a1d9c6d
switched to sphinx_rtd_theme
cclaessens May 20, 2024
6d513b8
commented apidoc in makefile. I think it is not used.
cclaessens May 22, 2024
3cca3d6
seems to work without betterapi. deleting it.
cclaessens May 22, 2024
57f0bdd
Merge pull request #66 from project8/fix_rtd_documentation
cclaessens May 22, 2024
9068661
adding prints for efficiency and crlb in case of nonzero slope
cclaessens May 24, 2024
8f19317
Fixed miss-handling of units for outputting scan parameters
benanator77 May 24, 2024
6f9daea
prepping for merging feature/sensitivity_curve
benanator77 May 28, 2024
4ef313c
Finished merging, see some logging errors tho
benanator77 May 28, 2024
66e3c18
Fixed lingering issue with track duration units
benanator77 May 28, 2024
ac564ca
fixed bug that had broken the Phase II sensitivity line in the Cavity…
cclaessens May 28, 2024
07ceb6f
added check of current value to detect wrong combination of category …
cclaessens May 28, 2024
80fe4d3
Merge branch 'feature/sensitivity_curve' into feature/scan_output_array
benanator77 Jun 1, 2024
41966af
Small edits to documentation
taliaweiss Jun 6, 2024
058e69b
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss Jun 6, 2024
26fc765
changed 1.28 to 1.64
cclaessens Jun 7, 2024
775e356
Temporarily modify sensitivity test file not to include comparison cu…
taliaweiss Jun 10, 2024
1c34f69
Merge fix; change printouts from 1.28 to 1.64
taliaweiss Jun 11, 2024
185459e
Ensure I'm optimizing over density
taliaweiss Jun 11, 2024
153b0f6
Merge branch 'feature/sensitivity_curve' into feature/LFA_sensitivity
taliaweiss Jun 11, 2024
d462bf9
Remove optimize_main_density parameter
taliaweiss Jun 11, 2024
5ecb40f
No longer configure unused parameter
taliaweiss Jun 11, 2024
f3ce3e9
Coded calculation of atom trap bite efficiency; added efficiency fact…
taliaweiss Jun 12, 2024
9242e40
Add initial 'BNL magnet' sensitivity scenario
taliaweiss Jul 10, 2024
ca5f9ed
Added option for log param array to parameter scanning, defaults to '…
benanator77 Jul 17, 2024
297e2d4
Printing text to note when numbers are for highest-exposure point on …
taliaweiss Sep 16, 2024
06f3958
Added function to print disclaimers about sensitivity calculation (an…
taliaweiss Sep 16, 2024
8a7b0c2
Fixed mistake in function to print disclaimers about sensitivity calc
taliaweiss Sep 16, 2024
f9282de
Adding my current version of the parameter scan config
benanator77 Sep 16, 2024
e87c9b2
Implemented Talia's suggestions in PR request comments, and also foun…
benanator77 Sep 17, 2024
89d5331
Merge branch 'feature/sensitivity_curve' into feature/1.64_times_sigma
taliaweiss Oct 2, 2024
6d71259
Merge pull request #69 from project8/feature/1.64_times_sigma
taliaweiss Oct 2, 2024
d8679f9
Making plot with updated LFA values and PIV scenario with min pitch =…
taliaweiss Oct 6, 2024
10b8e01
Prepping merge and resolving conflicts. Moved unit handling out of Ca…
benanator77 Oct 17, 2024
edc49f8
Print out systematics and track length before optimizing density; sta…
taliaweiss Oct 22, 2024
099727f
Implemented Wouter's 'flat fraction' code in sensitivity calculation,…
taliaweiss Oct 30, 2024
b141f9a
Include linkage between cavity power and flat-harmonic model trajecto…
taliaweiss Oct 31, 2024
c68fe87
Merge branch 'feature/sensitivity_curve' into feature/scan_output_array
taliaweiss Oct 31, 2024
a48e5b6
Merge pull request #68 from project8/feature/scan_output_array
taliaweiss Oct 31, 2024
5eeae19
Divide TE011 mode power by 2, per Rick's findings
taliaweiss Nov 3, 2024
e751050
Fix typo
taliaweiss Nov 4, 2024
300a2ea
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss Nov 4, 2024
59cb5f4
Print out f_c uncertainty from CRLB in Hz
taliaweiss Nov 4, 2024
d4fb413
Added comments pointing out Rick's factor of 1/2 in cavity power and …
taliaweiss Nov 5, 2024
c7b024f
added independent trap L/D dependency for electron axial motion
Nov 5, 2024
98a42f2
added independent trap L/D dependency for electron axial motion
mohiuddinrazu Nov 5, 2024
36d5b63
Merge branch 'feature/sensitivity_curve_diff_l_over_d' of github.com:…
mohiuddinrazu Nov 5, 2024
4274186
added independent trap L/D dependency for magnetic field flat harmoni…
mohiuddinrazu Nov 6, 2024
bddbc54
Corrected error caught by Ben F with not converting deg to rad
taliaweiss Nov 8, 2024
03193dd
Implemented cosmic ray background rate calculation
taliaweiss Nov 11, 2024
2721b60
Merge branch 'feature/sensitivity_curve' of github.com:project8/mermi…
mohiuddinrazu Nov 15, 2024
6b1d9e7
added different L/D support for traps
mohiuddinrazu Nov 19, 2024
1182661
Implemented trap length instead of trap L/D, renamed cavity L/D
mohiuddinrazu Nov 22, 2024
42bcf2f
removed unnecessary lines
mohiuddinrazu Nov 22, 2024
76f956a
Using the desired pitch angle in the config file for f_a uncertainty …
taliaweiss Nov 25, 2024
d18c0d2
Run Razu's changes to include diff trap and cavity lengths; debug and…
taliaweiss Nov 25, 2024
98e8e46
Use inputted pitch instead of min pitch for f_a uncertainty calculation
taliaweiss Nov 25, 2024
845e637
Merge branch 'feature/sensitivity_curve' into feature/sensitivity_cur…
taliaweiss Nov 25, 2024
3252f31
Merge pull request #70 from project8/feature/sensitivity_curve_diff_l…
taliaweiss Nov 25, 2024
3a4baf9
Removed factor of 1/2 in cavity power; incorporated carrier_power_fra…
taliaweiss Dec 6, 2024
cfc885c
Minor adjustement to parameter scan csv output digits.
benanator77 Dec 6, 2024
1fe8035
added trapping efficiency calculation
mohiuddinrazu Dec 10, 2024
164e39a
replaced fixed variation w/ percent variation
mohiuddinrazu Dec 10, 2024
509350b
code cleanup
mohiuddinrazu Dec 10, 2024
3e331d3
add function det_efficiency_tau(self, threshold)
Dec 11, 2024
640d723
adjust the indent
Dec 11, 2024
d7123df
add function background_rate(self, threshold)
Dec 11, 2024
1b30c87
import modules ncx2, chi2, and quad
Dec 11, 2024
b89717e
How do we know if the result of the rf_background_rate_cavity(self) i…
Dec 13, 2024
ee0134b
Merge fix
taliaweiss Dec 16, 2024
2ef644d
New formula for sigma_noise from determination of f_carrier and f_lsb…
taliaweiss Dec 17, 2024
c3c5c68
Calculating Larmor power for theta=pi/2, to allow me to remove the pi…
taliaweiss Dec 17, 2024
44d7f90
Made it so that p and q are calculated given the inputted trap info
taliaweiss Dec 17, 2024
6f53fec
Testing out different flat fractions
taliaweiss Dec 17, 2024
b825e5a
removed radial dependency and restored sigmae_r
mohiuddinrazu Dec 18, 2024
936c0ad
removed unnecessary variables
mohiuddinrazu Dec 18, 2024
05f3d30
Merge branch 'feature/sensitivity_curve' into feature/trapping_effici…
taliaweiss Dec 18, 2024
ec59430
Slightly finer-grained trapping eff calculation (more z steps)
taliaweiss Dec 18, 2024
6ae240e
Merge pull request #71 from project8/feature/trapping_efficiency_calc…
taliaweiss Dec 18, 2024
25d42e9
run methods self.assign_background_rate_from_threshold() and self.ass…
Dec 18, 2024
36645b8
after debugging the processor is running with the configure file http…
Dec 19, 2024
0d6f1ee
after debugging, the script runs for the configuration file https://g…
Dec 19, 2024
34e3059
Avoiding unecessary sqrt-ing and then squaring of frequency variance …
taliaweiss Dec 20, 2024
3e18bc9
Merge branch 'feature/sensitivity_curve' of https://github.com/projec…
taliaweiss Dec 20, 2024
db3c2a3
Merge fix, and changed pitch analysis cut to use function accounting …
taliaweiss Dec 20, 2024
bab7df3
Removed one of two print_SNRs functions, and made remaining function …
taliaweiss Dec 20, 2024
83ff5c1
Added descriptive printouts to print_SNRs
taliaweiss Dec 20, 2024
57594d9
Make the configuration use_threshold = True used in the code
Dec 23, 2024
56b87ff
Merge pull request #72 from project8/feature/LFA_sensitivity
taliaweiss Dec 23, 2024
b90d342
Fixed spelling
taliaweiss Dec 25, 2024
8673801
Merge fix
taliaweiss Dec 25, 2024
fadd74f
Implement three of my comments on PR #73
taliaweiss Dec 25, 2024
db044b2
Debugged, cleaned code, used cyclotron radius for unusable distance f…
taliaweiss Dec 25, 2024
59c1b71
move assign_detection_efficiency_from_threshold() above the two backg…
Dec 26, 2024
0475a34
add comments to the det_efficiency_tau() and rf_background_rate_cavit…
Dec 26, 2024
04c147f
add reference to the antenna paper
Dec 26, 2024
982c5c7
adjust the variable names in det_efficiency_track_duration track_dura…
Dec 26, 2024
bd379e2
Have consistent order of printing SNR values and efficiency factors
taliaweiss Dec 28, 2024
85a6da3
Print detection efficiency integration error
taliaweiss Dec 28, 2024
25a6d76
Change parameter name threshold->detection_threshold. Remove the try-…
Dec 29, 2024
61f3b76
modify the script so only runs on the configuration Config_LFA_Experi…
Dec 29, 2024
ba4a895
Preparing to test Yu-Hao's new changes
taliaweiss Dec 30, 2024
8eb26a9
Merge branch 'feature/sensitivity_curve_link_rf_background_and_detect…
taliaweiss Dec 30, 2024
cf8b2e9
Fixed problem of detection efficiency not being re-calculated for eac…
taliaweiss Dec 31, 2024
3aff343
Added 2 more x-axis exposure-type options, added option to mark an op…
taliaweiss Jan 8, 2025
9b0b012
Legend position (bbox to anchor) can now be configured by user
taliaweiss Jan 8, 2025
af2e075
Added ncav*eff*time plotting option; changed some straggler 1.64 fact…
taliaweiss Jan 27, 2025
ee94c38
Changed back to 1.64 (I got confused about the direction of the change)
taliaweiss Jan 27, 2025
3806bb7
added Gauss–Laguerre quadrature integration method for speed and stab…
mohiuddinrazu Feb 4, 2025
801a151
Added function to calculate trap_length from cavity L/D, assumes 80% …
benanator77 Feb 4, 2025
7345d35
Fixed det eff calculation to have factor of 2 multiplying SNR; calcul…
taliaweiss Feb 10, 2025
ebbb92d
Merge branch 'feature/sensitivity_curve_link_rf_background_and_detect…
taliaweiss Feb 10, 2025
f5ef79a
Fixed usage of new function to calculate CRLB variance
taliaweiss Feb 10, 2025
65198c7
Reduced number of Gauss-Laguerre quadrature points to prevent nan iss…
taliaweiss Feb 10, 2025
ca328ca
Calculating det eff for power vs radius then averaging over radii; fi…
taliaweiss Feb 11, 2025
f203752
Gauss-Laguerre method calculations added
mohiuddinrazu Feb 18, 2025
eb4f1e6
Added a line to increase sample count of radii if calculate_det_eff_f…
benanator77 Feb 18, 2025
f643dda
Added log x scale plotting of densities if the parameter value array …
benanator77 Feb 20, 2025
a2688c3
Recalculate bkgd rate for optimum density so that correct background …
taliaweiss Mar 2, 2025
902652c
Merge branch 'feature/sensitivity_curve_link_rf_background_and_detect…
taliaweiss Mar 2, 2025
9df77ac
Updated threshold LFA sensitivity vs. density plot and numbers
taliaweiss Mar 2, 2025
3f2808d
Added condition to set r_sample=1000 if config has fixed efficiency True
benanator77 Mar 3, 2025
2deb553
Fixed issue where sigmae_phi was set to take from the theta input, wh…
benanator77 Mar 3, 2025
b824e0c
Fixed problem where sideband order wasn't affecting Q
taliaweiss Mar 3, 2025
077f115
Merge branch 'feature/sensitivity_curve_link_rf_background_and_detect…
taliaweiss Mar 3, 2025
e7eb34e
Fixed problem of using sense_main in two comparison-curve-specific pl…
taliaweiss Mar 3, 2025
a9cc5b4
Handling density/threshold optimization options better for comparison…
taliaweiss Mar 4, 2025
6927720
Fixed event rate calcs to use *2 for T2 and *1 for T; added operating…
taliaweiss Mar 20, 2025
aff7ed0
In parameter scan processor, fixed event rate calcs to use *2 for T2 …
taliaweiss Mar 20, 2025
ade381b
Added a call to Print_Efficiencies in scan processor.
benanator77 Mar 24, 2025
46bbb74
Merge branch 'feature/sensitivity_curve_link_rf_background_and_detect…
benanator77 Mar 24, 2025
46f6b99
Separated cavity formulas init, only reads config in init, default va…
benanator77 Apr 7, 2025
70b2560
Made more aspects of sensitivity plotting configurable from a diction…
taliaweiss Apr 17, 2025
53e92b3
Merge branch 'feature/sensitivity_curve_link_rf_background_and_detect…
taliaweiss Apr 17, 2025
06503dd
Fixed issue with comparison curve detection threshold optimization fo…
taliaweiss Apr 18, 2025
f293996
Finished swapping back LFA target and threshold curves in the sensiti…
taliaweiss Apr 18, 2025
df47f1e
Added eta/(1-eta) term to chirp CRLB for more accurate results in the…
taliaweiss May 7, 2025
1ee65fe
Merge branch 'feature/sensitivity_curve_link_rf_background_and_detect…
mohiuddinrazu Jun 4, 2025
12c6358
Merge pull request #76 from project8/detection_eff_integration
mohiuddinrazu Jun 4, 2025
7c26d90
Merge pull request #73 from project8/feature/sensitivity_curve_link_r…
mohiuddinrazu Jun 4, 2025
136254c
Updated eta-dependent term of CRLB formula
taliaweiss Jul 2, 2025
3c6d865
resolving merge conflict, function moved into different file, we fix …
renereimann Jul 3, 2025
f24fa17
Merge branch 'feature/sensitivity_curve' of github.com:project8/mermi…
renereimann Jul 3, 2025
167aae4
100m^3 cavities in sensitivity vs. livetime and density plots
taliaweiss Nov 21, 2025
1b50519
Make code work when there's no comparison curve
taliaweiss Nov 21, 2025
53616b4
Back to plots before testing effect of f_flat
taliaweiss Nov 21, 2025
60049e5
For PIV, using unloaded Q values from Tianhuan's CST studies
taliaweiss Dec 10, 2025
938fbb5
Add option to use arrays of carrier and sideband power fractions fro…
taliaweiss Dec 16, 2025
45d56f7
New sens vs density with all 4 curves
taliaweiss Dec 16, 2025
8d5de25
Added trapped pitch angle dist calc; reduced output for verbose==False
taliaweiss Dec 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -101,3 +101,5 @@ ENV/
.mypy_cache/
*.root
*.png
*.pdf
*.DS_Store
31 changes: 31 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Read the Docs configuration file for Sphinx projects
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the OS, Python version and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.11"

# Build documentation in the "docs/" directory with Sphinx
sphinx:
configuration: documentation/conf.py
# You can configure Sphinx to use a different builder, for instance use the dirhtml builder for simpler URLs
# builder: "dirhtml"
# Fail on all warnings to avoid broken references
# fail_on_warning: true

# Optionally build your docs in additional formats such as PDF and ePub
# formats:
# - pdf
# - epub

# Optional but recommended, declare the Python requirements required
# to build your documentation
# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
python:
install:
- requirements: documentation/requirements.txt
1 change: 1 addition & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ RUN mkdir -p $MERMITHID_BUILD_PREFIX &&\

RUN source $COMMON_BUILD_PREFIX/setup.sh &&\
pip install iminuit &&\
pip install numericalunits &&\
/bin/true

########################
Expand Down
32 changes: 25 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Mermithid is an extension of [morpho](https://github.com/morphoorg/morpho) that

## Requirements

You will need to install via a package manager (such as apt-get):
If you are not using a container with pre-installed dependencies, you will need to install via a package manager (such as apt-get):

- python (3.x; 2.7.x support not guaranteed)
- python-pip
Expand All @@ -19,6 +19,9 @@ These are two possible ways of installing and working with mermithid.

### Virtual environment installation

Before installing, clone subdirecories recursively: ``git submodule update --init --recursive``.
<br>Then install mermithid in your environment:

1. Cicada and Phylloxera need to be installed in a sub directory:

```bash
Expand All @@ -45,16 +48,24 @@ These are two possible ways of installing and working with mermithid.

### Docker installation

Docker provides a uniform test bed for development and bug testing. Please use this environment to testing/resolving bugs.
Create a docker image and start a mermithid container

1. Install Docker (Desktop version): <https://docs.docker.com/engine/installation/>
2. Clone and pull the latest master version of mermithid
3. Inside the mermithid folder, execute `docker-compose run mermithid`. The container prompter should appear at the end of the installation. A directory (`mermithid_share`) should be created in your home and mounted under the `/host` folder: you can modify this by editing the docker-compose file.
4. When reinstalling, you can remove the image using `docker rmi mermithid_mermithid`
3. Clone and pull the latest main version of mermithid or the feature branch you want to work with
4. Go to the cloned directory: ``cd mermithid``
5. Pull the submodules: ``git submodule update --init --recursive``
6. Build docker image: ``docker build --no-cache -t mermithid:<tag> .``
7. To start the container and mount a directory for data sharing with your host into the container do:
<br>```docker run --rm -it -v ~/mermithid_share:/host mermithid:<tag> /bin/bash```

An alternative to steps 6 and 7 is to use docker-compose by executing: ``docker-compose run mermithid``.

<br>In both cases files saved in ```/host``` are shared with the host in ```~/mermithid_share```.


### Running mermithid

In both cases, you need to set the paths right for using these software. For example in the docker container:
For running mermithid you need to set the paths right for using these software. For example in the docker container:

```bash
source $MERMITHID_BUILD_PREFIX/setup.sh
Expand All @@ -64,4 +75,11 @@ source $MERMITHID_BUILD_PREFIX/bin/this_phylloxera.sh

## Quick start and examples

Mermithid works a-la morpho, where the operations on data are defined using processors. Each processor should be defined with a name, then should have its attributes configured using a dictionary before being run. Examples of how to use mermithid can be found in the "tests" folder.
Mermithid works a-la morpho, where the operations on data are defined using processors. Each processor should be defined with a name, then should have its attributes configured using a dictionary before being run. Examples of how to use mermithid can be found in the "tests" and the "test_analysis" folders.


## Easy development

To develop mermithid without having to rebuild the container, share the repository on the host with the container by starting it with: ```docker run --rm -it -v ~/mermithid_share:/host -v ~/repos/mermithid:/mermithid mermithid:<tag> /bin/bash```. This assumes that mermithid was cloned to ``~/repos``.

After sourcing the setup scripts, modify the PYTHONPATH: ```export PYTHONPATH=/mermithid:$PYTHONPATH```. Now changes made on the host will directly be used by the container.
4 changes: 0 additions & 4 deletions documentation/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ SPHINXPROJ = mermithid
SOURCEDIR = .
BUILDDIR = build

PY_CMD = import better_apidoc; better_apidoc.main(['better_apidoc','-t', '_templates','--force','--separate','-o','better_apidoc_out','../$(SPHINXPROJ)']) # overwrite existing files
APIDOC_CMD = python -c "$(PY_CMD)"

# Put it first so that "make" without argument is like "make help".
help:
Expand All @@ -22,5 +20,3 @@ help:
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

betterapi:
@$(APIDOC_CMD)
Loading