ngspice no imprime corrientes para ningún circuito

2

Estoy leyendo un libro de EE que hace referencia a SPICE para seguir en mi máquina Linux que instalé ngspice. ¡No puedo emitir corriente para ningún circuito! He intentado pasar el archivo con la opción -r y varios circuitos. Nunca se puede obtener una salida de corriente!

Busqué en Google y probé otras publicaciones esto pero nada parece funcionar. Estoy empezando a preguntarme si esto es un problema de instalación / configuración?

Comenzando con un circuito en serie simple con la intención de imprimir el voltaje en cada resistencia y la corriente en mi fuente, cargué la siguiente lista de redes:

series circuit
v1 1 0
r1 1 2 3k
r2 2 3 10k
r3 3 0 5k
.dc v1 9 9 1
.print dc v(1,2) v(2,3) v(3,0) i(v1)
.end

y errores recibidos: Advertencia: v1: no tiene valor, DC 0 asumido Advertencia: no se puede analizar '0': se ignora

Mis salidas de voltaje son correctas por cálculo de mano, así que sé que ngspice está calculando la corriente correcta.

reduciendo la línea .print para obtener solo ::

.print i(v1)

produce un error:

Error: .print: no i(v1) analysis found.

También he intentado definir mi fuente diferente como:

v1 1 0 dc 9

mismos errores.

He probado muchos circuitos diferentes y nunca puedo hacer que ngspice produzca corriente para mis fuentes (también he creado fuentes de voltaje 0 cerca de resistencias en circuitos paralelos). Las salidas de voltaje son todas correctas

También probé una lista de redes sin línea de impresión (pensé que había visto otras con salida predeterminada):

series circuit
v1 1 0 dc 9
r1 1 2 3k
r2 2 3 10k
r3 3 0 5k
.end

con este error:

Note: No ".plot", ".print", or ".fourier" lines; no simulations run

¿no hay una salida predeterminada sin necesitar una línea .print?

Más importante aún, ¿hay un archivo de configuración no configurado correctamente? pensamientos?

cualquier dirección es muy apreciada ... Gracias

    
pregunta twinturbotom

2 respuestas

2

Su primer circuito es correcto, no tiene errores, solo advertencias. Puede ignorar la advertencia sobre v1 o definirla con un valor como v1 1 0 9. Acabo de probar su circuito inicial con ngspice (linux) y dio el valor correcto para la corriente (-5.00000e-04) hasta la fuente v1.

  

.print i(v1)

     

produce un error:

     

Error: .print: no i(v1) analysis found.

Olvidó el parámetro de tipo de análisis antes de la variable de salida: .print dc i (v1).

Nota: Como se mencionó en esta respuesta ¿Cómo trazar la corriente en ngspice? con ngspice solo puede obtener corrientes a través de fuentes de voltaje independientes. Si tiene un circuito más complejo, tendría que agregar una fuente de cero voltios (en serie) con el componente para obtener su corriente.

    
respondido por el Gilberto J
1

hay algunos problemas con tu archivo .cir.

.dc v1 9 9 1

olvidaste un signo menos.

.dc v1 -9 9 1

esto causará una advertencia

v1 1 0

sé más detallado y escribe

v1 1 0 DC=0V

el nodo 0 es algo especial, por lo tanto

.print dc v(3,0)

debería ser

.print dc v(3)

y ngspice no pueden procesar i(node) expresiones. sustitúyelo por

.print dc v1#branch

entonces asegúrese de tener una copia del manual ngspice.pdf, es precioso.

y quizás aprender el lenguaje .control / .endc, por ejemplo prueba ngspice thisfile.cir con

series circuit

v1 1 0 DC=0
r1 1 2 3k
r2 2 3 10k
r3 3 0 5k

.control
dc v1 -9 9 1
* this will show you which vectors are available
display
* this will plot some of them
plot v(1,2) v(2,3) v(3)
plot v1#branch
plot v(3)^2
.endc

.end
    
respondido por el robert

Lea otras preguntas en las etiquetas