Файл:Shell-diag-1.svg
Размер этого PNG-превью для исходного SVG-файла: 303 × 147 пкс. Другие разрешения: 320 × 155 пкс | 640 × 310 пкс | 1024 × 497 пкс | 1280 × 621 пкс | 2560 × 1242 пкс.
Исходный файл (SVG-файл, номинально 303 × 147 пкс, размер файла: 21 КБ)
Этот файл находится на Викискладе. Сведения о нём показаны ниже.
Викисклад — централизованное хранилище для свободных файлов, используемых в проектах Викимедиа.
Сообщить об ошибке с файлом |
Краткое описание
ОписаниеShell-diag-1.svg |
English: A diagram illustrating the derivation of Newton's shell theorem. Shown is a thin shell with a test mass outside the shell (). |
Дата | |
Источник | Собственная работа |
Автор | Xaonon |
Лицензирование
Я, владелец авторских прав на это произведение, добровольно публикую его на условиях следующей лицензии:
Этот файл доступен по лицензии Creative Commons Attribution-Share Alike 4.0 International
- Вы можете свободно:
- делиться произведением – копировать, распространять и передавать данное произведение
- создавать производные – переделывать данное произведение
- При соблюдении следующих условий:
- атрибуция – Вы должны указать авторство, предоставить ссылку на лицензию и указать, внёс ли автор какие-либо изменения. Это можно сделать любым разумным способом, но не создавая впечатление, что лицензиат поддерживает вас или использование вами данного произведения.
- распространение на тех же условиях – Если вы изменяете, преобразуете или создаёте иное произведение на основе данного, то обязаны использовать лицензию исходного произведения или лицензию, совместимую с исходной.
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: % mpost --mem=metafun.mem -s 'outputformat="svg"' -s prologues=3 shell-diag.mp 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 ); setbounds currentpicture to boundingbox currentpicture enlarged 1pt; 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 ); setbounds currentpicture to boundingbox currentpicture enlarged 1pt; 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 ); setbounds currentpicture to boundingbox currentpicture enlarged 1pt; endfig; % Solid sphere beginfig(4) numeric Ra, Rb, r; Ra = 0; Rb = 1.3 in; r = 1 in; draw_thickshell( Ra, Rb, r ); setbounds currentpicture to boundingbox currentpicture enlarged 1pt; endfig; end
Элементы, изображённые на этом файле
изображённый объект
У этого свойства есть некоторое значение без элемента в
25 февраля 2017
История файла
Нажмите на дату/время, чтобы посмотреть файл, который был загружен в тот момент.
Дата/время | Миниатюра | Размеры | Участник | Примечание | |
---|---|---|---|---|---|
текущий | 00:55, 26 февраля 2017 | 303 × 147 (21 КБ) | Xaonon | tweak bounding box | |
00:10, 26 февраля 2017 | 301 × 145 (21 КБ) | Xaonon | User created page with UploadWizard |
Использование файла
Следующая страница использует этот файл:
Глобальное использование файла
Данный файл используется в следующих вики:
- Использование в ar.wikipedia.org
- Использование в en.wikipedia.org
- Использование в no.wikipedia.org
Метаданные
Файл содержит дополнительные данные, обычно добавляемые цифровыми камерами или сканерами. Если файл после создания редактировался, то некоторые параметры могут не соответствовать текущему изображению.
Ширина | 303.439804 |
---|---|
Высота | 146.992523 |