to solve differential equations in verilog-a?

Guest
Hi,
Now I'm using verilog-a to do some research on modeling kinematic
structures. We all know that ddt or idt is accepted in verilog-a, such
like the following sentences:
Pos(v)<+ddt(x);

But if Fdrv is from a source outside my module and i want to output
the x in the following differential equation, how can i?

a*x''+b*x'+cx=Fdrv

i've written these codes,
.......(includings)
module test(Fdrv,x);
inout Fdrv,x;
kinematic Fdrv,x;
kinematic v; //temp. var. to hold ddt(x)
parameter real a=xxx, b=xxx, c=xxx; // assume a,b,c are
properly defined
analog begin
Pos(v)<+ddt(x);
F(Fdrv)<+a*ddt(Pos(v))
+b*Pos(v)
+c*Pos(x);
end
endmodule

if i input x to module test, i will get proper output of Fdrv, but
if i want to input Fdrv and get the
proper value of x, which means i want to solve this differential
equation, it never works.
How can i solve this problem? thank you very very much....
 
Hi,

I'm not gonna answer your question since my Verilog-A is very average.
But there is a forum where you are most likely to find answers for
these kind of questions:
http://www.designers-guide.org/Forum/YaBB.pl?board=behavioral

Good luck !
Riad.
 
Hi,

I'm not gonna answer your question since my Verilog-A is very average.
But there is a forum where you are most likely to find answers for
these kind of questions:
http://www.designers-guide.org/Forum/YaBB.pl?board=behavioral

That said, many people in this forum are fit enough to answer you
indeed. The only thing is how to catch these very busy guys ?!

Good luck anyway !
Riad.
 

Welcome to EDABoard.com

Sponsor

Back
Top