@jjlmoya/utils-science 1.51.0 → 1.53.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.
Files changed (339) hide show
  1. package/package.json +2 -2
  2. package/scripts/crystal-lattice-catalog-translations.mjs +1 -0
  3. package/src/category/i18n/es.ts +3 -4
  4. package/src/category/i18n/fr.ts +2 -2
  5. package/src/category/i18n/it.ts +2 -2
  6. package/src/category/i18n/pt.ts +2 -2
  7. package/src/category/index.ts +25 -25
  8. package/src/components/PreviewNavSidebar.astro +1 -1
  9. package/src/components/PreviewToolbar.astro +1 -1
  10. package/src/data.ts +1 -1
  11. package/src/env.d.ts +1 -1
  12. package/src/layouts/PreviewLayout.astro +1 -1
  13. package/src/pages/index.astro +1 -1
  14. package/src/tests/bibliography_wellformed_export.test.ts +46 -0
  15. package/src/tests/category_seo_quality.test.ts +76 -0
  16. package/src/tests/faq_count.test.ts +19 -19
  17. package/src/tests/i18n_coverage.test.ts +36 -36
  18. package/src/tests/mocks/astro_mock.js +1 -1
  19. package/src/tests/no_h1_in_components.test.ts +1 -1
  20. package/src/tests/script_density.test.ts +94 -94
  21. package/src/tests/seo_length.test.ts +24 -24
  22. package/src/tests/seo_parity.test.ts +5 -5
  23. package/src/tests/seo_translation_completeness.test.ts +76 -0
  24. package/src/tests/seo_wellformed_export.test.ts +65 -0
  25. package/src/tests/spanish_leakage.test.ts +175 -175
  26. package/src/tool/asteroid-impact/component.astro +251 -251
  27. package/src/tool/asteroid-impact/helpers.ts +17 -17
  28. package/src/tool/asteroid-impact/i18n/de.ts +2 -2
  29. package/src/tool/asteroid-impact/i18n/en.ts +2 -2
  30. package/src/tool/asteroid-impact/i18n/es.ts +2 -2
  31. package/src/tool/asteroid-impact/i18n/fr.ts +2 -2
  32. package/src/tool/asteroid-impact/i18n/id.ts +2 -2
  33. package/src/tool/asteroid-impact/i18n/it.ts +2 -2
  34. package/src/tool/asteroid-impact/i18n/ja.ts +2 -2
  35. package/src/tool/asteroid-impact/i18n/ko.ts +2 -2
  36. package/src/tool/asteroid-impact/i18n/nl.ts +2 -2
  37. package/src/tool/asteroid-impact/i18n/pl.ts +2 -2
  38. package/src/tool/asteroid-impact/i18n/pt.ts +2 -2
  39. package/src/tool/asteroid-impact/i18n/ru.ts +2 -2
  40. package/src/tool/asteroid-impact/i18n/sv.ts +2 -2
  41. package/src/tool/asteroid-impact/i18n/tr.ts +2 -2
  42. package/src/tool/asteroid-impact/i18n/zh.ts +2 -2
  43. package/src/tool/asteroid-impact/script.ts +262 -262
  44. package/src/tool/asteroid-impact/seo.astro +15 -15
  45. package/src/tool/asteroid-impact/ui.ts +69 -69
  46. package/src/tool/black-hole-event-horizon-simulator/i18n/de.ts +249 -241
  47. package/src/tool/black-hole-event-horizon-simulator/i18n/fr.ts +252 -247
  48. package/src/tool/black-hole-event-horizon-simulator/i18n/id.ts +259 -259
  49. package/src/tool/black-hole-event-horizon-simulator/i18n/it.ts +255 -252
  50. package/src/tool/black-hole-event-horizon-simulator/i18n/ja.ts +254 -252
  51. package/src/tool/black-hole-event-horizon-simulator/i18n/ko.ts +258 -258
  52. package/src/tool/black-hole-event-horizon-simulator/i18n/nl.ts +256 -252
  53. package/src/tool/black-hole-event-horizon-simulator/i18n/pl.ts +258 -258
  54. package/src/tool/black-hole-event-horizon-simulator/i18n/pt.ts +256 -252
  55. package/src/tool/black-hole-event-horizon-simulator/i18n/ru.ts +258 -258
  56. package/src/tool/black-hole-event-horizon-simulator/i18n/sv.ts +257 -252
  57. package/src/tool/black-hole-event-horizon-simulator/i18n/tr.ts +256 -251
  58. package/src/tool/black-hole-event-horizon-simulator/i18n/zh.ts +261 -252
  59. package/src/tool/cellular-renewal/component.astro +126 -126
  60. package/src/tool/cellular-renewal/i18n/de.ts +1 -1
  61. package/src/tool/cellular-renewal/i18n/en.ts +1 -1
  62. package/src/tool/cellular-renewal/i18n/es.ts +1 -1
  63. package/src/tool/cellular-renewal/i18n/fr.ts +1 -1
  64. package/src/tool/cellular-renewal/i18n/id.ts +1 -1
  65. package/src/tool/cellular-renewal/i18n/it.ts +1 -1
  66. package/src/tool/cellular-renewal/i18n/ja.ts +1 -1
  67. package/src/tool/cellular-renewal/i18n/ko.ts +1 -1
  68. package/src/tool/cellular-renewal/i18n/nl.ts +1 -1
  69. package/src/tool/cellular-renewal/i18n/pl.ts +1 -1
  70. package/src/tool/cellular-renewal/i18n/pt.ts +1 -1
  71. package/src/tool/cellular-renewal/i18n/ru.ts +1 -1
  72. package/src/tool/cellular-renewal/i18n/sv.ts +1 -1
  73. package/src/tool/cellular-renewal/i18n/tr.ts +1 -1
  74. package/src/tool/cellular-renewal/i18n/zh.ts +1 -1
  75. package/src/tool/cellular-renewal/seo.astro +15 -15
  76. package/src/tool/colony-counter/i18n/de.ts +1 -1
  77. package/src/tool/colony-counter/i18n/en.ts +1 -1
  78. package/src/tool/colony-counter/i18n/es.ts +1 -1
  79. package/src/tool/colony-counter/i18n/fr.ts +1 -1
  80. package/src/tool/colony-counter/i18n/id.ts +1 -1
  81. package/src/tool/colony-counter/i18n/it.ts +1 -1
  82. package/src/tool/colony-counter/i18n/ja.ts +1 -1
  83. package/src/tool/colony-counter/i18n/ko.ts +1 -1
  84. package/src/tool/colony-counter/i18n/nl.ts +1 -1
  85. package/src/tool/colony-counter/i18n/pl.ts +1 -1
  86. package/src/tool/colony-counter/i18n/pt.ts +1 -1
  87. package/src/tool/colony-counter/i18n/ru.ts +1 -1
  88. package/src/tool/colony-counter/i18n/sv.ts +1 -1
  89. package/src/tool/colony-counter/i18n/tr.ts +1 -1
  90. package/src/tool/colony-counter/i18n/zh.ts +1 -1
  91. package/src/tool/colony-counter/seo.astro +15 -15
  92. package/src/tool/conway-life-rule-lab/component.astro +1 -1
  93. package/src/tool/conway-life-rule-lab/i18n/de.ts +145 -141
  94. package/src/tool/conway-life-rule-lab/i18n/es.ts +146 -142
  95. package/src/tool/conway-life-rule-lab/i18n/fr.ts +146 -142
  96. package/src/tool/conway-life-rule-lab/i18n/id.ts +146 -145
  97. package/src/tool/conway-life-rule-lab/i18n/it.ts +146 -145
  98. package/src/tool/conway-life-rule-lab/i18n/ja.ts +146 -145
  99. package/src/tool/conway-life-rule-lab/i18n/ko.ts +146 -145
  100. package/src/tool/conway-life-rule-lab/i18n/nl.ts +147 -145
  101. package/src/tool/conway-life-rule-lab/i18n/pl.ts +147 -145
  102. package/src/tool/conway-life-rule-lab/i18n/pt.ts +147 -145
  103. package/src/tool/conway-life-rule-lab/i18n/ru.ts +147 -145
  104. package/src/tool/conway-life-rule-lab/i18n/sv.ts +147 -145
  105. package/src/tool/conway-life-rule-lab/i18n/tr.ts +147 -145
  106. package/src/tool/conway-life-rule-lab/i18n/zh.ts +147 -145
  107. package/src/tool/conway-life-rule-lab/logic/LifeLabRuntime.ts +2 -2
  108. package/src/tool/cosmic-inflation/i18n/ru.ts +105 -105
  109. package/src/tool/crystal-lattice-structure-finder/i18n/de.ts +217 -217
  110. package/src/tool/crystal-lattice-structure-finder/i18n/en.ts +1 -1
  111. package/src/tool/crystal-lattice-structure-finder/i18n/es.ts +217 -217
  112. package/src/tool/crystal-lattice-structure-finder/i18n/fr.ts +217 -217
  113. package/src/tool/crystal-lattice-structure-finder/i18n/id.ts +217 -217
  114. package/src/tool/crystal-lattice-structure-finder/i18n/it.ts +217 -217
  115. package/src/tool/crystal-lattice-structure-finder/i18n/ja.ts +217 -217
  116. package/src/tool/crystal-lattice-structure-finder/i18n/ko.ts +217 -217
  117. package/src/tool/crystal-lattice-structure-finder/i18n/nl.ts +217 -217
  118. package/src/tool/crystal-lattice-structure-finder/i18n/pl.ts +217 -217
  119. package/src/tool/crystal-lattice-structure-finder/i18n/pt.ts +217 -217
  120. package/src/tool/crystal-lattice-structure-finder/i18n/ru.ts +217 -217
  121. package/src/tool/crystal-lattice-structure-finder/i18n/sv.ts +217 -217
  122. package/src/tool/crystal-lattice-structure-finder/i18n/tr.ts +217 -217
  123. package/src/tool/crystal-lattice-structure-finder/i18n/zh.ts +217 -217
  124. package/src/tool/double-slit-decoherence/i18n/de.ts +181 -181
  125. package/src/tool/double-slit-decoherence/i18n/fr.ts +180 -180
  126. package/src/tool/double-slit-decoherence/i18n/id.ts +181 -181
  127. package/src/tool/double-slit-decoherence/i18n/it.ts +180 -180
  128. package/src/tool/double-slit-decoherence/i18n/ja.ts +181 -181
  129. package/src/tool/double-slit-decoherence/i18n/ko.ts +181 -181
  130. package/src/tool/double-slit-decoherence/i18n/nl.ts +181 -181
  131. package/src/tool/double-slit-decoherence/i18n/pl.ts +181 -181
  132. package/src/tool/double-slit-decoherence/i18n/pt.ts +178 -174
  133. package/src/tool/double-slit-decoherence/i18n/ru.ts +180 -180
  134. package/src/tool/double-slit-decoherence/i18n/sv.ts +176 -172
  135. package/src/tool/double-slit-decoherence/i18n/tr.ts +180 -180
  136. package/src/tool/double-slit-decoherence/i18n/zh.ts +181 -181
  137. package/src/tool/dyson-sphere-energy-capture/component.astro +253 -253
  138. package/src/tool/dyson-sphere-energy-capture/i18n/de.ts +194 -194
  139. package/src/tool/dyson-sphere-energy-capture/i18n/en.ts +6 -6
  140. package/src/tool/dyson-sphere-energy-capture/i18n/es.ts +6 -6
  141. package/src/tool/dyson-sphere-energy-capture/i18n/fr.ts +194 -194
  142. package/src/tool/dyson-sphere-energy-capture/i18n/id.ts +195 -195
  143. package/src/tool/dyson-sphere-energy-capture/i18n/it.ts +194 -194
  144. package/src/tool/dyson-sphere-energy-capture/i18n/ja.ts +194 -190
  145. package/src/tool/dyson-sphere-energy-capture/i18n/ko.ts +194 -193
  146. package/src/tool/dyson-sphere-energy-capture/i18n/nl.ts +197 -197
  147. package/src/tool/dyson-sphere-energy-capture/i18n/pl.ts +168 -166
  148. package/src/tool/dyson-sphere-energy-capture/i18n/pt.ts +194 -193
  149. package/src/tool/dyson-sphere-energy-capture/i18n/ru.ts +195 -193
  150. package/src/tool/dyson-sphere-energy-capture/i18n/sv.ts +195 -193
  151. package/src/tool/dyson-sphere-energy-capture/i18n/tr.ts +168 -166
  152. package/src/tool/dyson-sphere-energy-capture/i18n/zh.ts +194 -193
  153. package/src/tool/epidemic-sir-simulator/i18n/de.ts +347 -347
  154. package/src/tool/epidemic-sir-simulator/i18n/es.ts +347 -347
  155. package/src/tool/epidemic-sir-simulator/i18n/fr.ts +347 -347
  156. package/src/tool/epidemic-sir-simulator/i18n/it.ts +346 -346
  157. package/src/tool/epidemic-sir-simulator/i18n/nl.ts +347 -347
  158. package/src/tool/epidemic-sir-simulator/i18n/ru.ts +347 -347
  159. package/src/tool/epidemic-sir-simulator/i18n/sv.ts +347 -347
  160. package/src/tool/epidemic-sir-simulator/i18n/zh.ts +347 -347
  161. package/src/tool/exoplanet-biosignature-detector/i18n/de.ts +186 -186
  162. package/src/tool/exoplanet-biosignature-detector/i18n/en.ts +195 -195
  163. package/src/tool/exoplanet-biosignature-detector/i18n/es.ts +194 -194
  164. package/src/tool/exoplanet-biosignature-detector/i18n/fr.ts +183 -183
  165. package/src/tool/exoplanet-biosignature-detector/i18n/id.ts +193 -193
  166. package/src/tool/exoplanet-biosignature-detector/i18n/it.ts +194 -194
  167. package/src/tool/exoplanet-biosignature-detector/i18n/ja.ts +194 -194
  168. package/src/tool/exoplanet-biosignature-detector/i18n/ko.ts +194 -194
  169. package/src/tool/exoplanet-biosignature-detector/i18n/nl.ts +194 -194
  170. package/src/tool/exoplanet-biosignature-detector/i18n/pl.ts +144 -144
  171. package/src/tool/exoplanet-biosignature-detector/i18n/pt.ts +146 -146
  172. package/src/tool/exoplanet-biosignature-detector/i18n/ru.ts +143 -143
  173. package/src/tool/exoplanet-biosignature-detector/i18n/sv.ts +144 -144
  174. package/src/tool/exoplanet-biosignature-detector/i18n/tr.ts +145 -145
  175. package/src/tool/exoplanet-biosignature-detector/i18n/zh.ts +194 -194
  176. package/src/tool/global-albedo-snowball-simulator/component.astro +1 -1
  177. package/src/tool/global-albedo-snowball-simulator/i18n/de.ts +169 -169
  178. package/src/tool/global-albedo-snowball-simulator/i18n/fr.ts +169 -169
  179. package/src/tool/global-albedo-snowball-simulator/i18n/id.ts +169 -169
  180. package/src/tool/global-albedo-snowball-simulator/i18n/it.ts +87 -87
  181. package/src/tool/global-albedo-snowball-simulator/i18n/ja.ts +87 -87
  182. package/src/tool/global-albedo-snowball-simulator/i18n/ko.ts +169 -169
  183. package/src/tool/global-albedo-snowball-simulator/i18n/nl.ts +169 -169
  184. package/src/tool/global-albedo-snowball-simulator/i18n/pl.ts +169 -169
  185. package/src/tool/global-albedo-snowball-simulator/i18n/pt.ts +169 -169
  186. package/src/tool/global-albedo-snowball-simulator/i18n/ru.ts +165 -161
  187. package/src/tool/global-albedo-snowball-simulator/i18n/sv.ts +169 -169
  188. package/src/tool/global-albedo-snowball-simulator/i18n/tr.ts +169 -169
  189. package/src/tool/global-albedo-snowball-simulator/i18n/zh.ts +169 -169
  190. package/src/tool/lorenz-attractor/i18n/de.ts +144 -143
  191. package/src/tool/lorenz-attractor/i18n/fr.ts +144 -144
  192. package/src/tool/lorenz-attractor/i18n/id.ts +149 -149
  193. package/src/tool/lorenz-attractor/i18n/it.ts +149 -149
  194. package/src/tool/lorenz-attractor/i18n/ja.ts +149 -149
  195. package/src/tool/lorenz-attractor/i18n/ko.ts +149 -149
  196. package/src/tool/lorenz-attractor/i18n/nl.ts +149 -149
  197. package/src/tool/lorenz-attractor/i18n/pl.ts +149 -149
  198. package/src/tool/lorenz-attractor/i18n/pt.ts +142 -141
  199. package/src/tool/lorenz-attractor/i18n/ru.ts +149 -149
  200. package/src/tool/lorenz-attractor/i18n/sv.ts +149 -149
  201. package/src/tool/lorenz-attractor/i18n/tr.ts +149 -149
  202. package/src/tool/lorenz-attractor/i18n/zh.ts +149 -149
  203. package/src/tool/mandelbrot-fractal/i18n/de.ts +158 -158
  204. package/src/tool/mandelbrot-fractal/i18n/fr.ts +158 -158
  205. package/src/tool/mandelbrot-fractal/i18n/id.ts +159 -159
  206. package/src/tool/mandelbrot-fractal/i18n/it.ts +155 -151
  207. package/src/tool/mandelbrot-fractal/i18n/ja.ts +159 -159
  208. package/src/tool/mandelbrot-fractal/i18n/ko.ts +159 -159
  209. package/src/tool/mandelbrot-fractal/i18n/nl.ts +159 -159
  210. package/src/tool/mandelbrot-fractal/i18n/pl.ts +157 -153
  211. package/src/tool/mandelbrot-fractal/i18n/pt.ts +158 -158
  212. package/src/tool/mandelbrot-fractal/i18n/ru.ts +159 -159
  213. package/src/tool/mandelbrot-fractal/i18n/sv.ts +159 -150
  214. package/src/tool/mandelbrot-fractal/i18n/tr.ts +159 -159
  215. package/src/tool/mandelbrot-fractal/i18n/zh.ts +159 -159
  216. package/src/tool/microwave-detector/component.astro +238 -238
  217. package/src/tool/microwave-detector/i18n/de.ts +1 -1
  218. package/src/tool/microwave-detector/i18n/en.ts +1 -1
  219. package/src/tool/microwave-detector/i18n/es.ts +1 -1
  220. package/src/tool/microwave-detector/i18n/fr.ts +1 -1
  221. package/src/tool/microwave-detector/i18n/id.ts +1 -1
  222. package/src/tool/microwave-detector/i18n/it.ts +1 -1
  223. package/src/tool/microwave-detector/i18n/ja.ts +1 -1
  224. package/src/tool/microwave-detector/i18n/ko.ts +1 -1
  225. package/src/tool/microwave-detector/i18n/nl.ts +1 -1
  226. package/src/tool/microwave-detector/i18n/pl.ts +1 -1
  227. package/src/tool/microwave-detector/i18n/pt.ts +1 -1
  228. package/src/tool/microwave-detector/i18n/ru.ts +1 -1
  229. package/src/tool/microwave-detector/i18n/sv.ts +1 -1
  230. package/src/tool/microwave-detector/i18n/tr.ts +1 -1
  231. package/src/tool/microwave-detector/i18n/zh.ts +1 -1
  232. package/src/tool/microwave-detector/seo.astro +15 -15
  233. package/src/tool/natural-selection-drift/component.astro +135 -135
  234. package/src/tool/natural-selection-drift/i18n/de.ts +164 -160
  235. package/src/tool/natural-selection-drift/i18n/fr.ts +204 -204
  236. package/src/tool/natural-selection-drift/i18n/id.ts +156 -154
  237. package/src/tool/natural-selection-drift/i18n/it.ts +197 -193
  238. package/src/tool/natural-selection-drift/i18n/ja.ts +155 -154
  239. package/src/tool/natural-selection-drift/i18n/ko.ts +155 -154
  240. package/src/tool/natural-selection-drift/i18n/nl.ts +164 -163
  241. package/src/tool/natural-selection-drift/i18n/pl.ts +168 -166
  242. package/src/tool/natural-selection-drift/i18n/pt.ts +200 -195
  243. package/src/tool/natural-selection-drift/i18n/ru.ts +186 -184
  244. package/src/tool/natural-selection-drift/i18n/sv.ts +157 -154
  245. package/src/tool/natural-selection-drift/i18n/tr.ts +186 -184
  246. package/src/tool/natural-selection-drift/i18n/zh.ts +160 -154
  247. package/src/tool/natural-selection-drift/natural-selection-drift.css +563 -563
  248. package/src/tool/phase-diagram-critical-points/i18n/de.ts +178 -178
  249. package/src/tool/phase-diagram-critical-points/i18n/fr.ts +178 -178
  250. package/src/tool/phase-diagram-critical-points/i18n/id.ts +179 -179
  251. package/src/tool/phase-diagram-critical-points/i18n/it.ts +179 -179
  252. package/src/tool/phase-diagram-critical-points/i18n/ja.ts +179 -179
  253. package/src/tool/phase-diagram-critical-points/i18n/ko.ts +179 -179
  254. package/src/tool/phase-diagram-critical-points/i18n/nl.ts +179 -179
  255. package/src/tool/phase-diagram-critical-points/i18n/pl.ts +179 -179
  256. package/src/tool/phase-diagram-critical-points/i18n/pt.ts +179 -179
  257. package/src/tool/phase-diagram-critical-points/i18n/ru.ts +179 -179
  258. package/src/tool/phase-diagram-critical-points/i18n/sv.ts +179 -179
  259. package/src/tool/phase-diagram-critical-points/i18n/tr.ts +179 -179
  260. package/src/tool/phase-diagram-critical-points/i18n/zh.ts +179 -179
  261. package/src/tool/planet-atmosphere-survival/i18n/de.ts +255 -255
  262. package/src/tool/planet-atmosphere-survival/i18n/fr.ts +255 -255
  263. package/src/tool/planet-atmosphere-survival/i18n/id.ts +255 -255
  264. package/src/tool/planet-atmosphere-survival/i18n/it.ts +255 -255
  265. package/src/tool/planet-atmosphere-survival/i18n/ja.ts +255 -255
  266. package/src/tool/planet-atmosphere-survival/i18n/ko.ts +255 -255
  267. package/src/tool/planet-atmosphere-survival/i18n/nl.ts +255 -255
  268. package/src/tool/planet-atmosphere-survival/i18n/pl.ts +255 -255
  269. package/src/tool/planet-atmosphere-survival/i18n/pt.ts +255 -255
  270. package/src/tool/planet-atmosphere-survival/i18n/ru.ts +227 -223
  271. package/src/tool/planet-atmosphere-survival/i18n/sv.ts +255 -255
  272. package/src/tool/planet-atmosphere-survival/i18n/tr.ts +255 -255
  273. package/src/tool/planet-atmosphere-survival/i18n/zh.ts +255 -255
  274. package/src/tool/radioactive-decay/i18n/de.ts +168 -164
  275. package/src/tool/radioactive-decay/i18n/fr.ts +76 -75
  276. package/src/tool/radioactive-decay/i18n/id.ts +169 -165
  277. package/src/tool/radioactive-decay/i18n/it.ts +76 -74
  278. package/src/tool/radioactive-decay/i18n/ja.ts +168 -167
  279. package/src/tool/radioactive-decay/i18n/ko.ts +168 -167
  280. package/src/tool/radioactive-decay/i18n/nl.ts +170 -168
  281. package/src/tool/radioactive-decay/i18n/pl.ts +170 -168
  282. package/src/tool/radioactive-decay/i18n/pt.ts +169 -167
  283. package/src/tool/radioactive-decay/i18n/ru.ts +170 -168
  284. package/src/tool/radioactive-decay/i18n/sv.ts +170 -168
  285. package/src/tool/radioactive-decay/i18n/tr.ts +171 -168
  286. package/src/tool/radioactive-decay/i18n/zh.ts +171 -167
  287. package/src/tool/roche-limit-satellite-disruption/i18n/de.ts +241 -241
  288. package/src/tool/roche-limit-satellite-disruption/i18n/fr.ts +241 -241
  289. package/src/tool/roche-limit-satellite-disruption/i18n/id.ts +241 -241
  290. package/src/tool/roche-limit-satellite-disruption/i18n/it.ts +241 -241
  291. package/src/tool/roche-limit-satellite-disruption/i18n/ja.ts +241 -241
  292. package/src/tool/roche-limit-satellite-disruption/i18n/ko.ts +241 -241
  293. package/src/tool/roche-limit-satellite-disruption/i18n/nl.ts +241 -241
  294. package/src/tool/roche-limit-satellite-disruption/i18n/pl.ts +237 -229
  295. package/src/tool/roche-limit-satellite-disruption/i18n/pt.ts +241 -241
  296. package/src/tool/roche-limit-satellite-disruption/i18n/ru.ts +241 -241
  297. package/src/tool/roche-limit-satellite-disruption/i18n/sv.ts +241 -241
  298. package/src/tool/roche-limit-satellite-disruption/i18n/tr.ts +241 -241
  299. package/src/tool/roche-limit-satellite-disruption/i18n/zh.ts +241 -241
  300. package/src/tool/simulation-probability/component.astro +138 -138
  301. package/src/tool/simulation-probability/i18n/de.ts +1 -1
  302. package/src/tool/simulation-probability/i18n/en.ts +1 -1
  303. package/src/tool/simulation-probability/i18n/es.ts +1 -1
  304. package/src/tool/simulation-probability/i18n/fr.ts +1 -1
  305. package/src/tool/simulation-probability/i18n/id.ts +1 -1
  306. package/src/tool/simulation-probability/i18n/it.ts +1 -1
  307. package/src/tool/simulation-probability/i18n/ja.ts +1 -1
  308. package/src/tool/simulation-probability/i18n/ko.ts +1 -1
  309. package/src/tool/simulation-probability/i18n/nl.ts +1 -1
  310. package/src/tool/simulation-probability/i18n/pl.ts +1 -1
  311. package/src/tool/simulation-probability/i18n/pt.ts +1 -1
  312. package/src/tool/simulation-probability/i18n/ru.ts +1 -1
  313. package/src/tool/simulation-probability/i18n/sv.ts +1 -1
  314. package/src/tool/simulation-probability/i18n/tr.ts +1 -1
  315. package/src/tool/simulation-probability/i18n/zh.ts +1 -1
  316. package/src/tool/simulation-probability/seo.astro +15 -15
  317. package/src/tool/stellar-habitability-zone/i18n/ru.ts +189 -189
  318. package/src/tool/temperature-timeline/i18n/de.ts +2 -1
  319. package/src/tool/temperature-timeline/i18n/fr.ts +177 -177
  320. package/src/tool/temperature-timeline/i18n/it.ts +142 -141
  321. package/src/tool/temperature-timeline/i18n/pt.ts +3 -1
  322. package/src/tool/temperature-timeline/i18n/ru.ts +116 -114
  323. package/src/tool/three-body-problem/app.ts +4 -4
  324. package/src/tool/three-body-problem/component.astro +6 -6
  325. package/src/tool/twin-paradox-visualizer/i18n/de.ts +168 -168
  326. package/src/tool/twin-paradox-visualizer/i18n/es.ts +165 -165
  327. package/src/tool/twin-paradox-visualizer/i18n/fr.ts +168 -168
  328. package/src/tool/twin-paradox-visualizer/i18n/id.ts +168 -168
  329. package/src/tool/twin-paradox-visualizer/i18n/it.ts +168 -168
  330. package/src/tool/twin-paradox-visualizer/i18n/ja.ts +168 -168
  331. package/src/tool/twin-paradox-visualizer/i18n/ko.ts +168 -168
  332. package/src/tool/twin-paradox-visualizer/i18n/nl.ts +168 -168
  333. package/src/tool/twin-paradox-visualizer/i18n/pl.ts +168 -168
  334. package/src/tool/twin-paradox-visualizer/i18n/pt.ts +164 -160
  335. package/src/tool/twin-paradox-visualizer/i18n/ru.ts +168 -168
  336. package/src/tool/twin-paradox-visualizer/i18n/sv.ts +168 -168
  337. package/src/tool/twin-paradox-visualizer/i18n/tr.ts +168 -168
  338. package/src/tool/twin-paradox-visualizer/i18n/zh.ts +168 -168
  339. package/src/types.ts +1 -1
@@ -1,254 +1,258 @@
1
- import { bibliography } from '../bibliography';
2
- import type { ToolLocaleContent } from '../../../types';
3
-
4
- const slug = 'simulador-horizonte-eventos';
5
- const title = 'Simulador do Horizonte de Eventos de um Buraco Negro';
6
- const description = 'Explore o horizonte de eventos de um buraco negro com cálculos interativos de massa, distância orbital, dilatação temporal, esfera de fótons, velocidade de escape e raio de Schwarzschild.';
7
-
8
- const howTo = [
9
- {
10
- name: 'Escolha a massa do buraco negro',
11
- text: 'Mova o controle deslizante de massa de um buraco negro de massa estelar para um supermassivo e veja o raio de Schwarzschild escalar em tempo real.',
12
- },
13
- {
14
- name: 'Aproxime a sonda do horizonte',
15
- text: 'Ajuste a distância em raios de Schwarzschild para comparar uma órbita externa segura, a região da esfera de fótons e a borda do horizonte de eventos.',
16
- },
17
- {
18
- name: 'Inspecione os efeitos relativísticos',
19
- text: 'Leia a velocidade de escape, a dilatação gravitacional do tempo, o desvio para o vermelho e o período orbital para entender por que a intuição comum falha perto do horizonte.',
20
- },
21
- {
22
- name: 'Compare os raios característicos',
23
- text: 'Use os anéis guia do horizonte de eventos, da esfera de fótons e da ISCO para compreender os diferentes limites ao redor de um buraco negro sem rotação.',
24
- },
25
- ];
26
-
27
- const faq = [
28
- {
29
- question: 'O que é o horizonte de eventos de um buraco negro?',
30
- answer: 'O horizonte de eventos é o limite onde a velocidade de escape atinge a velocidade da luz. Uma vez que um objeto o cruza, nenhum sinal se movendo na velocidade da luz ou abaixo dela pode retornar ao universo exterior.',
31
- },
32
- {
33
- question: 'O que significa o raio de Schwarzschild?',
34
- answer: 'O raio de Schwarzschild é o raio do horizonte de eventos para um buraco negro sem rotação nem carga elétrica. Ele cresce linearmente com a massa, então dobrar a massa dobra o raio do horizonte.',
35
- },
36
- {
37
- question: 'O que é a esfera de fótons?',
38
- answer: 'A esfera de fótons é uma região a 1,5 raios de Schwarzschild onde a luz pode orbitar o buraco negro em uma trajetória instável. Pequenas perturbações fazem com que os fótons escapem para fora ou caiam para dentro.',
39
- },
40
- {
41
- question: 'O que é a ISCO?',
42
- answer: 'ISCO significa "órbita circular estável mais interna" (innermost stable circular orbit). Para um buraco negro sem rotação, ela está a 3 raios de Schwarzschild (ou 6 raios gravitacionais) e marca a última órbita circular estável para partículas com massa.',
43
- },
44
- {
45
- question: 'Por que a dilatação temporal aumenta perto do horizonte?',
46
- answer: 'Na geometria de Schwarzschild, relógios mais profundos no campo gravitacional marcam o tempo mais lentamente em comparação com observadores distantes. O fator exibido se aproxima de zero à medida que a sonda se aproxima do horizonte de eventos.',
47
- },
48
- {
49
- question: 'Este simulador pode modelar um buraco negro em rotação?',
50
- answer: 'Não. Ele usa a solução de Schwarzschild, que assume ausência de rotação e carga elétrica. Buracos negros astrofísicos reais frequentemente giram, e a rotação altera o tamanho do horizonte, a localização da ISCO e o comportamento do disco.',
51
- },
52
- {
53
- question: 'Por que os buracos negros supermassivos são menos violentos no horizonte?',
54
- answer: 'O gradiente de maré no horizonte diminui à medida que a massa do buraco negro aumenta. Um pequeno buraco negro de massa estelar pode esticar objetos violentamente perto do horizonte, enquanto um buraco negro supermassivo pode ter um gradiente local mais suave nesse limite.',
55
- },
56
- {
57
- question: 'A visualização mostra uma imagem real de um buraco negro?',
58
- answer: 'É um diagrama educacional, não uma observação com traçado de raios (ray-tracing). Os anéis e o disco estão escalados para os raios de Schwarzschild simplificados para que as zonas físicas sejam fáceis de comparar.',
59
- },
60
- ];
61
-
62
- export const content: ToolLocaleContent = {
63
- slug,
64
- title,
65
- description,
66
- ui: {
67
- visualTitle: 'Mapa de campo do horizonte de eventos',
68
- visualCaption: 'A sonda se move através da geometria de Schwarzschild escalada. Os anéis guia brilhantes marcam o horizonte, a esfera de fótons e a órbita circular estável mais interna.',
69
- controlsTitle: 'Controles do buraco negro',
70
- eventHorizon: 'Horizonte de eventos',
71
- photonSphere: 'Esfera de fótons',
72
- isco: 'ISCO',
73
- rsLabel: 'Raio de Schwarzschild',
74
- diameterLabel: 'Diâmetro',
75
- timeLabel: 'Dilatação temporal',
76
- redshiftLabel: 'Desvio para o vermelho',
77
- statusSafe: 'Fora da região de órbita estável',
78
- statusPhoton: 'Dentro da zona da esfera de fótons',
79
- statusInside: 'No limite do horizonte',
80
- diameter: 'Diâmetro do horizonte',
81
- lightCrossing: 'Tempo de travessia da luz',
82
- timeDilation: 'Ritmo do relógio vs observador distante',
83
- redshift: 'Desvio para o vermelho gravitacional',
84
- mass: 'Massa do buraco negro',
85
- distance: 'Distância da sonda',
86
- speed: 'Velocidade orbital da sonda',
87
- escapeVelocity: 'Velocidade de escape',
88
- orbitalPeriod: 'Período orbital da sonda',
89
- tidalGradient: 'Gradiente de maré',
90
- kilometerUnit: 'km',
91
- millisecondUnit: 'ms',
92
- secondUnit: 's',
93
- lightSpeedUnit: '% c',
94
- tidalUnit: 'g/m',
95
- solarMassesUnit: 'massas solares',
96
- rsUnit: 'Rs',
97
- zeroKilometers: '0 km',
98
- zeroMilliseconds: '0 ms',
99
- zeroMultiplier: '0x',
100
- zeroLightSpeed: '0% c',
101
- zeroTidal: '0 g/m',
102
- initialMassOutput: '10 massas solares',
103
- initialDistanceOutput: '3.0 Rs',
104
- initialSpeedOutput: '32% c',
105
- },
106
- seo: [
107
- {
108
- type: 'title',
109
- text: 'Simulador do Orizonte de Eventos de Buraco Negro para Raio de Schwarzschild, Esfera de Fótons e Dilatação Temporal',
110
- level: 2,
111
- },
112
- {
113
- type: 'paragraph',
114
- html: 'Este simulador do horizonte de eventos converte as ideias fundamentais dos buracos negros de Schwarzschild em um modelo visual interativo.',
115
- },
116
- {
117
- type: 'paragraph',
118
- html: 'O simulador foi desenvolvido para estudantes de astronomia, professores de física e pesquisadores.',
119
- },
120
- {
121
- type: 'title',
122
- text: 'Como o raio do horizonte de eventos é calculado',
123
- level: 3,
124
- },
125
- {
126
- type: 'paragraph',
127
- html: 'Para um buraco negro sem rotação e sem carga, o raio é o <strong>raio de Schwarzschild</strong>: <strong>Rs = 2GM / c^2</strong>.',
128
- },
129
- {
130
- type: 'paragraph',
131
- html: 'Como o raio varia linearmente com a massa, 10 massas solares correspondem a um raio de aproximadamente 29,5 km.',
132
- },
133
- {
134
- type: 'table',
135
- headers: ['Região', 'Raio em raios de Schwarzschild', 'Significado'],
136
- rows: [
137
- ['Horizonte de eventos', '1.0 Rs', 'O limite sem retorno onde a velocidade de escape é igual a c.'],
138
- ['Esfera de fótons', '1.5 Rs', 'A órbita circular instável para a luz.'],
139
- ['ISCO', '3.0 Rs', 'A última órbita circular estável para partículas com massa.'],
140
- ['Campo fraco', '6 Rs e além', 'A gravidade ainda é forte, mas órbitas circulares são fáceis de manter.'],
141
- ],
142
- },
143
- {
144
- type: 'title',
145
- text: 'Velocidade de escape e limite causal',
146
- level: 3,
147
- },
148
- {
149
- type: 'paragraph',
150
- html: 'A velocidade de escape é a velocidade mínima necessária para alcançar distância infinita sem propulsão.',
151
- },
152
- {
153
- type: 'paragraph',
154
- html: 'A leitura da velocidade de escape fornece uma intuição útil, mas não é uma descrição relativística completa.',
155
- },
156
- {
157
- type: 'title',
158
- text: 'Dilatação temporal e desvio para o vermelho gravitacional',
159
- level: 3,
160
- },
161
- {
162
- type: 'paragraph',
163
- html: 'Um relógio fixo perto de um buraco negro avança mais devagar em comparação com um observador distante. O fator simplificado é <strong>sqrt(1 - Rs / r)</strong>.',
164
- },
165
- {
166
- type: 'paragraph',
167
- html: 'O desvio para o vermelho gravitacional segue a mesma geometria. A luz perde energia ao subir o poço gravitacional.',
168
- },
169
- {
170
- type: 'title',
171
- text: 'Explicação da esfera de fótons e da ISCO',
172
- level: 3,
173
- },
174
- {
175
- type: 'paragraph',
176
- html: 'A esfera de fótons a 1.5 Rs é onde a luz pode percorrer uma órbita circular instável.',
177
- },
178
- {
179
- type: 'paragraph',
180
- html: 'A ISCO a 3 Rs representa a última órbita circular estável para a matéria.',
181
- },
182
- {
183
- type: 'title',
184
- text: 'Buracos negros estelares vs supermassivos',
185
- level: 3,
186
- },
187
- {
188
- type: 'paragraph',
189
- html: 'Uma lição surpreendente é que buracos negros supermassivos produzem forças de maré menos violentas no horizonte.',
190
- },
191
- {
192
- type: 'paragraph',
193
- html: 'O simulador inclui uma leitura do gradiente de maré expressa em gravidades terrestres por metro.',
194
- },
195
- {
196
- type: 'title',
197
- text: 'Limitações deste simulador',
198
- level: 3,
199
- },
200
- {
201
- type: 'list',
202
- items: [
203
- '<strong>Sem rotação:</strong> utiliza a geometria de Schwarzschild.',
204
- '<strong>Física de acreção simplificada:</strong> disco visual indicativo.',
205
- '<strong>Sem ray tracing:</strong> diagrama educacional.',
206
- '<strong>Relógio estacionário:</strong> não em queda livre.',
207
- ],
208
- },
209
- {
210
- type: 'title',
211
- text: 'Perguntas frequentes',
212
- level: 3,
213
- },
214
- {
215
- type: 'paragraph',
216
- html: 'Utilize esta ferramenta para estimar os parâmetros de um buraco negro.',
217
- },
1
+ import { bibliography } from '../bibliography';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+
4
+ const slug = 'simulador-horizonte-eventos';
5
+ const title = 'Simulador do Horizonte de Eventos de um Buraco Negro';
6
+ const description = 'Explore o horizonte de eventos de um buraco negro com cálculos interativos de massa, distância orbital, dilatação temporal, esfera de fótons, velocidade de escape e raio de Schwarzschild.';
7
+
8
+ const howTo = [
9
+ {
10
+ name: 'Escolha a massa do buraco negro',
11
+ text: 'Mova o controle deslizante de massa de um buraco negro de massa estelar para um supermassivo e veja o raio de Schwarzschild escalar em tempo real.',
12
+ },
13
+ {
14
+ name: 'Aproxime a sonda do horizonte',
15
+ text: 'Ajuste a distância em raios de Schwarzschild para comparar uma órbita externa segura, a região da esfera de fótons e a borda do horizonte de eventos.',
16
+ },
17
+ {
18
+ name: 'Inspecione os efeitos relativísticos',
19
+ text: 'Leia a velocidade de escape, a dilatação gravitacional do tempo, o desvio para o vermelho e o período orbital para entender por que a intuição comum falha perto do horizonte.',
20
+ },
21
+ {
22
+ name: 'Compare os raios característicos',
23
+ text: 'Use os anéis guia do horizonte de eventos, da esfera de fótons e da ISCO para compreender os diferentes limites ao redor de um buraco negro sem rotação.',
24
+ },
25
+ ];
26
+
27
+ const faq = [
28
+ {
29
+ question: 'O que é o horizonte de eventos de um buraco negro?',
30
+ answer: 'O horizonte de eventos é o limite onde a velocidade de escape atinge a velocidade da luz. Uma vez que um objeto o cruza, nenhum sinal se movendo na velocidade da luz ou abaixo dela pode retornar ao universo exterior.',
31
+ },
32
+ {
33
+ question: 'O que significa o raio de Schwarzschild?',
34
+ answer: 'O raio de Schwarzschild é o raio do horizonte de eventos para um buraco negro sem rotação nem carga elétrica. Ele cresce linearmente com a massa, então dobrar a massa dobra o raio do horizonte.',
35
+ },
36
+ {
37
+ question: 'O que é a esfera de fótons?',
38
+ answer: 'A esfera de fótons é uma região a 1,5 raios de Schwarzschild onde a luz pode orbitar o buraco negro em uma trajetória instável. Pequenas perturbações fazem com que os fótons escapem para fora ou caiam para dentro.',
39
+ },
40
+ {
41
+ question: 'O que é a ISCO?',
42
+ answer: 'ISCO significa "órbita circular estável mais interna" (innermost stable circular orbit). Para um buraco negro sem rotação, ela está a 3 raios de Schwarzschild (ou 6 raios gravitacionais) e marca a última órbita circular estável para partículas com massa.',
43
+ },
44
+ {
45
+ question: 'Por que a dilatação temporal aumenta perto do horizonte?',
46
+ answer: 'Na geometria de Schwarzschild, relógios mais profundos no campo gravitacional marcam o tempo mais lentamente em comparação com observadores distantes. O fator exibido se aproxima de zero à medida que a sonda se aproxima do horizonte de eventos.',
47
+ },
48
+ {
49
+ question: 'Este simulador pode modelar um buraco negro em rotação?',
50
+ answer: 'Não. Ele usa a solução de Schwarzschild, que assume ausência de rotação e carga elétrica. Buracos negros astrofísicos reais frequentemente giram, e a rotação altera o tamanho do horizonte, a localização da ISCO e o comportamento do disco.',
51
+ },
52
+ {
53
+ question: 'Por que os buracos negros supermassivos são menos violentos no horizonte?',
54
+ answer: 'O gradiente de maré no horizonte diminui à medida que a massa do buraco negro aumenta. Um pequeno buraco negro de massa estelar pode esticar objetos violentamente perto do horizonte, enquanto um buraco negro supermassivo pode ter um gradiente local mais suave nesse limite.',
55
+ },
56
+ {
57
+ question: 'A visualização mostra uma imagem real de um buraco negro?',
58
+ answer: 'É um diagrama educacional, não uma observação com traçado de raios (ray-tracing). Os anéis e o disco estão escalados para os raios de Schwarzschild simplificados para que as zonas físicas sejam fáceis de comparar.',
59
+ },
60
+ ];
61
+
62
+ export const content: ToolLocaleContent = {
63
+ slug,
64
+ title,
65
+ description,
66
+ ui: {
67
+ visualTitle: 'Mapa de campo do horizonte de eventos',
68
+ visualCaption: 'A sonda se move através da geometria de Schwarzschild escalada. Os anéis guia brilhantes marcam o horizonte, a esfera de fótons e a órbita circular estável mais interna.',
69
+ controlsTitle: 'Controles do buraco negro',
70
+ eventHorizon: 'Horizonte de eventos',
71
+ photonSphere: 'Esfera de fótons',
72
+ isco: 'ISCO',
73
+ rsLabel: 'Raio de Schwarzschild',
74
+ diameterLabel: 'Diâmetro',
75
+ timeLabel: 'Dilatação temporal',
76
+ redshiftLabel: 'Desvio para o vermelho',
77
+ statusSafe: 'Fora da região de órbita estável',
78
+ statusPhoton: 'Dentro da zona da esfera de fótons',
79
+ statusInside: 'No limite do horizonte',
80
+ diameter: 'Diâmetro do horizonte',
81
+ lightCrossing: 'Tempo de travessia da luz',
82
+ timeDilation: 'Ritmo do relógio vs observador distante',
83
+ redshift: 'Desvio para o vermelho gravitacional',
84
+ mass: 'Massa do buraco negro',
85
+ distance: 'Distância da sonda',
86
+ speed: 'Velocidade orbital da sonda',
87
+ escapeVelocity: 'Velocidade de escape',
88
+ orbitalPeriod: 'Período orbital da sonda',
89
+ tidalGradient: 'Gradiente de maré',
90
+ kilometerUnit: 'km',
91
+ millisecondUnit: 'ms',
92
+ secondUnit: 's',
93
+ lightSpeedUnit: '% c',
94
+ tidalUnit: 'g/m',
95
+ solarMassesUnit: 'massas solares',
96
+ rsUnit: 'Rs',
97
+ zeroKilometers: '0 km',
98
+ zeroMilliseconds: '0 ms',
99
+ zeroMultiplier: '0x',
100
+ zeroLightSpeed: '0% c',
101
+ zeroTidal: '0 g/m',
102
+ initialMassOutput: '10 massas solares',
103
+ initialDistanceOutput: '3.0 Rs',
104
+ initialSpeedOutput: '32% c',
105
+ },
106
+ seo: [
107
+ {
108
+ type: 'title',
109
+ text: 'Simulador do Orizonte de Eventos de Buraco Negro para Raio de Schwarzschild, Esfera de Fótons e Dilatação Temporal',
110
+ level: 2,
111
+ },
112
+ {
113
+ type: 'paragraph',
114
+ html: 'Este simulador do horizonte de eventos converte as ideias fundamentais dos buracos negros de Schwarzschild em um modelo visual interativo.',
115
+ },
116
+ {
117
+ type: 'paragraph',
118
+ html: 'O simulador foi desenvolvido para estudantes de astronomia, professores de física e pesquisadores.',
119
+ },
120
+ {
121
+ type: 'title',
122
+ text: 'Como o raio do horizonte de eventos é calculado',
123
+ level: 3,
124
+ },
125
+ {
126
+ type: 'paragraph',
127
+ html: 'Para um buraco negro sem rotação e sem carga, o raio é o <strong>raio de Schwarzschild</strong>: <strong>Rs = 2GM / c^2</strong>.',
128
+ },
129
+ {
130
+ type: 'paragraph',
131
+ html: 'Como o raio varia linearmente com a massa, 10 massas solares correspondem a um raio de aproximadamente 29,5 km.',
132
+ },
133
+ {
134
+ type: 'table',
135
+ headers: ['Região', 'Raio em raios de Schwarzschild', 'Significado'],
136
+ rows: [
137
+ ['Horizonte de eventos', '1.0 Rs', 'O limite sem retorno onde a velocidade de escape é igual a c.'],
138
+ ['Esfera de fótons', '1.5 Rs', 'A órbita circular instável para a luz.'],
139
+ ['ISCO', '3.0 Rs', 'A última órbita circular estável para partículas com massa.'],
140
+ ['Campo fraco', '6 Rs e além', 'A gravidade ainda é forte, mas órbitas circulares são fáceis de manter.'],
141
+ ],
142
+ },
143
+ {
144
+ type: 'title',
145
+ text: 'Velocidade de escape e limite causal',
146
+ level: 3,
147
+ },
148
+ {
149
+ type: 'paragraph',
150
+ html: 'A velocidade de escape é a velocidade mínima necessária para alcançar distância infinita sem propulsão.',
151
+ },
152
+ {
153
+ type: 'paragraph',
154
+ html: 'A leitura da velocidade de escape fornece uma intuição útil, mas não é uma descrição relativística completa.',
155
+ },
156
+ {
157
+ type: 'title',
158
+ text: 'Dilatação temporal e desvio para o vermelho gravitacional',
159
+ level: 3,
160
+ },
161
+ {
162
+ type: 'paragraph',
163
+ html: 'Um relógio fixo perto de um buraco negro avança mais devagar em comparação com um observador distante. O fator simplificado é <strong>sqrt(1 - Rs / r)</strong>.',
164
+ },
165
+ {
166
+ type: 'paragraph',
167
+ html: 'O desvio para o vermelho gravitacional segue a mesma geometria. A luz perde energia ao subir o poço gravitacional.',
168
+ },
169
+ {
170
+ type: 'title',
171
+ text: 'Explicação da esfera de fótons e da ISCO',
172
+ level: 3,
173
+ },
174
+ {
175
+ type: 'paragraph',
176
+ html: 'A esfera de fótons a 1.5 Rs é onde a luz pode percorrer uma órbita circular instável.',
177
+ },
178
+ {
179
+ type: 'paragraph',
180
+ html: 'A ISCO a 3 Rs representa a última órbita circular estável para a matéria.',
181
+ },
182
+ {
183
+ type: 'title',
184
+ text: 'Buracos negros estelares vs supermassivos',
185
+ level: 3,
186
+ },
187
+ {
188
+ type: 'paragraph',
189
+ html: 'Uma lição surpreendente é que buracos negros supermassivos produzem forças de maré menos violentas no horizonte.',
190
+ },
191
+ {
192
+ type: 'paragraph',
193
+ html: 'O simulador inclui uma leitura do gradiente de maré expressa em gravidades terrestres por metro.',
194
+ },
195
+ {
196
+ type: 'title',
197
+ text: 'Limitações deste simulador',
198
+ level: 3,
199
+ },
200
+ {
201
+ type: 'list',
202
+ items: [
203
+ '<strong>Sem rotação:</strong> utiliza a geometria de Schwarzschild.',
204
+ '<strong>Física de acreção simplificada:</strong> disco visual indicativo.',
205
+ '<strong>Sem ray tracing:</strong> diagrama educacional.',
206
+ '<strong>Relógio estacionário:</strong> não em queda livre.',
207
+ ],
208
+ },
209
+ {
210
+ type: 'title',
211
+ text: 'Perguntas frequentes',
212
+ level: 3,
213
+ },
214
+ {
215
+ type: 'paragraph',
216
+ html: 'Utilize esta ferramenta para estimar os parâmetros de um buraco negro.',
217
+ },
218
+ { type: 'paragraph', html: 'Esta secção explica com mais detalhe a geometria usada pelo simulador. O raio de Schwarzschild cresce com a massa e, na solução ideal de Schwarzschild, representa uma superfície de coordenadas associada ao horizonte de eventos. A esfera de fotões fica mais afastada e corresponde a órbitas circulares instáveis: uma pequena perturbação pode alterar rapidamente o destino da luz. A dilatação temporal apresentada depende do observador escolhido e não deve ser confundida com o tempo próprio de um relógio local. Altere primeiro a massa e depois a distância para comparar escalas sem misturar os efeitos. O modelo não inclui rotação, carga elétrica, matéria envolvente, disco de acreção, campos magnéticos, radiação ou forças de maré de um objeto concreto. Serve para criar intuição sobre a relatividade geral e distinguir uma definição matemática de uma observação astronómica. Para uma fonte real seriam necessários dados de massa, rotação, ambiente e trajetória, além de uma metodologia publicada. A página não fornece previsões operacionais nem instruções para aproximar-se de um objeto compacto. Registe as hipóteses e compare uma variável de cada vez.' },
219
+ { type: 'paragraph', html: 'Também pode alterar a posição do observador e comparar como muda a apresentação do tempo. Este exemplo ajuda a distinguir uma representação por coordenadas da medição de um relógio local. Num objeto real, a rotação e a matéria envolvente influenciam os percursos da luz e o sinal observado; um modelo esférico simples não descreve todas as observações. Registe cada parâmetro e repita o cálculo nas mesmas condições para compreender a origem e os limites do resultado.' },
220
+ { type: 'paragraph', html: 'Compare várias execuções independentes e altere apenas um parâmetro de cada vez. Assim pode distinguir um efeito geométrico do modelo de uma consequência da escolha do observador. As fórmulas ajudam a criar intuição, mas a interpretação depende sempre do referencial e das condições iniciais.' },
221
+ { type: 'paragraph', html: 'Use as mesmas definições para repetir a comparação e altere depois um único parâmetro. Assim fica mais claro o que resulta da geometria e o que depende do referencial escolhido. O simulador é um modelo educativo, não uma descrição completa de um buraco negro observado.' },
218
222
  ],
219
223
  faq,
220
- bibliography,
221
- howTo,
222
- schemas: [
223
- {
224
- '@context': 'https://schema.org',
225
- '@type': 'SoftwareApplication',
226
- name: title,
227
- description,
228
- applicationCategory: 'ScientificApplication',
229
- operatingSystem: 'Any',
230
- },
231
- {
232
- '@context': 'https://schema.org',
233
- '@type': 'FAQPage',
234
- mainEntity: faq.map((item) => ({
235
- '@type': 'Question',
236
- name: item.question,
237
- acceptedAnswer: {
238
- '@type': 'Answer',
239
- text: item.answer,
240
- },
241
- })),
242
- },
243
- {
244
- '@context': 'https://schema.org',
245
- '@type': 'HowTo',
246
- name: title,
247
- step: howTo.map((step) => ({
248
- '@type': 'HowToStep',
249
- name: step.name,
250
- text: step.text,
251
- })),
252
- },
253
- ],
254
- };
224
+ bibliography,
225
+ howTo,
226
+ schemas: [
227
+ {
228
+ '@context': 'https://schema.org',
229
+ '@type': 'SoftwareApplication',
230
+ name: title,
231
+ description,
232
+ applicationCategory: 'ScientificApplication',
233
+ operatingSystem: 'Any',
234
+ },
235
+ {
236
+ '@context': 'https://schema.org',
237
+ '@type': 'FAQPage',
238
+ mainEntity: faq.map((item) => ({
239
+ '@type': 'Question',
240
+ name: item.question,
241
+ acceptedAnswer: {
242
+ '@type': 'Answer',
243
+ text: item.answer,
244
+ },
245
+ })),
246
+ },
247
+ {
248
+ '@context': 'https://schema.org',
249
+ '@type': 'HowTo',
250
+ name: title,
251
+ step: howTo.map((step) => ({
252
+ '@type': 'HowToStep',
253
+ name: step.name,
254
+ text: step.text,
255
+ })),
256
+ },
257
+ ],
258
+ };