Francesco Lannutti
fe89da2b2c
Getting rid of SPARSE for Initial Circuit Matrix creation. Now KLU is totally independent from SPARSE. This opens up the interface for other solvers as well
...
SPARSE can still used through '.options sparse', but it isn't possible to switch from KLU to SPARSE and viceversa at run-time
2023-08-16 11:14:18 +02:00
Francesco Lannutti
49f6444957
Added "klu_memgrow_factor" option to control the KLU memory grow factor
2023-08-16 11:14:18 +02:00
Francesco Lannutti
5513f6e5f6
Handled the SINGULAR matrix case in a more clever way!
2023-08-16 11:14:18 +02:00
Francesco Lannutti
fbd8d94cdf
Fixed again the NIiter loop for KLU
2023-08-16 11:14:17 +02:00
Francesco Lannutti
710341bbfd
Fixed KLU returns values so that NIiter can Factor again, if the matrix is numerically singular from the refactorization
...
Fixed the NIiter code to perform a factorization without reloading the matrix
2023-08-16 11:14:17 +02:00
Francesco Lannutti
77fa5c06a9
Fixed the KLU returns values for Factorization and ReFactorization.
...
If the matrix is Numerically Singular, continue the factorization till the end
2023-08-16 11:14:17 +02:00
Francesco Lannutti
fdd815183a
Fix SMPfindElement for KLU
2023-08-16 11:14:17 +02:00
Francesco Lannutti
11fb209ee6
First KLU support of CIDER ONED simulations
2023-08-16 11:14:16 +02:00
Francesco Lannutti
43f7bede8f
Added the support for .ic statement in KLU mode
2023-08-16 11:14:15 +02:00
Francesco Lannutti
330de64b19
Fixed the two routines for SPARSE (thx to Marcel Hendrix)
2023-08-16 11:14:14 +02:00
rlar
e31867ead9
(int) casts, applied to a double which just has been limited to INT_MAX
2023-08-16 11:14:14 +02:00
rlar
f690a2d5e9
casting, use (int) sizeof(), to swallow some warnings
2023-08-16 11:14:14 +02:00
rlar
eda8b57eb4
use TMALLOC
2023-08-16 11:14:14 +02:00
Francesco Lannutti
b87c539435
Handling the general case for an empty CSC matrix during the conversion to CSR format
2023-08-16 11:14:14 +02:00
Francesco Lannutti
8b302dfdab
Ordered the COO format also along the columns to have a correct CSR format
2023-08-16 11:14:14 +02:00
Francesco Lannutti
7b0d1ef2ac
Fixed the AC part of the Sensitivity Analysis
2023-08-16 11:14:13 +02:00
Francesco Lannutti
7f85b35260
Fixed the CSC to CSR conversion for KLU matrix-vector multiplication
2023-08-16 11:14:13 +02:00
Francesco Lannutti
463e2db25a
Fixed Sensibility Analysis for KLU - First Trial
2023-08-16 11:14:13 +02:00
Francesco Lannutti
0429238df5
Fixed Sensitivity Analysis integration for KLU
2023-08-16 11:14:13 +02:00
Francesco Lannutti
0823ed4e16
Fixed the sign inversion calculation for the determinant of KLU
2023-08-16 11:14:13 +02:00
Francesco Lannutti
e77879ae50
Implement klu_z_print()
2023-08-16 11:14:13 +02:00
Francesco Lannutti
0afda7f89c
Implement spMatrix_CSC_dump()
2023-08-16 11:14:13 +02:00
Francesco Lannutti
634156844b
Use spDeterminant_KLU
2023-08-16 11:14:12 +02:00
Francesco Lannutti
4d37c32a14
Implemented spDeterminant_KLU
2023-08-16 11:14:12 +02:00
Francesco Lannutti
4a32cfe362
Fixed SMPcZeroCol
2023-08-16 11:14:12 +02:00
Francesco Lannutti
4489f2b0b2
klu_extract_Udiag, Fixed the PZ Analysis for KLU - Added a missing KLU node in VSRC which exists only in case of PZ Analysis - Other fixes
2023-08-16 11:14:12 +02:00
Francesco Lannutti
0146a6667c
other fixes
2023-08-16 11:14:12 +02:00
Francesco Lannutti
f25b22e56a
Fixed a bug in SMPpreOrder and let KLU digest an empty matrix
2023-08-16 11:14:12 +02:00
Francesco Lannutti
dddaab6637
Implemented the Solve Transpose for KLU
2023-08-16 11:14:11 +02:00
Francesco Lannutti
6aece7faf7
Fixed the SMPcSolve routine for KLU
2023-08-16 11:14:11 +02:00
Francesco Lannutti
4a7dd29867
Enhanced KLU to avoid loosing computation cycles. The speedup is quite low, though: ~1%
2023-08-16 11:14:11 +02:00
Francesco Lannutti
405f206ba6
Fixed the KLU package to let it correctly compile in libngspice.so
2023-08-16 11:14:10 +02:00
Francesco Lannutti
ce18d6846f
KLU Integration from scratch #4 , changed files
2023-08-16 11:14:10 +02:00
Francesco Lannutti
cf5991ae81
KLU Integration from scratch #1 , new files
2023-08-16 11:14:10 +02:00
Francesco Lannutti
60b4c3cda7
move include files to src/include/ngspice/
2023-08-16 11:14:10 +02:00
Francesco Lannutti
23da61873d
fix include file directories (will be in src/include/ngspice/)
2023-08-16 11:14:09 +02:00
rlar
71e403652f
delete-trailing-whitespace
2023-08-16 11:14:09 +02:00
Francesco Lannutti
9dad1ae0b7
incorporate KLU source files from SuiteSparse-3.7.0.tar.gz
2023-08-16 11:14:09 +02:00
rlar
e5c40de9e7
SuiteSparse.org, recipe for incorporation of SuiteSparse-3.7.0.tar.gz
2023-08-16 11:14:09 +02:00
dwarning
794a37339a
ifft: in case input array is smaller then output array - fill in the rest with zero to prevent uninitialzed plot variables
2023-07-15 11:32:11 +02:00
dwarning
42b803e5c2
same array size for in- and output in inverse fft function from fftw3
2023-07-15 11:31:59 +02:00
Holger Vogt
0ee5e3f32a
Add a control language function cvector, to create a complex vector.
...
Let vec1 = cvector(50)
will generate a complex vector, with the real part values
increasing from 0 to 49, the imaginary values are set to 0.
Useful in ac loops to store result data.
2023-07-15 11:17:10 +02:00
dwarning
a4f6a777c0
few cleanings to prevent compiler warnings
2023-05-27 10:41:21 +02:00
Holger Vogt
3632a6b4ae
We need to translate from degree to rad
2023-03-18 22:32:25 +01:00
Holger Vogt
2a6052517b
Fix prvious commit: allow access to all vector elements of cc
2023-03-18 22:32:19 +01:00
Holger Vogt
68156fa62c
Complex number handling other than MSVC
2023-03-18 22:32:07 +01:00
Holger Vogt
71571a1432
Add function atanh to .control section
2023-03-18 22:31:48 +01:00
Holger Vogt
da77fad749
In the very rare case of pPivot being NULL, prevent a crsh
...
by reordering the matrix.
2023-03-18 14:33:25 +01:00
dwarning
45e6d319f3
partly revert last commit: only real input vector get special scaling for dc component
2023-03-18 14:31:31 +01:00
dwarning
bccaee4821
correct fft dc scaling bug #620
2023-03-18 14:31:24 +01:00