This is a table of the list of TODO used in CLOUDY source files and the comments following them. Table from data in 'tabledtodo.txt'
Priority Filename Line number Comment
0conv_base.c738PvH prefers test against err/10
0h2.c2347get better relationship between cr excit of Lya rate
0hmole_step.c4331had to comment following test out - NA change to hmole caused massive prints
0hydrolevelpop.c220 this does not look right - check logic
1coolcarb.c217add neutral helium Staemmler, V., & Flower, D. R. 1991, J. Phys. B, 24, 2343
1dynamics.c1724get following to work
1h2_io.c1196add logic to deduce cs
1hmole_step.c590code below is inside loop over nd, but doesn't sum over nd, so hmi.rate_h2_allX_2_J0_grains and hmi.rate_h2_ortho_para_conserve are determined only by last grain bin, is this OK ????
1lines_lv1_k_zn.c665this does not belong here - should be where radius incremnted
1prt_linepres.c61make this and eval rad pressure same routine, with flag saying to print contributors - copy code from other routine - this code has been left behind
1rt_escprob.c1035dynamics; this test assumes that neg vel are subsonic, so that sobolev length would overestimate the optical depth, since ion is at most present over computed slab, and possibly more.
1rt_escprob.c1160dynamics; this test assumes that neg vel are subsonic, so that sobolev length would overestimate the optical depth, since ion is at most present over computed slab, and possibly more.
1rt_line_one_tauinc.c31dynamics; this test assumes that neg vel are subsonic, so that sobolev length would overestimate the optical depth, since ion is at most present over computed slab, and possibly more.
2assertresults.c312NB this is not used, should do both, and more molecules (H2 only for now)
2atmdat_2photon.c366How should these affect locally emitted continuum calculated in rtdiffuse? Just subtract these rates from the emitted ones?
2atmdat_readin.c936- check these
2atom_level3.c208test on c checks whether collisions are possible at this temperature, should add photo excitation
2atom_level3.c219these pops ARE NOT defined below
2atom_oi.c217following needed to get badbugs/bug8.in to work
2atom_oi.c223following needed to get badbugs/bug5.in to work
2atom_oi.c408this must have all stimulated emission, pump by cont, etc
2atom_pop5.c246p(5) was very slightly negative (1e-40) for SII in dqher.in
2cddefines.c286do something with this or set to LONG_MAX? after moving collapsed levels to iso.nCollapsed, this variable does nothing. iso.nTopOff[ipHE_LIKE] = 0;
2cddrive.c1673this should have a last argument like cdIonFrac for whether or not weighting is wrt electron density
2cont_createmesh.c419consider making the fine opacity array a double. with a float, the opacity itself often becomes a denormalized number, it then becomes significant when multiplied by dr - can cause numerical noise. this is why the coarse opacity array is a double
2cont_createpointers.c1080what are we trying to print here?
2cont_createpointers.c465this is redundant with contents of oxygen line arrays use them instead when removing this, make sure all line intensity predictions also go into oi line arrays
2cont_pump.c26if used, add damp as arg since calling routine probably evaluated it
2conv_base.c673this assert is not passed if error made much smaller. This error should be related to a check on convergence of the molecular networks and their sum rules, with a criteria used here and there
2coolcarb.c216add term for protons from Rouef, E., & Le Bourlot, J. 1990, A&A, 236, 515
2cooliron.c626following to stop insane FeX strengths >>chng 96 jul 11, removed 1 10 factor, so using real data, 90.01
2cooliron.c78- ground term is actually a fix level system, the vectors are created, with pointers ipFe1_54m , ipFe1_111m, must add collision date, use larger model atom
2cooliron.c803update atomic data to Chidichimo et al 1999 AASup 137, 175
2cooliron.c825 * following not in cooling function
2coolmagn.c191use AtomSeqBeryllium here
2coolneon.c129transfer these lines
2coolnitr.c73use atom_level3
2cooloxyg.c461put all these in cooling
2coolsili.c170- update to this reference for As >>refer Si7 As Galavis, M.E., Mendoza, C., * Zeippen, C.J. 1997, A&AS, 123, 159
2dynamics.c143this should be setable at run time as per Robin Williams email rshock = 4e16;
2dynamics.c1638Need to include divergence terms in pressure balance if flux index is != 0
2dynamics.c1660Need to include divergence terms in pressure balance if flux index is != 0
2dynamics.c414Switch to supersonic when bad enough failure for STRONGD -- need to improve this logic when the p(rho) data is cleaner
2gaunt.c137- These are liberal bounds, in final product, this ASSERT should be much more demanding.
2gaunt.c154- insert reference
2gaunt.c288- insert reference
2gaunt.c339- this check may also too liberal.
2gaunt.c382- pick these interface values and stick with it...best results have been 0.4, 1.5
2grains.c1208should any of the following 3 statements be removed
2grains.c1546this algorithm might be more efficient with Brent
2grains.c1603use something like log(ThermRatio) + log(delta) ????
2grains.c2045remove gv.bin[nd]->lgChrgConverged, gv.bin[nd]->LowestPot, gv.bin[nd]->dstpotsav gv.bin[nd]->RateUp, gv.bin[nd]->RateDn; also gv.HighestIon??, HighestIonStage()??
2grains.c2295note that the number of primary electrons is given by yhat, which may not be one, so this is not necessarily consistent
2grains.c2297avAuger depends on grain charge, this should be treated explicitly here
2grains.c4322a self-consistent treatment for the heating by Auger electrons should be used
2grains.c4323a self-consistent treatment for the heating by Compton recoil electrons should be used
2grains.c4805a self-consistent treatment for the heating by Auger electrons should be used
2grains.c4806a self-consistent treatment for the heating by Compton recoil electrons should be used
2grains_mie.c1854impose size limits on PAH's, changeover to graphite ??
2grains_mie.c1855detect if PAH's are present in ionized regions ??
2grains_mie.c2026include code for interpolating inv_att_len somewhere!!
2grains_mie.c2027why is charge of pah2_ism_01.opc so different??
2h2.c2583 this is factor for lya excit do something about this
2h2.c2711is this right - two rates that add together? or is J=1 to 0 only added for 0,1 to 0,0?
2h2.c2873- did all gbar coll include test on spin changing? Also, this does not have the back collision term
2h2.c3500- put H2Lines in outward beams in RT_diffuse
2h2.c3508put supra thermal excitation into excitation of electronic bands
2h2.c36put in excited molecular dissociation from v >=4 as in hazy 2
2heatsum.c580find correct high-energy limit for these
2helike.c1563 this is part of the induce 2nu problem, which must be fixed for both he and h sequences.
2helike.c1811- this structure is currently only used for helium itself... stuff numbers in for other elements, or drop the [nelem] dimension off of helike.HeCS
2helike.c2119fix this to go to much larger n
2helike.c213remove this when this routine really controls helium itself
2helike.c434This is not the best source of data. Replace it.
2helike.c754say where these come from...and do something with them!
2helikelevel.c1126 put collisional errors into helike.Error array
2helikelevel.c416Can't be used for helium sequence because suprathermals rate has not been split up into individual levels for helium sequence. So Secondaries structure must be extended to include helium levels before the below code can be implemented. This is not a pressing correction because total suprathermal is already included for the sequence, but this should not be put off for too long because it should not be too difficult to do correctly.
2helikelevel.c436these are all wrong -- see comment above
2helikelevel.c822at the moment can only assert these for the atom, and for Vriens gbar.
2helike_cs.c180find ioniz rates for helium like species, these are hydrogenic rates
2helike_cs.c994Even spin-changing collisions are included here. Is this okay?
2helike_einsta.c340For now just just put 1% error for forbidden lines.
2helike_einsta.c738for now just give ions some a 5% error across the board
2helike_recom.c1234insert refer here.
2helike_recom.c1246put Burgess reference here
2helike_recom.c1317use a canned interpolation routine, no need for special one here
2helike_recom.c262check that these are okay
2helike_recom.c381is this good enough? Need some justification!
2hmole.c474following always true, why? either remove test or use it - it is here to save time - this step routine is called very often
2hmole.c502this should be done with new populations after converged soln
2hmole_step.c1146process is net source term for H(n=3) states, must be added in
2hmole_step.c1170process is net ionization term for H(n=3) states
2hmole_step.c1630this rate drives numerical instability in such models as secondary1 and 2.in
2hmole_step.c1763must add process H2+ + H- => H2 + H, Dalgarno&Lepp 87
2hmole_step.c1768put in H2+ + gamma => H + H+
2hmole_step.c601- put in actual composition dependent Tad - this is only valid for bare surfaces - not ice - for ice Tad is 555K
2hmole_step.c775check that this is really natural log, not base 10
2hydro_vs_rates.c252This routine, like the above one, needs to use proper energy.
2hydro_vs_rates.c306sometimes rate is negative...is that okay?
2ionoxyge.c117this will be zero in current form of atmdat_phfit set 2s**2 rate to rate for O V
2ion_solver.c986renorm should == 1 when the molecules and ionization are in equilibrium. Should monitor this figure of merit in calling routine.
2iso_cool.c14- if pc lint ever fixes this bug in their product, remove this -e
2iso_cool.c80this routine dumps all heating and cooling into only a very few lables, it would be best to break these out into individual labels that show element, iso sequence, and agent
2iso_create.c525this will not work if highest level is resolved
2iso_photo.c110- hydro.lgHInducImp should depend on iso and nelem, even better - just call one gamnc and within that code check to see whether induced is important by looking at occnum near threshold
2iter_startend.c104this does not belong here - move to where main data created
2lines_continuum.c50this block of lines should have nInu, InwT, InwC like main vector of continuum points
2lines_helium.c619- this structure is currently only used for helium itself... stuff numbers in for other elements, or drop the [nelem] dimension off of CaABLines
2lines_lv1_k_zn.c831put this line back in! EFF = 43.6 (43.6 + 0.27*COLFAC)
2lines_lv1_k_zn.c900put this in
2lines_lv1_li_ne.c620 these are actually in the optical depth arrays, should be moved to call PutLine
2opacity_addtotal.c332update photoelectric opacity for H2 to include real cross sections and energies. this is not a higher priority because when H2 is formed there can be very little ionizing radiation. this process must be trivial compared with the solomon process
2opacity_createall.c1414update to astro-ph/0308073, Lee, H-W, ApJ in press
2pressuretotal.c119this is the molecular binding energy (?) not set to anything
2pressuretotal.c174- should this include mass in grains?
2prt_comment.c1464extend to all iso and elem
2punch_do.c2826- NB - if continuum resolution changed the lines WILL NOT WORK
2punch_special.c45this most likely needs to be changed in light of new 2nu treatment
2radius_next.c6- this routine is very important since it sets the pace for the calculation, and directly affects the convergence of the code. Most of the logic is very old and messy. 1) make sure all test cases have punch dr 2) cat all these reasons together into one file and sort on the reason 3) discover what logic is the main pacesetter for the code 4) which are never triggered and so can be removed
2rt_diffuse.c125This doesn't really seem to be the expression above!!!
2rt_diffuse.c393should use ConEmitLocal for all continua, but not followed by ThrowOut - put that at the end. Once continua all bundled this way, it will be easy to save them as a function of depth and then do exact rt
2rt_diffuse.c455Replace this constant with the appropriate macro, if any
2rt_diffuse.c624add fegrain to outward beams, but within main formalism by including grains in all x-ray processes
2rt_escprob.c901this min is because there are no calculations that show what to do for beta beyound this value
2rt_line_one.c675- consider using ipDEST_INCOM instead of K2, it is much faster
2rt_stark.c64- Stark is disabled for now since Lya escape causes density dependent feedback on the radiative transfer. Would need to redo the escape probs every time the electron density is updated - see blr89.in for an example
2zero.c1427why are higher lyman lines (ipResoRedist) not same as for H-like?
2zero.c375change this to CS_new
2zero.c929file opacities are disabled for now - reinstate this when arrays settle down
3coolcarb.c257change to atom_level3