TODO’s
This is a list of all the things that marked as todo in the code. Maybe you find something you would like to fix!
Todo
make it an abstract class that requires the child classes to implement the load_reactions routine. Currently this only works for the Reactions.out from ProDiMo.
Todo
Is not general; just a test at the moment.
Todo
Include reading of T-dependent rates for the csv format.
more sophisticated guessing of the file format.
Todo
does not work yet for reactions with multiple temperatures.
Todo
make tolerances configurable via config file (see punit checkModels).
Todo
it might be worth to make this smarter and compare the individual line estimates. currently the comparison fails if e.g. there are more level for one line … but the rest is fine
Todo
Applying this method can introduce some numerical errors due to
a lot of conversions and interpolations. However, these should be
<0.5%. And as this routint is used for fitting it should not be an issue.
However, the error most likely comes from calculating the gas and dust
surface densities when a ProDiMo model is read (those are not calculated
within ProDiMo). So maybe this calc_surfd()
should be made more accurate.
Todo
something very similar is done in toProDiMo. Maybe that can be merged somehow.
Todo
make a testcase and check if it works with newer versions
Todo
not really general, should be more flexible (i.e. colors)
requires better documentation to make it more general
Todo
Option for passing a norm (
matplotlib.colors.LogNorm). But that does not work nicely with contourf and colorbars … works with imshow and pcolormesh though … maybe switch to pcolormesh.
Todo
can be improved with better and smarter default values (e.g. for the colorbar)
Todo
Currently at most 10 reactions can be plotted (i.e. 10 colors are used).
Currently the axes are fixed:
y=z/randx=log(r)au.
Todo
possibility to have different oconts for the heating and cooling figures
possibility to map certain heating/cooling processes always to the same color
Todo
provide a field for label strings (arbitrary values) need to be the same size as levels
Todo
if zoomto estimate vmin/vmax from that region only
Todo
it is not possible to set the xlim (offset) coordinate in arcsec. Requires likely the conversion form pix to arcsec or vice versa
Todo
Redesign this. it is not very useful to have this dokwargs legend etc. routines copied all the time.
Todo
maybe two routines, one for lines and one for lineEstimates (sharing the commong parts)
if not FlineEstimates than it would be possible to plot all lines for which line transfer is done (would make things a bit easier)
Todo
Make this a wrapper of plot_vertical(). Just pass nmol as fieldname and
species name
Todo
implement things from plot_midplane (e.g. species)
Todo
proper documentation
Todo
find a better solution for the multiple inclinations (Problem: don’t want to read through the whole file).
Todo
check the correctness of the calculation
provide a proper reference for the procedure we follow.
allow for more flexibility
Todo
allow for different units.
Todo
dust composition is not yet read.
Todo
is not yet included in Data_ProDiMo
Todo
maybe put all the (real) observational data into one object (e.g. also the lines) e.g.DataObservations
maybe also have something like DataObservables (hold, SED, imaged, lines etc.)
Todo
is this really needed, should rather be a method within
prodimopy.read.Data_ProDiMo
Todo
This is quick and dirty. However, the problem is more in ProDiMo because it is unclear what file is for what and when (depending on parameter configuration) which file is written.
This does not deal with the two e- like in the normal mode. This is inconsistent.