prop_fit_zernikes and prop_zernikes not working in Python 3.13.2
They changed the behavior of the exec() function in Python 3.13. Variables created using it were visible within the calling routine's space, but now a local dict has to be passed. Made fixes to prop_fit_zernikes, prop_noll_zernikes, prop_zernikes. Posted on Sourceforge as PROPER v3.3.3 for Python.
cylindrical lens kind request
Requires major changes, beyond resources available.
Adding a cylindical lens to PROPER would require signficant changes to handle different samplings in each axis, along with separate propagations for each orthogonal component (needed because the focus is at different distances along the optical axis for such a lens). Given that this has not be requested by anyone else, and it is not needed for my own work, I cannot devote resources to make such a major rewrite. Sorry.
In Python, dm_prop works the same whether FIT=TRUE or FIT=FALSE
The flag options have been fixed in v3.1.5.
In Python, dm_prop works the same whether FIT=TRUE or FIT=FALSE
Okay. I misread your message. Looking through the codes, the line should read: if ( "FIT" in kwargs and kwargs["FIT"] ): Such checks are handled correctly nearly everywhere else. I found only a couple more such errors and will have my Python programmer fix them next week. In the meantime, unless a flag is True, don't explicitly provide it. John
In Python, dm_prop works the same whether FIT=TRUE or FIT=FALSE
Hi Marcos, The code is operating correctly. If I insert messages into the prop_dm.py code like so: if "FIT" in kwargs: print( "fitting DM" ) x = (np.arange(5, dtype = np.float64) - 2) * dx_dm (blah, blah, blah) (dm_z_commanded, dms) = proper.prop_fit_dm(dm_z, inf_kernel else: print( "NOT fitting DM" ) dm_z_commanded = dm_z then I get the following results when executing the following commands using python3: proper.prop_dm( wfo, dm, 23.5, 23.5, 0.001 ) NOT fitting DM proper.prop_dm( wfo, dm, 23.5,...
Hi Gilles, Thanks for pointing out the bug. It has been fixed and new versions of the Python code have been uploaded to Sourceforge. Regards, John
Sorry for the delay - I had to get my Python person to figure this out. Here's what he said. Let me know if this works. Yes, I was able to create a conda environment for python 2.7 PROPER and run examples. Few points to note: Conda does not work seamlessly with pip installer. One has to install supporting packages using conda (if they are available) rather than pip and only install packages using pip that are not available in conda. Pyfits is deprecated and FITS write/read module in astropy should...
Matlab hex wavefront numbering bug
Matlab hex wavefront numbering bug
Hi Yinzi, Thanks for reporting this. It appears that this bug has existed since PROPER was originally released. I have uploaded fixed IDL and Matlab versions and will soon upload the Python one. Regards, John