@jjlmoya/utils-science 1.20.0 → 1.21.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 +2 -1
- package/src/category/i18n/de.ts +1 -1
- package/src/category/i18n/fr.ts +6 -6
- package/src/category/i18n/ru.ts +1 -1
- package/src/category/index.ts +3 -1
- package/src/category/seo.astro +2 -2
- package/src/entries.ts +5 -1
- package/src/index.ts +2 -0
- package/src/pages/[locale]/[slug].astro +5 -4
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/no_en_dash.test.ts +70 -0
- package/src/tests/seo_length.test.ts +5 -3
- package/src/tests/title_quality.test.ts +1 -1
- package/src/tests/tool_validation.test.ts +2 -2
- package/src/tool/asteroid-impact/bibliography.astro +2 -2
- package/src/tool/asteroid-impact/component.astro +16 -9
- package/src/tool/asteroid-impact/i18n/fr.ts +6 -6
- package/src/tool/asteroid-impact/i18n/ru.ts +4 -4
- package/src/tool/asteroid-impact/index.ts +1 -0
- package/src/tool/asteroid-impact/script.ts +13 -7
- package/src/tool/cellular-renewal/bibliography.astro +2 -2
- package/src/tool/cellular-renewal/i18n/fr.ts +13 -13
- package/src/tool/cellular-renewal/i18n/ru.ts +17 -17
- package/src/tool/cellular-renewal/i18n/zh.ts +9 -9
- package/src/tool/cellular-renewal/index.ts +1 -0
- package/src/tool/colony-counter/bibliography.astro +2 -2
- package/src/tool/colony-counter/i18n/ru.ts +5 -5
- package/src/tool/colony-counter/i18n/zh.ts +2 -2
- package/src/tool/colony-counter/index.ts +1 -0
- package/src/tool/cosmic-inflation/bibliography.astro +14 -0
- package/src/tool/cosmic-inflation/bibliography.ts +12 -0
- package/src/tool/cosmic-inflation/component.astro +270 -0
- package/src/tool/cosmic-inflation/cosmic-inflation-calculator.css +277 -0
- package/src/tool/cosmic-inflation/entry.ts +26 -0
- package/src/tool/cosmic-inflation/i18n/de.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/en.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/es.ts +168 -0
- package/src/tool/cosmic-inflation/i18n/fr.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/id.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/it.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/ja.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/ko.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/nl.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/pl.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/pt.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/ru.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/sv.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/tr.ts +188 -0
- package/src/tool/cosmic-inflation/i18n/zh.ts +188 -0
- package/src/tool/cosmic-inflation/index.ts +11 -0
- package/src/tool/cosmic-inflation/logic/CosmicInflationEngine.ts +21 -0
- package/src/tool/cosmic-inflation/seo.astro +15 -0
- package/src/tool/microwave-detector/bibliography.astro +2 -2
- package/src/tool/microwave-detector/component.astro +9 -7
- package/src/tool/microwave-detector/i18n/fr.ts +4 -4
- package/src/tool/microwave-detector/i18n/ru.ts +18 -18
- package/src/tool/microwave-detector/i18n/zh.ts +10 -10
- package/src/tool/microwave-detector/index.ts +1 -0
- package/src/tool/microwave-detector/logic/MicrowaveEngine.ts +5 -1
- package/src/tool/simulation-probability/bibliography.astro +2 -2
- package/src/tool/simulation-probability/i18n/fr.ts +5 -5
- package/src/tool/simulation-probability/i18n/ru.ts +7 -7
- package/src/tool/simulation-probability/i18n/zh.ts +4 -4
- package/src/tool/simulation-probability/index.ts +1 -0
- package/src/tool/temperature-timeline/bibliography.astro +14 -0
- package/src/tool/temperature-timeline/bibliography.ts +12 -0
- package/src/tool/temperature-timeline/component.astro +289 -0
- package/src/tool/temperature-timeline/entry.ts +26 -0
- package/src/tool/temperature-timeline/i18n/de.ts +213 -0
- package/src/tool/temperature-timeline/i18n/en.ts +213 -0
- package/src/tool/temperature-timeline/i18n/es.ts +178 -0
- package/src/tool/temperature-timeline/i18n/fr.ts +213 -0
- package/src/tool/temperature-timeline/i18n/id.ts +213 -0
- package/src/tool/temperature-timeline/i18n/it.ts +213 -0
- package/src/tool/temperature-timeline/i18n/ja.ts +213 -0
- package/src/tool/temperature-timeline/i18n/ko.ts +213 -0
- package/src/tool/temperature-timeline/i18n/nl.ts +213 -0
- package/src/tool/temperature-timeline/i18n/pl.ts +213 -0
- package/src/tool/temperature-timeline/i18n/pt.ts +213 -0
- package/src/tool/temperature-timeline/i18n/ru.ts +213 -0
- package/src/tool/temperature-timeline/i18n/sv.ts +213 -0
- package/src/tool/temperature-timeline/i18n/tr.ts +213 -0
- package/src/tool/temperature-timeline/i18n/zh.ts +213 -0
- package/src/tool/temperature-timeline/index.ts +11 -0
- package/src/tool/temperature-timeline/logic/TemperatureTimelineEngine.ts +58 -0
- package/src/tool/temperature-timeline/planet-temperature-timeline.css +158 -0
- package/src/tool/temperature-timeline/seo.astro +15 -0
- package/src/tools.ts +4 -0
- package/src/types.ts +1 -1
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
|
|
4
|
+
const slug = 'cosmic-inflation-calculator';
|
|
5
|
+
const description = '计算宇宙暴胀时期早期宇宙的指数级膨胀。';
|
|
6
|
+
const title = '宇宙暴胀计算器:早期宇宙膨胀';
|
|
7
|
+
|
|
8
|
+
const howTo = [
|
|
9
|
+
{
|
|
10
|
+
name: '选择数值',
|
|
11
|
+
text: '拖动滑块查看结果。',
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
name: '比较尺度因子',
|
|
15
|
+
text: '观察空间膨胀了多少个数量级。',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: '分析动态扭曲',
|
|
19
|
+
text: '画布显示了空间的膨胀。',
|
|
20
|
+
},
|
|
21
|
+
];
|
|
22
|
+
|
|
23
|
+
const faq = [
|
|
24
|
+
{
|
|
25
|
+
"question": "什么是宇宙暴胀,它为什么会发生?",
|
|
26
|
+
"answer": "宇宙暴胀是一个理论,它假设在宇宙最初的极短时间内(具体在大爆炸后约 10^-36 秒),空间经历了超高速和指数级的膨胀。它的发生是因为一种被称为暴胀子的理论标量场处于假真空的高能量密度状态,从而产生了负压力和排斥性重力,拉伸了时空结构。"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"question": "e-folds(e-折叠数)的数量意味着什么?",
|
|
30
|
+
"answer": "e-folds数测量指数级膨胀阶段的持续时间。一次 e-fold 表示宇宙大小乘以欧拉数(约 2.718)所需的时间。如果宇宙经历 N 次 e-folds,其尺度因子将增加 e^N 倍。标准的宇宙学模型要求至少 50 到 60 个 e-folds 才能正确解决平坦性和视界问题。"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"question": "暴胀如何解决视界问题?",
|
|
34
|
+
"answer": "视界问题质疑为什么宇宙中极其遥远的区域具有几乎相同的宇宙微波背景(CMB)辐射温度,即使光速本不允许它们相互作用以达到热平衡。暴胀通过表明在指数级膨胀之前,整个可观测宇宙是一个因果连接且热均匀 purchasing 的微小区域,然后瞬间被拉伸到视界之外,从而解决了这个问题。"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"question": "什么是平坦性问题,它是如何解决的?",
|
|
38
|
+
"answer": "今天宇宙的能量密度极其接近临界密度,这意味着空间是平坦的,误差极小。如果没有暴胀,任何初始的平坦性偏差都会随着时间指数级增长,从而在大爆炸时需要不可能的精细调节。暴胀极其剧烈地拉伸了空间曲率,稀释了任何初始曲率,类似于巨大的球体表面在局部看起来完全是平坦的。"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"question": "什么是再加热(reheating)过程?",
|
|
42
|
+
"answer": "再加热是标志着暴胀结束的热转变。在暴胀期间,由于体积的指数级膨胀,宇宙冷却到接近绝对零度的温度。当暴胀子场衰变到其势能的最小值时,其剩余能量通过量子相互作用以标准模型粒子的形式倾泻到空间中,使宇宙充满了炽热而高密度的等离子体,从而开始了传统的标准大爆炸阶段。"
|
|
43
|
+
}
|
|
44
|
+
];
|
|
45
|
+
|
|
46
|
+
export const content: ToolLocaleContent = {
|
|
47
|
+
slug,
|
|
48
|
+
title,
|
|
49
|
+
description,
|
|
50
|
+
ui: {
|
|
51
|
+
title: '宇宙暴胀计算器',
|
|
52
|
+
efoldsLabel: 'e-folds数量 (N)',
|
|
53
|
+
energyLabel: '初始能量尺度 (GeV)',
|
|
54
|
+
scaleFactorResult: '尺度因子增长',
|
|
55
|
+
reheatingTempResult: '估计再加热温度',
|
|
56
|
+
chartTitle: '时空结构扭曲',
|
|
57
|
+
presetGuth: '标准(古斯)',
|
|
58
|
+
presetChaotic: '混沌',
|
|
59
|
+
presetExtreme: '极端极限',
|
|
60
|
+
efoldsTooltip: '典型模型预测在50到60个e-folds之间。',
|
|
61
|
+
energyTooltip: 'GUT尺度约为10^16 GeV。',
|
|
62
|
+
scaleFactorTooltip: '代表总膨胀系数。',
|
|
63
|
+
reheatingTooltip: '暴胀结束时的温度。',
|
|
64
|
+
analogyInsuff: '中度暴胀。这种膨胀是不够的。',
|
|
65
|
+
analogyProton: '宇宙在极短时间内从质子大小膨胀到星系大小。',
|
|
66
|
+
analogyObservable: '宇宙在10^-32秒内从亚原子尺度膨胀到大于可观测宇宙的范围。',
|
|
67
|
+
},
|
|
68
|
+
seo: [
|
|
69
|
+
{
|
|
70
|
+
"type": "title",
|
|
71
|
+
"text": "宇宙学:宇宙暴胀理论与时空膨胀",
|
|
72
|
+
"level": 2
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"type": "paragraph",
|
|
76
|
+
"html": "宇宙暴胀是连接粒子物理学与观测天体物理学的基本支柱。该理论由物理学家阿兰·古斯和安德雷·林德于 1980 年代初提出,假设早期宇宙经历了一个由暴胀子的标量场能量密度驱动的指数级膨胀阶段。这种膨胀在极短的时间内使宇宙的体积增加了至少 10^26 倍,解决了经典大爆炸模型的深刻悖论,并为宇宙结构的形成提供了理论框架。"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"type": "title",
|
|
80
|
+
"text": "暴胀模型和参数的比较",
|
|
81
|
+
"level": 3
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"type": "paragraph",
|
|
85
|
+
"html": "暴胀子场的不同势能会产生不同的膨胀率和再加热温度。以下是本计算器中模拟的主要模型特征:"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"type": "table",
|
|
89
|
+
"headers": [
|
|
90
|
+
"暴胀模型",
|
|
91
|
+
"e-folds 范围 (N)",
|
|
92
|
+
"能量尺度 (GeV)",
|
|
93
|
+
"物理和动态结果"
|
|
94
|
+
],
|
|
95
|
+
"rows": [
|
|
96
|
+
[
|
|
97
|
+
"<strong>标准古斯</strong>",
|
|
98
|
+
"50 - 60",
|
|
99
|
+
"10^16",
|
|
100
|
+
"解决平坦性和视界问题;暴胀通过缓慢相变中的气泡成核而结束。"
|
|
101
|
+
],
|
|
102
|
+
[
|
|
103
|
+
"<strong>混沌暴胀 (林德)</strong>",
|
|
104
|
+
"60 或更多",
|
|
105
|
+
"10^16",
|
|
106
|
+
"暴胀子沿着简单的抛物线势能平缓滚动;避免了突然的相变问题。"
|
|
107
|
+
],
|
|
108
|
+
[
|
|
109
|
+
"<strong>极端极限</strong>",
|
|
110
|
+
"90 或更多",
|
|
111
|
+
"10^19 (普ランク)",
|
|
112
|
+
"接近量子引力极限的能量;原始时空的巨大拉伸。"
|
|
113
|
+
]
|
|
114
|
+
]
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"type": "title",
|
|
118
|
+
"text": "解决经典大爆炸问题",
|
|
119
|
+
"level": 3
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"type": "paragraph",
|
|
123
|
+
"html": "在暴胀理论发展之前,经典大爆炸宇宙学存在严重的理论不一致。源于宇宙微波背景均匀性的视界问题,以及与空间临界密度相关的平坦性问题,都表明需要极不可能的初始条件。暴胀通过拉伸热均匀的微观区域并动态展平局部空间几何形状,自然地解决了这两个难题。此外,它稀释了早期宇宙中本应大量形成的磁单极子的浓度。"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"type": "title",
|
|
127
|
+
"text": "暴胀模型的观测天文学证据",
|
|
128
|
+
"level": 3
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"type": "paragraph",
|
|
132
|
+
"html": "宇宙暴胀理论不仅是一个优雅的数学结构;它还有由 COBE、WMAP 和 Planck 等空间卫星确认的强有力的间接证据:"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"type": "list",
|
|
136
|
+
"items": [
|
|
137
|
+
"<strong>CMB 均匀性:</strong> 宇宙微波背景辐射表现出均匀的温度,在可见天空的相反两侧仅有十万分之一的变化。",
|
|
138
|
+
"<strong>平坦几何:</strong> 宇宙曲率的测量证实,空间是平坦的,误差小于 1%,这与巨大的暴胀拉伸相一致。",
|
|
139
|
+
"<strong>单极子的缺乏:</strong> 逻辑上解释了在我们的可观测宇宙中完全没有稳定的、高密度的磁单极子。",
|
|
140
|
+
"<strong>涨落光谱:</strong> 在宇宙背景中观察到的各向异性显示光谱指数略低于 1,正如慢滚暴胀子模型所预测的那样。"
|
|
141
|
+
]
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"type": "title",
|
|
145
|
+
"text": "量子涨落与星系的种子",
|
|
146
|
+
"level": 3
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"type": "paragraph",
|
|
150
|
+
"html": "宇宙暴胀最非凡的方面在于它能够充当宇宙显微镜。在指数级膨胀期间,暴胀子场的微观量子涨落被拉伸到天文尺度。在暴胀结束时,这些涨落冻结为物质密度变化(原始扰动)。这些密度差异充当了引力种子,在数十亿年的时间里拉拢物质,诞生了第一批恒星、星系、星系团以及我们今天观察到的宇宙网。"
|
|
151
|
+
}
|
|
152
|
+
],
|
|
153
|
+
faq,
|
|
154
|
+
bibliography,
|
|
155
|
+
howTo,
|
|
156
|
+
schemas: [
|
|
157
|
+
{
|
|
158
|
+
'@context': 'https://schema.org',
|
|
159
|
+
'@type': 'SoftwareApplication',
|
|
160
|
+
name: title,
|
|
161
|
+
description: description,
|
|
162
|
+
applicationCategory: 'ScientificApplication',
|
|
163
|
+
operatingSystem: 'Any',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
'@context': 'https://schema.org',
|
|
167
|
+
'@type': 'FAQPage',
|
|
168
|
+
mainEntity: faq.map((item) => ({
|
|
169
|
+
'@type': 'Question',
|
|
170
|
+
name: item.question,
|
|
171
|
+
acceptedAnswer: {
|
|
172
|
+
'@type': 'Answer',
|
|
173
|
+
text: item.answer,
|
|
174
|
+
},
|
|
175
|
+
})),
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
'@context': 'https://schema.org',
|
|
179
|
+
'@type': 'HowTo',
|
|
180
|
+
name: title,
|
|
181
|
+
step: howTo.map((step) => ({
|
|
182
|
+
'@type': 'HowToStep',
|
|
183
|
+
name: step.name,
|
|
184
|
+
text: step.text,
|
|
185
|
+
})),
|
|
186
|
+
},
|
|
187
|
+
],
|
|
188
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { cosmicInflation } from './entry';
|
|
2
|
+
import type { ToolDefinition } from '../../types';
|
|
3
|
+
|
|
4
|
+
export * from './entry';
|
|
5
|
+
|
|
6
|
+
export const COSMIC_INFLATION_TOOL: ToolDefinition = {
|
|
7
|
+
entry: cosmicInflation,
|
|
8
|
+
Component: () => import('./component.astro'),
|
|
9
|
+
SEOComponent: () => import('./seo.astro'),
|
|
10
|
+
BibliographyComponent: () => import('./bibliography.astro'),
|
|
11
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface InflationResult {
|
|
2
|
+
scaleFactorRatio: number;
|
|
3
|
+
horizonRatio: number;
|
|
4
|
+
finalEnergyDensity: number;
|
|
5
|
+
reheatingTemperature: number;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export class CosmicInflationEngine {
|
|
9
|
+
public calculate(efolds: number, initialEnergyScaleGev: number): InflationResult {
|
|
10
|
+
const scaleFactorRatio = Math.exp(efolds);
|
|
11
|
+
const horizonRatio = scaleFactorRatio;
|
|
12
|
+
const finalEnergyDensity = Math.pow(initialEnergyScaleGev, 4) * Math.exp(-4 * efolds);
|
|
13
|
+
const reheatingTemperature = initialEnergyScaleGev * Math.exp(-efolds);
|
|
14
|
+
return {
|
|
15
|
+
scaleFactorRatio,
|
|
16
|
+
horizonRatio,
|
|
17
|
+
finalEnergyDensity,
|
|
18
|
+
reheatingTemperature,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
import { SEORenderer } from '@jjlmoya/utils-shared';
|
|
3
|
+
import { cosmicInflation } from './index';
|
|
4
|
+
import type { KnownLocale } from '../../types';
|
|
5
|
+
|
|
6
|
+
interface Props {
|
|
7
|
+
locale?: KnownLocale;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
const { locale = 'en' } = Astro.props;
|
|
11
|
+
const content = await cosmicInflation.i18n[locale]?.();
|
|
12
|
+
if (!content) return null;
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
{content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
import { Bibliography } from '@jjlmoya/utils-shared';
|
|
2
|
+
import { Bibliography as SharedBibliography } from '@jjlmoya/utils-shared';
|
|
3
3
|
import { microwaveDetector } from './index';
|
|
4
4
|
import type { KnownLocale } from '../../types';
|
|
5
5
|
|
|
@@ -11,4 +11,4 @@ const { locale = 'es' } = Astro.props;
|
|
|
11
11
|
const content = await microwaveDetector.i18n[locale]?.();
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
{content && <
|
|
14
|
+
{content && <SharedBibliography links={content.bibliography} />}
|
|
@@ -87,7 +87,7 @@ const { ui } = Astro.props;
|
|
|
87
87
|
if (root) {
|
|
88
88
|
const startBtn = document.getElementById("start-btn");
|
|
89
89
|
const modal = document.getElementById("initial-modal");
|
|
90
|
-
const canvas = document.getElementById("interference-canvas");
|
|
90
|
+
const canvas = document.getElementById("interference-canvas") as HTMLCanvasElement | null;
|
|
91
91
|
const ctx = canvas?.getContext("2d");
|
|
92
92
|
|
|
93
93
|
const jitterDisplay = document.getElementById("jitter-value");
|
|
@@ -104,7 +104,7 @@ const { ui } = Astro.props;
|
|
|
104
104
|
const engine = new MicrowaveEngine(currentLang);
|
|
105
105
|
let running = false;
|
|
106
106
|
let audioEnabled = true;
|
|
107
|
-
let audioCtx = null;
|
|
107
|
+
let audioCtx: AudioContext | null = null;
|
|
108
108
|
|
|
109
109
|
const history = new Array(60).fill(0);
|
|
110
110
|
|
|
@@ -143,10 +143,12 @@ const { ui } = Astro.props;
|
|
|
143
143
|
ctx.fill();
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
-
async function playClick(_intensity) {
|
|
146
|
+
async function playClick(_intensity: number) {
|
|
147
147
|
if (!audioEnabled) return;
|
|
148
|
-
if (!audioCtx)
|
|
149
|
-
|
|
148
|
+
if (!audioCtx) {
|
|
149
|
+
const AudioContextClass = window.AudioContext || (window as unknown as { webkitAudioContext: typeof AudioContext }).webkitAudioContext;
|
|
150
|
+
audioCtx = new AudioContextClass();
|
|
151
|
+
}
|
|
150
152
|
|
|
151
153
|
const osc = audioCtx.createOscillator();
|
|
152
154
|
const gain = audioCtx.createGain();
|
|
@@ -176,7 +178,7 @@ const { ui } = Astro.props;
|
|
|
176
178
|
};
|
|
177
179
|
|
|
178
180
|
if (verdictContainer) {
|
|
179
|
-
const colors = colorMap[level.color] || colorMap.emerald;
|
|
181
|
+
const colors = colorMap[level.color as keyof typeof colorMap] || colorMap.emerald;
|
|
180
182
|
verdictContainer.style.backgroundColor = colors.bg;
|
|
181
183
|
verdictContainer.style.borderColor = colors.border;
|
|
182
184
|
verdictContainer.style.color = colors.text;
|
|
@@ -189,7 +191,7 @@ const { ui } = Astro.props;
|
|
|
189
191
|
orange: "#f97316",
|
|
190
192
|
red: "#dc2626",
|
|
191
193
|
};
|
|
192
|
-
statusDot.style.backgroundColor = colorValues[level.color] || colorValues.emerald;
|
|
194
|
+
statusDot.style.backgroundColor = colorValues[level.color as keyof typeof colorValues] || colorValues.emerald;
|
|
193
195
|
}
|
|
194
196
|
}
|
|
195
197
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const description = 'Analysez si votre micro-ondes perd des radiations en mesurant l\'interférence en temps réel sur votre réseau WiFi. Outil de sécurité scientifique.';
|
|
2
|
-
const title = 'Détecteur de Fuites Micro ondes
|
|
2
|
+
const title = 'Détecteur de Fuites Micro ondes: Visualiseur d\'Interférences WiFi';
|
|
3
3
|
const slug = 'detecteur-fuites-micro-ondes';
|
|
4
4
|
const howTo = [
|
|
5
5
|
{
|
|
@@ -79,7 +79,7 @@ export const content: ToolLocaleContent = {
|
|
|
79
79
|
seo: [
|
|
80
80
|
{
|
|
81
81
|
type: 'title',
|
|
82
|
-
text: 'PHYSIQUE DES ONDES
|
|
82
|
+
text: 'PHYSIQUE DES ONDES: Votre micro-ondes fuit-il réellement des radiations ?',
|
|
83
83
|
level: 2,
|
|
84
84
|
},
|
|
85
85
|
{
|
|
@@ -88,7 +88,7 @@ export const content: ToolLocaleContent = {
|
|
|
88
88
|
},
|
|
89
89
|
{
|
|
90
90
|
type: 'paragraph',
|
|
91
|
-
html: 'D\'un point de vue purement physique, un four à micro-ondes est un <strong>résonateur à cavité</strong> conçu pour bombarder les molécules d\'eau de radiations électromagnétiques à une fréquence très spécifique
|
|
91
|
+
html: 'D\'un point de vue purement physique, un four à micro-ondes est un <strong>résonateur à cavité</strong> conçu pour bombarder les molécules d\'eau de radiations électromagnétiques à une fréquence très spécifique: <strong>2,45 GHz</strong>. Cette fréquence n\'est pas arbitraire ; elle est nécessaire pour provoquer l\'oscillation dipolaire des particules d\'eau, générant de la chaleur par friction. Le problème est que c\'est exactement la même fréquence que celle utilisée par la norme WiFi 802.11b/g/n.',
|
|
92
92
|
},
|
|
93
93
|
{
|
|
94
94
|
type: 'title',
|
|
@@ -128,7 +128,7 @@ export const content: ToolLocaleContent = {
|
|
|
128
128
|
type: 'list',
|
|
129
129
|
items: [
|
|
130
130
|
'<strong>"Le micro-ondes altère la structure moléculaire de l\'eau"</strong> - FAUX. Le rayonnement micro-ondes est <em>non ionisant</em>. Il n\'a pas assez d\'énergie pour rompre les liaisons chimiques ou altérer l\'ADN. Il fait simplement vibrer les molécules d\'eau, augmentant leur énergie cinétique (température).',
|
|
131
|
-
'<strong>"Le rayonnement s\'accumule dans les aliments"</strong> - FAUX. Les micro-ondes sont comme la lumière
|
|
131
|
+
'<strong>"Le rayonnement s\'accumule dans les aliments"</strong> - FAUX. Les micro-ondes sont comme la lumière: une fois que vous éteignez l\'interrupteur, elles disparaissent. Un aliment chaud n\'émet pas de rayonnement micro-ondes, seulement un rayonnement infrarouge (chaleur) tout comme un feu ou une poêle.',
|
|
132
132
|
'<strong>"Regarder le plateau tourner endommage les yeux"</strong> - PARTIELLEMENT VRAI. La vitre de la porte est conçue avec une grille qui bloque les longueurs d\'onde de 2,45 GHz. Cependant, si la grille est endommagée, la vitre n\'arrêtera pas les micro-ondes. Le cristallin de l\'œil est très sensible à la chaleur et a une mauvaise circulation sanguine, donc une exposition directe prolongée (près d\'une fuite) pourrait causer des cataractes thermiques.',
|
|
133
133
|
],
|
|
134
134
|
},
|
|
@@ -8,25 +8,25 @@ const howTo = [
|
|
|
8
8
|
},
|
|
9
9
|
{
|
|
10
10
|
name: 'Запустите базовый тест задержки',
|
|
11
|
-
text: 'Нажмите кнопку
|
|
11
|
+
text: 'Нажмите кнопку "Начать" при выключенной микроволновке, чтобы установить стабильный базовый уровень соединения.',
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
14
|
name: 'Включите микроволноку',
|
|
15
|
-
text: 'Разогрейте стакан воды в течение 30
|
|
15
|
+
text: 'Разогрейте стакан воды в течение 30-60 секунд и встаньте рядом с прибором со своим устройством.',
|
|
16
16
|
},
|
|
17
17
|
{
|
|
18
18
|
name: 'Проанализируйте график',
|
|
19
|
-
text: 'Наблюдайте, поднимается ли задержка выше 100
|
|
19
|
+
text: 'Наблюдайте, поднимается ли задержка выше 100-200 мс или случаются ли потери пакетов во время работы прибора.',
|
|
20
20
|
},
|
|
21
21
|
];
|
|
22
22
|
const faq = [
|
|
23
23
|
{
|
|
24
24
|
question: 'Как веб-сайт может обнаружить мою микроволновку?',
|
|
25
|
-
answer: 'Мы используем не магические сенсоры, а задержку сети. Как WiFi 2,4 ГГц, так и микроволновые печи работают на одной частоте (около 2450 МГц). Если экранирование микроволновки нарушено, оно создает
|
|
25
|
+
answer: 'Мы используем не магические сенсоры, а задержку сети. Как WiFi 2,4 ГГц, так и микроволновые печи работают на одной частоте (около 2450 МГц). Если экранирование микроволновки нарушено, оно создает "шум", который сталкивается с WiFi, резко увеличивая задержку (пинг).',
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
28
|
question: 'Опасно ли, если моя микроволновка пропускает излучение?',
|
|
29
|
-
answer: 'Небольшие помехи WiFi
|
|
29
|
+
answer: 'Небольшие помехи WiFi - это нормально и не несут немедленного риска для здоровья, так как мощность быстро падает с расстоянием. Однако сильная утечка указывает на плохую герметичность дверцы или сетки, что следует проверить в целях технической безопасности.',
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
32
|
question: 'Почему тест не работает с WiFi 5 ГГц?',
|
|
@@ -34,7 +34,7 @@ const faq = [
|
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
question: 'Что означают скачки задержки на графике?',
|
|
37
|
-
answer: 'Постоянные скачки во время работы микроволновки говорят о том, что электромагнитный сигнал
|
|
37
|
+
answer: 'Постоянные скачки во время работы микроволновки говорят о том, что электромагнитный сигнал "утекает" наружу и насыщает эфир, не давая пакетам данных WiFi приходить вовремя.',
|
|
38
38
|
},
|
|
39
39
|
];
|
|
40
40
|
import { bibliography } from '../bibliography';
|
|
@@ -84,11 +84,11 @@ export const content: ToolLocaleContent = {
|
|
|
84
84
|
},
|
|
85
85
|
{
|
|
86
86
|
type: 'paragraph',
|
|
87
|
-
html: 'Микроволновка
|
|
87
|
+
html: 'Микроволновка - самый недопонятый прибор на современной кухне. Ее ненавидят пуристы и любят прагматики, но за ней скрывается постоянная борьба между замкнутой энергией и внешним миром.',
|
|
88
88
|
},
|
|
89
89
|
{
|
|
90
90
|
type: 'paragraph',
|
|
91
|
-
html: 'С чисто физической точки зрения микроволновая печь
|
|
91
|
+
html: 'С чисто физической точки зрения микроволновая печь - это <strong>объемный резонатор</strong>, предназначенный для бомбардировки молекул воды электромагнитным излучением на строго определенной частоте: <strong>2,45 ГГц</strong>. Эта частота не случайна; она необходима для вызова дипольных колебаний частиц воды, генерирующих тепло за счет трения. Проблема в том, что это именно та частота, которую использует стандарт WiFi 802.11b/g/n.',
|
|
92
92
|
},
|
|
93
93
|
{
|
|
94
94
|
type: 'title',
|
|
@@ -97,11 +97,11 @@ export const content: ToolLocaleContent = {
|
|
|
97
97
|
},
|
|
98
98
|
{
|
|
99
99
|
type: 'paragraph',
|
|
100
|
-
html: 'Любое WiFi-устройство, работающее в диапазоне 2,4 ГГц, конкурирует за тот же
|
|
100
|
+
html: 'Любое WiFi-устройство, работающее в диапазоне 2,4 ГГц, конкурирует за тот же "воздух", что и ваша микроволновка. В идеальной печи <strong>клетка Фарадея</strong> (металлическая сетка, которую вы видите на дверце и внутренних стенках) должна удерживать 100% энергии.',
|
|
101
101
|
},
|
|
102
102
|
{
|
|
103
103
|
type: 'paragraph',
|
|
104
|
-
html: 'Однако ни одна клетка не идеальна в долгосрочной перспективе. Уплотнители дверцы, магнитные защелки и износ металла могут привести к утечке небольшого количества энергии. Хотя эти уровни обычно значительно ниже пределов безопасности для человека, они <strong>огромны</strong> для сетевой карты WiFi, вызывая задержки, потерю пакетов и характерный
|
|
104
|
+
html: 'Однако ни одна клетка не идеальна в долгосрочной перспективе. Уплотнители дверцы, магнитные защелки и износ металла могут привести к утечке небольшого количества энергии. Хотя эти уровни обычно значительно ниже пределов безопасности для человека, они <strong>огромны</strong> для сетевой карты WiFi, вызывая задержки, потерю пакетов и характерный "джиттер", который измеряет наш инструмент.',
|
|
105
105
|
},
|
|
106
106
|
{
|
|
107
107
|
type: 'title',
|
|
@@ -115,8 +115,8 @@ export const content: ToolLocaleContent = {
|
|
|
115
115
|
{
|
|
116
116
|
type: 'list',
|
|
117
117
|
items: [
|
|
118
|
-
'<strong>Шаг 1
|
|
119
|
-
'<strong>Шаг 2
|
|
118
|
+
'<strong>Шаг 1 - Телефон:</strong> Положите мобильный телефон внутрь микроволновки (<strong>НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ ВКЛЮЧАЙТЕ ПЕЧЬ!</strong> Просто закройте дверцу).',
|
|
119
|
+
'<strong>Шаг 2 - Звонок:</strong> Попробуйте позвонить на этот телефон с другого устройства. Если телефон зазвонит, клетка Фарадея неисправна или не настроена на сотовые частоты. Если абонент "вне зоны доступа", экранирование работает правильно.',
|
|
120
120
|
],
|
|
121
121
|
},
|
|
122
122
|
{
|
|
@@ -127,9 +127,9 @@ export const content: ToolLocaleContent = {
|
|
|
127
127
|
{
|
|
128
128
|
type: 'list',
|
|
129
129
|
items: [
|
|
130
|
-
'<strong
|
|
131
|
-
'<strong
|
|
132
|
-
'<strong
|
|
130
|
+
'<strong>"Микроволновки изменяют молекулярную структуру воды"</strong> - ЛОЖЬ. Микроволновое излучение является <em>неионизирующим</em>. У него недостаточно энергии, чтобы разорвать химические связи или изменить ДНК. Оно просто заставляет молекулы воды вибрировать, увеличивая их кинетическую энергию (температуру).',
|
|
131
|
+
'<strong>"Радиация накапливается в еде"</strong> - ЛОЖЬ. Микроволны подобны свету: как только вы выключаете выключатель, они исчезают. Горячая еда не испускает микроволновое излучение, только инфракрасное (тепло), точно так же, как костер или сковорода.',
|
|
132
|
+
'<strong>"Наблюдение за вращающейся тарелкой портит зрение"</strong> - ОТЧАСТИ ПРАВДА. Стекло дверцы снабжено сеткой, блокирующей волны 2,45 ГГц. Однако, если сетка повреждена, стекло не остановит микроволны. Хрусталик глаза очень чувствителен к нагреву и плохо снабжается кровью, поэтому длительное прямое воздействие (рядом с утечкой) может вызвать тепловую катаракту.',
|
|
133
133
|
],
|
|
134
134
|
},
|
|
135
135
|
{
|
|
@@ -139,15 +139,15 @@ export const content: ToolLocaleContent = {
|
|
|
139
139
|
},
|
|
140
140
|
{
|
|
141
141
|
type: 'paragraph',
|
|
142
|
-
html: 'Наш инструмент не измеряет радиацию напрямую (в смартфонах нет таких датчиков), но он измеряет <strong>главный симптом</strong>. Когда частица излучения 2,45 ГГц покидает печь, она
|
|
142
|
+
html: 'Наш инструмент не измеряет радиацию напрямую (в смартфонах нет таких датчиков), но он измеряет <strong>главный симптом</strong>. Когда частица излучения 2,45 ГГц покидает печь, она "сталкивается" с WiFi-сигналом вашего устройства. Это вызывает:',
|
|
143
143
|
},
|
|
144
144
|
{
|
|
145
145
|
type: 'list',
|
|
146
146
|
items: [
|
|
147
147
|
'<strong>Повторную передачу пакетов:</strong> Роутер обнаруживает, что сообщение пришло поврежденным, и вынужден отправить его снова, что увеличивает задержку.',
|
|
148
|
-
'<strong>Вариацию джиттера:</strong> Это показатель нестабильности времени отклика. Высокий джиттер
|
|
148
|
+
'<strong>Вариацию джиттера:</strong> Это показатель нестабильности времени отклика. Высокий джиттер - однозначный признак массовых внешних помех.',
|
|
149
149
|
'<strong>Падение производительности:</strong> Скорость передачи падает из-за насыщения радиочастотного спектра.',
|
|
150
|
-
'<strong>Фоновый шум:</strong> Микроволновка вносит шум, который повышает
|
|
150
|
+
'<strong>Фоновый шум:</strong> Микроволновка вносит шум, который повышает "порог шума", из-за чего устройству становится трудно отличить реальные данные от радиоактивного хаоса.',
|
|
151
151
|
],
|
|
152
152
|
},
|
|
153
153
|
],
|
|
@@ -22,7 +22,7 @@ const howTo = [
|
|
|
22
22
|
const faq = [
|
|
23
23
|
{
|
|
24
24
|
question: '网站是如何检测我的微波炉的?',
|
|
25
|
-
answer: '我们不使用神奇的传感器,而是利用网络延迟。2.4GHz WiFi 和微波炉都在相同的频率(约 2450 MHz)下工作。如果微波炉屏蔽失效,它会产生与 WiFi
|
|
25
|
+
answer: '我们不使用神奇的传感器,而是利用网络延迟。2.4GHz WiFi 和微波炉都在相同的频率(约 2450 MHz)下工作。如果微波炉屏蔽失效,它会产生与 WiFi 冲突的"噪声",从而剧烈增加延迟(Ping)。',
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
28
|
question: '如果我的微波炉有泄漏,危险吗?',
|
|
@@ -34,7 +34,7 @@ const faq = [
|
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
question: '图表上的延迟尖峰意味着什么?',
|
|
37
|
-
answer: '
|
|
37
|
+
answer: '微波炉运行期间持续出现的尖峰表明电磁信号正在"逃逸"并使空气饱和,导致 WiFi 数据包无法按时送达。',
|
|
38
38
|
},
|
|
39
39
|
];
|
|
40
40
|
import { bibliography } from '../bibliography';
|
|
@@ -97,11 +97,11 @@ export const content: ToolLocaleContent = {
|
|
|
97
97
|
},
|
|
98
98
|
{
|
|
99
99
|
type: 'paragraph',
|
|
100
|
-
html: '任何在 2.4GHz 频段运行的 WiFi
|
|
100
|
+
html: '任何在 2.4GHz 频段运行的 WiFi 设备都在与您的微波炉争夺同一片"空间"。在一个完美的微波炉中,<strong>法拉第笼</strong>(即您在炉门和内壁上看到的金属网)应 100% 阻隔能量。',
|
|
101
101
|
},
|
|
102
102
|
{
|
|
103
103
|
type: 'paragraph',
|
|
104
|
-
html: '然而,长远来看,没有任何屏蔽笼是完美的。炉门密封条、磁性搭扣和金属磨损都可能导致少量能量逸出。虽然这些水平通常远低于人体安全限值,但对于 WiFi 网卡来说却是<strong>巨大</strong
|
|
104
|
+
html: '然而,长远来看,没有任何屏蔽笼是完美的。炉门密封条、磁性搭扣和金属磨损都可能导致少量能量逸出。虽然这些水平通常远低于人体安全限值,但对于 WiFi 网卡来说却是<strong>巨大</strong>的干扰,会导致延迟、丢包以及我们工具测量的特征性"抖动"。',
|
|
105
105
|
},
|
|
106
106
|
{
|
|
107
107
|
type: 'title',
|
|
@@ -116,7 +116,7 @@ export const content: ToolLocaleContent = {
|
|
|
116
116
|
type: 'list',
|
|
117
117
|
items: [
|
|
118
118
|
'<strong>步骤 1 - 手机:</strong> 将手机放入微波炉内(<strong>切记严禁开启微波炉!</strong> 只需关上炉门即可)。',
|
|
119
|
-
'<strong>步骤 2 - 拨打:</strong>
|
|
119
|
+
'<strong>步骤 2 - 拨打:</strong> 尝试从另一台设备拨打该手机。如果手机响了,说明法拉第笼有缺陷或未针对蜂窝频率进行优化。如果提示"不在服务区",则说明屏蔽工作正常。',
|
|
120
120
|
],
|
|
121
121
|
},
|
|
122
122
|
{
|
|
@@ -127,9 +127,9 @@ export const content: ToolLocaleContent = {
|
|
|
127
127
|
{
|
|
128
128
|
type: 'list',
|
|
129
129
|
items: [
|
|
130
|
-
'<strong
|
|
131
|
-
'<strong
|
|
132
|
-
'<strong
|
|
130
|
+
'<strong>"微波会改变水分子的结构"</strong> - 错误。微波辐射是 <em>非电离辐射</em>。它没有足够的能量来打破化学键或改变 DNA。它只是使水分子振动,从而增加其动能(温度)。',
|
|
131
|
+
'<strong>"辐射会累积在食物中"</strong> - 错误。微波就像光:一旦关掉开关,它们就消失了。加热后的食物不会发出微波辐射,只会像营火或平底锅一样发出红外辐射(热量)。',
|
|
132
|
+
'<strong>"盯着转盘看会损伤眼睛"</strong> - 部分属实。炉门玻璃设计有金属网,可以阻隔 2.45GHz 波长的辐射。然而,如果金属网损坏,玻璃将无法阻挡微波。眼睛的晶状体对热量非常敏感且血液循环较差,因此长时间直接暴露(在泄漏点附近)可能会导致热致白内障。',
|
|
133
133
|
],
|
|
134
134
|
},
|
|
135
135
|
{
|
|
@@ -139,7 +139,7 @@ export const content: ToolLocaleContent = {
|
|
|
139
139
|
},
|
|
140
140
|
{
|
|
141
141
|
type: 'paragraph',
|
|
142
|
-
html: '我们的工具并不直接测量辐射(智能手机没有相关传感器),但它测量辐射的<strong>主要症状</strong>。当 2.45GHz 的辐射分子从微波炉逃逸时,它会与您设备的 WiFi
|
|
142
|
+
html: '我们的工具并不直接测量辐射(智能手机没有相关传感器),但它测量辐射的<strong>主要症状</strong>。当 2.45GHz 的辐射分子从微波炉逃逸时,它会与您设备的 WiFi 信号"碰撞"。这会导致:',
|
|
143
143
|
},
|
|
144
144
|
{
|
|
145
145
|
type: 'list',
|
|
@@ -147,7 +147,7 @@ export const content: ToolLocaleContent = {
|
|
|
147
147
|
'<strong>数据包重传:</strong> 路由器检测到消息到达时已损坏,必须重新发送,从而增加了延迟。',
|
|
148
148
|
'<strong>抖动变化:</strong> 这是衡量响应时间不稳定性的指标。高抖动是存在大规模外部干扰的明确信号。',
|
|
149
149
|
'<strong>性能下降:</strong> 由于射频频谱饱和,传输速度骤降。',
|
|
150
|
-
'<strong>背景噪声:</strong>
|
|
150
|
+
'<strong>背景噪声:</strong> 微波炉注入的噪声提高了"噪声底限",使设备难以区分真实数据和电磁混乱。',
|
|
151
151
|
],
|
|
152
152
|
},
|
|
153
153
|
],
|
|
@@ -81,7 +81,11 @@ export class MicrowaveEngine {
|
|
|
81
81
|
if (this.lastPings.length < 2) return 0;
|
|
82
82
|
let diffSum = 0;
|
|
83
83
|
for (let i = 1; i < this.lastPings.length; i++) {
|
|
84
|
-
|
|
84
|
+
const current = this.lastPings[i];
|
|
85
|
+
const prev = this.lastPings[i - 1];
|
|
86
|
+
if (current !== undefined && prev !== undefined) {
|
|
87
|
+
diffSum += Math.abs(current - prev);
|
|
88
|
+
}
|
|
85
89
|
}
|
|
86
90
|
return diffSum / (this.lastPings.length - 1);
|
|
87
91
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
import { Bibliography } from '@jjlmoya/utils-shared';
|
|
2
|
+
import { Bibliography as SharedBibliography } from '@jjlmoya/utils-shared';
|
|
3
3
|
import { simulationProbability } from './index';
|
|
4
4
|
import type { KnownLocale } from '../../types';
|
|
5
5
|
|
|
@@ -11,4 +11,4 @@ const { locale = 'es' } = Astro.props;
|
|
|
11
11
|
const content = await simulationProbability.i18n[locale]?.();
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
{content && <
|
|
14
|
+
{content && <SharedBibliography links={content.bibliography} />}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const description = 'Analysez si notre réalité est une simulation en utilisant l\'argument du trilemme de Nick Bostrom. Calculez la probabilité existentielle avec 4 paramètres clés.';
|
|
2
2
|
const slug = 'calculateur-probabilite-simulation';
|
|
3
|
-
const title = 'Calculateur de Probabilité de Simulation
|
|
3
|
+
const title = 'Calculateur de Probabilité de Simulation: Vivez vous dans un univers virtuel ?';
|
|
4
4
|
const howTo = [
|
|
5
5
|
{
|
|
6
6
|
name: 'Ajuster le progrès technologique',
|
|
@@ -12,7 +12,7 @@ const howTo = [
|
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
14
|
name: 'Évaluer l\'intérêt pour la simulation',
|
|
15
|
-
text: 'Si l\'humanité atteignait le niveau post-humain, voudrait-elle créer des simulations de son passé ? Considérez les motivations
|
|
15
|
+
text: 'Si l\'humanité atteignait le niveau post-humain, voudrait-elle créer des simulations de son passé ? Considérez les motivations: recherche scientifique, divertissement, préservation historique.',
|
|
16
16
|
},
|
|
17
17
|
{
|
|
18
18
|
name: 'Interpréter le résultat',
|
|
@@ -64,9 +64,9 @@ export const content: ToolLocaleContent = {
|
|
|
64
64
|
nSub: 'Échelle de Simulation',
|
|
65
65
|
probabilityTitle: 'Probabilité de Simulation',
|
|
66
66
|
trilemmaResult: 'Verdict du Trilemme',
|
|
67
|
-
scenario1: 'Scénario 1
|
|
68
|
-
scenario2: 'Scénario 2
|
|
69
|
-
scenario3: 'Scénario 3
|
|
67
|
+
scenario1: 'Scénario 1: Extinction',
|
|
68
|
+
scenario2: 'Scénario 2: Désintérêt',
|
|
69
|
+
scenario3: 'Scénario 3: Nous sommes simulés',
|
|
70
70
|
fpDescription: 'Probabilité que l\'humanité atteigne la capacité technique de simuler des univers avec conscience.',
|
|
71
71
|
flDescription: 'Probabilité d\'éviter l\'effondrement (extinction, guerre) avant d\'atteindre le niveau post-humain.',
|
|
72
72
|
fiDescription: 'Pourcentage de civilisations avancées qui décident de créer des simulations de leurs ancêtres.',
|