# [Tutor] I try to convert a MATLAB program to Python...

Henri Heinonen henri.heinonen at mbnet.fi
Tue Nov 16 08:35:17 CET 2010

```These are the four (out of eight) first results I get with the MATLAB code:
----
>> nonhomog(0.2)
nonhomog: using 300 grid points.

BC1_disc_left =

-4.8436e-12

BC1_disc_right =

-1.1027e-13

BC2_disc_left =

-1.1269e-11

BC2_disc_right =

-1.8657e-13

lambda =

0.9976

V0 =

79.0637

nonhomog: using 300 grid points.

BC1_disc_left =

8.5855e-12

BC1_disc_right =

-1.4955e-13

BC2_disc_left =

-9.4851e-12

BC2_disc_right =

3.7053e-12

lambda =

0.9969

V0 =

79.0637

nonhomog: using 300 grid points.

BC1_disc_left =

-4.2669e-12

BC1_disc_right =

-3.8908e-15

BC2_disc_left =

-1.0330e-10

BC2_disc_right =

8.6403e-13

lambda =

0.5464

V0 =

79.0606

nonhomog: using 300 grid points.

BC1_disc_left =

2.9082e-12

BC1_disc_right =

-5.5045e-15

BC2_disc_left =

-8.5076e-13

BC2_disc_right =

3.7712e-13

lambda =

-54.3440

V0 =

78.6880
----

These are the four results I get with my Python code:
----
python nonhomog.py
kappa =  15.7079632679
alpha =  0
nu =  0.2
nx_ =  300
BC1_disc_left =  (nan+nanj)
BC1_disc_right =  (nan+nanj)
BC2_disc_left =  (nan+nanj)
BC2_disc_right =  (nan+nanj)
lambda =  -0.774244159818
nonhomog.py:81: DeprecationWarning: integer argument expected, got float
xx = range(-kappa, h, kappa+1)
kappa =  15.7079632679
alpha =  5.80527619798e-06
nu =  0.2
nx_ =  300
BC1_disc_left =  (nan+nanj)
BC1_disc_right =  (nan+nanj)
BC2_disc_left =  (nan+nanj)
BC2_disc_right =  (nan+nanj)
lambda =  -0.774244180107
kappa =  15.7079632679
alpha =  0.000580527619798
nu =  0.2
nx_ =  300
BC1_disc_left =  (nan+nanj)
BC1_disc_right =  (nan+nanj)
BC2_disc_left =  (nan+nanj)
BC2_disc_right =  (nan+nanj)
lambda =  -0.774246188696
kappa =  15.7079632679
alpha =  0.0580527619798
nu =  0.2
nx_ =  300
BC1_disc_left =  (nan+nanj)
BC1_disc_right =  (nan+nanj)
BC2_disc_left =  (nan+nanj)
BC2_disc_right =  (nan+nanj)
lambda =  -0.774447043715
----

Some questions:

1. For example, the sign of the lambdas are wrong not to mention that the
values are not even near the corresponding MATLAB values. How to fix these?

2. Also, I get those annoying (nan+nanj) messages for BC1s and BC2s. What's
wrong?

3. There is also this error message: "nonhomog.py:81: DeprecationWarning:
integer argument expected, got float
xx = range(-kappa, h, kappa+1)". How should I fix that?

Thanks!

Henri.

2010/11/16 Henri Heinonen <henri.heinonen at mbnet.fi>

> Hi!
>
> Can you, please, try to help me with Python? I try to convert a MATLAB
> program to Python.
>
> Here are the MATLAB codes:
> http://pastebin.com/MbPZ8Z7X
> http://pastebin.com/dDnF5AF2
>
> Here is my Python code:
> http://pastebin.com/jCPdLHx7
>
> What is wrong with my Python code? The program doesn't produce quite the
> same lambdas as the MATLAB program does.
>
> Thanks for all the help!
>
> Henri.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20101116/2a9b1b36/attachment.html>
```