Add F99+FM07 model
FM07 models includes a 7th parameter for the star of the far-UV curvature term. Might also consider the option to tie c1 and c2 as these are completely correlated by all measures.
I'm working on this, and I wonder about adding F99+FM07+FM09 with their version of the NIR curve. Would that be overkill?
F99 should already be in as a separate model. At least the R(V) dependent model presented in F99 is in. See the docs. :-) But, is there something akin to the FM90 shape fitting in F99 other than the R(V) dependent model?
Can you remind me of the differences between FM07 and FM09?
Adding in all literature models is good. So, not overkill. It would be good to be able to separately use each model. Hence it would be good to have a FM07 and a FM09 models. These models could all be related and inherit a super FM class if that reduces code duplication. Some documentation on the differences between the FM models would be good too. :-)
So I've been working on understanding how the Fitzpatrick extinction law evolved through his papers, and it gets complicated.
F99 has the FM90 shape, but by F04 (the Colorado Dust Conference) he was using an R-dependent curve in the infrared. FM07 continues with the same NIR curve, but adds wavelengths to the IR spline. The UV correlations also change, including the C5 parameter. As for the NIR, in FM09 he uses a NIR model that has a changing power-law slope, so an extra parameter, but I need to look at the paper again.
I'm thinking this would be a good plan:
-
Make F99 be just the model from the F99 paper, with the typo fixed as you note well in the code. Keeping F99 as the original allows users to compare with fm_unred and feel confident when they get the same result.
-
Add a new F99FM07 model that has some of the features of FM07, like the updated C1-C2 relationship (i.e. move this from F99 where it is currently) and the NIR R-dependence, but the same FM90-type model.
-
Make a new FM07 that has all the bells and whistles of that paper, including the C5. It won't be using the FM90 method, so probably shouldn't be called a hybrid of F99.
-
Eventually FM09...
Thoughts?
What would be the reason for having the F99FM07 hybrid model?
Ideally, I would guess that FM07 and FM09 would be the two new models to add.
Good question! I guess that I was just going off of the title of the issue.
In your code, you use the updated FM07 C1-C2 relationship in F99. I do think that there is wisdom in using the F99 model (with the original FM method) with the updated relationships, and I would call that F99FM07. I'll send a pull request, and you can see what I mean.
Where are we on this? Do we still need the FM07 model in somehow? Or did the F04 satisfy this need?
(Look what I just found in my junk folder. Darn you, Outlook!)
FM07 adds a c5 in the UV, and the F04 model doesn't have that. Because of the extra parameter, it wouldn't be able to use the _curve_F99_method.
I bet we can expand the _curve_F99_method to include c5 and then just set it correctly for the models that do not use c5.