Perl to Python

Please support our Legacy and Other Languages advertiser: Programming Forums - DaniWeb Sister Site
Thread Solved

Join Date: Aug 2006
Posts: 137
Reputation: PoovenM is on a distinguished road 
Solved Threads: 11
PoovenM PoovenM is offline Offline
Junior Poster

Perl to Python

 
0
  #1
Jul 19th, 2008
Hi guys, I'm trying to make sense of some Perl code. I haven't actually programmed in Perl before but I do image the functions/methods are similar to other languages. Here's the code:
  1. function [dir, wspd] = conv_wind(uwind, vwind)
  2. usize = length(uwind);
  3. vsize = length(vwind);
  4. if(usize ~= vsize)
  5. dir = 0;
  6. wspd = 0;
  7. return
  8. end
  9.  
  10. for m = 1:usize
  11. uu = uwind(m);
  12. vv = vwind(m);
  13.  
  14. wspd(m) = sqrt(vv^2 + uu^2);
  15.  
  16. if(uu ~= 0)
  17. dir(m) = atan( abs(vv)/ abs(uu)) * (180 / 3.14159);
  18. end
  19.  
  20. if( uu == 0 && vv > 0)
  21. dir(m) = 90;
  22. elseif(uu == 0 && vv < 0)
  23. dir(m) = 270;
  24. end
  25.  
  26. if( uu < 0 && vv > 0)
  27. dir(m) = 180 - dir(m);
  28. end
  29.  
  30. if( uu < 0 && vv < 0)
  31. dir(m) = 180 + dir(m);
  32. end
  33.  
  34. if( uu > 0 && vv < 0)
  35. dir(m) = 360 - dir(m);
  36. end
  37.  
  38. dir(m) = 450.0 - dir(m);
  39.  
  40. dir(m) = dir(m) + 180;
  41.  
  42. if(dir(m) > 360)
  43. dir(m) = dir(m) - 360;
  44. end
  45. end
  46. dir = dir';
  47. wspd = wspd';
  48. end

So I've noticed just like Python, there isn't data type binding during compile time. Now since the length function is being used on the uwind and vwind I'm assuming that they are actually a 'string' type variable? And when uwind(m) (line 11) is used, it means we are indexing the string? But then the indexed letter is squared and I'm all lost. I think I'm not understanding what happens at line 11

The above code is meant to convert the u and v components of wind speed to wind speed and direction. I don't think I really need the direction but on Wikipedia the volcity of wind is given by the square root of the sum of square of the u, v and w components.... but the above code doesn't even consider the w component which apparently is the wind velocity. The algo above does a bit more than that though...

So can someone please help me understand the code above... I think if I understand what line 11 means then I'll figure the rest out.

Thanks in advanced
Reply With Quote Quick reply to this message  
Join Date: Mar 2006
Posts: 898
Reputation: KevinADC has a spectacular aura about KevinADC has a spectacular aura about 
Solved Threads: 67
KevinADC's Avatar
KevinADC KevinADC is offline Offline
Practically a Posting Shark

Re: Perl to Python

 
1
  #2
Jul 20th, 2008
the code you posted is not perl, I am not sure after reading your post if you know that or not.
Reply With Quote Quick reply to this message  
Join Date: Aug 2006
Posts: 137
Reputation: PoovenM is on a distinguished road 
Solved Threads: 11
PoovenM PoovenM is offline Offline
Junior Poster

Re: Perl to Python

 
0
  #3
Jul 20th, 2008
Oh my I did not realize that. I was told that it was Perl and that I should convert it to Python. Can someone please tell me what programming language it is? It had the file extension .m
Reply With Quote Quick reply to this message  
Join Date: Mar 2006
Posts: 898
Reputation: KevinADC has a spectacular aura about KevinADC has a spectacular aura about 
Solved Threads: 67
KevinADC's Avatar
KevinADC KevinADC is offline Offline
Practically a Posting Shark

Re: Perl to Python

 
0
  #4
Jul 20th, 2008
I'm pretty sure its matlab, of which I know nothing. So I suggest you find a matlab forum or mailing list.
Reply With Quote Quick reply to this message  
Join Date: Aug 2006
Posts: 137
Reputation: PoovenM is on a distinguished road 
Solved Threads: 11
PoovenM PoovenM is offline Offline
Junior Poster

Re: Perl to Python

 
0
  #5
Jul 21st, 2008
hehe considering the file extension I think you're you're right! I'd like the original algorithm instead of translating from one language to anther. Anyway, thank you for your assistance!
Reply With Quote Quick reply to this message  
Reply

This thread has been marked solved.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



Tag cloud for Legacy and Other Languages
About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC