Simulation mit ngspice findet Parameter nicht

Gast #3671683
Lesenswert?
• ▲
▼
Hallo liebe Community,

ich versuche gerade eine Katoden-Basis-Schaltung mit gEDA und dem 
ngspice Backend zu simulieren. Hierzu habe ich den Stromlaufplan mit 
gSchem gezeichnet und daraus die Netzliste generiert. Klappt alles 
wunderbar!

Versuche ich jetzt das ganze mit ngspice zu simulieren, bekomme ich 
folgenden Fehler:

/************************************************/
Original line no.: 0, new internal line no.: 62:
Undefined number [IK]
Original line no.: 0, new internal line no.: 62:
Cannot compute substitute
Original line no.: 0, new internal line no.: 64:
Undefined number [IG]
Original line no.: 0, new internal line no.: 64:
Cannot compute substitute

ERROR: fatal error in ngspice, exit(1)
/************************************************/

Die hier angesprochenen Parameter sind in dem Subcircuit 354V (siehe 
Anhang) definiert. Welcher auch in der Netzliste (ebenfalls Anhang) 
eingebunden wird.


Hat irgendwer ne Idee bzw. ein geübtes Auge und sieht wo mein Fehler 
liegt?


MfG Befedo
Angehängte Dateien:
#3671746
Lesenswert?
• ▲
▼
Hallo Bafedo,

du hast das SPICE-Modell "versemmelt". Da sind B-Quellen drin und keine 
.param wie bei dir. ".param" definiert Konstanten. Die müssen vor dem 
Start der Simulation bekannt sein und behalten während der Simulation 
ihren Wert. B-Quellen sind "Behavioral Sources" also abhängige Quellen 
die mit Formeln beschrieben werden.

So sieht wohl das Original aus.

* Generic triode model: 354V
* Copyright 2003--2006 by Ayumi Nakabayashi, All rights reserved.
* Version 3.01, Generated on Wed Mar 22 17:22:32 2006
.SUBCKT 354V A G K
BGG   GG   0 V=V(G,K)+0.65601816
BEP   EP   0 V=URAMP(V(A,K))+1e-10
BEG   EG   0 V=URAMP(V(G,K))+1e-10
BM1   M1   0 V=(0.006476558*(URAMP(V(EP)-1e-10)+1e-10))^-0.39630014
BM2   M2   0 
V=(0.79101402*(URAMP(V(GG)+V(EP)/32.268063)+1e-10))^1.8963001
BP    P    0 V=0.0016633526*(URAMP(V(GG)+V(EP)/40.793288)+1e-10)^1.5
BIK   IK   0 V=U(V(GG))*V(P)+(1-U(V(GG)))*0.00098151348*V(M1)*V(M2)
BIG   IG   0 V=0.00083167629*V(EG)^1.5*(V(EG)/(V(EP)+V(EG))*1.2+0.4)
BIAK  A    K 
I=URAMP(V(IK,IG)-URAMP(V(IK,IG)-(0.00089321233*V(EP)^1.5)))+1e-10*V(A,K)
BIGK  G    K I=V(IG)
* CAPS
CGA   G    A 2p
CGK   G    K 2p
CAK   A    K 2p
.ENDS


In LTspice muss man ^ durch ** ersetzen. Dann läuft es aus dem Stand. 
Siehe angehängten Dateien. Die DC-Kurven stimmen exakt mit dem 
Datenblatt überein.

Mein Tipp: Mal einfach die Schaltung in LTspice zum simulieren. Das ist 
auf die Dauer wesentlich effektiver als alle Fallen wegen 
Inkompatibilität zu PSPICE und SPICE 3 zu umschiffen. LTspice ist 
wirklich sehr kompatibel zu diesen SPICE-Klassikern.

Gruß
Helmut
Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.