gnucap-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnucap-devel] wave storage


From: Felix Salfelder
Subject: [Gnucap-devel] wave storage
Date: Wed, 10 Sep 2014 22:14:42 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Hi Al.

lets rearrange wave storage a bit. currently waves get lost between the
lines, for example

> build
> v1 1 0 1
> .
> store dc v(1)
> dc
> measure x=at(probe="v(1)")
> x= 1.
> tran
> measure x=at(probe="v(1)")
no match: v(1).

i would rather want something like this

> store dc v(1)
> dc
> measure x=at(probe="v(1)")
> x= 1.
> measure x=at(probe="dc:v(1)")
> x= 1.
> tran
> measure x=at(probe="dc:v(1)")
> x= 1.
> measure x=at(probe="v(1)")
no match: v(1),

where the "dc:" prefix is chosen by the dc command and the unprefixed
probe name refers to the last simulation. until here, this is
implemented, and open for ideas. please have a look at the "waves"
branch (which requires the WAVE copy constructor, which is part of the
"fixup" branch).

with the proposed changes one could set labels for simulation results,
as in

> dc v1 0 1 .1 label=dc1
> alter something
> dc v1 0 1 .1 label=dc2
> measure x=at(probe="dc1:v(1)")
> measure y=at(probe="dc2:v(1)")

but also, i'd like to abuse the modified wave storage for a calculator,
for example to implement things similar to

> wave difference=dc1:v(1)-dc2:v(1)
> plot difference

or

> measure l2 l2_norm(probe1="dc1:v(1)", probe2="dc2:v(2)")

or

> store tran v(1)
> tran 0 1 .1
> wave spec=fft(tran:v(1))
> measure peak=max(spec)

thanks
felix



reply via email to

[Prev in Thread] Current Thread [Next in Thread]