Archiv für: Juli 2007

Delphi, Integer und Float Werte einlesen

Juli 28th, 2007 Autor: Phillip Kroll -

Um schnell und sicher die Eingabe eines TEdit Feldes auszuwerten kann man folgende Methoden zentral ablegen und global verwenden. Es wird dafür gesorgt, dass nur gültige Integer bzw. Float Werte akzeptiert werden. Die Methoden liefern True zurück, wenn die Eingabe gültig ist. In Value wird das Ergebnis geschrieben, falls die Umwandlung erfolgreich war. Falls ein Fehler auftritt wird eine Warnung angezeigt und der Rückgabe Wert ist False.

function ReadFloatFromEdit( var value : double; Edit : TEdit ) : boolean;
begin
Result := True;
try
value := StrToFloat( Edit.Text );
except
Result := False;
MessageDlg( '"' + Edit.Text + '" ist keine gültige Eingabe.', mtWarning, [ mbOK ], 0 );
end;
end;

function ReadIntFromEdit( var value : integer; Edit : TEdit ) : boolean;
begin
Result := True;
try
value := StrToInt( Edit.Text );
except
Result := False;
MessageDlg( '"' + Edit.Text + '" ist keine gültige Eingabe.', mtWarning, [ mbOK ], 0 );
end;
end;

Ein Beispiel Aufruf könnte folgendermaßen aussehen:

...
var
tolerance : double;
begin
if not ReadFloatFromEdit( tolerance, Edit1 ) then Exit;
...

Kurz & Knapp, Maxam-Gilbert-Sequenzierung

Juli 27th, 2007 Autor: Phillip Kroll -
  1. Ausgangsmaterial ist aufgereinigte, doppelsträngige DNA auf vier Proben aufgeteilt
  2. Jeder DNA Strang wird am 5' Ende mit einem radioaktivem Phosphat (32P) markiert
  3. Aufschmelzen der doppelsträngigen DNA in Einzelstränge durch Detergenzien und Erhitzen (90°C)
  4. Verschiedene Chemikalien für spezifische Spaltreaktionen werden in jede der vier Proben gegeben
  5. Stränge werden an spezifischen Basen gespalten
  6. Jede Probe wird separat gelelektrophoretisch aufgetrennt
  7. Übertragung auf ein Autoradiogramm
  8. Ablesen der Banden in Laufrichtung ergibt die Sequenz

Scilab, Exponentielles Wachstum/Zerfall

Juli 18th, 2007 Autor: Phillip Kroll -

Hier der Scilab Code zum plotten von Exponentiellen Wachstums- bzw. Zerfallsprozessen [y=x0*e^(x*a)] mit der dazugehörigen Trajektorie.

clf;

// Anfangsparameter
x0 = -4;
a = -0.05;

// Beschriftung
labelStr = "(a=" + string(a) + " x0=" + string(x0) + ")";

// x(t)
y=x0*%e^(x*a);

// x'(t)
ydot = x0*a*%e^(x*a);

// oberer graph, x(t) gegen t
subplot(2,1,1);
plot(x, y );
set( gca(),"grid",[1 1]);
xtitle( "Zeitverlauf " + labelStr, "t", "x(t)");

// unterer graph, x(t) gegen x'(t)
subplot(2,1,2);
plot(y, ydot );
set( gca(),"grid",[1 1]);
xtitle( "Trajektorie " + labelStr, "x(t)", "x''(t)" );

Exponentielles Wachstum bzw. Zerfall

Navigation


Suche


Linkblog