Fix:Lorentz transform of world line.gif

Page contents not supported in other languages.
De Vicipedia

Lorentz_transform_of_world_line.gif(200 × 200 pixeles, grandia de fix: 166 KB, tipo MIME: image/gif, siclinte, 100 imajes)

Esta fix veni de Wikimedia Commons e es cisa usada par otra projetas. La descrive en sua paje de descrive de fix ala es mostrada a su.

Resoma

Descrive
English: Changing views of spacetime along the world line of a rapidly accelerating observer

In this animation, the vertical direction indicates time and the horizontal direction indicates distance, the dashed line is the spacetime trajectory ("world line") of an accelerating observer. The small dots are arbitrary events in spacetime that are stationary relative to each other. The events passing the two diagonal lines in the lower half of the picture (the past light cone of the observer) are those that are visible to the observer.

The slope of the world line (deviation from being vertical) gives the relative velocity to the observer. Note how the view of spacetime changes when the observer accelerates. In particular, absolute time is a concept not applicable in Lorentzian spacetime: events move up-and-down in the figure depending on the acceleration of the observer.

Compare this to the absolute time apparent in Image:Galilean transform of world line.gif.
Fonte Obra propre
Autor Cyp
Source code
InfoField
Source of program used to generate image:
//GPL
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

#define PI 3.141592653589793238462

#define SX 256
#define SY 256
#define PL 100
#define DN 2000

unsigned char img[SX][SY];

double path[PL+1][2], dots[DN][2];

void dodot(int x, int y, double f) {
  if(x<0||x>=SX||y<0||y>=SY) return;
  img[y][x]*=f;
}

void dospot(int x, int y) {
  dodot(x, y, .5);
  dodot(x+1, y, .75);
  dodot(x-1, y, .75);
  dodot(x, y+1, .75);
  dodot(x, y-1, .75);
}

void dobigspot(int x, int y) {
  int a, b;
  for(b=-3;b<=3;++b) for(a=-3;a<=3;++a) if(a*a+b*b<=9) dodot(x+a, y+b, (a*a+b*b)/10.);
}

void dospotd(double t, double x) {
  dospot((x+1)*(SX/2.), (-t+1)*(SY/2.));
}

void dosmallspotd(double t, double x) {
  dodot((x+1)*(SX/2.), (-t+1)*(SY/2.), .25);
}

void dobigspotd(double t, double x) {
  dobigspot((x+1)*(SX/2.), (-t+1)*(SY/2.));
}

int main() {
  char fn[100];
  int n, x, y, t, i, w;
  double a, b, da, db, ta, tb;
  FILE *f;
  path[0][0]=path[0][1]=0;
  for(t=0;t<=PL;++t) path[t][1]=0;
  for(n=1;n<10;++n) {
    a=rand()%20000/10000.-1; a/=n*n*n*n/200.; b=rand()%20000*(PI/10000);
    for(t=0;t<=PL;++t) {
      path[t][1]+=a*sin((2*PI/PL)*n*t+b);
    }
  }
  for(t=PL;t>=0;--t) path[t][1]-=path[0][1];
  path[0][0]=0;
  for(t=1;t<=PL;++t) {
    a=path[t][1]-path[t-1][1];
    path[t][0]=path[t-1][0]+sqrt(1+a*a);
  }
  for(t=0;t<DN;++t) {
    a=rand()%20000/10000.-1; b=rand()%20000/10000.-1;
    dots[t][0]=a*path[PL][0]/2; dots[t][1]=b*1000;
  }
  for(n=0;n<100;++n) {
    i=PL*n/100;
    a=path[i+1][0]-(da=path[i][0]); b=(db=path[i][1])-path[i+1][1];
    ta=path[PL][0]; tb=path[PL][1];
    a/=50.; b/=50.;
    for(y=0;y<SY;++y) for(x=0;x<SX;++x) img[y][x]=255;
    for(y=0;y<SY;++y) img[y][y*SX/SY]*=.5;
    for(y=0;y<SY;++y) img[y][(SY-y-1)*SX/SY]*=.5;
    for(w=-20;w<=20;++w)
      for(t=0;t<PL;++t) dospotd(a*(path[t][0]-da-w*ta)+b*(path[t][1]-db-w*tb),
                                b*(path[t][0]-da-w*ta)+a*(path[t][1]-db-w*tb));
    for(w=-20;w<=20;++w)
      for(t=0;t<PL;t+=10) dobigspotd(a*(path[t][0]-da-w*ta)+b*(path[t][1]-db-w*tb),
                                  b*(path[t][0]-da-w*ta)+a*(path[t][1]-db-w*tb));
    for(w=-20;w<=20;++w)
      for(t=0;t<DN;++t) dospotd(a*(dots[t][0]-da-w*ta)+b*(dots[t][1]-db-w*tb),
                                b*(dots[t][0]-da-w*ta)+a*(dots[t][1]-db-w*tb));
//if(n==0) printf("%lf; %lf, %lf, %lf; %lf, %lf, %lf, %lf, %lf\n", a*(path[PL][0]-da-1*ta)+b*(path[PL][1]-db-1*tb), path[PL][0], da, 1*ta, path[PL][1], db, 1*tb, path[0][0], path[0][1]);
    sprintf(fn, "lor%04d.pgm", n);
    f=fopen(fn, "wb");
    fprintf(f, "P5\n%d %d\n255\n", SX, SY);
    fwrite(img, 256*256, 1, f);
    fclose(f);
  }
}

Vicipedia

 This is a featured picture on the English language Wikipedia (Featured pictures) and is considered one of the finest images. See its nomination here.

If you think this file should be featured on Wikimedia Commons as well, feel free to nominate it.
If you have an image of similar quality that can be published under a suitable copyright license, be sure to upload it, tag it, and nominate it.

Lisensa

GNU head Permete es donada per copia, distribui e/o altera esta documento su la restrinjes de la GNU Free Documentation License, Varia 1.2 o cualce varia plu tarda publicida par la Free Software Foundation, sin partes nonvariante, sin testo de covrente fronte e sin testo de covrente retro. Un copia de la lisensa es incluida en la parte nomida GNU Free Documentation License.
w:en:Creative Commons
atribui share alike
Esta fix es lisensada su la lisensa Attribution-Share Alike 3.0 Unported de Creative Commons.
Tu es libre:
  • per comparti – per copia, distribui e transmete la obra
  • per remisca – per ajusta la obra
Su la constrinjes seguente:
  • atribui – Tu debe atribui la obra en la modo spesifada par la autor o lisensor (ma no en cualce modo cual sujesta ce el aproba tu o tua usa de la obra).
  • share alike – Si tu altera, muta o developa plu esta obra, tu pote distribui la obra resultante sola su la mesma lisensa o un simil a esta.
This licensing tag was added to this file as part of the GFDL licensing update.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts English

copyrighted English

MIME type English

image/gif

Istoria de fix

Clica un data/ora per vide la fix en sua forma de alora.

Data/OraImajetaMesurasUsorComenta
aora09:24, 21 agosto 2005Imajeta per revisa de 09:24, 21 agosto 2005200 × 200 (166 KB)CypNew and improved - now with bigger and better dots
08:29, 21 agosto 2005Imajeta per revisa de 08:29, 21 agosto 2005200 × 200 (151 KB)Cyp{{GFDL}}

La paje seguente lia a esta fix:

Usa global de fix

La otra vicis seguente usa esta fix:

Mostra plu usas global de esta fix.