¿ªÔÆÌåÓý

Date

Re: The road to LTspice

 

I would think HSPICE should be mentioned. (That is, unless you want to
trace only LTspice's ancestry.) In the semiconductor business community, I
believe it is one of the more significant and most used versions of SPICE.
Also one of the most expensive.

Regarding LTspice, I am not entirely certain whether it is considered in
the SPICE family. It's my understanding that it differs greatly from
Berkeley SPICE, and is not derived from either SPICE 2 or SPICE 3. Now
whether that means that so much of the Berkeley code was re-written or
replaced that it's a whole new program right from the start ... or if it
means Mike started from scratch but then borrowed from SPICE, and made it
extremely compatible with SPICE ... I can't say. I have seen it stated
that it is not an evolutionary step from SPICE, the way PSPICE was from
SPICE 2.

Andy


Re: Help! How do I do find maximum signal easily!

 


Thanks! a lot of work, but it will get me by for awhile.
I'm puzzled, because this seems like exactly what you were looking for.
Isn't it?

I don't think it could be much simpler.

You can probably avoid the "dB" by setting up your AC plot with a linear Y
axis.

Andy


Re: different resistance for .tran and .ac not working any more?

 


Gig is not correct, it should be just G.
But Gig should work too. It's always been the case that excess characters
after the multiplier are ignored.

This shouldn't be a reason why his example doesn't seem to work.

Andy


Re: Help! How do I do find maximum signal easily!

 

Thanks! a lot of work, but it will get me by for awhile.


--- analogspiceman@... wrote:

From: "analogspiceman" <analogspiceman@...>
To: LTspice@...
Subject: [LTspice] Re: Help! How do I do find maximum signal easily!
Date: Fri, 12 Jul 2013 15:45:58 -0000

--- In LTspice@..., Macy <macy@...> wrote:

Is there a way to supply a table of frequencies and have the ac
analysis specifically done at those points, yet plot the results
too? At least an output table would help.

like
f(1)=20.5956780Hz
f(2)=33.4585746Hz

and that would generate a table of
V(out) at f(1)
V(out) at f(2)
The .ac command allows a "list" option whereby you must supply a
list of each frequency point to be simulated. Per your example:

.ac list 20.5956780 33.4585746

After you run the simulation and are within the Waveform Viewer
(you have given it the focus), you may use the File dropdown menu
to Export the table (it will have a .txt extension and be placed
in the same folder into which you have save your schematic).

It should contain something like this:

Freq. V(1)
2.05956780000000e+001 (-7.21248629001950e-002dB,-7.37346750913666e+000¡ã)
3.34585746000000e+001 (-1.87816714864027e-001dB,-1.18722037615655e+001¡ã)


The road to LTspice

 

I am attempting to create a historical timeline of the history
of SPICE as it has grown in function, use and popularity in the
engineering community. This is to be in bullet point format and
I intended to include only those forms of SPICE that were most
ubiquitous in their time, i.e. the various Berkeley SPICEs, then
PSpice, and, of course, LTspice.

What I've got so far I will put at the end of this message. It has
errors and is not complete, especially the part about LTspice. I
am looking for corrections and input as to the major additions and
events regarding LTspice. (What additions over the years seem
especially noteworthy to you?).

I will fill in the historical dates from the Change Log and from
the group message archive. When the history is complete, I will
add it to group files as a PDF and also add it as a new section
over at the LTwiki (so there is no need to copy it just yet).
________________________________________________

THE HISTORY OF SPICE

1969 beginnings of CANCER (Computer Analysis of Nonlinear Circuits, Excluding Radiation)
? CANCER began as a derivative of a program that was the class project of a series of courses taught by Ron Rohrer with the approval and encouragement of Professor Donald O. Pederson
? Larry Nagel wrote the netlist parser and the analysis core and was student group leader
? Lynn Weber developed a noise analysis feature that utilized adjoint network techniques
? Bob Berry wrote the sparse matrix LU decomposition package
? CANCER project's key features:
. o Was the first circuit simulator to utilize sparse matrix techniques
. o Used Newton-Raphson iteration method heuristically modified for bipolar circuits
. o Utilized implicit integration to accommodate widely spread time constants of an IC
. o Integrated DC operating point analysis, small-signal AC analysis and transient analysis
? Project presented by Ron Rohrer at the 1971 ISSCC , but the code was considered partially proprietary and was never publicly released

1971 SPICE 1 (Simulation Program with IC Emphasis) direct outgrowth of CANCER
? Ron Rohrer leaves UC Berkeley and further development of CANCER (renamed SPICE) became Larry Nagel's Masters project with Don Pederson taking over as faculty advisor
? KEY EVENT: Don Pederson insisted that all further work be releasable to the public domain
? SPICE 1 release's key features:
. o Models for bipolar transistors were changed to Gummel-Poon equations
. o JFET and Shichman-Hodges MOSFET devices added (for Dave Hodges' MOSFET design class)
. o Fixed time step and strict Nodal Analysis (true voltage sources and inductors not supported)
. o DC, AC, Transient, Noise, and Sensitivity Analyses in the same program
. o Built-in models for diodes, bipolar transistors, MOSFETs, and JFETs
? Was about 6k lines of FORTRAN at first informal limited public release in late 1971
? Official public release was May 1972 with first formal paper presented by Don Pederson at the 16th Midwest Symposium on Circuit Theory, April 12, 1973
? SPICE 1 becomes industry standard simulation tool running on large mainframe computers

1972 SPICE 2 begins
? First version of SPICE 2 was Larry Nagel's Ph.D. project under Don Pederson
? Modified Nodal Analysis (MNA) added, enabling voltage sources and inductors for the first time
? Ellis Cohen added dynamic memory allocation
? Adjustable time-step control added, greatly speeding most simulations
? MOSFET and bipolar models overhauled and extended
? Was about 8k lines of FORTRAN when first released to the public domain in late 1974
? Larry Nagel departs for Bell Labs and his thesis becomes the SPICE 2 Users Guide

1975 journey to SPICE 2G6 (the pinnacle FORTRAN version)
? Ellis Cohen becomes primary contributor with later help from Andrei Vladimirescu
? First of a series of public revision releases after Nagel's version 2B begin in 1978
? Along the way, sub circuits, poly sources and transmission lines are added
? Version 2G6 ends up implementing three MOSFET models:
. o MOS 1 is a simplistic model described purely by ideal square-law I-V characteristics
. o MOS 2 is an analytical model, MOS 3 is a semi-empirical model and both include second-order effects such as channel length modulation, sub threshold conduction, scattering limited velocity saturation, small-size effects, and charge-controlled capacitances
? 2G6 released to public domain in April 1983 (and is still available today from UC Berkeley)
? Many commercial simulators today are based on SPICE 2G6

1983 SPICE 3 begins
? Tom Quarles begins work, writing first version in RATFOR, a C-like preprocessor for FORTRAN
? Was fully converted to C in 1985 with first early versions released in March of that year
? Added models: MESFET, lossy transmission line and non-ideal switch
? Arbitrary behavioral voltage and current sources added
? Includes polynomial capacitors, inductors and voltage controlled sources
? Allowed the use of alphabetical node labels rather than only numbers
? Features a graphical interface for viewing results
? New version eliminates many convergence problems
? Added noise, distortion and pole-zero analysis, temperature sweeping, Monte Carlo and Fourier analysis
? Not fully compatible with SPICE 2G6
? Was about 135,000 lines of C code at first public release in 1989
? Final version at Berkeley, SPICE 3F5, released to public in 1993
? XSPICE was developed at Georgia Tech as an extension to the SPICE language to allow behavioral modeling of components
. o Drastically improve the speeds of mixed-mode and digital simulations

1984 PSpice (micro Processor SPICE)
? Developed by MicroSim to run on the first IBM PC, initially released in January 1984
? Was the first commercial offspring of Berkeley SPICE to run directly on the PC platform
? Was the first SPICE program to gain wide acceptance in both industry and academia
? KEY EVENT: A zero cost (but node-limited) student version is introduced in 1988 ¨C for the first time, SPICE becomes ubiquitous in the electrical engineering community
? Evolved from Berkeley SPICE 2G, but added many proprietary enhancements
? Probe, a waveform viewer module, was added when PC VGA graphics became available
? Schematics, a graphical front end, was added much later sometime in the early 1990s

1999 LTspice/SwitcherCAD III first released to public
? 1981 Linear Technology Corporation founded
? 1991 DOS SwitcherCAD available (equation based)
? 1996 &#956;Power SwitcherCAD available(simulation based)
? 2008 LTspice IV

Some possible noteworthy events/additions:

Ver 2 Jan03: graphical symbol editor hierarchical schematics
Apr04: Chan inductor, undocumented behavioral inductor revealed

Your suggestions?


Re: Help! How do I do find maximum signal easily!

 

The .ac command allows a "list" option whereby you must supply a
list of each frequency point to be simulated.
Cool! I didn't know that. The Help file did not suggest it.

Andy


Re: Help! How do I do find maximum signal easily!

 

--- In LTspice@..., Macy <macy@...> wrote:

Is there a way to supply a table of frequencies and have the ac
analysis specifically done at those points, yet plot the results
too? At least an output table would help.

like
f(1)=20.5956780Hz
f(2)=33.4585746Hz

and that would generate a table of
V(out) at f(1)
V(out) at f(2)
The .ac command allows a "list" option whereby you must supply a
list of each frequency point to be simulated. Per your example:

.ac list 20.5956780 33.4585746

After you run the simulation and are within the Waveform Viewer
(you have given it the focus), you may use the File dropdown menu
to Export the table (it will have a .txt extension and be placed
in the same folder into which you have save your schematic).

It should contain something like this:

Freq. V(1)
2.05956780000000e+001 (-7.21248629001950e-002dB,-7.37346750913666e+000¡ã)
3.34585746000000e+001 (-1.87816714864027e-001dB,-1.18722037615655e+001¡ã)


3722 Power Supply Problem

 

Hello,

I am trying to make a power supply using a 3722-1.

The input is 18 to 30Vdc and output is [email protected].

The issue that I am having is that at low input voltages like 24V or 18V the power supply is not able to reach full output level. At 30V the output level is reached but regulation is poor.

Please help:

I have the schematic posted here:


Re: different resistance for .tran and .ac not working any more?

 

--- In LTspice@..., "haubmi1" <Michael.Haub@...> wrote:

Hello,

there was a feature to have a resistor with different value for .ac and .tran .

e.g.:

R 1 2 1u AC 1Gig

That was a resistor that was 1uOhm in .TRAN and 1GOhm in .AC.
This does not work anymore?

That was a very handy feature to switch in a loop gain probe in .AC which is not fisible in .TRAN .

Was this feature removed by accident or is that intended?
Did the syntax change?
Or is it my error?

michael

Hello Michael,

It's still working. Trust me.
Please show me your example and I will repair your schematic.

Best regards,
Helmut


Re: different resistance for .tran and .ac not working any more?

John Woodgate
 

In message <krp6rg+oo7k@...>, dated Fri, 12 Jul 2013, haubmi1 <Michael.Haub@...> writes:

there was a feature to have a resistor with different value for .ac and .tran .

e.g.:

R 1 2 1u AC 1Gig

That was a resistor that was 1uOhm in .TRAN and 1GOhm in .AC. This does not work anymore?
Gig is not correct, it should be just G. The only reason for 'meg' is the literal clash between 'megohm' and 'milliohm', LTspice being case- insensitive.
--
OOO - Own Opinions Only. See www.jmwa.demon.co.uk
Why is the stapler always empty just when you want it?

John Woodgate, J M Woodgate and Associates, Rayleigh, Essex UK


Re: arbitrary solar cell model

 

--- In LTspice@..., "qrx3" <fredh@...> wrote:

I had a chance to look at this a bit more closely, and I do
think LTspice is having a problem with this circuit that it
should not have.
There is no problem with LTspice. It is faithfully calculating
the original poster's extremely ill formed diode equations to
the limits of the calculation platform's numerical dynamic range.
The trouble arises from taking the ratio of two exponential
expressions that both may grow to very large values. This can
lead to numerical clipping, which LTspice handles well without
crashing, but the clipped value causes the ill formed equation
to have two solutions, the particular one found depending on
the direction of approach.

Latching onto the clipped solution can be avoided either by turning
the input source, V1, upside down so that the approach is from the
favorable direction, or by limiting the expression for BIdiode to
only positive values by wrapping its expression within a uramp()
function (or some other suitable limiter).

It is always best to use the built in devices whenever possible
because their internal expressions will always have be manipulated
to be as well formed as possible.


different resistance for .tran and .ac not working any more?

 

Hello,

there was a feature to have a resistor with different value for .ac and .tran .

e.g.:

R 1 2 1u AC 1Gig

That was a resistor that was 1uOhm in .TRAN and 1GOhm in .AC.
This does not work anymore?

That was a very handy feature to switch in a loop gain probe in .AC which is not fisible in .TRAN .

Was this feature removed by accident or is that intended?
Did the syntax change?
Or is it my error?

michael


Re: Spice Modelle von Infineon laufen nicht in LTSPICE

 

kalle_race wrote:

Ich bin noch relativ neu in LTSPICE unterwegs und brauche Hilfe. ...
Sorry, but this group's language is English, as it says on the group's
weboage. (Even though one of the moderator's native language is not
English, but he reminds people to use English.) It is appreciated if
you use English if you can.

Google translation of Kalle's question:

I'm still relatively new to LTSPICE go and need help. I will test the latest IGBTs from Infineon with LTSpice.
As I have told my colleagues, the problem with the Libs Infineon is known, but no one has a solution ...
There are the following LIB: IXX_N60H3_L2.lib
I have to type "IKW50N60H3_L2" and used the Simulatin has stopped after a few microseconds ...
Are there any known causes of it may be due to the circuit? I can still post the * asc file ...
I would be interested in a quick solution.

Thank You Kalle
If you are having a "time step too small" error, that has been
happening in SPICE for 40 years.

There are many things that can cause that error, and no one way to fix
it. If that happened to you, I suggest checking this group's message
archive for "time step too small" or "timestep too small" and you will
find hundreds of messages and some suggested remedies.

Yes, please post your schematic (and all support files, .lib files,
etc.) to the TEMP folder, if you would like others to look at the
problem.

Regards,
Andy


Re: (Ltspice) transistor models

 

Frank Mead <wa6ujj@...> wrote:

I'm looking for transistor models for
2N6083 and 2N5591
That's three times now. I think we all know you want models for those
two transistors. No need to SPAM the group unnecessarily.
(I'll resist the urge to say. "three strikes and you're out.")

If someone has the models, they will say so. If not, you will need to
look elsewhere, or try another approach (choose a model for a similar
transistor).

Andy


Re: Help! How do I do find maximum signal easily!

 

I use
.ac dec 201 10 100k
then how do I make an output table of
V(out) at specific frequencies?
I'm sure you can have LTspice print a table from the plot window. In
the old days of SPICE, that was how you got your data: in tabular
form, without the plots. LTspice relies on the visual presentation
and did away with the default tabular data. I would check the SPICE
Error Log anyway, just in case it still puts the AC data there.
(The old SPICE command to get AC data was:
.PRINT AC VM(n004) VP(n004) IM(r6) IP(r6) VR(out) VI(out)
etc.)

is there a way to say, ask for
V(out) at freq=20.5956780Hz?
V(out) at freq=33.4585746Hz
The good news is, unlike a TRANsient analysis, an AC analysis actually
does a pre-determined set of frequencies. Transient analysis depends
on being able to vary the step size dynamically, so you never get
uniform time steps. Not so with AC analysis. The frequency steps are
deterministic and you know in advance exactly what frequencies you
will get.

Unfortunately, you have limited capability to ask for specific
frequencies. As far as I know you can only specify a frequency range;
not a table of frequencies. (Perhaps that could be suggested to Mike
as a future enhancement to LTspice.) You get what you get, and you
need to interpolate if you want data in between. (MS-Excel or a math
program comes in handy here.)

On the other hand, it would be tedious, but I suppose you could set
your start and stop frequencies to two of the frequencies you actually
need, such as
.AC lin 0 20.5956780 33.4585746
and repeat as necessary. I get the feeling you have a huge number of
odd frequencies, that don't fall on a nice linear or logarithmic sweep.
With a bit of programming there is probably a way to automate the
process ... generate multiple netlists, simulate, grab the data, store
it and assemble into one file.

Regards,
Andy


(Ltspice) transistor models

Frank Mead
 

I'm looking for transistor models for
2N6083 and 2N5591

thanks, Frank


Re: Help! How do I do find maximum signal easily!

 

oops, sent this before thought of this:

is there a way to supply a table of frequencies and have the ac analysis specifically done at those points, yet plot the results too? At least an output table would help.

like
f(1)=20.5956780Hz
f(2)=33.4585746Hz
.
.
.


and that would generate a table of
V(out) at f(1)
V(out) at f(2)
.
.
.

and so on.

of course need access to the table.

Is there a way to use
.ac dec 500 10 100k
and a .meas command to yield a table of values?

that at least would get me by for awhile.

--- macy@... wrote:

From: Macy <macy@...>
To: <LTspice@...>
Subject: Re: [LTspice] Help! How do I do find maximum signal easily!
Date: Fri, 12 Jul 2013 02:47:06 -0700

Andy, thanks for responding. I forgot to add after asking if this was a stupid question, whether I had worded it badly.

How about this:

I use
.ac dec 201 10 100k
then how do I make an output table of
V(out) at specific frequencies?

I can change the command line to
.ac dec 500 10 100k
which is only 2000 points, and not slow down the analysis much

is there a way to say, ask for
V(out) at freq=20.5956780Hz?
V(out) at freq=33.4585746Hz
.
.
.
and so on to make a table of these values that I could then use elsewhere?




--- Andrew.Ingraham@... wrote:

From: Andy <Andrew.Ingraham@...>
To: LTspice@...
Subject: Re: [LTspice] Help! How do I do find maximum signal easily!
Date: Thu, 11 Jul 2013 23:26:31 -0400


I can't believe no one has responded! Was this a stupid question?
Maybe not. But a complicated one. I, for one, have trouble understanding
what exactly you are asking. Sorry.

Andy


Re: Help! How do I do find maximum signal easily!

 

Andy, thanks for responding. I forgot to add after asking if this was a stupid question, whether I had worded it badly.

How about this:

I use
.ac dec 201 10 100k
then how do I make an output table of
V(out) at specific frequencies?

I can change the command line to
.ac dec 500 10 100k
which is only 2000 points, and not slow down the analysis much

is there a way to say, ask for
V(out) at freq=20.5956780Hz?
V(out) at freq=33.4585746Hz
.
.
.
and so on to make a table of these values that I could then use elsewhere?




--- Andrew.Ingraham@... wrote:

From: Andy <Andrew.Ingraham@...>
To: LTspice@...
Subject: Re: [LTspice] Help! How do I do find maximum signal easily!
Date: Thu, 11 Jul 2013 23:26:31 -0400


I can't believe no one has responded! Was this a stupid question?
Maybe not. But a complicated one. I, for one, have trouble understanding
what exactly you are asking. Sorry.

Andy


Spice Modelle von Infineon laufen nicht in LTSPICE

 

Ich bin noch relativ neu in LTSPICE unterwegs und brauche Hilfe. Ich soll die neuesten IGBTs von Infineon mit LTSpice testen.
Wie mir meine Kollegen mitgeteilt haben, ist das Problem mit den Infineon Libs bekannt, aber keiner hat eine L?sung parat...
Es handelt sich um folgende LIB: IXX_N60H3_L2.lib
Ich habe den Typ "IKW50N60H3_L2" eingesetzt und die Simulatin hat nach wenigen Mikrosekunden abgebrochen...
Gibt es bekannte Ursachen der kann es an der Schaltung liegen? Ich kann ja noch das *asc File posten...
Ich w?re an einer schnellen L?sung interessiert.

Danke Gru? Kalle


Re: arbitrary solar cell model

 

Hello Hamed,

I had a chance to look at this a bit more closely, and I do think LTspice is having a problem with this circuit that it should not have. I have created a simpler version of your circuit, in schematic form, and placed it in the Temp directory. The file is "BadExp.asc." If you run it as-is the simulator fails to find a reasonable solution, voltages and currents that should be in the single-digits are in the 100ks or Megs, not where they should be. However if you change the simulation command to start the DC sweep at 0V instead of -1V it works fine. This is what I saw with your circuit too, I think having two cells in series might have caused the simulator, at some point in its search, to have a negative voltage on one of the cells, and everything blew up. It seems that LTspice tries to use the results of each iteration to start the next iteration, so once it's gone off the rails it stays there. But it really shouldn't be having any problem calculating the solution with negative input voltages.

Another way to 'fix' the problem is to force the B-source for Voc to a constant value of 0.564V. This is odd since even when the sim fails that B-source has that correct value on it, while the Bidiode source blows up.

I have sent this circuit and observation to Mike @ LT, I'll report back here when I hear from him.

--- In LTspice@..., "hamed" <l0st_l0rd@...> wrote:
the reason that I use arbitrary model not a standard diode is that I cannot control temperature change for each solar cell in diode model.
But as you've been told this is not true. You -can- control the temperature independently for each instance. What's more, the standard model will have the correct temperature dependence while you already know that your equations do not calculate Voc correctly over temperature.

--- In LTspice@..., "hamed" <l0st_l0rd@...> wrote:
Furthermore, the reason that grounds are different is that two cells are in series.
Yes, I understand why you want your model to float so you can connect them without reference to ground, but as I said you did not implement this correctly. Your formulas for Voc and Isc are referenced to the 'ref' node but then when you use those values in the subsequent calculations you are using their value relative to ground. This is wrong.

Actually I should say that I am not so good in schematics environment and I am used to netlists while I can control the nodes easier.
You should give it a try, with very little practice I think you will find that it's actually much easier to keep track of what nodes are connected where by looking at the schematic than it is by reading a large netlist. I suggest again that you might not have made the errors with the signal references if you had used a schematic instead of a netlist.

Best,
Fred

--- In LTspice@..., "qrx3" <fredh@> wrote:

Hello Hamed,

While I would also advise you to use a standard diode model instead of building your own, I may be able to shed some light on your difficulty.

Note that your derived values for ISC and VOC are generated in relation to the reference input 'ref'. However when you use these values in your formulae you are using the value relative to ground:

log((v(isc)/{i0})+1)

The same is true when you use the input voltage:

(v(inp)*iscr)/1000)

I have not tried to run your circuit, but I strongly suspect this is why it would work for a single cell where ref = ground and not for a second cell where ref != ground.

I think the most sensible fix would be to reference eisc and evoc to ground instead of ref, so you can observe the values externally if you want and not have to subtract the ref voltage. Then change "v(inp)" for example to "v(inp,ref)" where needed.

I suggest that if you had drawn this as a circuit instead of writing a netlist these issues would have been quickly apparent, but maybe not.

Cheers,
Fred

--- In LTspice@..., "hamed" <l0st_l0rd@> wrote:

Dear friends

in the file below you can find an arbitrary solar cell.
When I put two cells in parallel the answer is correct and when I put them in
series I see a distortion.
I think the problem is related to the diode behavioral model.

I will be thankful if any of you could help me.



sincerely,
Hamed