Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Bibliothek zur komplexen Schaltungsberechnung (https://www.delphipraxis.net/51854-bibliothek-zur-komplexen-schaltungsberechnung.html)

Dust Signs 20. Aug 2005 19:11

Re: Bibliothek zur komplexen Schaltungsberechnung
 
Am besten lässt sich das im Debugger verfolgen:

g2 hat 2 Elemente: den Kondensator und g (eine weitere Gruppe -> Verschachtelung)

Wenn ich jetzt g2 freigebe, wird (Zeile 103) der Kondensator vernichtet und anschließend Free von g aufgerufen (zweites Element). g.Free zerstört alle seine Elemente (R, L, C) und anschließend sich selbst. Danach zerstört sich g2 selbst. Klar soweit ;)

Dust Signs

omata 20. Aug 2005 19:15

Re: Bibliothek zur komplexen Schaltungsberechnung
 
Das mag ja alles sein.

Aber, ich werde das jetzt mal an deinen Code (aus dem anderen Forum) zeigen...

Delphi-Quellcode:
procedure TCircuitCalculationForm.FormCreate(Sender: TObject);
var
  g: TCircuitElementGroup;
begin //Dummy-Prozedur um Funktionalität zu testen!
  g := TCircuitElementGroup.Create; <-- wo wird diese Zeile freigegeben?
  with g do begin
    Parallel := true;
    AddElement(TResistor.Create(2200));
    AddElement(TCoil.Create(0.3));
    AddElement(TCapacitor.Create(8E-6));
  end;
  with TCircuitElementGroup.Create do begin
    Parallel := false;
    AddElement(TCoil.Create(0.4));
    AddElement(g);
    with ComplexEditorFrame1 do begin
      Initialize;
      SetReadOnly(true);
      SetPhasor(Impedance); //Ergebnis sollte 6,9113 + j248,7774 sein
      end;
    Free;
  end;
end;
MfG
Thorsten

Dust Signs 20. Aug 2005 19:19

Re: Bibliothek zur komplexen Schaltungsberechnung
 
Zeile 15: g ist ab diesem Zeitpunkt ein Element von g2 und wird beim Freigeben von g2 auch freigegeben ;). Oder ist es doch ein Speicherleck ^^. Debugg einfach mal ;)

Dust Signs

omata 20. Aug 2005 19:21

Re: Bibliothek zur komplexen Schaltungsberechnung
 
Ok, jetzt habs ich auch kapiert.

nein, alles ok - sorry

MfG
Thorsten

Dust Signs 21. Aug 2005 18:39

Re: Bibliothek zur komplexen Schaltungsberechnung
 
Liste der Anhänge anzeigen (Anzahl: 1)
Bin im Moment dabei, eine Visualisierungsunit für die Schaltungen zu schreiben :). Ist leider noch ziemlich Beta - aber hier mal ein Preview. Hab den Rest des Fensters nicht weggeschnitten, aber die weiße Fläche mit den Schaltelementen sieht man ja auch so ;) als Preview sozusagen ;)

Dust Signs

schöni 21. Aug 2005 19:17

Re: Bibliothek zur komplexen Schaltungsberechnung
 
Hallo Dust Signs!

Zuerst mal Danke für Deine Arbeit. Werd ich gleich mal testen. Beim grben Überlesen fiel mir folgendes auf:

Zitat:

Die Idee dahinter war folgende: meist berechnest du eine einzige Schaltung - und da ändert sich die Frequenz nicht
Gut und schön, aber was ist mit Frequenzganganalyse bei einer Schaltung mit Kondensatoeren und oder Spulen? Da ist es schon sinnvoll die Schaltung für verschiedene Frequenzen zu berechnen. Zum Beispiel Filter, Hochpaß, Tiefpaß.

Werde das alles ert aml testen. Die Fragen kommen später.

Weiter so

schöni

Dust Signs 21. Aug 2005 19:43

Re: Bibliothek zur komplexen Schaltungsberechnung
 
Zitat:

Zitat von schöni
Gut und schön, aber was ist mit Frequenzganganalyse bei einer Schaltung mit Kondensatoeren und oder Spulen? Da ist es schon sinnvoll die Schaltung für verschiedene Frequenzen zu berechnen. Zum Beispiel Filter, Hochpaß, Tiefpaß.

Schon klar. Aber das kannst du ja ganz einfach anstellen indem du GlobalCircularFrequency änderst ;). Im Screenshot würde das dem Ändern der Frequenz im obersten Edit links entsprechen. Wenn du das jetzt nicht per Eingabe sondern programmtechnisch machst kannst du wunderbar den Widerstand (besser gesagt die Impedant ;)) in Abhängikeit der Frequenz berechnen ;). Oder versteh ich dich einfach nur falsch ^^

Dust Signs


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:15 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz