You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+48Lines changed: 48 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,54 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Dates formatted as YYYY-MM-DD as per [ISO standard](https://www.iso.org/iso-8601-date-and-time-format.html).
7
7
8
+
## v0.2.0 - 2025-10-14
9
+
10
+
### Added
11
+
12
+
* Logging page
13
+
* Output analysis section covering:
14
+
* Initialisation bias
15
+
* Performance measures
16
+
* Replications
17
+
* Parallel processing
18
+
* Number of replications
19
+
* Length of warm-up
20
+
* Experimentation section covering:
21
+
* Scenario and sensivity analysis
22
+
* Tables and figures
23
+
* Full run
24
+
* Verification and validation section covering:
25
+
* Verification and validation
26
+
* Tests
27
+
* Style and documentation section covering:
28
+
* Linting
29
+
* Docstrings
30
+
* GitHub actions
31
+
* Documentation
32
+
* Collaboration and sharing section covering:
33
+
* Code review
34
+
* Licensing
35
+
* Citation
36
+
* Changelog
37
+
* Sharing and archiving
38
+
* Add citation to footer.
39
+
* Add pre-commits.
40
+
* Add `all-contributors`.
41
+
* Add `CONTRIBUTING.md`.
42
+
43
+
### Changed
44
+
45
+
* Redid the introduction box for each page to be simpler/clearer.
46
+
* Moved giscus `comments` settings to `_quarto.yml` so can have comments on index page.
47
+
* Improvements to existing pages (citations, illustrations, links, `.lightbox`).
48
+
* Switched to consistent modern execution options syntax.
49
+
50
+
### Fixed
51
+
52
+
* Parameters from file (don't generate PDF).
53
+
* Input modelling (correct `python-content` to `r-content`).
54
+
* Add padding to bottom of side bar so can see all pages (otherwise cuts off for some reason sometimes).
55
+
8
56
## v0.1.0 - 2025-09-10
9
57
10
58
🌱 Initial release of the website (work in progress). This version introduces the website structure and the first written sections (up to *Output Analysis*).
Copy file name to clipboardExpand all lines: pages/inputs/input_data.qmd
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -126,7 +126,7 @@ Example data dictionary:
126
126
127
127
#### Obtaining a DOI
128
128
129
-
If you’re able to openly share the data, you can include it directly in your GitHub repository alongside your code and documentation for convenience and reproducibility. For longer-term access, public citation, or larger datasets, it’s often better to deposit the data in a separate and/or specialised repository, and then simply link from your code to the archive record.
129
+
If you're able to openly share the data, you can include it directly in your GitHub repository alongside your code and documentation for convenience and reproducibility. For longer-term access, public citation, or larger datasets, it's often better to deposit the data in a separate and/or specialised repository, and then simply link from your code to the archive record.
130
130
131
131
As described in the ["The Research Data Management Workbook"](https://caltechlibrary.github.io/RDMworkbook/), when choosing where to store data, you should consider the available data repository types:
Copy file name to clipboardExpand all lines: pages/inputs/input_modelling.qmd
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -85,7 +85,7 @@ When selecting appropriate distributions, if you only have summary statistics (l
85
85
86
86
However, these standard choices may not always be appropriate. If the actual process differs from your assumptions or has unique features, the chosen distribution might not fit well.
87
87
88
-
Therefore, if you have enough data, it’s best to analyse it directly to select the most suitable distributions. This analysis generally involves two key steps:
88
+
Therefore, if you have enough data, it's best to analyse it directly to select the most suitable distributions. This analysis generally involves two key steps:
89
89
90
90
1.**Identify possible distributions**. This is based on knowledge of the process being modelled, and by inspecting the data using time series plots and histograms.
91
91
2.**Fit distributions to your data and compare goodness-of fit**. You can do this using a:
Copy file name to clipboardExpand all lines: pages/model/distributions.qmd
+3-3Lines changed: 3 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -46,7 +46,7 @@ When simulating real-world systems (e.g. patients arriving, prescriptions queuei
46
46
47
47

48
48
49
-
However, computers can't generate "true" randomness. Instead, they use **pseudorandom number generators (PRNGs)**: algorithms which produce a sequence of numbers that appear random, but are in fact completely determined by an initial starting point called a **seed**. If you use the same seed, you’ll get the same random sequence every time - a crucial feature for reproducibility in research and development.
49
+
However, computers can't generate "true" randomness. Instead, they use **pseudorandom number generators (PRNGs)**: algorithms which produce a sequence of numbers that appear random, but are in fact completely determined by an initial starting point called a **seed**. If you use the same seed, you'll get the same random sequence every time - a crucial feature for reproducibility in research and development.
50
50
51
51
By default, most software PRNGs initialise the seed based on something that changes rapidly and unpredictably, such as the current system time. This ensures a unique sequence with every fresh run. But for **reproducible experiments**, you should manually set the seed yourself, allowing you and others to exactly recreate simulation results.
52
52
@@ -317,7 +317,7 @@ We also acknowledge the work of B. Lawson and L. M. Leemis for the `simEd` packa
317
317
318
318
### Which package did we use?
319
319
320
-
We've used R's standard random sampling functions in the example models in this book. This is mainly because they're fast, even though all draws share a single global random stream. If you need independent streams, the `simEd` package allows for that, but it can slow things down—which is why we didn’t use it here.
320
+
We've used R's standard random sampling functions in the example models in this book. This is mainly because they're fast, even though all draws share a single global random stream. If you need independent streams, the `simEd` package allows for that, but it can slow things down—which is why we didn't use it here.
321
321
322
322
::::
323
323
@@ -327,7 +327,7 @@ These quirks with random number streams are **worth understanding**, especially
327
327
328
328
::: {.python-content}
329
329
330
-
With Python, it’s easy to avoid pitfalls from shared random number streams - just use the new Generator API (`np.random.default_rng`) to create separate generators for each process in your simulation, rather than sharing a global one, or packages like `sim-tools`. That said, for most simulations, even if you use a single stream, the impact is usually minor - so it’s not something to stress over.
330
+
With Python, it's easy to avoid pitfalls from shared random number streams - just use the new Generator API (`np.random.default_rng`) to create separate generators for each process in your simulation, rather than sharing a global one, or packages like `sim-tools`. That said, for most simulations, even if you use a single stream, the impact is usually minor - so it's not something to stress over.
0 commit comments