| Literature DB >> 27386338 |
A Ramirez-Pinero1, H Vazquez-Leal1, V M Jimenez-Fernandez1, H M Sedighi2, M M Rashidi3, U Filobello-Nino1, R Castaneda-Sheissa1, J Huerta-Chua4, L A Sarmiento-Reyes5, J R Laguna-Camacho6, F Castro-Gonzalez1.
Abstract
In the present work, we introduce an improved version of the hyperspheres path tracking method adapted for piecewise linear (PWL) circuits. This enhanced version takes advantage of the PWL characteristics from the homotopic curve, achieving faster path tracking and improving the performance of the homotopy continuation method (HCM). Faster computing time allows the study of complex circuits with higher complexity; the proposed method also decrease, significantly, the probability of having a diverging problem when using the Newton-Raphson method because it is applied just twice per linear region on the homotopic path. Equilibrium equations of the studied circuits are obtained applying the modified nodal analysis; this method allows to propose an algorithm for nonlinear circuit analysis. Besides, a starting point criteria is proposed to obtain better performance of the HCM and a technique for avoiding the reversion phenomenon is also proposed. To prove the efficiency of the path tracking method, several cases study with bipolar (BJT) and CMOS transistors are provided. Simulation results show that the proposed approach can be up to twelve times faster than the original path tracking method and also helps to avoid several reversion cases that appears when original hyperspheres path tracking scheme was employed.Entities:
Keywords: Homotopy continuation method; Multiple operating points; Nonlinear circuits; Path tracking algorithm; Piecewise linear
Year: 2016 PMID: 27386338 PMCID: PMC4920796 DOI: 10.1186/s40064-016-2534-5
Source DB: PubMed Journal: Springerplus ISSN: 2193-1801
Fig. 1PWL homotopy path tracking using the MSA (Torres-Munoz et al. 2014)
Fig. 2Starting point criteria
Fig. 3Graphical inverted sphere domain
Fig. 4MSA with an inverted hypersphere
Fig. 5Inverted sphere problems in the MSA. a Small radius problem. b Big radius problem
Fig. 6First iteration of the path tracking. a Case with negative solution found. b Case with positive solution found
Fig. 7Path tracking method. a Straight line segment iterations. b PT method in breakpoints
Fig. 8Find zero strategy
Fig. 9Flow diagram for the SHPT algorithm
Fig. 10Example 1: Schematic Circuits. a Schematic Circuit for example 1. b Ebers–Moll model. c Schematic Circuit for example 1 with the Ebers–Moll model
Starting Point (SP) for Example 1
| Variable | Starting point (SP) |
|---|---|
|
| 7 |
|
| 7 |
|
| 6 |
|
| 7 |
|
| 6 |
|
| 7 |
|
| 6 |
|
| 6 |
Test 1 and Test 2 proof
| Variable | Test 1 |
|---|---|
|
| 7 ≥ 5 |
|
| 7 ≥ 5 |
|
| 6 ≥ 5 |
|
| 7 ≥ 5 |
|
| 6 ≥ 5 |
|
| 7 ≥ 5 |
|
| 6 ≥ 5 |
|
| 6 ≥ 5 |
Fig. 11Homotopic paths from example 1. a Homotopic path for . b Zoom to the homotopic path for . c Homotopic path for . d Zoom to the homotopic path for
Obtained operating points for example 1
| Solution |
|
|
|
|---|---|---|---|
| Variable | |||
| | 5 | 5 | 5 |
| | 2.63687 | 0.79633 | 0.43999 |
| | 0.73608 | 0.71936 | 0.41549 |
| | 0.43999 | 0.79633 | 2.63687 |
| | 0.41549 | 0.71936 | 0.73608 |
| | 0.01116 | 0.03503 | 0.04652 |
| | 0.04652 | 0.03503 | 0.01116 |
| |
|
|
|
| Error | 2.56330E−9 | 2.6000E−9 | 1.8497E−9 |
| Error | 7.65891E−9 | 5.5292E−9 | 1.3424E−8 |
Fig. 12Nine solutions Chua’s circuit
Fig. 13Simplified version of the Ebers–Moll model
Starting points for example 2
| Starting point | SP1 | SP2 | SP3 |
|---|---|---|---|
| Variable | |||
| | −13 | −14 | −15 |
| | −13 | −15 | −15 |
| | −13 | −16 | 13 |
| | −13 | 17 | 16 |
| | −13 | 18 | −13 |
| | 20 | 12 | 23 |
| | −13 | 16 | −13 |
| | 20 | 15 | 19 |
| | 20 | 14 | 13 |
| | 20 | −14 | 21 |
| | −13 | −16 | −13 |
| | −13 | −14 | 13 |
| | −13 | −12 | 15 |
| | −13 | 2 | −1 |
| | −13 | 2 | −1 |
| | −13 | 2 | −1 |
Fig. 14Homotopic paths for from Example 2. a Homotopic path for using SP1. b Zoom to a. c Homotopic path for using SP2. d Zoom to c. e Homotopic path for using SP3. f Zoom to e
Operating points from Example 2 using SP1
| Starting point | SP1 | ||||
|---|---|---|---|---|---|
| Solution |
|
|
|
|
|
| Variable | |||||
| | 12 | 12 | 12 | 12 | 12 |
| | 10.75096 | 10.43859 | 10.39498 | 4.84208 | 2.47682 |
| | 1.38307 | −1.27205 | −1.64274 | −2.96478 | −2.38453 |
| | −0.61692 | −3.27205 | −3.64274 | −4.96478 | −4.38453 |
| | −7.45041 |
| −8.08633 | −8.38692 | −8.21367 |
| | 2.54958 | 2.01096 | 1.91366 | 1.61307 | 1.78632 |
| | −4.54315 | −0.75565 | −0.07147 | 7.38990 | 8.58443 |
| | −1.14428 | −0.19032 | −0.01800 | 1.62547 | 1.82001 |
| | 2.16789 | 1.63661 | 1.54063 | 1.27021 | 1.45263 |
| | 2.16789 | 1.69623 | 1.80832 | 1.80832 | 1.45263 |
| | 10.51566 | −0.83173 | −2.34971 | −2.50524 | 2.24153 |
| | −4.54315 | 10.13282 | 10.84530 | 10.84530 | 8.58443 |
| | −1.14428 | 2.07001 | 2.18505 | 2.18505 | 1.82001 |
| | −0.00895 | −0.00725 | −0.00729 | −0.00685 | −0.00652 |
| | −0.00068 | −0.00047 | −0.00044 | −0.00034 | −0.00038 |
| | 0.00031 | 0.00039 | 0.000401 | 0.00026 | 0.00016 |
|
| 4.3457E−8 | 3.9249E−9 | 3.9283E−10 | 1.3055E−8 | 3.5880E−10 |
|
| 4.0033E−7 | 1.2607E−7 | 1.1384E−7 | 1.0513E−7 | 1.6096E−7 |
Operating points from Example 2, using SP2 and SP3
| Starting point | SP2 | SP3 | ||||
|---|---|---|---|---|---|---|
| Solution |
|
|
|
|
|
|
| Variable | ||||||
| | 12 | 12 | 12 | 12 | 12 | 12 |
| | −2.26995 | −2.48607 | −0.59643 | −2.11441 | −2.26995 | 2.47609 |
| | −2.96478 | −4.80186 | −1.27205 | −1.64274 | −2.96478 | −2.38462 |
| | −4.96478 | −6.80186 | −3.27205 | −3.64274 | −4.96478 | −4.38462 |
| | −8.38692 | −8.93395 | −7.98903 | −8.08633 | 8.38692 | −8.21370 |
| | 1.61307 | 1.06604 | 2.01096 | 1.91366 | 1.61307 | 1.78629 |
| | 10.84530 | 10.84531 | 10.13282 | 10.84530 | 10.84530 | 8.58478 |
| | 2.18505 | 2.18505 | 2.07001 | 2.18505 | 2.18505 | 1.82007 |
| | 1.80832 | 1.80832 | 1.69623 | 1.80832 | 1.80832 | 1.45268 |
| | 1.27021 | 1.80832 | 1.63661 | 1.54063 | 1.27021 | 1.45260 |
| | 4.60679 | −2.72137 | 10.20329 | 10.15968 | 4.60679 | 2.24190 |
| | 7.38990 | 10.84531 | −0.75565 | −0.07147 | 7.38990 | 8.58425 |
| | 1.62547 | 2.18505 | −0.19032 | −0.01800 | 1.62547 | 1.81998 |
| | −0.00685 | −0.00787 | −0.00725 | −0.00729 | −0.00685 | −0.00652 |
| | −0.00034 | −0.00021 | −0.00047 | −0.00044 | −0.00034 | −0.00038 |
| | 0.00002 | 0.00007 | 0.00002 | −0.00001 | 0.00002 | 0.00016 |
|
| 3.7168E−11 | 5.4131E−9 | 4.8390E−12 | 4.4469E−5 | 1.6678E−9 | 2.5092E−6 |
|
| 1.1229E−7 | 1.4545E−7 | 1.2585E−7 | 4.4469E−5 | 1.1240E−7 | 2.5007E−6 |
Fig. 15Proposed circuit for Example 3
Starting point selected for Example 3
| Variable | SP |
|---|---|
|
| 10 |
|
| −5 |
|
| 0 |
|
| 8 |
|
| 0 |
|
| −8 |
|
| −6 |
|
| 10 |
|
| 7 |
|
| −2 |
|
| −1 |
|
| 7 |
|
| 9 |
|
| −8 |
|
| −1 |
|
| 0 |
|
| 0 |
|
| 0 |
|
| 0 |
|
| −1 |
Operating points for Example 3
| Solution |
|
|
|
|
|
|---|---|---|---|---|---|
| Variable | |||||
| | 5 | 5 | 5 | 5 | 5 |
| | 0.68446 | 0.78476 | 0.78492 | 0.78494 | 1.00839 |
| | 0.64634 | 0.71514 | 0.71519 | 0.71520 | 0.71942 |
| | 1.00839 | 0.78494 | 0.78492 | 0.78476 | 0.68447 |
| | 0.71942 | 0.71520 | 0.71519 | 0.71514 | 0.64635 |
| | 0.03487 | 0.03175 | 0.03174 | 0.03169 | 0.01737 |
| | 0.01736 | 0.03169 | 0.03174 | 0.03175 | 0.03488 |
| | 0.19391 | 0.63029 | 0.63306 | 0.63369 | 1.02235 |
| | 0.05758 | 0.03918 | 0.03978 | 0.03975 | 0.01735 |
| | 1.02234 | 0.63369 | 0.63306 | 0.63029 | 0.19391 |
| | 0.17351 | 0.03975 | 0.03978 | 0.03918 | 0.05758 |
| | 0.08463 | 0.50526 | 0.79630 | 2.21665 | 3.12335 |
| | 0.06687 | 0.04471 | 0.03503 | 0.01662 | 0.00497 |
| | 3.12334 | 2.21665 | 0.79630 | 0.50526 | 0.08464 |
| | 0.00497 | 0.01662 | 0.03503 | 0.04471 | 0.06687 |
| | 0.75199 | 0.72532 | 0.72606 | 0.72601 | 0.64577 |
| | 0.64577 | 0.72601 | 0.72606 | 0.72532 | 0.75200 |
| | 0.76623 | 0.73329 | 0.71937 | 0.61847 | 0.18512 |
| | 0.18511 | 0.61847 | 0.71937 | 0.73329 | 0.76624 |
| | −0.01990 | −0.02037 | −0.02130 | −0.02037 | −0.01990 |
|
| 4.7344E−9 | 9.1796E−8 | 6.1874E−9 | 2.5534E−8 | 4.6363E−9 |
|
| 2.7554E−8 | 9.1849E−8 | 3.9932E−8 | 3.6188E−8 | 2.1458E−8 |
Fig. 16Homotopic path for from the Example 3. a Homotopic path for . b Zoom to a
Fig. 17Schematic circuit for Example 4
Fig. 18Shichmann–Hodges model for CMOS transistors. a Model for NMOS transistors. b Model for PMOS transistors
Starting point for Example 4
| Variable | SP1 |
|---|---|
|
| −2 |
|
| −2 |
|
| −2 |
|
| 12 |
|
| −2 |
|
| −2 |
|
| 12 |
|
| 12 |
|
| −2 |
|
| −2 |
Operating points found for Example 4
| Solution |
|
|
|
|---|---|---|---|
| Variable | |||
| | 2.5 | 2.5 | 2.5 |
| | −4.91517E−12 | −2.76401E−12 | 1.10556E−12 |
| | 4.99124 | 4.99026 | 4.99694 |
| | 1.06307 | 1.06132 | 1.07323 |
| | −0.00875 | −0.00973 | −0.00030 |
| | 1.49486 | 2.26321 | 4.98690 |
| | 1.06307 | 1.06132 | 1.07323 |
| | 4.82941 | 3.80844 | 0.00146 |
| | −4.91517E−12 | −2.76401E−12 | −1.10556E−12 |
| | −0.00875 | −0.00973 | −0.00305 |
|
| 1.2340E−11 | 1.0773E−11 | 5.0228E−6 |
|
| 1.0201E−7 | 4.9503E−7 | 5.0260E−6 |
Fig. 19Homotopic path from Example 4. a Homotopic path of . b Zoom to a
Fig. 20Schematic circuit for Example 5
Starting point for Example 5
| Variable | SP |
|---|---|
|
| 6 |
|
| −9 |
|
| 6 |
|
| 6 |
|
| 12 |
|
| −9 |
|
| −9 |
|
| −9 |
|
| 12 |
|
| 6 |
|
| 6 |
Operating points found for Example 5
| Solution |
|
|
|
|---|---|---|---|
| Variable | |||
| | 4.94280 | 4.94280 | 4.94280 |
| | 3 | 2.99999 | 3 |
| | −0.05719 | −0.05719 | −0.05719 |
| | −4.9428E−12 | −5.9576E−12 | −1.1418E−12 |
| | 0.39613 | 0.29148 | 0.24268 |
| | 1.07929 | 1.49869 | 2.10639 |
| | 0.25796 | 0.31132 | 0.51159 |
| | 0.87633 | 1.50263 | 2.37228 |
| | 2.10891 | 1.68416 | 0.89835 |
| | −4.5210E−12 | −5.9576E−12 | −4.5210E−12 |
| | −0.00571 | −0.00571 | −0.00571 |
|
| 1.3441E−11 | 9.4875E−11 | 2.3965E−6 |
|
| 1.8000E−7 | 1.8001E−7 | 1.8000E−6 |
Fig. 21Homotopic path for from Example 5. a Homotopic path for . b Zoom to a. c Zoom to a. d Zoom to a
Comparison between the SHPT and the MSA path tracking methods
| Example | 1 | 2 | 2 | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Starting point | SP1 | SP1 | SP2 | ||||||
| Characteristic | SHPT | MSA1 | MSA2 | SHPT | MSA1 | MSA2 | SHPT | MSA1 | MSA2 |
| Total iterations | 360 | 360 | 360 | 2500 | 2500 | 2500 | 1400 | 1400 | 2 |
| Hypersphere radius | 0.001 | 0.001 | 0.001 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 |
| Reversion phenomenon | No | No | No | No | No | No | No | No | Yes |
| Solutions found | 3 | 3 | 3 | 4 | 4 | 4 | 2 | 2 | 0 |
| Straight Line iterations | 336 | 0 | 0 | 2443 | 0 | 0 | 1376 | 0 | 0 |
| Hypersphere iterations (NRM) | 24 | 360 | 360 | 57 | 2500 | 2500 | 24 | 1400 | 2 |
| Total computing time (s) | 4.30 | 22.33 | 22.27 | 10.71 | 92.44 | 92.36 | 7.05 | 56.08 | * |
| Straight Line computing time | 0.359 | 0 | 0 | 3.04 | 0 | 0 | 1.06 | 0 | * |
| Hyperspheres computing time | 3.94 | 22.33 | 22.27 | 7.67 | 92.44 | 92.36 | 5.99 | 56.08 | * |
Comparison between the SHPT and the MSA path tracking methods
| Example | 2 | 3 | 4 | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Starting point | SP3 | SP1 | SP1 | ||||||
| Characteristic | SHPT | MSA1 | MSA2 | SHPT | MSA1 | MSA2 | SHPT | MSA1 | MSA2 |
| Total iterations | 2000 | 2000 | 1501 | 1000 | 1000 | 345 | 400 | 400 | 2 |
| Hypersphere radius | 0.05 | 0.05 | 0.05 | 0.1 | 0.1 | 0.1 | 0.1 | 0.1 | 0.1 |
| Reversion phenomenon | No | No | Yes | No | No | Yes | No | No | Yes |
| Solutions found | 3 | 3 | 2 | 5 | 5 | 0 | 3 | 3 | 0 |
| Straight Line iterations | 1937 | 0 | 0 | 802 | 0 | 0 | 214 | 0 | 0 |
| Hypersphere iterations (NRM) | 63 | 2000 | 1501 | 198 | 2000 | 345 | 186 | 400 | 2 |
| Total computing time (s) | 12.48 | 87.65 | * | 224.73 | 798.16 | * | 48.75 | 90.35 | * |
| Straight Line computing time | 1.41 | 87.65 | * | 6.56 | 0 | * | 1.14 | 0 | * |
| Hyperspheres computing time | 11.07 | 87.65 | * | 218.16 | 798.16 | * | 47.61 | 90.35 | * |
Comparison between the SHPT and the MSA path tracking methods
| Example | 5 | ||
|---|---|---|---|
| Starting point | SP1 | ||
| Characteristic | SHPT | MSA1 | MSA2 |
| Total iterations | 330 | 330 | 2 |
| Hypersphere radius | 0.1 | 0.1 | 0.1 |
| Reversion phenomenon | No | No | Yes |
| Solutions found | 3 | 3 | 0 |
| Straight Line iterations | 249 | 0 | 0 |
| Hypersphere iterations (NRM) | 81 | 330 | 2 |
| Total computing time (s) | 26.36 | 61.49 | * |
| Straight Line computing time | 1.09 | 0 | * |
| Hyperspheres computing time | 25.27 | 61.49 | * |