ddx and analog_expressions

From: Geoffrey.Coram <Geoffrey.Coram@analog.com>
Date: Wed May 12 2004 - 09:16:57 PDT

Hi -
I had written the syntax for ddx as
   ddx(expression, ...)

but I'm trying to decide if that ought to be
an analog_expression.

If I have
  I(a,b) <+ IS * (limexp(V(a,c)/$vt)-1);
I'd like to write
  gm = ddx(IS * (limexp(V(a,c)/$vt)-1), V(a));

but this won't work in the proposed syntax because
the inside is an analog_expression.

If I write
  parameter real IS = 1e-14;
  real idio;
  idio = IS * (limexp(V(a,c)/$vt)-1);
  I(a,c) <+ idio;
  gm = ddx(idio, V(a));

It looks to me that "idio" (a real_identifier)
is a primary and thus an expression (a plain
expression as well as an analog_expression), so
the proposed syntax is fine.

Now, what if I have
   real q, ic;
   q = [some function of V(t,b)];
   ic = ddt(q);
   I(t,b) <+ ic;
   ceff = ddx(ic,V(t));

Really, the last statement should be
   ceff = ddx(q,V(t));

so what does ddx(ic,V(t)) give me?

-Geoffrey
Received on Wed May 12 09:17:12 2004

This archive was generated by hypermail 2.1.8 : Wed May 12 2004 - 09:17:21 PDT