⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 divderiv.c

📁 ngspice又一个电子CAD仿真软件代码.功能更全
💻 C
字号:
/**********Copyright 1990 Regents of the University of California.  All rights reserved.Author: 1989 Jaijeet S. Roychowdhury**********/#include "ngspice.h"#include "distodef.h"#include "suffix.h"/* * DivDeriv computes the partial derivatives of the division * function where the arguments to the function are * functions of three variables p, q, and r. */voidDivDeriv(Dderivs *new, Dderivs *old1, Dderivs *old2){    Dderivs num, den;    EqualDeriv(&num, old1);    EqualDeriv(&den, old2);    new->value = num.value / den.value;    new->d1_p = (num.d1_p - num.value * den.d1_p / den.value) / den.value;    new->d1_q = (num.d1_q - num.value * den.d1_q / den.value) / den.value;    new->d1_r = (num.d1_r - num.value * den.d1_r / den.value) / den.value;    new->d2_p2 = (num.d2_p2 - den.d1_p * new->d1_p		  - new->value * den.d2_p2		  + (den.d1_p * (new->value * den.d1_p - num.d1_p)		     / den.value)) / den.value;    new->d2_q2 = (num.d2_q2 - den.d1_q * new->d1_q		  - new->value * den.d2_q2		  + (den.d1_q * (new->value * den.d1_q - num.d1_q)		     / den.value)) / den.value;    new->d2_r2 = (num.d2_r2 - den.d1_r * new->d1_r - new->value *		  den.d2_r2 + den.d1_r * (new->value * den.d1_r -					  num.d1_r) / den.value) /	den.value;    new->d2_pq = (num.d2_pq - den.d1_q * new->d1_p - new->value *		  den.d2_pq + den.d1_p * (new->value * den.d1_q -					  num.d1_q) / den.value) /	den.value;     new->d2_qr = (num.d2_qr - den.d1_r * new->d1_q - new->value *		  den.d2_qr + den.d1_q * (new->value * den.d1_r -					  num.d1_r) / den.value) /	den.value;    new->d2_pr = (num.d2_pr - den.d1_r * new->d1_p - new->value *		  den.d2_pr + den.d1_p * (new->value * den.d1_r -					  num.d1_r) / den.value) /	den.value;    new->d3_p3 = (-den.d1_p * new->d2_p2 + num.d3_p3 -den.d2_p2 *		  new->d1_p - den.d1_p * new->d2_p2 - new->d1_p *		  den.d2_p2 - new->value * den.d3_p3		  + (den.d1_p * (new->d1_p * den.d1_p +				 new->value * den.d2_p2 -				 num.d2_p2) +		     (new->value * den.d1_p - num.d1_p) *		     (den.d2_p2 - den.d1_p * den.d1_p / den.value))		  / den.value) / den.value;    new->d3_q3 = (-den.d1_q * new->d2_q2 + num.d3_q3 -den.d2_q2 *		  new->d1_q - den.d1_q * new->d2_q2 - new->d1_q *		  den.d2_q2 - new->value * den.d3_q3 +		  (den.d1_q * (new->d1_q * den.d1_q + new->value *			       den.d2_q2 - num.d2_q2) +		   (new->value * den.d1_q - num.d1_q) *		   (den.d2_q2 - den.d1_q * den.d1_q / den.value)) /		  den.value) / den.value;    new->d3_r3 = (-den.d1_r * new->d2_r2 + num.d3_r3 -den.d2_r2 *		  new->d1_r - den.d1_r * new->d2_r2 - new->d1_r *		  den.d2_r2 - new->value * den.d3_r3 +		  (den.d1_r * (new->d1_r * den.d1_r + new->value *			       den.d2_r2 - num.d2_r2) +		   (new->value * den.d1_r - num.d1_r) *		   (den.d2_r2 - den.d1_r * den.d1_r / den.value)) /		  den.value) / den.value;    new->d3_p2r = (-den.d1_r * new->d2_p2 + num.d3_p2r -den.d2_pr *		   new->d1_p - den.d1_p * new->d2_pr - new->d1_r *		   den.d2_p2 - new->value * den.d3_p2r +		   (den.d1_p * (new->d1_r * den.d1_p + new->value *				den.d2_pr - num.d2_pr) +		    (new->value * den.d1_p - num.d1_p) *		    (den.d2_pr - den.d1_p * den.d1_r / den.value))		   / den.value) / den.value;    new->d3_p2q = (-den.d1_q * new->d2_p2 + num.d3_p2q -den.d2_pq *		   new->d1_p - den.d1_p * new->d2_pq - new->d1_q *		   den.d2_p2 - new->value * den.d3_p2q +		   (den.d1_p * (new->d1_q * den.d1_p + new->value *				den.d2_pq - num.d2_pq) +		    (new->value * den.d1_p - num.d1_p) *		    (den.d2_pq - den.d1_p * den.d1_q / den.value)) /		   den.value) / den.value;    new->d3_q2r = (-den.d1_r * new->d2_q2 + num.d3_q2r -den.d2_qr *		   new->d1_q - den.d1_q * new->d2_qr - new->d1_r *		   den.d2_q2 - new->value * den.d3_q2r +		   (den.d1_q * (new->d1_r * den.d1_q + new->value *				den.d2_qr - num.d2_qr) +		    (new->value * den.d1_q - num.d1_q) *		    (den.d2_qr - den.d1_q * den.d1_r / den.value)) /		   den.value) / den.value;    new->d3_pq2 = (-den.d1_p * new->d2_q2 + num.d3_pq2 -den.d2_pq *		   new->d1_q - den.d1_q * new->d2_pq - new->d1_p *		   den.d2_q2 - new->value * den.d3_pq2 +		   (den.d1_q * (new->d1_p * den.d1_q + new->value *				den.d2_pq - num.d2_pq) +		    (new->value * den.d1_q - num.d1_q) *		    (den.d2_pq - den.d1_q * den.d1_p / den.value)) /		   den.value) / den.value;    new->d3_pr2 = (-den.d1_p * new->d2_r2 + num.d3_pr2 -den.d2_pr *		   new->d1_r - den.d1_r * new->d2_pr - new->d1_p *		   den.d2_r2 - new->value * den.d3_pr2 +		   (den.d1_r * (new->d1_p * den.d1_r + new->value *				den.d2_pr - num.d2_pr) +		    (new->value * den.d1_r - num.d1_r) *		    (den.d2_pr - den.d1_r * den.d1_p / den.value)) /		   den.value) / den.value;    new->d3_qr2 = (-den.d1_q * new->d2_r2 + num.d3_qr2 -den.d2_qr *		   new->d1_r - den.d1_r * new->d2_qr - new->d1_q *		   den.d2_r2 - new->value * den.d3_qr2 +		   (den.d1_r * (new->d1_q * den.d1_r + new->value *				den.d2_qr - num.d2_qr) +		    (new->value * den.d1_r - num.d1_r) *		    (den.d2_qr - den.d1_r * den.d1_q / den.value)) /		   den.value) / den.value;    new->d3_pqr = (-den.d1_r * new->d2_pq + num.d3_pqr -den.d2_qr *		   new->d1_p - den.d1_q * new->d2_pr - new->d1_r *		   den.d2_pq - new->value * den.d3_pqr +		   (den.d1_p * (new->d1_r * den.d1_q + new->value *				den.d2_qr - num.d2_qr) +		    (new->value * den.d1_q - num.d1_q) *		    (den.d2_pr - den.d1_p * den.d1_r / den.value)) /		   den.value) / den.value;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -