Jeff Young
999cd8cd11
Simulator fixes.
...
1) Don't read libraries multiple times
2) VDMOS default is nchan if not specified
3) In the absence of a workbook default to LTSpice compatability
4) Don't attempt to write out a model line for a subckt; it never has
a baseModel
2023-04-24 13:55:34 +01:00
Jeff Young
fd8b281731
Formatting.
2023-04-24 13:55:15 +01:00
Jeff Young
d8481b4528
More robust file reading for simulator files.
2023-04-24 13:53:22 +01:00
Jeff Young
204549f55b
Fix merge error.
2023-04-16 23:22:49 +01:00
Jeff Young
1707436cad
Retire the lib-tree scoring algorithm.
...
It appears to cause more confusion than help.
Fixes https://gitlab.com/kicad/code/kicad/issues/13905
(cherry picked from commit d01c023d5a
)
2023-04-15 00:09:34 +01:00
jean-pierre charras
ea95d8604a
Ensure we do not use a non existing pin in SIM_MODEL::MigrateSimModel()
...
From master branch
Fixes #14522
https://gitlab.com/kicad/code/kicad/issues/14522
2023-04-12 09:41:07 +02:00
Jeff Young
7931f315b1
Manually cherry-pick some fixes back from master.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14424
2023-03-26 11:00:23 +01:00
Jeff Young
d4a312d6cb
Move separation of model name from params earlier in the process.
...
We need just the model name when we look for a match in the library file.
(cherry picked from commit 60aadfee40
)
2023-03-25 15:37:57 +00:00
Jon Evans
b0b9e66fad
Move to requiring explicit action to save project settings
...
(cherry picked from commit 610e787ada
)
Fixes https://gitlab.com/kicad/code/kicad/issues/14414
2023-03-24 11:49:50 -07:00
Jeff Young
7026cfe140
Split name from additional params only when model is a library reference.
...
(cherry picked from commit b8cf7cc080
)
2023-03-22 14:12:42 +00:00
Jeff Young
b7cd1dd764
Handle single-token flag parameters.
...
Also fixes a bug where all VDMOS instance parameters weren't marked as
instance parameters.
Also fixes a bug where VDMOS thermal models weren't supported (they
have two extra pins: Tj and Tcase).
(cherry picked from commit 5bda3b99f9
)
2023-03-22 14:12:42 +00:00
Jeff Young
09bb8fc4f4
Don't include non-overridden parameters in Sim.Params.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14369
(cherry picked from commit 9dc16eb014
)
2023-03-22 14:12:42 +00:00
Jeff Young
1614dc975a
Separate legacy model name from parameters.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13988
(cherry picked from commit 39a801423e
)
2023-03-21 13:31:20 +00:00
Jeff Young
a713ee852c
Ignore extraneous LTSpice parameters for VDMOS models.
...
Also adds special case handling of VDMOS syntax to allow parens (or extra
spaces, linebreaks, etc.) between "VDMOS" and "NCHAN"/"PCHAN".
Fixes https://gitlab.com/kicad/code/kicad/issues/14299
2023-03-20 16:16:13 +00:00
Jeff Young
1dc9583e06
Don't attempt to load unknown plot types.
2023-03-20 10:24:22 +00:00
Jeff Young
3afe02ac1f
Make sure legend reflects gain/phase for AC small signal analyses.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14301
(cherry picked from commit ec6d709929
)
2023-03-20 10:24:22 +00:00
Jeff Young
fb02e55424
Don't pass a REPORTER when checking for overrides.
...
It fails the unit tests (as it generates a message whenever no override
is found).
2023-03-17 15:30:24 +00:00
Jeff Young
70e86434ef
Manual cherry-pick of much of 6d296038f3
2023-03-17 14:12:58 +00:00
Jeff Young
64641c28ef
Handle underscore in parameter names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14308
(cherry picked from commit 222cd4d009
)
2023-03-16 23:51:56 +00:00
Jeff Young
c5a69f073c
Added PSPICE/LTSPICE JFET model parameters.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12425
(cherry picked from commit 3bc5e3dd8a
)
2023-03-12 21:05:06 +00:00
Wayne Stambaugh
9e1fd16329
Coverity fixes and code cleaning.
...
(cherry picked from commit 4e99812145
)
2023-03-10 11:21:19 -05:00
aris-kimi
f1e060902b
Simulator: Fix RLGC c unit
...
(Cherry-picked from db2780090c
)
2023-03-06 15:59:54 +00:00
aris-kimi
05ab9e3836
Simulator: Fix diode ibv unit
...
(Cherry-picked from 5b43dc4e7b
)
2023-03-06 14:20:33 +00:00
Jeff Young
9b61b350fe
Don't commit changes on paint events or updateUI events.
...
Also use std::numeric_limits::epsilon for comparing doubles.
Fixes https://gitlab.com/kicad/code/kicad/issues/13851
(cherry picked from commit d714ff8549
)
2023-03-04 00:10:39 +00:00
Jeff Young
94ec6cc362
Convert inline models in Sim.Params fields to SPICE syntax.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14157
(cherry picked from commit 14f1f3ec79
)
2023-03-03 18:18:32 +00:00
Jeff Young
c216ed2d1f
Make SME prop-grid hack Mac-only.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13852
(cherry picked from commit dcba555d44
)
2023-03-02 14:59:57 +00:00
Jeff Young
3a95826b42
Move only-write-model-if-it-contains-overrides up to base class.
...
It's necessary to keep us from writing out model lines for included
models and fall-backs of included models.
(cherry picked from commit f5edcf82f2
)
2023-03-01 13:44:26 +00:00
aris-kimi
ff6f658f9d
Simulator: Fix some cases with initial conditions
...
(cherry picked from commit 4a761179d0
)
2023-02-28 21:31:45 +00:00
jean-pierre charras
764ddd4773
Fix compil warnings.
2023-02-28 18:00:22 +01:00
Graham Keeth
f7d9f1f69d
Fix SPICE pins for BJTs and MESFETs
...
- MESFETs don't have a substrate/bulk pin
- BJTs have a substrate pin, and HICUM/VBIC have TJ
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13848
(cherry picked from commit 6af3dadaee
)
2023-02-28 14:21:12 +00:00
Jeff Young
42efd2d005
Make substrate and thermal junction nodes optional.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14083
(cherry picked from commit 1fdc81e68d
)
2023-02-28 14:21:12 +00:00
Jeff Young
d32e13daee
Clear model name when switching to internal model.
...
Also fixes a bug to ensure that a modelLine gets written when using
an internal model.
Fixes https://gitlab.com/kicad/code/kicad/issues/14083
(cherry picked from commit 2e5bf0210a
)
2023-02-28 14:21:12 +00:00
Jeff Young
d028b381fa
Make SIM_MODEL_SPICE_FALLBACK act more like the model it's a fallback for.
...
In particular, install/show the parameters, and keep the existing name
field.
Fixes https://gitlab.com/kicad/code/kicad/issues/14102
(cherry picked from commit 281fde71b9
)
2023-02-28 14:21:11 +00:00
Fabien Corona
46c8985661
sim - switches: open <-> closed in description
2023-02-27 19:04:48 +01:00
Jeff Young
b3c6f559b2
Don't eval empty string.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13756
(cherry picked from commit 79f13ea9c7
)
2023-02-26 23:14:40 +00:00
Jeff Young
4aba595b2b
Add second instance of "don't mess up user formatting" fix.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13989
(cherry picked from commit 4b427b2d0c
)
2023-02-26 22:00:20 +00:00
Jeff Young
f604bcb557
Only write included models if they have overridden parameters.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13953
(cherry picked from commit 5a12e5ee76
)
2023-02-24 20:47:22 +00:00
Jeff Young
eccf9eb4a4
Change strategy for committing values from SIM_MODEL propGrid.
...
Note that the PCB editor's propGrid doesn't seem to need this workaround,
but I haven't yet figured out what's different between it and the sim model
propGrid.
Fixes https://gitlab.com/kicad/code/kicad/issues/13852
(cherry picked from commit c188318174
)
2023-02-24 20:47:22 +00:00
Jeff Young
39403fa885
Cleanup some dead code, and add a potentially needed fix for non-Mac.
...
(The Mac bug is fixed in 4e5b1da81fce7cd9ffedaec878ed07bfcfff4fe2 in
our wxWidgets fork.)
(cherry picked from commit 200a06a677
)
2023-02-24 20:47:22 +00:00
Jeff Young
5e7cc30564
Don't mess up user formatting if eval'ing didn't actually change value.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13989
(cherry picked from commit 8059edff0e
)
2023-02-24 20:47:22 +00:00
Jeff Young
f942b4c657
Don't allow extra text in Sim.* fields.
...
(In particular, the field name.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13996
(cherry picked from commit 71df3f9edb
)
2023-02-24 20:47:22 +00:00
Jeff Young
f5aeb5b068
More dead code removal and a bit of formatting and const& for strings.
...
(cherry picked from commit a126d961d8
)
2023-02-24 20:47:22 +00:00
Jeff Young
7f6cb9b07b
Remove most of SIM_VALUE in favour of good old wxString.
...
This allows us to save the user's intent, including units, formatting,
and crucially variable references.
(cherry picked from commit 68fe146861
)
2023-02-24 20:47:22 +00:00
Jeff Young
db3657d411
Terminology and more dead code.
...
(cherry picked from commit 29f21cdde6
)
2023-02-24 20:47:22 +00:00
Jeff Young
38e5da724d
Remove dead and redundant code.
...
(cherry picked from commit 90adc26b73
)
2023-02-24 20:47:22 +00:00
Jeff Young
962b2d45ef
Implement default levels for JFETs, MOSFETs and MESFETs.
...
(cherry picked from commit fe2679d965
)
2023-02-22 18:04:23 +00:00
Jeff Young
7894b41277
Don't allow 0 field text size.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13987
(cherry picked from commit cb71ea872b
)
2023-02-22 18:04:23 +00:00
Jeff Young
7b992a1dc4
Correctly netlist a voltage source with both AC and DC values.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13912
(cherry picked from commit c618bb7046
)
2023-02-22 18:04:21 +00:00
Fabien Corona
17241b3543
sim - missing assignment
2023-02-20 18:15:37 +01:00
Fabien Corona
a4a859f47b
sim - Check FindParam() results before using them
2023-02-20 18:14:48 +01:00