Tập tin:Friedmann universes.svg
Từ testwiki
Bước tới điều hướng
Bước tới tìm kiếm
Kích thước bản xem trước PNG này của tập tin SVG: 620×500 điểm ảnh. Độ phân giải khác: 298×240 điểm ảnh | 595×480 điểm ảnh | 952×768 điểm ảnh | 1.270×1.024 điểm ảnh | 2.540×2.048 điểm ảnh.
Tập tin gốc (tập tin SVG, 620×500 điểm ảnh trên danh nghĩa, kích thước: 3 kB)
Tập tin này được lưu ở Wikimedia Commons và nó có thể được sử dụng ở các dự án khác. Lời miêu tả của tập tin tại trang mô tả được hiển thị dưới đây.
Miêu tả
| Miêu tảFriedmann universes.svg |
English: The age and ultimate fate of the universe can be determined by measuring the Hubble constant today and extrapolating with the observed value of the deceleration parameter, uniquely characterized by values of density parameters (ΩM for matter and ΩΛ for dark energy). A "closed universe" with ΩM > 1 and ΩΛ = 0 comes to an end in a Big Crunch and is considerably younger than its Hubble age. An "open universe" with ΩM ≤ 1 and ΩΛ = 0 expands forever and has an age that is closer to its Hubble age. For the accelerating universe with nonzero ΩΛ that we inhabit, the age of the universe is coincidentally very close to the Hubble age.
|
|||
| Ngày | ||||
| Nguồn gốc | Tác phẩm được tạo bởi người tải lên | |||
| Tác giả | BenRG | |||
| SVG genesis InfoField |
|
Formulas
This diagram uses the following exact solutions to the Friedmann equations:
See also
Some of the shown models are implemented as an animation at Cosmos-animation.
Perl code
use strict;
use Svg;
use Math::Trig qw(sinh cosh acos asinh acosh pi);
sub ScaleFunc {
my ($H0, $M0, $with_lambda) = @_;
if ($M0 == 1) {
my $q0 = 2/(3*$H0);
return sub { my ($q) = @_; ($q - $q0, (1.5 * $H0 * $q) ** (2/3)) };
}
if ($with_lambda) {
my $L0 = 1 - $M0;
# assume 0 < $M0 < 1
my $a = ($M0/$L0) ** (1/3);
my $b = 1.5 * $H0 * sqrt($L0);
my $q0 = asinh(sqrt($L0/$M0)) / $b;
return sub { my ($q) = @_; ($q - $q0, $a * (sinh($b * $q) ** (2/3))) }
} else {
# \Omega_{\Lambda_0} = 0
my $k0 = 1 - $M0;
if ($M0 == 0) {
return sub { my ($q) = @_; ($q - 1/$H0, $q * $H0) }
} else {
my $a = $M0 / (2 * abs($k0));
my $b = 1 / ($H0 * sqrt(abs($k0)));
my $c = $a * $b;
if ($M0 > 1) {
my $d = $a * (2 / ($H0 * $M0) - acos(2/$M0 - 1) * $b);
return sub { my ($q) = @_; ($c * ($q - sin($q)) + $d, $a * (1 - cos($q))) }
} else {
# 0 < M < 1
my $d = $a * (acosh(2/$M0 - 1) * $b - 2 / ($H0 * $M0));
return sub { my ($q) = @_; ($c * (sinh($q) - $q) + $d, $a * (cosh($q) - 1)) }
}
}
}
}
sub SubscriptedText {
my $text = shift;
$text->add(shift);
my $sub = 0;
for my $t (@_) {
$sub = !$sub;
$text->tspan($sub ? (dy => 4, 'font-size' => 12) : (dy => -4))->add($t);
}
}
my ($image_width,$image_height) = (620,500);
my ($origin_x, $origin_y) = (30.5,450.5);
my $pad_right = 70;
my ($tlo, $thi, $ahi) = (-15,18,2.5);
my $svg = new Svg(width => $image_width, height => $image_height);
# $svg->rect(width => $image_width, height => $image_height, fill => 'gray');
$svg->defs()->marker(id => 'arrowhead', refX => 0, refY => 3, markerWidth => 10, markerHeight => 6, markerUnits => 'userSpaceOnUse', orient => 'auto')->path(d => 'M 0,0 L 10,3 L 0,6 z');
my $traces = $svg->group(stroke => 'black', 'stroke-width' => 2, fill => 'none');
my $axes = $svg->group(stroke => 'black', 'stroke-width' => 1, fill => 'none');
my $labels = $svg->group('font-family' => 'Nimbus Roman No9 L, Times, serif', 'font-size' => 20, 'text-anchor' => 'middle', stroke => 'none', fill => 'black');
my $H0 = 1 / 13.95;
my $M0 = 0.279;
my ($graphscalex,$graphscaley) = (($image_width-$origin_x-$pad_right)/($thi-$tlo), -$origin_y/$ahi);
my ($graphofsx,$graphofsy) = ($origin_x - $tlo * $graphscalex, $origin_y);
for my $z ([0,0,30,'none'],[$M0,0,3.17,'1,4'],[1,0,26,'2,2'],[6,0,2*pi,'1,3,4,3'],[$M0,1,27,'5,3']) {
my ($m0,$with_lambda,$max_q,$dashes) = @$z;
my $f = ScaleFunc($H0,$m0,$with_lambda);
my (@x,@y);
for my $i (0..200) {
($x[$i],$y[$i]) = &$f($i / 200 * $max_q);
}
$traces->path('stroke-dasharray' => $dashes, ($m0 == 6 ? () : ('marker-end' => 'url(#arrowhead)')), d => MakePath(\@x, \@y, $graphscalex, $graphscaley, $graphofsx, $graphofsy, 1));
}
$axes->line(x1 => $origin_x, y1 => $image_height-20, x2 => $origin_x, y2 => 20, 'marker-end' => 'url(#arrowhead)');
$axes->line(x1 => 10, y1 => $origin_y, x2 => $image_width - $pad_right + 10, y2 => $origin_y, 'marker-end' => 'url(#arrowhead)');
$labels->text(x => ($origin_x + $image_width) / 2, y => $image_height-10)->add('Billions of years from now');
my $path = '';
for my $gyr (-13.7, -10, -5, 0, 5, 10, 15) {
my $x = int($gyr * $graphscalex + $graphofsx);
my $y = $origin_y-5;
$path .= "M$x.5,${y}l0,10";
$labels->text(x => $x, y => $origin_y + 20)->add($gyr);
}
$axes->path(d => $path);
$labels->circle(cx => $graphofsx, cy => $graphscaley + $graphofsy, r => 4);
$labels->text(x => $graphofsx-5, y => $graphscaley + $graphofsy, 'text-anchor' => 'end')->add('Now');
$labels->text()->rotate(-90)->translate($origin_x - 8, $origin_y / 2)->add("Average distance between galaxies");
my $trace_labels = $labels->group('font-family' => 'DejaVu Serif, serif', 'font-size' => 16);
SubscriptedText($trace_labels->text(x => 465, y => 30, 'text-anchor' => 'end'), "\x{3A9}", 'M', " = 0.3, \x{3A9}", "\x{39B}", " = 0.7");
SubscriptedText($trace_labels->text(x => 520, y => 50, 'text-anchor' => 'start'), "\x{3A9}", 'M', ' = 0');
SubscriptedText($trace_labels->text(x => 535, y => 70, 'text-anchor' => 'start'), "\x{3A9}", 'M', ' = 0.3');
SubscriptedText($trace_labels->text(x => 540, y => 95, 'text-anchor' => 'start'), "\x{3A9}", 'M', ' = 1');
SubscriptedText($trace_labels->text(x => 540, y => 400, 'text-anchor' => 'start'), "\x{3A9}", 'M', ' = 6');
$svg->write('Friedmann universes.svg');
Giấy phép
| Public domainPublic domainfalsefalse |
| Tôi, người giữ bản quyền của tác phẩm này, chuyển tác phẩm này vào phạm vi công cộng. Điều này có giá trị trên toàn thế giới. Tại một quốc gia mà luật pháp không cho phép điều này, thì: Tôi cho phép tất cả mọi người được quyền sử dụng tác phẩm này với bất cứ mục đích nào, không kèm theo bất kỳ điều kiện nào, trừ phi luật pháp yêu cầu những điều kiện đó. |
Chú thích
Ghi một dòng giải thích những gì có trong tập tin này
Solutions of the Friedmann Equations (not hand drawn)
Khoản mục được tả trong tập tin này
mô tả
Giá trị nào đó không có khoản mục Wikidata
23 9 2009
image/svg+xml
Lịch sử tập tin
Nhấn vào ngày/giờ để xem nội dung tập tin tại thời điểm đó.
| Ngày/Giờ | Hình xem trước | Kích cỡ | Thành viên | Miêu tả | |
|---|---|---|---|---|---|
| hiện tại | 23:09, ngày 23 tháng 9 năm 2009 | 620×500 (3 kB) | wikimediacommons>BenRG | Nimbus Roman doesn't have Greek letters; switch to DejaVu Serif |
Trang sử dụng tập tin
Trang sau sử dụng tập tin này: