Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
ngspice [Le 27/11/2016, 10:24]
sefran [MOSFETs]
ngspice [Le 06/08/2017, 09:55] (Version actuelle)
L'Africain petit nettoyage
Ligne 1: Ligne 1:
- +{{tag>Xenial ​conception_électronique ​BROUILLON}}
-{{tag>​conception_électronique}}+
  
 ---- ----
Ligne 7: Ligne 6:
 Ngspice est un logiciel de simulation électronique permettant notamment d'​étudier des montages électriques,​ de tracer des diagrammes de Bode, de calculer des gains, etc. Ngspice est un logiciel de simulation électronique permettant notamment d'​étudier des montages électriques,​ de tracer des diagrammes de Bode, de calculer des gains, etc.
  
-Il est basé sur Spice3f5, Cider1b1 et Xspice +Il est basé sur Spice3f5, Cider1b1 et Xspice.
-===== Installation à partir des dépots =====+
  
-Depuis Lucid lynx ce logiciel est présent dans les dépôts: il suffit [[:​tutoriel:​comment_installer_un_paquet|d'​installer le paquet]] **ngspice** [[apt://​ngspice|{{apt.png}}]] et **ngspice-doc** [[apt://​ngspice-doc|{{apt.png}}]] +===== Installation===== 
- +Il suffit ​[[:​tutoriel:​comment_installer_un_paquet|d'​installer ​les paquets]] **[[apt>ngspice]]** et **[[apt>​ngspice-doc]]**.
-===== Installation ​à partir des sources ​===== +
- +
-Nous allons installer la dernière version ngspice des dépôts Debian non libre. Pour ce faire rechercher sur [[http://​www.google.com/​search?​q=ngspice_22-1.dsc|Google]] le fichier ngspice_22-1.dsc +
- +
-Nous trouvons par exemple comme lien http://​kambing.ui.ac.id/​debian/​pool/​non-free/​n/​ngspice/​ +
-==== Pré-requis ==== +
- +
-Pour pouvoir effectuer cette installation un certain nombre de pré-requis sont nécessaires : +
- +
-  * Les dépôts source doivent être disponibles dans synaptic (décommentez les lignes qui commencent par deb-src dans /​etc/​apt/​sources.list) +
-  * [[tutoriel:​comment_installer_un_paquet|Installez ​les paquets]] **debhelper cdbs lintian build-essential fakeroot devscripts pbuilder dh-make debootstrap blt** ([[apt://​debhelper,​cdbs,​lintian,​build-essential,​fakeroot,​devscripts,​pbuilder,​dh-make,​debootstrap,​blt|en 1 clic]]). +
- +
-==== Préparation de pbuilder ==== +
- +
-On va utiliser l'​outil [[:​pbuilder]],​ qui crée un chroot d'un système Ubuntu de base, puis le compresse dans un fichier base.tgz.\\ +
-Lors de l'​utilisation de pbuilder pour construire le paquet binaire, le chroot va être décompressé,​ les Build-Deps installées et le paquet compilé. S'il manque une Build-Dep, la compilation échouera.\\ +
-Le principal intérêt de pbuilder est de vérifier que les Build Deps sont bonnes (cf. fichier control .dsc). +
- +
-Pour supporter les dépôts Universe et Multiverse +
- +
-<​code>​ +
-sudo su +
-echo "​COMPONENTS=\"​main restricted universe multiverse\""​ >> /​etc/​pbuilderrc +
-ctrl+d +
-</​code>​ +
- +
-Permet d'​activer l'​utilisation des dépôts universe et multiverse sous dapper (désactivés par défaut). +
- +
-==== Installation ==== +
- +
-créé un répertoire ~/​packaging +
- +
-<code bash> +
-mkdir ~/​packaging +
-cd packaging +
-</​code>​ +
- +
-Téléchargez dans ce répertoire les fichiers +
- +
-http://​kambing.ui.ac.id/​debian/​pool/​non-free/​n/​ngspice/​ngspice_26-1.1~deb8u1.debian.tar.xz +
- +
-http://​kambing.ui.ac.id/​debian/​pool/​non-free/​n/​ngspice/​ngspice_26-1.1~deb8u1.dsc +
- +
-http://​kambing.ui.ac.id/​debian/​pool/​non-free/​n/​ngspice/​ngspice_26-1.1.debian.tar.xz +
- +
-==== Compilation et création du paquet binaire ==== +
- +
-=== Création du chroot avec pbuilder=== +
- +
-Pour initialiser pbuilder, tapez dans votre terminal :  +
- +
-<code bash> +
-sudo pbuilder create +
-</​code>​ +
- +
-<note idée> +
-Pour faire un chroot d'une autre version d'​ubuntu que celle que vous utilisez actuellement (pour créer un paquet compatible),​ vous pouvez ajouter à la fin de la deuxième commande ''​--distribution hardy'':​  +
-<code bash> +
-  sudo pbuilder create --distribution hardy  +
-</​code>​ +
-(hardy peut être remplacé par le nom de code d'une autre version d'​Ubuntu). +
-</​note>​ +
- +
-Cette étape peut prendre un certain temps. +
- +
-===Création du paquet binaire=== +
- +
-Une fois l'​étape précédente terminée il ne vous reste plus qu'a taper la commande suivante pour compiler votre paquet source (dans « ~/​packaging/​ ») : +
- +
-<code bash> +
-sudo pbuilder build *.dsc +
-</​code>​ +
- +
-Et à laisser mariner… en cas d'​erreur de dépendance (eh oui cela peut encore arriver pendant la compilation) reprendre à l'​étape ​**Création du paquet binaire** en ajoutant le paquet manquant avant de lancer le //build//, il est possible d'​ajouter plusieurs paquet en les séparants avec une espace : +
- +
-<code bash> +
-sudo pbuilder update --extrapackages nomdupaquetmanquant (ex: libq4t-dev) +
-</​code>​ +
- +
-Une fois cette étape terminée, votre .deb est dans **/​var/​cache/​pbuilder/​result** +
-==== Installer les packets ==== +
- +
-<code bash> +
-cd /​var/​cache/​pbuilder/​result +
-sudo dpkg -i ngspice-doc_20-1_all.deb ngspice_20-1_*.deb tclspice_20-1_*.deb +
-</​code>​+
  
 ===== Utilisation ===== ===== Utilisation =====
Ligne 167: Ligne 79:
  
 ===== Images ===== ===== Images =====
-{{:​application:​ngspice.png|}}+{{:​application:​ngspice.png?450|}}
  
 ===== Syntaxe des fichiers circuit ===== ===== Syntaxe des fichiers circuit =====
Ligne 244: Ligne 156:
 W1 1 2 vclock switchmod1</​code>​ W1 1 2 vclock switchmod1</​code>​
  
-=== Notes === 
-Nodes n+ and n- are the nodes between which the switch terminals are connected. The model name is mandatory while the initial conditions are optional. For the voltage controlled switch, nodes nc+ and nc- are the positive and negative controlling nodes respectively. For the current controlled switch, the controlling current is that through the specified voltage source. The direction of positive controlling current flow is from the positive node, through the source, to the negative node. 
  
 ==== Sources de tension ==== ==== Sources de tension ====
Ligne 264: Ligne 174:
 <​code>​Iname n+ n- <<​DC>​ DC/TRAN VALUE> <AC <ACMAG <​ACPHASE>>>​ <DISTOF1 <F1MAG <​F1PHASE>>>​ <DISTOF2 <F2MAG <​F2PHASE>>></​code>​ <​code>​Iname n+ n- <<​DC>​ DC/TRAN VALUE> <AC <ACMAG <​ACPHASE>>>​ <DISTOF1 <F1MAG <​F1PHASE>>>​ <DISTOF2 <F2MAG <​F2PHASE>>></​code>​
  
-=== Examples ​===+=== Exemples ​===
 <​code>​Igain 12 15 DC 1 <​code>​Igain 12 15 DC 1
 Irc 23 21 0.333 AC 5 SFFM(0 1 1K)</​code>​ Irc 23 21 0.333 AC 5 SFFM(0 1 1K)</​code>​
Ligne 277: Ligne 187:
 <​code>​Gname n+ n- nc+ nc- value</​code>​ <​code>​Gname n+ n- nc+ nc- value</​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​G1 2 0 5 0 0.1MMHO</​code>​ <​code>​G1 2 0 5 0 0.1MMHO</​code>​
  
Ligne 287: Ligne 197:
 <​code>​Ename n+ n- nc+ nc- value</​code>​ <​code>​Ename n+ n- nc+ nc- value</​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​E1 2 3 14 1 2.0</​code>​ <​code>​E1 2 3 14 1 2.0</​code>​
  
Ligne 296: Ligne 206:
 <​code>​Fname n+ n- Vname value</​code>​ <​code>​Fname n+ n- Vname value</​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​F1 13 5 Vsen 5</​code>​ <​code>​F1 13 5 Vsen 5</​code>​
  
Ligne 306: Ligne 216:
 <​code>​Hname n+ n- Vname value</​code>​ <​code>​Hname n+ n- Vname value</​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​Hx1 5 17 Vz 0.5K</​code>​ <​code>​Hx1 5 17 Vz 0.5K</​code>​
  
Ligne 316: Ligne 226:
 <​code>​Bname n+ n- <​I=EXPR>​ <​V=EXPR></​code>​ <​code>​Bname n+ n- <​I=EXPR>​ <​V=EXPR></​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​B1 0 1 I=cos(v(1))+sin(v(2))</​code>​ <​code>​B1 0 1 I=cos(v(1))+sin(v(2))</​code>​
  
Ligne 326: Ligne 236:
 <​code>​Oname n1 n2 n3 n4 Mname</​code>​ <​code>​Oname n1 n2 n3 n4 Mname</​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​O23 1 0 2 0 LOSSYMOD</​code>​ <​code>​O23 1 0 2 0 LOSSYMOD</​code>​
  
Ligne 335: Ligne 245:
 <​code>​Uname n1 n2 n3 Mname L=LEN <​N=LUMPS></​code>​ <​code>​Uname n1 n2 n3 Mname L=LEN <​N=LUMPS></​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​U1 1 2 0 URCMOD L=50U</​code>​ <​code>​U1 1 2 0 URCMOD L=50U</​code>​
  
Ligne 345: Ligne 255:
 <​code>​Dname n+ n- Mname <​Area>​ <OFF> <​IC=VD>​ <​TEMP=T></​code>​ <​code>​Dname n+ n- Mname <​Area>​ <OFF> <​IC=VD>​ <​TEMP=T></​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​Dfwd 3 7 DMOD 3.0 IC=0.2</​code>​ <​code>​Dfwd 3 7 DMOD 3.0 IC=0.2</​code>​
  
Ligne 355: Ligne 265:
 <​code>​Qname nC nB nE <nS> Mname <​AREA>​ <OFF> <IC=VBE, VCE> <​TEMP=T></​code>​ <​code>​Qname nC nB nE <nS> Mname <​AREA>​ <OFF> <IC=VBE, VCE> <​TEMP=T></​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​Q23 10 24 13 QMOD IC=0.6, 5.0</​code>​ <​code>​Q23 10 24 13 QMOD IC=0.6, 5.0</​code>​
  
Ligne 365: Ligne 275:
 <​code>​Jname nD nG nS Mname <​Area>​ <OFF> <IC=VDS, VGS> <​TEMP=T></​code>​ <​code>​Jname nD nG nS Mname <​Area>​ <OFF> <IC=VDS, VGS> <​TEMP=T></​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​J1 7 2 3 JM1 OFF</​code>​ <​code>​J1 7 2 3 JM1 OFF</​code>​
  
Ligne 374: Ligne 284:
 <​code>​Mname ND NG NS NB MNAME <​L=VAL>​ <​W=VAL>​ <​AD=VAL>​ <​AS=VAL>​ <​PD=VAL>​ <​PS=VAL>​ <​NRD=VAL>​ <​NRS=VAL>​ <OFF> <IC=VDS, VGS, VBS> <​TEMP=T></​code>​ <​code>​Mname ND NG NS NB MNAME <​L=VAL>​ <​W=VAL>​ <​AD=VAL>​ <​AS=VAL>​ <​PD=VAL>​ <​PS=VAL>​ <​NRD=VAL>​ <​NRS=VAL>​ <OFF> <IC=VDS, VGS, VBS> <​TEMP=T></​code>​
  
-=== Example ​===+=== Exemple ​===
 <​code>​M31 2 17 6 10 Mname L=5U W=2U</​code>​ <​code>​M31 2 17 6 10 Mname L=5U W=2U</​code>​
  
Ligne 380: Ligne 290:
 nD, nG, nS et nB sont respectivement les nœuds drain, gate, source et bulk (substrat). Mname est le nom du modèle. L et W sont la longueur et la largeur du canal, en mètres. AD et AS sont les zones des diffusions drain et source, à 2 mètres. Notez que le suffixe U spécifie microns (1exp-6 m) 2 et P microns (1exp-12 m). Si l'un de L, W, AD ou AS n'est pas spécifié, les valeurs par défaut sont utilisées. nD, nG, nS et nB sont respectivement les nœuds drain, gate, source et bulk (substrat). Mname est le nom du modèle. L et W sont la longueur et la largeur du canal, en mètres. AD et AS sont les zones des diffusions drain et source, à 2 mètres. Notez que le suffixe U spécifie microns (1exp-6 m) 2 et P microns (1exp-12 m). Si l'un de L, W, AD ou AS n'est pas spécifié, les valeurs par défaut sont utilisées.
 ==== MESFETs ==== ==== MESFETs ====
-Syntax+Syntaxe
 <​code>​Zname nD nG nS Mname <​Area>​ <OFF> <IC=VDS, VGS></​code>​ <​code>​Zname nD nG nS Mname <​Area>​ <OFF> <IC=VDS, VGS></​code>​
  
Ligne 387: Ligne 297:
  
 === Notes === === Notes ===
-nD, nG, andnS are the drain, gate, and  ​source ​ ​nodes,​ respectively  ​Mname  ​is ​ the  model name, Area is the area factorand OFF indicates an (optionalinitial condition on the  device for dc analysis. +nD, nG et nS sont respectivement les nœuds ​drain, gate et source. Mname est le nom du modèle, Area est le facteur de zoneet OFF indique une condition initiale ​(facultativesur le périphérique pour l'​analyse CC.
 ===== Liens ===== ===== Liens =====
  
-[[http://newton.ex.ac.uk/​teaching/​CDHW/​Electronics2/​userguide/​|Documentation]] (en)+[[http://ngspice.sourceforge.net/docs.html|Documentation]] (en)
  
 [[http://​www.iznogood-factory.org/​pub/​gEDA/​gEDA_Spice_HOWTOfr.pdf|Tutoriel]] [[http://​www.iznogood-factory.org/​pub/​gEDA/​gEDA_Spice_HOWTOfr.pdf|Tutoriel]]
  
-[[http://www.geda.seul.org/wiki/​geda:​faq.fr|gEDA]]+[[http://wiki.geda-project.org/start_fr|gEDA]]
  
 ---- ----
 //​Contributeur principal :​[[:​utilisateurs:​Sefran|Sefran]] Le 17/12/2009, 00:31// //​Contributeur principal :​[[:​utilisateurs:​Sefran|Sefran]] Le 17/12/2009, 00:31//
  • ngspice.1480238684.txt.gz
  • Dernière modification: Le 27/11/2016, 10:24
  • par sefran