Datei:Shell-diag-1.png
Aus testwiki
Zur Navigation springen
Zur Suche springen
Größe dieser Vorschau: 800 × 386 Pixel. Weitere Auflösungen: 320 × 154 Pixel | 640 × 309 Pixel | 1.255 × 605 Pixel.
Originaldatei (1.255 × 605 Pixel, Dateigröße: 33 KB, MIME-Typ: image/png)
Diese Datei stammt aus Wikimedia Commons und kann von anderen Projekten verwendet werden. Die Beschreibung von deren Dateibeschreibungsseite wird unten angezeigt.
Beschreibung
| BeschreibungShell-diag-1.png |
A diagram illustrating the derivation of Newton's shell theorem. Shown is a thin shell with a test mass outside the shell ( |
| Datum | |
| Quelle | Eigenes Werk |
| Urheber | Jim Wisniewski |
Lizenz
Ich, der Urheber dieses Werkes, veröffentliche es unter der folgenden Lizenz:
Diese Datei ist unter der Creative-Commons-Lizenz „Namensnennung – Weitergabe unter gleichen Bedingungen 2.5 generisch“ (US-amerikanisch) lizenziert.
- Dieses Werk darf von dir
- verbreitet werden – vervielfältigt, verbreitet und öffentlich zugänglich gemacht werden
- neu zusammengestellt werden – abgewandelt und bearbeitet werden
- Zu den folgenden Bedingungen:
- Namensnennung – Du musst angemessene Urheber- und Rechteangaben machen, einen Link zur Lizenz beifügen und angeben, ob Änderungen vorgenommen wurden. Diese Angaben dürfen in jeder angemessenen Art und Weise gemacht werden, allerdings nicht so, dass der Eindruck entsteht, der Lizenzgeber unterstütze gerade dich oder deine Nutzung besonders.
- Weitergabe unter gleichen Bedingungen – Wenn du das Material wiedermischst, transformierst oder darauf aufbaust, musst du deine Beiträge unter der gleichen oder einer kompatiblen Lizenz wie das Original verbreiten.
Source
This image and the others in the same series (2, 3, 4) were generated from the MetaPost code presented below. The code is released under the same license as the images themselves.
% shell-diag.mp
% A diagram illustrating the derivation of Newton's shell theorem. To be
% processed with MetaPost.
color bandshade, fillshade;
bandshade = 0.7 [blue, white];
fillshade = 0.9 white;
numeric dotsize, deg;
dotsize = 5 bp;
deg = length( fullcircle )/360;
freelabeloffset := 3/4 freelabeloffset;
labeloffset := 2 labeloffset;
def dot( expr P ) =
fill fullcircle scaled dotsize shifted P withcolor black;
enddef;
def draw_circle( expr R, stroke ) =
save p;
pen p;
p = currentpen;
pickup p scaled stroke;
draw fullcircle scaled 2R;
pickup p;
enddef;
vardef anglebetween( expr a, b, rad, str ) =
save endofa, endofb, common, curve, where;
pair endofa, endofb, common;
path curve;
numeric where;
endofa = point length( a ) of a;
endofb = point length( b ) of b;
if round point 0 of a = round point 0 of b:
common = point 0 of a;
else:
common = a intersectionpoint b;
fi;
where = turningnumber( common--endofa--endofb--cycle );
curve = (unitvector( endofa - common ){(endofa - common) rotated (90 * where)} ..
unitvector( endofb - common )) scaled rad shifted common;
draw thefreelabel( str, point 1/2 of curve, common ) withcolor black;
curve
enddef;
def draw_angle( expr a, b, rad, str ) =
begingroup
save p;
pen p;
p = currentpen;
pickup p scaled 1/2;
draw anglebetween( a, b, rad, str );
pickup p;
endgroup
enddef;
def label_line( expr a, b, disp, str ) =
begingroup
save mid, opp;
pair mid, opp;
mid = 1/2 [a, b];
opp = -disp rotated (angle( b - a ) - 90) shifted mid;
draw thefreelabel( str, mid, opp );
draw a -- b;
endgroup
enddef;
def draw_thinshell( expr R, r, theta, dtheta, thetarad, phirad ) =
begingroup
save M, m;
pair M, m;
M = (0, 0);
m = (r, 0);
save circ;
path circ;
circ = fullcircle scaled 2R;
save thetapt, dthetapt;
pair thetapt, dthetapt;
thetapt = point (theta * deg) of circ;
dthetapt = point ((theta + dtheta) * deg) of circ;
save upper, lower, band;
path upper, lower, band;
upper = subpath (0, 4) of circ;
lower = subpath (4, 8) of circ;
band = buildcycle( upper, (xpart thetapt, R) -- (xpart thetapt, -R),
lower, (xpart dthetapt, R) -- (xpart dthetapt, -R) );
% draw figures
save p;
pen p;
p = currentpen;
pickup p scaled 1/2;
fill band withcolor bandshade;
draw band;
pickup p;
save near, far;
pair near, far;
if theta < 90:
near = 3/4[ulcorner band, llcorner band];
far = right shifted near;
else:
near = 3/4[urcorner band, lrcorner band];
far = left shifted near;
fi;
draw thefreelabel( btex $dM$ etex, near, far );
dot( M );
%label.llft( btex $M$ etex, M );
dot( m );
label.lrt( btex $m$ etex, m );
draw M -- thetapt;
label_line( M, m, right, btex $r$ etex );
label_line( m, thetapt, right, btex $s$ etex );
if R <> r:
label_line( M, dthetapt, left, btex $R$ etex );
else:
draw M -- dthetapt;
fi;
draw_angle( m -- M, m -- thetapt, phirad, btex $\phi$ etex );
draw_angle( M -- m, M -- thetapt, thetarad, btex $\theta$ etex );
draw_angle( M -- thetapt, M -- dthetapt, R, btex $d\theta$ etex );
endgroup
enddef;
def draw_thickshell( expr Ra, Rb, r ) =
begingroup
save m;
pair m;
m = (r, 0);
fill fullcircle scaled 2Rb withcolor fillshade;
fill fullcircle scaled 2r withcolor bandshade;
unfill fullcircle scaled 2Ra;
dot( origin );
dot( m );
label.lrt( btex $m$ etex, m );
label_line( origin, m, right, btex $r$ etex );
draw_circle( Rb, 2 );
if Ra > 0:
draw_circle( Ra, 2 );
label_line( origin, dir( 100 ) scaled Rb, left, btex $R_b$ etex );
label_line( origin, dir( 80 ) scaled Ra, right, btex $R_a$ etex );
else:
label_line( origin, dir( 90 ) scaled Rb, left, btex $R_b$ etex );
fi;
endgroup
enddef;
% Thin shell, r > R
beginfig(1)
numeric R;
R = 1 in;
draw_thinshell( R, 3R, 50, 15, 1/4 in, 3/4 in );
draw_circle( R, 2 );
endfig;
% Thin shell, r < R
beginfig(2)
numeric R;
R = 1 in;
draw_thinshell( R, 0.7R, 125, 15, 1/8 in, 1/3 in );
draw_circle( R, 2 );
endfig;
% Thick shell
beginfig(3)
numeric Ra, Rb, r;
Ra = 0.8 in;
Rb = 1.3 in;
r = 1 in;
draw_thickshell( Ra, Rb, r );
endfig;
% Solid sphere
beginfig(4)
numeric Ra, Rb, r;
Ra = 0;
Rb = 1.3 in;
r = 1 in;
draw_thickshell( Ra, Rb, r );
endfig;
end
Kurzbeschreibungen
Ergänze eine einzeilige Erklärung, was diese Datei darstellt.
In dieser Datei abgebildete Objekte
Motiv
29. September 2006
Dateiversionen
Klicke auf einen Zeitpunkt, um diese Version zu laden.
| Version vom | Vorschaubild | Maße | Benutzer | Kommentar | |
|---|---|---|---|---|---|
| aktuell | 01:50, 30. Sep. 2006 | 1.255 × 605 (33 KB) | wikimediacommons>Xaonon | == Summary == {{Information |Description = A diagram illustrating the derivation of Newton's shell theorem. Shown is a thin shell with a test mass outside the shell (<math>r > R</math>). Created with w:MetaPost. |Source = Own work. |Date = 2006-09-2 |
Dateiverwendung
Die folgende Seite verwendet diese Datei: