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
0atmdat_char_tran.c288these should be values at 1e5 K
0conv_base.c915PvH prefers test against err/10
0ion_recomb.c295once debugged, move test to above so that old dr is not needlessly evaluated
0mole_h2.c2212get better relationship between cr excit of Lya rate
0mole_h_step.c1521update 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 following reference gives cross section for all energies >>refer H2 photo cs Yan, M., Sadeghpour, H.R., & Dalgarno, A., 1998, ApJ, 496, 1044 Wilms, J., Allen, A., & McCray, R. 2000, ApJ, 542, 914
0mole_h_step.c1532must include heating, compton ionization
0mole_h_step.c5303had to comment following test out - NA change to hmole caused massive prints
0opacity_addtotal.c524these RJRW macros are permanent - remove tests & make final
1cont_createmesh.c466do not let temperature fall below 1e4 K for choosing stop temperature, to prevent fine opacity grid from becoming huge
1cool_carb.c235add neutral helium Staemmler, V., & Flower, D. R. 1991, J. Phys. B, 24, 2343
1cool_nitr.c127update these to Hudson & Bell, MNRAS, 348, 1275 and A&A, 430, 725
1dynamics.c1731get following to work
1heat_sum.c436add part of hard heat to secondaries
1mole_h2_create.c424add this as a Lya excitation process >>KEYWORD Allison&Dalgargo; continuum dissociation;
1mole_h2_io.c1438add logic to deduce cs
1mole_h_step.c1363equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1412equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1431equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1463equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1479equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1504equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1787equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1845equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? reverse of this reaction i not in detailed balance,why? GS
1mole_h_step.c1904equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1926equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c1972equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c2228equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c903equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1mole_h_step.c949equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
1opacity_addtotal.c514stupid - why this test on opacity_abs ? - we only get here if we already passed above test on this very thing
1pressure_total.c200do something with this pressure term
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
1prt_lines_lv1_k_zn.c668this does not belong here - should be where radius incremnted
1radius_next.c1288rm logic detecting temp and pres failure - these normally occur near troubled parts of cooling curve
1rt_escprob.c1037dynamics; 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.c1162dynamics; 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.c32dynamics; 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.
2assert_results.c282NB 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_coll_ion.c102all of these are used in only three lines in this same file, and go into making a double. So all of these casts to float just turn intermediate doubles into floats to be turned back into doubles. Either promote ".CF" to double and or change all of these vectors to floats. In both cases all the casts to float should be removed.
2atmdat_H_phot_cs.c15all of these ".STH" go straight into doubles. Change definition of itmps or .STH to avoid demotion.
2atmdat_readin.c911- check these
2atom_fe2ovr.c153hydro.dstfe2lya is always multiplied by a double and stuffed into a double. defining it as a float causes lost precision here.
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.c216following needed to get badbugs/bug8.in to work
2atom_oi.c222following needed to get badbugs/bug5.in to work
2atom_oi.c381this must have all stimulated emission, pump by cont, etc
2atom_pop5.c249p(5) was very slightly negative (1e-40) for SII in dqher.in
2cddefines.c294do something with this or set to LONG_MAX? after moving collapsed levels to iso.nCollapsed, this variable does nothing. iso.nTopOff[ipHE_LIKE] = 0;
2cddefines.c349Change this to higher number. Make this change by itself after all other changes pass suite.
2cddrive.c1749this should have a last argument like cdIonFrac for whether or not weighting is wrt electron density
2cont_createpointers.c1100what are we trying to print here?
2cont_createpointers.c488this 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_gaunt.c137- These are liberal bounds, in final product, this ASSERT should be much more demanding.
2cont_gaunt.c154- insert reference
2cont_gaunt.c288- insert reference
2cont_gaunt.c339- this check may also too liberal.
2cont_gaunt.c382- pick these interface values and stick with it...best results have been 0.4, 1.5
2cont_pump.c26if used, add damp as arg since calling routine probably evaluated it
2conv_base.c854this 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
2cool_carb.c234add term for protons from Rouef, E., & Le Bourlot, J. 1990, A&A, 236, 515
2cool_iron.c1060update atomic data to Chidichimo et al 1999 AASup 137, 175
2cool_iron.c1082 * following not in cooling function
2cool_iron.c2338put in temperature dependence
2cool_iron.c2792put in temperature dependence
2cool_iron.c696- 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
2cool_iron.c807following to stop insane FeX strengths >>chng 96 jul 11, removed 1 10 factor, so using real data, 90.01
2cool_magn.c191use AtomSeqBeryllium here
2cool_neon.c129transfer these lines
2cool_nitr.c78use atom_level3
2cool_oxyg.c411add proper temperature dependence when good coll stren calculations become available
2cool_oxyg.c483put all these in cooling
2cool_phos.c27update to Tayal data, email of April 22 2003, must be published
2cool_sili.c256- 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 emailrshock = 4e16;
2dynamics.c1645Need to include divergence terms in pressure balance if flux index is != 0
2dynamics.c1667Need 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
2grains.c1230should any of the following 3 statements be removed
2grains.c1618this algorithm might be more efficient with Brent
2grains.c1675use something like log(ThermRatio) + log(delta) ????
2grains.c2125remove 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.c2375note that the number of primary electrons is given by yhat, which may not be one, so this is not necessarily consistent
2grains.c2377avAuger depends on grain charge, this should be treated explicitly here
2grains.c4425a self-consistent treatment for the heating by Auger electrons should be used
2grains.c4426a self-consistent treatment for the heating by Compton recoil electrons should be used
2grains.c4908a self-consistent treatment for the heating by Auger electrons should be used
2grains.c4909a self-consistent treatment for the heating by Compton recoil electrons should be used
2grains_mie.c1865impose size limits on PAH's, changeover to graphite ??
2grains_mie.c1866detect if PAH's are present in ionized regions ??
2grains_mie.c2038include code for interpolating inv_att_len somewhere!!
2grains_mie.c2039why is charge of pah2_ism_01.opc so different??
2heat_sum.c588find correct high-energy limit for these
2helike.c155remove this when this routine really controls helium itself
2helike.c455say where these come from...and do something with them!
2helike_create.c1553 this is part of the induce 2nu problem, which must be fixed for both he and h sequences.
2helike_create.c1808- 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_cs.c125rewrite HeCSInterp and all called routines to use a temp parameter, rather than phycon.te
2helike_cs.c315find ioniz rates for helium like species, these are hydrogenic rates
2helike_einsta.c338find a transition probability for this 2^3P0 - 2^3P1 transition. It will require a bit of trickery to insert into the rate matrix, because of the fact that the lower level has a higher index. See discussion "Energy order within 2 3P" near the top of helike.c
2helike_level.c1149This is only temporary!
2helike_level.c419Can'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.
2helike_level.c439these are all wrong -- see comment above
2helike_level.c828at the moment can only assert these for the atom, and for Vriens gbar.
2helike_recom.c3085put Burgess reference here
2helike_recom.c3086I can't find this reference, should be killed anyway? --RLP
2helike_recom.c3157use a canned interpolation routine, no need for special one here
2hydro_vs_rates.c286make these effective quantum numbers?
2hydro_vs_rates.c446This routine, like the above one, needs to use proper energy.
2hydro_vs_rates.c500sometimes rate is negative...is that okay?
2ion_oxyge.c117this will be zero in current form of atmdat_phfit set 2s**2 rate to rate for O V
2ion_solver.c664renorm should == 1 when the molecules and ionization are in equilibrium. Should monitor this figure of merit in calling routine.
2iso_cool.c15- if pc lint ever fixes this bug in their product, remove this -e
2iso_cool.c85this 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.c562this 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.c108this does not belong here - move to where main data created
2mole_h2.c3150- put H2Lines in outward beams in RT_diffuse
2mole_h2.c3158put supra thermal excitation into excitation of electronic bands
2mole_h_drive.c504following always true, why? either remove test or use it - it is here to save time - this step routine is called very often
2mole_h_drive.c532this should be done with new populations after converged soln
2mole_h_step.c1206process is net source term for H(n=3) states, must be added in
2mole_h_step.c1234process is net ionization term for H(n=3) states
2mole_h_step.c1897this rate drives numerical instability in such models as secondary1 and 2.in
2mole_h_step.c1939equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
2mole_h_step.c1953equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
2mole_h_step.c2036must add process H2+ + H- => H2 + H, Dalgarno&Lepp 87
2mole_h_step.c2041put in H2+ + gamma => H + H+
2mole_h_step.c2244equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
2mole_h_step.c2705equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
2mole_h_step.c2719equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
2mole_h_step.c2803equivalent reaction for H2* is not included in chemistry, Big h2 does not include this reaction, what to do? GS
2mole_h_step.c598- put in actual composition dependent Tad - this is only valid for bare surfaces - not ice - for ice Tad is 555K hmi.Tad is binding energy expressed as a temperature note that hmi.Tad is set to 800. in zero tau_nu the first equation in section 2.5 equation one paragraph before equation 2 at low grain temperatures all end in para, J=0
2opacity_addtotal.c93add charged heavy elements
2opacity_createall.c1546update to astro-ph/0308073, Lee, H-W, ApJ in press
2pressure_total.c120this is the molecular binding energy (?) not set to anything
2pressure_total.c177- should this include mass in grains?
2prt_comment.c1104this statement needs to be reinstated with a better test for presence in the H II region
2prt_comment.c1488extend to all iso and elem
2prt_lines_continuum.c55this block of lines should have nInu, InwT, InwC like main vector of continuum points
2prt_lines_helium.c533- this structure is currently only used for helium itself... stuff numbers in for other elements, or drop the [nelem] dimension off of CaABLines
2prt_lines_helium.c673- this structure is currently only used for helium itself... stuff numbers in for other elements, or drop the [nelem] dimension off of CaABLines
2prt_lines_lv1_k_zn.c878put this line back in! EFF = 43.6 (43.6 + 0.27*COLFAC)
2prt_lines_lv1_k_zn.c977put this in
2prt_lines_lv1_li_ne.c638 these are actually in the optical depth arrays, should be moved to call PutLine - but some needed vars are not defined in structure
2punch_do.c2986- 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.c134This doesn't really seem to be the expression above!!!
2rt_diffuse.c153Steve Kraemer says we're lacking radio recombination continua. Is this why? --RLP
2rt_diffuse.c396should use ConEmitLocal for all continua, but not followed by DiffuseEscape - 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.c458Replace this constant with the appropriate macro, if any
2rt_diffuse.c634add fegrain to outward beams, but within main formalism by including grains in all x-ray processes
2rt_escprob.c903this min is because there are no calculations that show what to do for beta beyound this value
2rt_line_one.c694- consider using ipDEST_INCOM instead of K2, it is much faster
2rt_ots.c143should also check whether IonLo is in bounds - in func_set_ion test He0 is set to zero, so this does not do anything. as NISO grows this will become larger waste of time
2rt_stark.c63- 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.c1006file opacities are disabled for now - reinstate this when arrays settle down
2zero.c1573why are higher lyman lines (ipResoRedist) not same as for H-like?
2zero.c390change this to CS_new
3cont_createmesh.c451consider 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
3cool_carb.c275change to atom_level3
3zero.c1044next two should be constants since not reset - are hardwired limits to code's range of temperature validity