Datei:VFPt superconductor ball E-field potential.svg
Originaldatei (SVG-Datei, Basisgröße: 600 × 600 Pixel, Dateigröße: 99 KB)
Diese Datei und die Informationen unter dem roten Trennstrich werden aus dem zentralen Medienarchiv Wikimedia Commons eingebunden.
Beschreibung
BeschreibungVFPt superconductor ball E-field potential.svg |
English: Deformation of a previously homogeneous electric field around a perfect conducting ball (e.g. iron or a superconductor). The electric field lines are accurately computed. The electric potential is drawn as a background color field. |
||
Datum | |||
Quelle | Eigenes Werk | ||
Urheber | Geek3 | ||
Andere Versionen | |||
SVG‑Erstellung InfoField | Diese W3C-invalide Vektorgrafik wurde mit Inkscape erstellt, oder mit was ganz anderem.
| ||
Quelltext InfoField | SVG code# paste this code at the end of VectorFieldPlot 2.0
doc = FieldplotDocument('VFPt_superconductor_ball_E-field_potential',
width=600, height=600, commons=True)
unit = 100.
field_direction = [0.0, -1.0]
sphere = {'p':sc.array([0., 0.]), 'r':1.2}
field = Field([['homogeneous', {'Fx':field_direction[0], 'Fy':field_direction[1]}],
['dipole', {'x':sphere['p'][0], 'y':sphere['p'][1],
'px':4*pi*sphere['r']**3*field_direction[0],
'py':4*pi*sphere['r']**3*field_direction[1]}]])
def pot(xy):
if vabs(xy) <= sphere['r']:
return 0. # zero potential inside metal sphere
return field.V(xy)
U0 = pot([3, 3])
doc.draw_scalar_field(func=pot, cmap=doc.cmap_AqYlFs, vmin=-U0, vmax=U0)
# draw the superconducting ball
ball = doc.draw_object('g', {'id':'metal_ball'})
grad = doc.draw_object('radialGradient', {'id':'metal_spot', 'cx':'0.53', 'cy':'0.54',
'r':'0.55', 'fx':'0.65', 'fy':'0.7', 'gradientUnits':'objectBoundingBox'}, group=ball)
for col, of in (('#fff', 0), ('#e7e7e7', 0.15), ('#ddd', 0.25), ('#aaa', 0.7), ('#888', 0.9), ('#666', 1)):
doc.draw_object('stop', {'offset':of, 'stop-color':col}, group=grad)
doc.draw_object('circle', {'cx':sphere['p'][0], 'cy':sphere['p'][1], 'r':str(sphere['r']),
'style':'fill:url(#metal_spot); stroke:#000; stroke-width:0.02'}, group=ball)
ball_charges = doc.draw_object('g', {'style':'stroke-width:0.02; stroke-linecap:square'}, group=ball)
n_lines = 20
for i in range(n_lines):
a = -3 + 6 * (0.5 + i) / n_lines
line = FieldLine(field, [a, 6], maxr=12, pass_dipoles=1)
if abs((n_lines - 1.) / 2. - i) > 7:
off = {'start':0.5, 'leave_image':0.5, 'enter_image':0.5}
else:
off = {'start':0.25, 'leave_image':0.25, 'enter_image':0.25, 'end':0.25}
doc.draw_line(line, arrows_style={'min_arrows':2, 'max_arrows':2, 'offsets':off})
# draw little charge signs near the surface
path_minus = 'M {0:.5f},0 h {1:.5f}'.format(-2./unit, 4./unit)
path_plus = 'M {0:.5f},0 h {1:.5f} M 0,{0:.5f} v {1:.5f}'.format(-2./unit, 4./unit)
# check if fieldline crosses sphere surface
tlist = sc.linspace(0., 1., 101)
for i in range(1, len(tlist)):
in0 = vabs(line.get_position(tlist[i-1]) - sphere['p']) <= sphere['r']
in1 = vabs(line.get_position(tlist[i]) - sphere['p']) <= sphere['r']
if in0 != in1:
# find the point where the field line cuts the surface
t = op.brentq(lambda t: vabs(line.get_position(t)
- sphere['p']) - sphere['r'], tlist[i-1], tlist[i])
pr = line.get_position(t) - sphere['p']
cpos = 0.92 * sphere['r'] * pr / vabs(pr)
if in1:
path_d = path_minus
else:
path_d = path_plus
doc.draw_object('path', {'stroke':'black', 'd':path_d,
'transform':'translate({:.5f},{:.5f})'.format(
round(unit*cpos[0])/unit, round(unit*cpos[1])/unit)},
group=ball_charges)
doc.write()
|
Lizenz
- 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.
Einige Werte ohne einen Wikidata-Eintrag
8. September 2019
image/svg+xml
Dateiversionen
Klicke auf einen Zeitpunkt, um diese Version zu laden.
Version vom | Vorschaubild | Maße | Benutzer | Kommentar | |
---|---|---|---|---|---|
aktuell | 00:19, 8. Sep. 2019 | 600 × 600 (99 KB) | Geek3 | User created page with UploadWizard |
Dateiverwendung
Keine Seiten verwenden diese Datei.
Metadaten
Diese Datei enthält weitere Informationen (beispielsweise Exif-Metadaten), die in der Regel von der Digitalkamera oder dem verwendeten Scanner stammen. Durch nachträgliche Bearbeitung der Originaldatei können einige Details verändert worden sein.
Kurztitel | VFPt_superconductor_ball_E-field_potential |
---|---|
Bildtitel | VFPt_superconductor_ball_E-field_potential
created with VectorFieldPlot 2.0 https://commons.wikimedia.org/wiki/User:Geek3/VectorFieldPlot about: https://commons.wikimedia.org/wiki/File:VFPt_superconductor_ball_E-field_potential.svg rights: Creative Commons Attribution ShareAlike 4.0 |
Breite | 600 |
Höhe | 600 |