לדלג לתוכן

קובץ:Animation Hertzscher Dipol.ogv

תוכן הדף אינו נתמך בשפות אחרות.
מתוך ויקיפדיה, האנציקלופדיה החופשית

לקובץ המקורי(קובץ וידאו Theora של Ogg, באורך 40 שניות, 1,600 × 900 פיקסלים, 956 קילו־ביטים בשנייה, גודל הקובץ: 4.56 מ"ב)

ויקישיתוף זהו קובץ שמקורו במיזם ויקישיתוף. תיאורו בדף תיאור הקובץ המקורי (בעברית) מוצג למטה.

תקציר

תיאור
Deutsch: Animation zum Hertzschem Dipol mit E- und H-Feld.
תאריך יצירה
מקור נוצר על־ידי מעלה היצירה
יוצר Menner
גרסאות אחרות

Source code (GNU Octave)

#!/usr/bin/octave -qf
%
% 2014
%


%
% calcE
%
% t time
% r radius (might be an array)
% E_theta E field
%

function E_theta = calcE(r, t)

  % r 

  global parameters;
  
  omega = parameters.omega;
  epsilon = parameters.epsilon;
  lambda = parameters.lambda;
  c = parameters.c;

  roh = 2 * pi() * r / lambda;

  E_theta_1 = ( (1 ./ roh) - (1 ./ roh.^3) ) .* cos(roh .- omega*t);
  E_theta_2 = (1 ./roh.^2) .* sin(roh .- omega*t) * -1.;
  E_koeff = omega^3 / (4 * pi() * epsilon * c^3);
  E_theta = -1 * E_koeff * (E_theta_1+E_theta_2);
  
endfunction

%
% calcH
%
% t time
% r radius (might be an array)
% H_theta H field
%

function H_phi = calcH(r, t)

  % r 

  global parameters;
  
  omega = parameters.omega;
  epsilon = parameters.epsilon;
  lambda = parameters.lambda;
  c = parameters.c;

  roh = 2 * pi() * r / lambda;

  H_phi_1 = (1 ./ roh) .* cos(roh .- omega*t);
  H_phi_2 = (1 ./roh.^2) .* sin(roh .- omega*t) * -1.;
  H_koeff = omega^3 / (4 * pi() * epsilon * c^2);
  H_phi = -1 * H_koeff * (H_phi_1 + H_phi_2);
  
endfunction





%
%
% M A I N
%
%

begin_cputime = time();

global parameters;


parameters.framerate = 20;
parameters.duration = 40;
parameters.cycles = 4;
%parameters.framerate = 20;
%parameters.duration = 1;
%parameters.cycles = 1;
parameters.ylim = 1;
parameters.filename = "animation_hertzscher_dipol";
%parameters.Dimensions = "-S800,450";
parameters.Dimensions = "-S1600,900";
parameters.steps = 50;

parameters.linewidth = 2;
%parameters.plot_E = "r;E-Feld;";
%parameters.plot_H = "b;H-Feld;";
parameters.plot_E = "r;E field;";
parameters.plot_H = "b;H field;";
parameters.plot_decay = "k;1/r;";
%parameters.plot_Radius = "Radius normiert zur Wellenlaenge";
%parameters.plot_Amp = "Amplitude normiert bei Radius einer Wellenlaenge";
parameters.plot_Radius = "Radius normalized to wave length";
parameters.plot_Amp = "Amplitude normalized at radius of one wave length";


parameters.f = 0.1; % Hz
parameters.omega = 2 * pi() * parameters.f;
parameters.epsilon = 8.85418781762e-12; % 
parameters.c = 3e8; % m/s
parameters.lambda = parameters.c / parameters.f;

parameters.width = parameters.lambda * 3.; % 3 * wave length

parameters




r = 0:parameters.lambda/parameters.steps:parameters.width;
r_Norm = r ./ parameters.lambda;

t_max = parameters.cycles/parameters.f
%t_schritt = parameters.f/parameters.framerate;
t_schritt = t_max/(parameters.duration*parameters.framerate);
Counter = 1;

Frames = t_max / t_schritt

E_Norm = parameters.omega^3 / (4 * pi() * parameters.epsilon * parameters.c^3);
E_Norm = E_Norm / (2 * pi());

H_Norm = parameters.omega^3 / (4 * pi() * parameters.epsilon * parameters.c^2);
H_Norm = H_Norm / (2*pi());

for t = 0:t_schritt:t_max
  close();

  E = calcE(r, t);
  E = E / E_Norm;

  H = calcH(r, t);
  H = H / H_Norm;
  
  decay = 1 ./ r_Norm;
  
  plot(r_Norm(1,3:end), E(1,3:end), parameters.plot_E, "linewidth", parameters.linewidth);
  hold("on");
  plot(r_Norm(1,3:end), H(1,3:end), parameters.plot_H, "linewidth", parameters.linewidth);
  plot(r_Norm(1,3:end), decay(1,3:end), parameters.plot_decay, "linewidth", parameters.linewidth);
  plot(r_Norm(1,3:end), -1*decay(1,3:end), "color", "k", "linewidth", parameters.linewidth);
  ylim([-15, 15]);
  xlabel(parameters.plot_Radius);
  ylabel(parameters.plot_Amp);
  set (gca(), "linewidth", parameters.linewidth);

  filename = ["./png/", parameters.filename, "-", num2str(Counter, "%04i"), ".png"]
  print(filename, "-dpng", parameters.Dimensions)
  
  Counter += 1;
endfor

printf("Total cpu time: %f seconds\n", time()-begin_cputime);
printf("Finished\n");

Convenience script

#!/bin/sh

start=`date`;

framerate=20
#% framerate=2
name="animation_hertzscher_dipol"

rm ./png -rf
mkdir ./png

octave ./dipol_feld_diagramm.m


rm ./yuv -rf
mkdir ./yuv

png2yuv -j ./png/$name-%04d.png -f $framerate -I p -b 1 > ./yuv/out.yuv

rm ./$name.ogv

./ffmpeg2theora-0.29.linux32.bin ./yuv/out.yuv -F $framerate -v 9 -o ./$name.ogv;

end=`date`;
echo Start: $start;
echo End: $end;

רישיון

אני, בעל זכויות היוצרים על עבודה זו, מפרסם בזאת את העבודה תחת הרישיון הבא:
Creative Commons CC-Zero קובץ זה זמין לפי תנאי הקדשה עולמית לנחלת הכלל CC0 1.0 של Creative Commons.
האדם ששייך יצירה להיתר הזה הקדיש את היצירה לנחלת הכלל על־ידי ויתור על כל הזכויות שלו או שלה על היצירה בכל העולם לפי חוק זכויות יוצרים, לרבות כל הזכויות הקשורות או הסמוכות כקבוע בחוק. באפשרותך להעתיק, לשנות, להפיץ, או להציג את היצירה, אפילו למטרות מסחריות, וכל זה אפילו מבלי לבקש רשות.

כיתובים

נא להוסיף משפט שמסביר מה הקובץ מייצג

פריטים שמוצגים בקובץ הזה

מוצג

application/ogg

checksum אנגלית

e817f3d126f3dd6b90261e0d12cc7d59318f9bb4

הוגדר לפי: SHA-1 אנגלית

4,784,711 בית

40.05 שנייה

900 פיקסל

1,600 פיקסל

היסטוריית הקובץ

ניתן ללחוץ על תאריך/שעה כדי לראות את הקובץ כפי שנראה באותו זמן.

תאריך/שעהתמונה ממוזערתממדיםמשתמשהערה
נוכחית19:27, 12 בספטמבר 201440 שניות, 1,600 × 900 (4.56 מ"ב)Mennerminor modifications
17:06, 12 בספטמבר 201440 שניות, 1,600 × 900 (4.86 מ"ב)MennerUser created page with UploadWizard

אין בוויקיפדיה דפים המשתמשים בקובץ זה.

שימוש גלובלי בקובץ

אתרי הוויקי השונים הבאים משתמשים בקובץ זה:

מטא־נתונים