@jjlmoya/utils-science 1.41.0 → 1.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/scripts/crystal-lattice-catalog-translations.mjs +459 -0
- package/scripts/sync-crystal-lattice-i18n.mjs +50 -0
- package/src/category/index.ts +3 -1
- package/src/entries.ts +5 -1
- package/src/index.ts +2 -0
- package/src/tests/diacritics_density.test.ts +140 -0
- package/src/tests/inverted_punctuation.test.ts +84 -0
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/script_density.test.ts +94 -0
- package/src/tests/tool_validation.test.ts +2 -3
- package/src/tool/conway-life-rule-lab/i18n/de.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/es.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/fr.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/id.ts +102 -45
- package/src/tool/conway-life-rule-lab/i18n/it.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/ja.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/ko.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/nl.ts +102 -45
- package/src/tool/conway-life-rule-lab/i18n/pl.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/pt.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/ru.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/sv.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/tr.ts +62 -5
- package/src/tool/conway-life-rule-lab/i18n/zh.ts +62 -5
- package/src/tool/cosmic-inflation/i18n/es.ts +5 -5
- package/src/tool/cosmic-inflation/i18n/it.ts +51 -51
- package/src/tool/cosmic-inflation/i18n/ru.ts +42 -150
- package/src/tool/crystal-lattice-structure-finder/component.astro +120 -39
- package/src/tool/crystal-lattice-structure-finder/crystal-lattice-structure-finder.css +204 -56
- package/src/tool/crystal-lattice-structure-finder/data.ts +107 -133
- package/src/tool/crystal-lattice-structure-finder/i18n/de.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/en.ts +45 -6
- package/src/tool/crystal-lattice-structure-finder/i18n/es.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/fr.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/id.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/it.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/ja.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/ko.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/nl.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/pl.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/pt.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/ru.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/sv.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/tr.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/i18n/zh.ts +39 -0
- package/src/tool/crystal-lattice-structure-finder/logic.ts +7 -3
- package/src/tool/crystal-lattice-structure-finder/structures/README.md +26 -0
- package/src/tool/crystal-lattice-structure-finder/structures/body-centered-cubic.ts +19 -0
- package/src/tool/crystal-lattice-structure-finder/structures/cesium-chloride.ts +19 -0
- package/src/tool/crystal-lattice-structure-finder/structures/diamond-cubic.ts +23 -0
- package/src/tool/crystal-lattice-structure-finder/structures/face-centered-cubic.ts +16 -0
- package/src/tool/crystal-lattice-structure-finder/structures/hexagonal-close-packed.ts +30 -0
- package/src/tool/crystal-lattice-structure-finder/structures/index.ts +25 -0
- package/src/tool/crystal-lattice-structure-finder/structures/perovskite.ts +20 -0
- package/src/tool/crystal-lattice-structure-finder/structures/rock-salt.ts +23 -0
- package/src/tool/crystal-lattice-structure-finder/structures/rutile.ts +25 -0
- package/src/tool/crystal-lattice-structure-finder/structures/shared.ts +86 -0
- package/src/tool/crystal-lattice-structure-finder/structures/simple-cubic.ts +16 -0
- package/src/tool/crystal-lattice-structure-finder/structures/wurtzite.ts +22 -0
- package/src/tool/crystal-lattice-structure-finder/structures/zinc-blende.ts +23 -0
- package/src/tool/double-slit-decoherence/i18n/fr.ts +42 -86
- package/src/tool/double-slit-decoherence/i18n/it.ts +28 -72
- package/src/tool/double-slit-decoherence/i18n/pt.ts +35 -79
- package/src/tool/double-slit-decoherence/i18n/ru.ts +59 -59
- package/src/tool/double-slit-decoherence/i18n/sv.ts +33 -81
- package/src/tool/double-slit-decoherence/i18n/tr.ts +55 -55
- package/src/tool/dyson-sphere-energy-capture/i18n/de.ts +42 -123
- package/src/tool/dyson-sphere-energy-capture/i18n/es.ts +6 -6
- package/src/tool/dyson-sphere-energy-capture/i18n/fr.ts +63 -131
- package/src/tool/dyson-sphere-energy-capture/i18n/it.ts +36 -113
- package/src/tool/dyson-sphere-energy-capture/i18n/ja.ts +66 -42
- package/src/tool/dyson-sphere-energy-capture/i18n/ko.ts +66 -42
- package/src/tool/dyson-sphere-energy-capture/i18n/pl.ts +50 -133
- package/src/tool/dyson-sphere-energy-capture/i18n/pt.ts +51 -132
- package/src/tool/dyson-sphere-energy-capture/i18n/ru.ts +61 -98
- package/src/tool/dyson-sphere-energy-capture/i18n/sv.ts +56 -137
- package/src/tool/dyson-sphere-energy-capture/i18n/tr.ts +61 -142
- package/src/tool/dyson-sphere-energy-capture/i18n/zh.ts +67 -43
- package/src/tool/epidemic-sir-simulator/bibliography.astro +15 -0
- package/src/tool/epidemic-sir-simulator/bibliography.ts +37 -0
- package/src/tool/epidemic-sir-simulator/component.astro +384 -0
- package/src/tool/epidemic-sir-simulator/entry.ts +30 -0
- package/src/tool/epidemic-sir-simulator/epidemic-sir-simulator.css +624 -0
- package/src/tool/epidemic-sir-simulator/i18n/de.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/en.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/es.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/fr.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/id.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/it.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/ja.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/ko.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/nl.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/pl.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/pt.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/ru.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/sv.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/tr.ts +347 -0
- package/src/tool/epidemic-sir-simulator/i18n/zh.ts +347 -0
- package/src/tool/epidemic-sir-simulator/index.ts +12 -0
- package/src/tool/epidemic-sir-simulator/logic.ts +163 -0
- package/src/tool/epidemic-sir-simulator/seo.astro +16 -0
- package/src/tool/fermi-paradox-filter-lab/bibliography.astro +14 -0
- package/src/tool/fermi-paradox-filter-lab/bibliography.ts +24 -0
- package/src/tool/fermi-paradox-filter-lab/component.astro +257 -0
- package/src/tool/fermi-paradox-filter-lab/entry.ts +26 -0
- package/src/tool/fermi-paradox-filter-lab/fermi-paradox-filter-lab.css +228 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/de.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/en.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/es.ts +193 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/fr.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/id.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/it.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/ja.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/ko.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/nl.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/pl.ts +193 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/pt.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/ru.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/sv.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/tr.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/i18n/zh.ts +192 -0
- package/src/tool/fermi-paradox-filter-lab/index.ts +11 -0
- package/src/tool/fermi-paradox-filter-lab/logic.ts +125 -0
- package/src/tool/fermi-paradox-filter-lab/seo.astro +15 -0
- package/src/tool/global-albedo-snowball-simulator/i18n/ru.ts +50 -63
- package/src/tool/lorenz-attractor/i18n/de.ts +52 -78
- package/src/tool/lorenz-attractor/i18n/es.ts +5 -5
- package/src/tool/lorenz-attractor/i18n/fr.ts +51 -77
- package/src/tool/lorenz-attractor/i18n/it.ts +36 -36
- package/src/tool/lorenz-attractor/i18n/pt.ts +51 -75
- package/src/tool/mandelbrot-fractal/i18n/de.ts +31 -58
- package/src/tool/mandelbrot-fractal/i18n/es.ts +5 -5
- package/src/tool/mandelbrot-fractal/i18n/fr.ts +39 -57
- package/src/tool/mandelbrot-fractal/i18n/it.ts +30 -48
- package/src/tool/mandelbrot-fractal/i18n/pl.ts +34 -52
- package/src/tool/mandelbrot-fractal/i18n/pt.ts +30 -30
- package/src/tool/mandelbrot-fractal/i18n/ru.ts +42 -60
- package/src/tool/mandelbrot-fractal/i18n/sv.ts +38 -65
- package/src/tool/natural-selection-drift/i18n/it.ts +18 -95
- package/src/tool/natural-selection-drift/i18n/pt.ts +76 -19
- package/src/tool/natural-selection-drift/i18n/ru.ts +27 -24
- package/src/tool/natural-selection-drift/i18n/sv.ts +9 -6
- package/src/tool/phase-diagram-critical-points/i18n/de.ts +30 -68
- package/src/tool/phase-diagram-critical-points/i18n/es.ts +4 -4
- package/src/tool/phase-diagram-critical-points/i18n/fr.ts +37 -75
- package/src/tool/phase-diagram-critical-points/i18n/it.ts +8 -8
- package/src/tool/planet-atmosphere-survival/i18n/ru.ts +49 -192
- package/src/tool/radioactive-decay/i18n/de.ts +16 -32
- package/src/tool/radioactive-decay/i18n/es.ts +5 -5
- package/src/tool/radioactive-decay/i18n/fr.ts +24 -40
- package/src/tool/radioactive-decay/i18n/it.ts +18 -35
- package/src/tool/radioactive-decay/i18n/pt.ts +34 -34
- package/src/tool/roche-limit-satellite-disruption/i18n/pl.ts +52 -128
- package/src/tool/temperature-timeline/i18n/de.ts +46 -174
- package/src/tool/temperature-timeline/i18n/es.ts +5 -5
- package/src/tool/temperature-timeline/i18n/fr.ts +69 -144
- package/src/tool/temperature-timeline/i18n/it.ts +34 -133
- package/src/tool/temperature-timeline/i18n/pt.ts +35 -174
- package/src/tool/temperature-timeline/i18n/ru.ts +48 -174
- package/src/tool/twin-paradox-visualizer/i18n/es.ts +5 -5
- package/src/tool/twin-paradox-visualizer/i18n/fr.ts +34 -34
- package/src/tool/twin-paradox-visualizer/i18n/pt.ts +31 -71
- package/src/tools.ts +4 -0
|
@@ -0,0 +1,347 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
|
|
4
|
+
const slug = 'symulator-sir-epidemii';
|
|
5
|
+
const title = 'Symulator SIR epidemii';
|
|
6
|
+
const description = 'Badaj rozprzestrzenianie sie patogenow za pomoca interaktywnego modelu SIR, ktory w czasie rzeczywistym dostosowuje R0, smiertelnosc, szczepienia, okres zakaznosci, szczytowe obciazenie i krzywe transmisji.';
|
|
7
|
+
|
|
8
|
+
const howTo = [
|
|
9
|
+
{
|
|
10
|
+
name: 'Ustal liczbe reprodukcji',
|
|
11
|
+
text: 'Przesun suwak R0, aby okreslic, ile wtornych zakazen jedna osoba zakazna wywolaloby w calkowicie podatnej populacji.',
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
name: 'Dodaj szczepienia i skutecznosc szczepionki',
|
|
15
|
+
text: 'Zwieksz pokrycie szczepieniami lub skutecznosc szczepionki, aby usunac chronione osoby z puli podatnych i obnizyc efektywna liczbe reprodukcji.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: 'Dostosuj smiertelnosc i czas zakaznosci',
|
|
19
|
+
text: 'Zmien odsetek smiertelnych przypadkow oraz liczbe dni zakaznych, aby zobaczyc, jak reaguja powazne wyniki i czas krzywych.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
name: 'Odczytaj krzywe SIR',
|
|
23
|
+
text: 'Uzyj wykresu i inspektora dni, aby porownac krzywe podatnych, zakazonych, ozdrowiencow i szacunkowych zgonow w symulowanym wybuchu epidemii.',
|
|
24
|
+
},
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
const faq = [
|
|
28
|
+
{
|
|
29
|
+
question: 'Co pokazuje model SIR?',
|
|
30
|
+
answer: 'Model SIR dzieli populacje na grupy podatnych, zakazonych i ozdrowiencow. Szacuje, jak ludzie przemieszczaja sie miedzy tymi grupami w czasie wraz z postepem transmisji i zdrowienia.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Jak szczepienia zmieniaja krzywa?',
|
|
34
|
+
answer: 'Szczepienia zmniejszaja populacje podatnych, gdy zapobiegaja zakazeniu. W tym symulatorze skuteczne szczepienia obnizaja efektywna liczbe reprodukcji i moga zmniejszyc lub opoznic szczyt zakazen.',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
question: 'Czy R0 to to samo co Re?',
|
|
38
|
+
answer: 'Nie. R0 opisuje rozprzestrzenianie sie w calkowicie podatnej populacji. Re to efektywna liczba reprodukcji po tym, jak odpornosc, szczepienia lub zmiany zachowania zmniejsza liczbe osob, ktore moga zostac zakazone.',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
question: 'Dlaczego krzywa zakazonych osiaga szczyt, a potem spada?',
|
|
42
|
+
answer: 'Krzywa zakazonych spada, gdy kazda zakazna osoba generuje mniej nowych zakazen niz liczba osob opuszczajacych grupe zakazonych przez wyzdrowienie lub smierc. Wyczerpanie podatnosci jest glownym czynnikiem w podstawowym modelu SIR.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
question: 'Czy ten symulator moze przewidziec prawdziwa epidemie?',
|
|
46
|
+
answer: 'Jest to narzedzie dydaktyczne i scenariuszowe, a nie prognoza. Rzeczywiste epidemie wymagaja struktury wiekowej, sieci kontaktow, geografii, opoznien w raportowaniu, zmieniajacego sie zachowania, wariantow, zanikajacej odpornosci i skalibrowanych danych.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
question: 'Jaka jest roznica miedzy atakiem a szczytem zakazonych?',
|
|
50
|
+
answer: 'Atak mierzy calkowity odsetek populacji kiedykolwiek zakazonej do konca epidemii. Szczyt zakazonych mierzy maksymalna liczbe osob jednoczesnie zakaznych w danym momencie. Niski szczyt nie gwarantuje niskiego ataku i odwrotnie.',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
question: 'Co wizualnie oznacza Re ponizej 1?',
|
|
54
|
+
answer: 'Gdy Re spada ponizej 1, kazda zakazna osoba generuje srednio mniej niz jedno nowe zakazenie. Na wykresie krzywa zakazonych nigdy nie wznosi sie stromo i moze natychmiast spadac od poczatkowego zarodka, co oznacza, ze epidemia nie moze sie utrzymac.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
question: 'Jak okres zakaznosci wplywa na epidemie?',
|
|
58
|
+
answer: 'Dluzszy okres zakaznosci wydluza czas, w ktorym kazda zakazona osoba moze przenosic patogen. Rozciaga to os czasu epidemii, opoznia szczyt i, przy tym samym R0, moze wyprodukowac szersza krzywa z nizszym szczytem.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
question: 'Dlaczego smiertelnosc nie zmienia krzywej zakazonych?',
|
|
62
|
+
answer: 'W tym modelu SIR smiertelnosc wplywa tylko na liczbe zgonow odgaleziona od grupy ozdrowiencow. Nie wplywa zwrotnie na transmisje, poniewaz zgony i wyzdrowienia usuwaja ludzi z puli zakaznych w tym samym tempie.',
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
question: 'Co to jest prog odpornosci stadnej?',
|
|
66
|
+
answer: 'Prog odpornosci stadnej to odsetek populacji, ktory musi byc odporny, aby Re spadlo ponizej 1. Szacuje sie go jako 1 - 1/R0. Dla odry z R0 okolo 12 prog wynosi ponad 91%. Dla grypy sezonowej z R0 okolo 1,3 prog wynosi okolo 23%.',
|
|
67
|
+
},
|
|
68
|
+
];
|
|
69
|
+
|
|
70
|
+
export const content: ToolLocaleContent = {
|
|
71
|
+
slug,
|
|
72
|
+
title,
|
|
73
|
+
description,
|
|
74
|
+
ui: {
|
|
75
|
+
liveScenario: 'Zyjacy scenariusz epidemii',
|
|
76
|
+
curveChart: 'Krzywe transmisji SIR',
|
|
77
|
+
inspectDay: 'Inspekcja dnia symulacji',
|
|
78
|
+
legend: 'Legenda krzywych',
|
|
79
|
+
susceptible: 'Podatni',
|
|
80
|
+
infected: 'Zakazeni',
|
|
81
|
+
recovered: 'Ozdrowiency lub odporni',
|
|
82
|
+
deaths: 'Zgony',
|
|
83
|
+
controls: 'Parametry epidemii',
|
|
84
|
+
modelName: 'Model przedzialowy',
|
|
85
|
+
peakInfected: 'Szczyt zakazonych',
|
|
86
|
+
peakDay: 'Dzien szczytu',
|
|
87
|
+
attackRate: 'Atak',
|
|
88
|
+
estimatedDeaths: 'Szacunkowe zgony',
|
|
89
|
+
r0: 'Podstawowa liczba reprodukcji R0',
|
|
90
|
+
lethality: 'Smiertelnosc',
|
|
91
|
+
vaccination: 'Pokrycie szczepieniami',
|
|
92
|
+
vaccineEffectiveness: 'Skutecznosc szczepionki',
|
|
93
|
+
infectiousDays: 'Okres zakaznosci',
|
|
94
|
+
initialInfected: 'Poczatkowo zakazeni',
|
|
95
|
+
dayLabel: 'Dzien',
|
|
96
|
+
daysUnit: 'dni',
|
|
97
|
+
infectiousLabel: 'zakazny',
|
|
98
|
+
reLabel: 'Re',
|
|
99
|
+
},
|
|
100
|
+
seo: [
|
|
101
|
+
{
|
|
102
|
+
type: 'title',
|
|
103
|
+
text: 'Symulator SIR epidemii dla R0, szczepien, smiertelnosci i krzywych transmisji',
|
|
104
|
+
level: 2,
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'paragraph',
|
|
108
|
+
html: 'Ten symulator SIR epidemii pozwala zbadac, jak patogen rozprzestrzenia sie w populacji, gdy podatne osoby ulegaja zakazeniu, a nastepnie opuszczaja grupe zakaznych przez wyzdrowienie lub smierc. Jest przeznaczony dla studentow, popularyzatorow nauki, sluchaczy zdrowia publicznego i kazdego, kto szuka szybkiego wizualnego wyjasnienia, dlaczego male zmiany w transmisji lub odpornosci moga przeksztalcic przebieg epidemii.',
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
type: 'paragraph',
|
|
112
|
+
html: 'Interaktywne elementy sterujace koncentruja sie na zmiennych, ktore ludzie najczesciej chca testowac: <strong>R0</strong>, smiertelnosc, pokrycie szczepieniami, skutecznosc szczepionki, czas zakaznosci i poczatkowy odsetek zakazonych. Wykres aktualizuje sie natychmiast, dzieki czemu krzywe podatnych, zakazonych, ozdrowiencow, odpornych i zgonow mozna porownywac jako jeden polaczony system epidemiczny.',
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
type: 'title',
|
|
116
|
+
text: 'Jak dziala model SIR',
|
|
117
|
+
level: 3,
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: 'paragraph',
|
|
121
|
+
html: 'Podstawowy model SIR dzieli populacje na trzy glowne przedzialy. <strong>S</strong> to osoby podatne, ktore wciaz moga zostac zakazone. <strong>I</strong> to osoby obecnie zakazne, ktore moga przenosic patogen. <strong>R</strong> to osoby, ktore nie sa juz zakazne, poniewaz wyzdrowialy, uzyskaly odpornosc lub w inny sposob opuscily lancuch transmisji. Ten symulator sledzi rowniez szacunkowe zgony jako galezie powaznych wynikow z grupy opuszczajacej zakazenie.',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
type: 'paragraph',
|
|
125
|
+
html: 'Tempo transmisji jest powiazane z R0 i okresem zakaznosci. Jesli R0 jest wysokie lub ludzie pozostaja zakazni dluzej, powstaje wiecej nowych zakazen, zanim grupa zakazonych sie zmniejszy. Jesli szczepienia usuna wystarczajaco duzo osob z puli podatnych, efektywna liczba reprodukcji spada, a szczyt epidemii moze stac sie znacznie mniejszy.',
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'table',
|
|
129
|
+
headers: ['Parametr', 'Co zmienia', 'Typowy efekt na krzywej'],
|
|
130
|
+
rows: [
|
|
131
|
+
['R0', 'Potencjal transmisji przed uwzglednieniem odpornosci', 'Wyzsze R0 sprawia, ze krzywa zakazonych rosnie szybciej i osiaga wyzszy szczyt.'],
|
|
132
|
+
['Pokrycie szczepieniami', 'Odsetek osob usunietych z puli podatnych po zaszczepieniu', 'Wyzsze pokrycie obniza Re i moze splaszczyc przebieg epidemii.'],
|
|
133
|
+
['Skutecznosc szczepionki', 'Jak bardzo szczepionka zapobiega zakazeniu w tym uproszczonym modelu', 'Wyzsza skutecznosc sprawia, ze to samo pokrycie jest bardziej ochronne.'],
|
|
134
|
+
['Okres zakaznosci', 'Sredni czas, przez ktory ludzie pozostaja zakazni', 'Dluzsze zakazenie zmienia czas i moze wydluzyc przebieg epidemii.'],
|
|
135
|
+
['Smiertelnosc', 'Odsetek osob opuszczajacych zakazenie liczonych jako zgony', 'Wyzsza smiertelnosc podnosi krzywa zgonow bez bezposredniego zwiekszania transmisji.'],
|
|
136
|
+
],
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'title',
|
|
140
|
+
text: 'Intuicja dotyczaca R0, Re i odpornosci stadnej',
|
|
141
|
+
level: 3,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'R0 to srednia liczba wtornych przypadkow wywolanych przez jedna zakazna osobe w calkowicie podatnej populacji. Re, efektywna liczba reprodukcji, jest nizsza, gdy niektorzy ludzie sa juz odporni, zaszczepieni, odizolowani lub w inny sposob niedostepni dla zakazenia. W tym symulatorze skuteczne szczepienia bezposrednio zmniejszaja podatnosc, wiec wyswietlane Re spada wraz ze wzrostem pokrycia ochrona.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'paragraph',
|
|
149
|
+
html: 'Popularne przyblizenie odpornosci stadnej to <strong>1 - 1 / R0</strong>. Dla R0 rownego 3 prog wynosi okolo 66,7% skutecznej odpornosci. Symulator pomaga uczynic ten prog namacalnym: gdy skuteczne szczepienia sa ponizej progu, epidemie moga wciaz rosnac; gdy sa powyzej, transmisja ma trudnosci z utrzymaniem sie.',
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'title',
|
|
153
|
+
text: 'Co oznacza liczba szczytowych zakazonych',
|
|
154
|
+
level: 3,
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'paragraph',
|
|
158
|
+
html: 'Szczyt zakazonych to maksymalna liczba osob jednoczesnie zakaznych w symulowanej populacji. Czesciej ma to znaczenie operacyjne niz calkowita liczba zakazen, poniewaz szpitale, laboratoria, programy izolacji i zespoly sledzenia kontaktow odczuwaja presje ze strony jednoczesnych aktywnych przypadkow. Obnizenie szczytu moze byc wazne, nawet gdy koncowy atak nie zostanie zredukowany do zera.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'paragraph',
|
|
162
|
+
html: 'Atak szacuje odsetek calej populacji zakazonej do konca symulacji. Wysoki atak oznacza, ze patogen dotarl do wielu osob, zanim podatnosc zostala wyczerpana lub kontrolowana. Niski atak oznacza, ze odpornosc, szczepienia lub slaba transmisja zapobiegly szerokiemu rozprzestrzenieniu.',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
type: 'title',
|
|
166
|
+
text: 'Rzeczywiste wartosci R0 i co oznaczaja dla odpornosci stadnej',
|
|
167
|
+
level: 3,
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
type: 'paragraph',
|
|
171
|
+
html: 'Podstawowa liczba reprodukcji R0 nie jest stala biologiczna patogenu. Zalezy od wzorcow kontaktow, gestosci zaludnienia, nawykow kulturowych i czynnikow srodowiskowych. Ten sam wirus moze miec rozne wartosci R0 w gesciej zaludnionym miescie w porownaniu z obszarem wiejskim lub w sezonie z wiekszym przebywaniem w pomieszczeniach. Ponizsze wartosci to przykladowe zakresy referencyjne z opublikowanych badan.',
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
type: 'table',
|
|
175
|
+
headers: ['Patogen', 'Typowy zakres R0', 'Prog odpornosci stadnej (1 - 1/R0)', 'Glowna cecha transmisji'],
|
|
176
|
+
rows: [
|
|
177
|
+
['Grypa sezonowa', '1,2 - 1,4', '17% - 29%', 'Krotki okres zakaznosci, zmiennosc sezonowa'],
|
|
178
|
+
['SARS-CoV-2 (pierwotny)', '2,0 - 3,0', '50% - 67%', 'Transmisja przedobjawowa, droga aerozolowa'],
|
|
179
|
+
['SARS-CoV-2 (Delta)', '5,0 - 8,0', '80% - 87%', 'Zwiekszona wiremia, szybsze rozprzestrzenianie'],
|
|
180
|
+
['SARS-CoV-2 (Omikron)', '8,0 - 12,0', '87% - 92%', 'Unikanie odpornosci, tropizm gornych drog oddechowych'],
|
|
181
|
+
['Polio', '5,0 - 7,0', '80% - 86%', 'Droga fekalno-oralna, dlugie bezobjawowe wydalanie'],
|
|
182
|
+
['Ospa prawdziwa', '5,0 - 7,0', '80% - 86%', 'Wyeliminowana dzieki globalnej kampanii szczepien'],
|
|
183
|
+
['Odra', '12,0 - 18,0', '92% - 94%', 'Niezwykle zarazliwa, przenoszona droga powietrzna, dlugi okres zakaznosci'],
|
|
184
|
+
['Krztusiec', '12,0 - 17,0', '92% - 94%', 'Zanikajaca odpornosc umozliwia ponowne zakazenia'],
|
|
185
|
+
],
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
type: 'paragraph',
|
|
189
|
+
html: 'Wysoki prog odpornosci stadnej nie oznacza automatycznie, ze szczepienia sa bezcelowe, gdy pokrycie jest ponizej progu. Nawet czesciowa odpornosc spowalnia transmisje, obniza szczyt, zmniejsza liczbe powaznych przypadkow i zyskuje czas dla systemu opieki zdrowotnej. Symulator pokazuje ten efekt, gdy przesuwasz suwak szczepien przez wartosci posrednie.',
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
type: 'title',
|
|
193
|
+
text: 'Jak zmienia sie efektywna liczba reprodukcji Re podczas epidemii',
|
|
194
|
+
level: 3,
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
type: 'paragraph',
|
|
198
|
+
html: 'Re to efektywna liczba reprodukcji w danym momencie epidemii. W przeciwienswie do R0, ktore zaklada calkowicie podatna populacje, Re uwzglednia odpornosc, szczepienia i wszelkie inne czynniki zmniejszajace podatnosc. W tym symulatorze Re jest obliczane jako <strong>R0 x (1 - udzial chronionych)</strong>, gdzie udzial chronionych to odsetek populacji skutecznie odpornej dzieki szczepieniom.',
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
type: 'paragraph',
|
|
202
|
+
html: 'Wartosc Re wyswietlana w naglowku symulatora aktualizuje sie podczas przesuwania elementow sterujacych. Gdy Re pozostaje powyzej 1, epidemia rosnie. Gdy spada ponizej 1, kazda zakazona osoba generuje srednio mniej niz jedno nowe zakazenie, a epidemia nie moze sie utrzymac. To kluczowy wniosek dotyczacy kontroli epidemii: doprowadzenie i utrzymanie Re ponizej 1 dzieki odpornosci, zachowaniu lub interwencjom.',
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
type: 'title',
|
|
206
|
+
text: 'Atak, szczytowe obciazenie i co mowia o ciezkości epidemii',
|
|
207
|
+
level: 3,
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
type: 'paragraph',
|
|
211
|
+
html: 'Atak to odsetek calkowitej populacji zakazonej w ciagu calej symulowanej epidemii. Jest to najczesciej przytaczana miara podsumowujaca po fali epidemicznej. Wysoki atak oznacza, ze patogen zakazil wiekszosc podatnych osob, zanim wyczerpanie lub kontrola zatrzymaly transmisje. Niski atak oznacza, ze odpornosc, szczepienia lub z natury slaba transmisja zapobiegly szerokiemu rozprzestrzenieniu.',
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
type: 'paragraph',
|
|
215
|
+
html: 'Szczyt zakazonych - maksymalna liczba osob jednoczesnie zakaznych - ma wieksze znaczenie dla krotkoterminowej presji na system opieki zdrowotnej. Fala z umiarkowanym atakiem, ale bardzo wysokim, ostrym szczytem moze przeciazyc szpitale, nawet jesli calkowita liczba przypadkow nie jest ekstremalna. Odwrotnie, wolna, splaszczona krzywa moze miec podobny atak rozlozony na wiele tygodni, dajac systemowi opieki zdrowotnej czas na radzenie sobie z przypadkami. Dlatego urzednicy zdrowia publicznego podkreslaja <strong>splaszczanie krzywej</strong> jako cel operacyjny odrebny od zapobiegania wszystkim zakazeniom.',
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
type: 'title',
|
|
219
|
+
text: 'Splaszczanie krzywej i wydajnosc opieki zdrowotnej w modelu SIR',
|
|
220
|
+
level: 3,
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
type: 'paragraph',
|
|
224
|
+
html: 'Krzywa zakazonych w modelu SIR mozna interpretowac jako liczbe osob wymagajacych jednoczesnie opieki. W prawdziwej epidemii kazda osoba potrzebujaca lozka szpitalnego, wspomagania tlenem lub intensywnej opieki korzysta z ograniczonych zasobow. Gdy krzywa zakazonych wznosi sie powyzej dostepnej wydajnosci, smiertelnosc ze wszystkich przyczyn wzrasta, poniewaz system nie moze zapewnic odpowiedniej opieki.',
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
type: 'paragraph',
|
|
228
|
+
html: 'Szczepienia w tym modelu splaszczaja krzywa, usuwajac ludzi z puli podatnych, zanim moga zostac zakazeni. Zmniejszenie R0 za pomoca innych srodkow - masek, wentylacji, dystansu, testow, izolacji - rowniez obnizyloby szczyt w bardziej kompletnym modelu. Symulacja czyni mechanizm widocznym: wraz ze wzrostem skutecznego pokrycia szczepieniami szczyt sie zmniejsza, przesuwa pozniej lub znika calkowicie.',
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
type: 'title',
|
|
232
|
+
text: 'Matematyka stojaca za modelem SIR wizualizowana',
|
|
233
|
+
level: 3,
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
type: 'paragraph',
|
|
237
|
+
html: 'W modelu SIR tempo nowych zakazen na krok czasowy zalezy od trzech wielkosci: tempa transmisji <strong>beta</strong>, aktualnej liczby zakaznych osob <strong>I</strong> i odsetka efektywnej populacji, ktora jest wciaz podatna <strong>S / N</strong>. Iloczyn <strong>beta x I x S / N</strong> nazywany jest sila zakazenia. Kazdego dnia ta sila okresla, ile podatnych osob przechodzi do przedzialu zakazonych.',
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
type: 'paragraph',
|
|
241
|
+
html: 'Ludzie opuszczaja przedzial zakazonych z tempem zdrowienia <strong>gamma = 1 / okres zakaznosci</strong>. Rownowaga miedzy sila zakazenia a tempem zdrowienia okresla, czy epidemia rosnie, czy maleje. Gdy beta x S / N przekracza gamma, nowe zakazenia przewyzszaja wyzdrowienia i epidemia sie rozszerza. Gdy odsetek podatnych S / N spadnie wystarczajaco, gamma dominuje i epidemia sie wycofuje.',
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
type: 'paragraph',
|
|
245
|
+
html: 'Parametr <strong>beta</strong> nie jest bezposrednio widoczny w interfejsie. Zamiast tego jest wyliczany z R0 i okresu zakaznosci poprzez relacje <strong>beta = R0 x gamma</strong>. Dlatego zmiana R0 lub okresu zakaznosci daje podobne, ale nie identyczne kszalty krzywych. Oba parametry wplywaja na sile zakazenia, ale okres zakaznosci rozciaga rowniez os czasu epidemii.',
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
type: 'title',
|
|
249
|
+
text: 'Jak uzywac tego symulatora do nauki i nauczania',
|
|
250
|
+
level: 3,
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
type: 'list',
|
|
254
|
+
items: [
|
|
255
|
+
'<strong>Porownaj scenariusze z wysokim i niskim R0:</strong> ustaw R0 na 1,5 (zakres grypy sezonowej), a nastepnie na 6,0 (zakres polio przed szczepieniami). Zwroc uwage, jak zmieniaja sie wysokosc szczytu, czas szczytu i atak, nawet gdy wszystkie inne parametry sa identyczne.',
|
|
256
|
+
'<strong>Zbadaj prog odpornosci stadnej:</strong> zacznij od R0 rownego 3,0 bez szczepien. Zanotuj atak. Następnie dodawaj pokrycie szczepieniami, az Re spadnie ponizej 1. Porownaj szczyt i atak przy pokryciu tuz ponizej i tuz powyzej progu.',
|
|
257
|
+
'<strong>Przetestuj efekt wolnej vs. szybkiej reakcji:</strong> ustaw pokrycie szczepieniami na roznych poziomach i obserwuj, kiedy wystepuje szczyt. Wyzsze pokrycie nie tylko zmniejsza wysokosc szczytu, ale zwykle go opoznia, zyskujac czas na przygotowanie opieki zdrowotnej.',
|
|
258
|
+
'<strong>Oddziel smiertelnosc od transmisji:</strong> ustaw smiertelnosc na 0% i obserwuj krzywa zakazonych. Nastepnie ustaw smiertelnosc na 10% bez zmiany innych ustawien. Krzywa zakazonych sie nie zmienia, ale liczba zgonow rosnie. To pokazuje, dlaczego wspolczynnik smiertelnosci przypadkow i tempo transmisji to odrebne wymiary epidemiologiczne.',
|
|
259
|
+
'<strong>Zbadaj efekt okresu zakaznosci:</strong> porownaj 4-dniowy okres zakaznosci z 18-dniowym przy tym samym R0. Dluzszy okres rozciaga krzywa, opoznia szczyt i produkuje dluzsza, ale nizsza fale.',
|
|
260
|
+
'<strong>Cwiczenie w klasie - znajdz prog:</strong> popros uczniow o znalezienie minimalnego pokrycia szczepieniami, ktore sprowadza Re ponizej 1 dla danego R0, a nastepnie porownaj wynik ze wzorem 1 - 1/R0.',
|
|
261
|
+
],
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
type: 'title',
|
|
265
|
+
text: 'Kiedy i dlaczego uzywac tego symulatora',
|
|
266
|
+
level: 3,
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
type: 'list',
|
|
270
|
+
items: [
|
|
271
|
+
'<strong>Studenci epidemiologii:</strong> polacz matematyczne podstawy SIR z interaktywnymi ksztaltami krzywych, zanim zaczniesz prace z rownaniami rozniczkowymi lub programowac wlasne modele.',
|
|
272
|
+
'<strong>Popularyzatorzy nauki i dziennikarze:</strong> generuj wykresy, zrzuty ekranu lub zywe wyjasnienia pokazujace, dlaczego R0, szczepienia i okres zakaznosci maja znaczenie dla trajektorii epidemii.',
|
|
273
|
+
'<strong>Sluchacze zdrowia publicznego:</strong> testuj, jak rozne kombinacje interwencji przesuwaja szczyt epidemii i atak, aby wyrobic sobie intuicje na temat kompromisow w reagowaniu na wybuch epidemii.',
|
|
274
|
+
'<strong>Kazdy ciekawy matematyki epidemicznej:</strong> poznawaj model SIR bez potrzeby pisania kodu lub instalowania oprogramowania. Kazdy element sterujacy aktualizuje wykres w czasie rzeczywistym.',
|
|
275
|
+
],
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
type: 'title',
|
|
279
|
+
text: 'Rozszerzenia modelu: SEIR, SIRS i dalej',
|
|
280
|
+
level: 3,
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
type: 'paragraph',
|
|
284
|
+
html: 'Ten symulator uzywa podstawowej struktury SIR. Kilka popularnych rozszerzen dodaje realizmu. <strong>Model SEIR</strong> dodaje przedzial eksponowanych (E) dla osob, ktore sa zakazone, ale jeszcze nie zakazne, co reprezentuje okres inkubacji. Grupa eksponowanych opoznia szczyt epidemii w porownaniu z modelem SIR, poniewaz zakazenia spedzaja czas w fazie latentnej, zanim przyczynia sie do transmisji.',
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
type: 'paragraph',
|
|
288
|
+
html: '<strong>Model SIRS</strong> pozwala ozdrowiencom tracic odpornosc z czasem i powracac do przedzialu podatnych. Modeluje to patogeny takie jak krztusiec czy SARS-CoV-2 z zanikajaca odpornoscia i produkuje utrzymujace sie lub nawracajace fale epidemiczne. <strong>Model ze struktura wiekowa</strong> dzieli populacje na grupy wiekowe z roznymi macierzami kontaktow i profilami ciezkości, co jest niezbędne w przypadku chorob, w ktorych dzieci i osoby starsze maja bardzo rozne wyniki.',
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
type: 'paragraph',
|
|
292
|
+
html: 'Inne rozszerzenia dodaja rozprzestrzenianie geograficzne (modele metapopulacyjne), zmiany zachowania (adaptacyjne czestotliwosci kontaktow), szum stochastyczny (dla malych populacji, gdzie losowe wyginiecie ma znaczenie) i czas interwencji (zamkniecia szkol, lockdowny, ograniczenia podrozy, ktore wlaczaja sie i wylaczaja). Kazde rozszerzenie dodaje zlozonosc niezbedna do prognozowania, ale moze przeslonic podstawowa dynamike transmisji, ktora podstawowy model SIR klarownie ilustruje.',
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
type: 'title',
|
|
296
|
+
text: 'Ograniczenia tego symulatora epidemii',
|
|
297
|
+
level: 3,
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
type: 'paragraph',
|
|
301
|
+
html: 'Jest to zwarty deterministyczny model SIR. Nie obejmuje grup wiekowych, struktury gospodarstw domowych, szkol, podrozy, superrozprzestrzeniania, okresow inkubacji, transmisji bezobjawowej, sezonowosci, wariantow, zanikajacej odpornosci, zmian zachowania, opoznien w testach ani interwencji zdrowia publicznego, ktore wlaczaja sie i wylaczaja w czasie. Te szczegoly sa niezbedne do prawdziwych prognoz.',
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
type: 'paragraph',
|
|
305
|
+
html: 'Model zaklada dobrze wymieszana populacje, w ktorej kazda podatna osoba ma rowne prawdopodobienstwo kontaktu z kazda zakazna osoba. Rzeczywiste populacje maja sieci kontaktow z silnym grupowaniem, assortatywnoscia wiekowa, struktura geograficzna i indywidualna zmiennoscia zakaznosci. Te cechy moga tworzyc wolniejszy poczatkowy wzrost, zdarzenia superrozprzestrzeniania i heterogeniczne wzorce epidemii, ktorych jednorodny model nie wychwytuje.',
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
type: 'paragraph',
|
|
309
|
+
html: 'Uzywaj symulatora do zrozumienia mechanizmow i porownywania scenariuszy, a nie do podejmowania decyzji medycznych, politycznych lub awaryjnych. Rzeczywista ocena epidemii wymaga danych nadzorczych, kontekstu lokalnego, analizy niepewnosci i specjalistycznego modelowania epidemiologicznego.',
|
|
310
|
+
},
|
|
311
|
+
],
|
|
312
|
+
faq,
|
|
313
|
+
bibliography,
|
|
314
|
+
howTo,
|
|
315
|
+
schemas: [
|
|
316
|
+
{
|
|
317
|
+
'@context': 'https://schema.org',
|
|
318
|
+
'@type': 'SoftwareApplication',
|
|
319
|
+
name: title,
|
|
320
|
+
description,
|
|
321
|
+
applicationCategory: 'ScientificApplication',
|
|
322
|
+
operatingSystem: 'Any',
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
'@context': 'https://schema.org',
|
|
326
|
+
'@type': 'FAQPage',
|
|
327
|
+
mainEntity: faq.map((item) => ({
|
|
328
|
+
'@type': 'Question',
|
|
329
|
+
name: item.question,
|
|
330
|
+
acceptedAnswer: {
|
|
331
|
+
'@type': 'Answer',
|
|
332
|
+
text: item.answer,
|
|
333
|
+
},
|
|
334
|
+
})),
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
'@context': 'https://schema.org',
|
|
338
|
+
'@type': 'HowTo',
|
|
339
|
+
name: title,
|
|
340
|
+
step: howTo.map((step) => ({
|
|
341
|
+
'@type': 'HowToStep',
|
|
342
|
+
name: step.name,
|
|
343
|
+
text: step.text,
|
|
344
|
+
})),
|
|
345
|
+
},
|
|
346
|
+
],
|
|
347
|
+
};
|