Teilchenbewegungen in el./magn. Feldern (Visualisierung)
Teilchenbewegungen in el./magn. Feldern (Visualisierung)
Teilchenbewegungen in el./magn. Feldern (Visualisierung)
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
D.1 particles MATLAB<br />
% -----------------------------------------------------------------------------<br />
% Funktion um die Notation <strong>in</strong> MATLAB zu unterstuetzen (TRUE falls alles<br />
% richtig, ansonsten FALSE)<br />
function syn = matlabsyn(value)<br />
syn=1;<br />
% TRUE Wert<br />
test= size(str2num(value));<br />
if (test(2)>=2 | test(2)==0)<br />
lab<strong>el</strong>=’Fehler bei E<strong>in</strong>gabe e<strong>in</strong>es Wertes; .-Notation verwenden, ke<strong>in</strong>e Charakter<br />
Zeichen’;<br />
msgbox(lab<strong>el</strong>,’SYNTAX FEHLER’,’error’);<br />
syn=0;<br />
% FALSE Wert<br />
end;<br />
% Funktion fuer exklusive Radiobuttons<br />
function mutual_exclude(off)<br />
set(off,’Value’,0)<br />
% Wert der e<strong>in</strong>z<strong>el</strong>nen Buttons, dadurch wird die Ladung gesetzt<br />
function qCharge=charge_value(handles)<br />
if (get(handles.<strong>el</strong>ecbutton,’Value’)==1)<br />
qCharge = (-1);<br />
<strong>el</strong>se<br />
qCharge = (1);<br />
end;<br />
% ==================== RADIOBUTTON (ELEKTRON) =================================<br />
function <strong>el</strong>ecbutton_Callback(hObject, eventdata, handles)<br />
% erzeugt e<strong>in</strong>en exklusiven Radiobutton, schaltet alle weiteren Buttons<br />
% aus<br />
off = [handles.protonbutton];<br />
mutual_exclude(off);<br />
% ==================== RADIOBUTTON ENDE========================================<br />
% ==================== RADIOBUTTON (PROTON) ===================================<br />
function protonbutton_Callback(hObject, eventdata, handles)<br />
% erzeugt e<strong>in</strong>en exklusiven Radiobutton, schaltet alle weiteren Buttons<br />
% aus<br />
off = [handles.<strong>el</strong>ecbutton];<br />
mutual_exclude(off)<br />
% ==================== RADIOBUTTON ENDE========================================<br />
% ==================== POSITIONEN =============================================<br />
% x-Position des Teilchens (Erzeugung/Auswertung) -----------------------------<br />
function xpos_CreateFcn(hObject, eventdata, handles)<br />
if ispc<br />
set(hObject,’BackgroundColor’,’white’);<br />
<strong>el</strong>se<br />
set(hObject,’BackgroundColor’,get(0,’defaultUicontrolBackgroundColor’));<br />
end<br />
% je nach Version bzw. THREAD Handl<strong>in</strong>g <strong>in</strong> MATLAB kann es dazu kommen, dass<br />
% nicht alle Objekte im handles Vektor aufgefuehrt werden, um dieses<br />
% abzufangen, wird dem handles Vektor jeweils das entsprechende handle bei<br />
% se<strong>in</strong>er Erzeugung uebergeben<br />
handles.<strong>magn</strong>pop=hObject;<br />
guidata(hObject, handles);<br />
function xpos_Callback(hObject, eventdata, handles)<br />
63