algorithmic modeling for Rhino
I know that the question was already asked but I still struggle with the installation of numpy / scipy on ironpython.
So if anybody have a tips to make it works it would be nice. :)
A tried a lot already but I cannot figure out the problem on step 4. I did every steps describe there :https://stevebaer.wordpress.com/2011/06/27/numpy-and-scipy-in-rhino... and also there : https://store.enthought.com/repo/.iron/ (You should have an account to connect there.)
So I get an error of IO I think, in step 4. It is describe here : (>>> http://community.sharpdevelop.net/forums/t/16072.aspx )
Download and install IronPython 2.7, this will require .NET v4.0.
Add the install location on the path, this is usually:
C:\Program File\IronPython 2.7
But on 64-bit Windows systems it is:
C:\Program File (x86)\IronPython 2.7
As a check, open a Windows command prompt and go to a directory (which is not the above) and type:
> ipy -V PythonContext 126.96.36.199 on .NET 4.0.30319.225
Bootstrap ironpkg, which is a package install manager for binary (egg based) Python packages. Download ironpkg-1.0.0.py and type:
> ipy ironpkg-1.0.0.py --install
Now the ironpkg command should be available:
> ironpkg -h (some useful help text is displayed here)
Installing scipy is now easy:
> ironpkg scipy
Any tips would be nice. Thank's.
Oh wow, this could be a big deal. Maybe I'll warm up to .NET, after all, which up to now just seemed like some inner black box that didn't concern me at the Python level.
Huge thanks for taking notice of the dilemma.
I installed it, but as I said in an earlier port, a lot of modules are missing or do not work. I contacted Enthought about it, and this is what they told me:
As you probably know, Microsoft stopped developing or supporting IronPython some years ago, and instead supports standard CPython (such as Canopy or Anaconda) in Visual Studio. Development of the numpy and scipy libraries for IronPython stopped in early 2011. Enthought makes these builds of numpy and scipy for IronPython available for download as a public service, but can provide no support for them. Any support that exists is from the legacy IronPython user community.
Regarding the size difference: the numpy and scipy eggs in Canopy's current distribution are respectively 3.2MB and 11.6 MB, vs 2.3 and 8.8 MB respectively in the IronPython download.
AFAIK, this relatively small difference in size is due to (in no particular order):
1) The packages have grown since 2011.
2) The IronPython versions can rely on some .NET runtime functionality which is not available to the CPython versions, so requires more code in CPython.
3) Equivalent code often compiles more compactly in .NET than in CPython.
4) Not all of scipy was implemented for IronPython.
Hope this helps. Good luck with your project.
So to sum it all up, trying to use Numpy, and to a much larger extent Scipy, is a dead-end since you are not going to get all the goodies like linear algebra solvers and such. Giulio's post might be a better path to follow.
I found very good .Net numerical engine here, http://accord-framework.net.
It looks very strong and covers most mathematical things, even Machine Learning. I think, as Jesus pointed we'd better use .net components instead of numpy or scipy for performance and code maintenance.
Great thread! Thanks for sharing everyone.
Olivia at http://www.ampronix.com/
Hey together. Some time went by but I have to refresh the discussion. I followed all explanations but cant´t get numpy to work with rhino. Everything seems to work but the installation of the eggs doesn´t. I followed the steps of Tess but when I do step 3 theres the Error "No module named egginst". So I don´t know what to do. I have everything located in my Download folder.
Hope you can help me! I need a simple explanation. I have no idea of this hole stuff.
I'm trying to develop a new GH Python interface which could run all the existing Python modules from grasshopper (work on progress)
Very nice, Mahmoud!
Maybe, GH_CPython :D
Also, this looks like an awesome project Mahmoud!
Calling it that way would work great