joshburkart / mathematica-mcmc

Mathematica Markov chain Monte Carlo
34 stars 18 forks source link

The Binary characteristics #3

Open Tenor-Moncho opened 5 years ago

Tenor-Moncho commented 5 years ago

Dear Josh,

Could you please help me with an issue that I have with your MCMC code? I need to review it completely in order to learn how yo use it in my project. In your example, in order to apply some in formation about a binary system, you have calculated the true anomaly first. I have looked everywhere, but I don't know how you have obtained the model of the true anomaly. You have:

Table[{f, Re[2 ArcTan[((1 - e) Tan[f/2])/ Sqrt[1 - e^2]] - (e Sin[f] Sqrt[1 - e^2])/(1 + e Cos[f])]}, {f, -Pi + 2 Pi/1000., Pi - 2 Pi/1000, 2 Pi/1000.}]

But I don't know how to obtain it. Could you please guide me how to obtain the true anomaly like you have done? Because as far as I know, the true anomaly is within a transcendent relation and can not be obtained explicitly. And what is f here in your formula?

I really appreciate your help because I am stuck in the code and cannot go any further until I have found out about the model you have used. Thank you very much in advance.

joshburkart commented 5 years ago

Hi! I think what's going on (it's been a while...!) is a numerical inversion to get true anomaly f as a function of mean anomaly M... It's true that there's no analytic formula for f(M), but there is an analytic formula for M(f) (f -> eccentric anomaly E, E -> M). So we compute a list of pairs of {M(f), f} and then interpolate to produce a numerical inversion.

Does that sound right...?

Tenor-Moncho commented 5 years ago

Dear Josh,

Thanks a lot for this explanation. I could regenerate the analytical form of M(f). So, you first construct a pair {f, M(f)}, then you reverse this pair, to have {M(f), f}? As I see, this is done by applying an Interpolation on the Reverse of {f, M(f)}. But in the Table, you are indeed giving a range of values to f, so the true anomaly is already given. Then what is the significance of the consideration of M(f)? I know that one important thing is to have a function in terms of e, namely GetTrueAnomaly[e], but I am not still clear about the concept. Since the true anomaly is given, then the function is actually giving the "mean anomaly in terms of f and e". Is that right?

I really appreciate your kind help.

joshburkart commented 5 years ago

I don't remember! I'm sure you can figure it out -- search Google [Scholar] for "binaries radial velocity curve" or similar. May I ask why you're interested in this? It's just an example from my grad school research (which was why I actually wrote the MCMC code) of analyzing observations from a particular binary star system.

On Wed, Jun 12, 2019, 10:09 PM Mohsen Fathi notifications@github.com wrote:

Dear Josh,

Thanks a lot for this explanation. I could regenerate the analytical form of M(f). So, you first construct a pair {f, M(f)}, then you reverse this pair, to have {M(f), f}? As I see, this is done by applying an Interpolation on the Reverse of {f, M(f)}. But in the Table, you are indeed giving a range of values to f, so the true anomaly is already given. Then what is the significance of the consideration of M(f)? I know that one important thing is to have a function in terms of e, namely GetTrueAnomaly[e], but I am not still clear about the concept. Since the true anomaly is given, then the function is actually giving the "mean anomaly in terms of f and e". Is that right?

  • And could you please tell me a little about the codes which are coming afterwards? I mean a little explanation about what you have done in the codes, why you used them and why you have used those specific numerical values?

I really appreciate your kind help.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/joshburkart/mathematica-mcmc/issues/3?email_source=notifications&email_token=AA5VINMNTUWDXYTDPWTLQBLP2HJAVA5CNFSM4HXKI3IKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXSQ4JQ#issuecomment-501550630, or mute the thread https://github.com/notifications/unsubscribe-auth/AA5VINOPX2Q2RKUDW54LX3TP2HJAVANCNFSM4HXKI3IA .