egg|nomz|egg changed the topic of #kspacademia to: https://gist.github.com/pdn4kd/164b9b85435d87afbec0c3a7e69d3e6d | Dogs are cats. Spiders are cat interferometers. | Космизм сегодня! | Document well, for tomorrow you may get mauled by a ネコバス. | <UmbralRaptor> egg|nomz|egg: generally if your eyes are dewing over, that's not the weather. | <ferram4> I shall beat my problems to death with an engineer.
e_14159 has joined #kspacademia
<bofh> !meow egg|zz|egg
* Qboid meows at egg|zz|egg
<egg|zz|egg> !pet bofh
* Qboid pets bofh
<bofh> today in slightly awkward: the default t-shirt printing location for logos is suddenly a lot more awkward when one has boobs.
e_14159_ has quit [Ping timeout: 202 seconds]
<egg|zz|egg> bofh: speaking of steric hindrance, have you looked at shirts
<bofh> ooh, good point. I'll do that on Monday, thanks for the reminder (iirc it's on the Île Saint-Louis?)
<egg|zz|egg> there's one shop there yes
pthag has quit [Remote host closed the connection]
<egg|zz|egg> bofh: also doubledouble
<bofh> egg|zz|egg: yep, as I mentioned I found the rough notes earlier while looking for something else, currently making sure what I was thinking actually makes sene.
<bofh> sense*
Qboid has quit [Quit: o/]
<egg|zz|egg> qboid!
<bofh> egg|zz|egg: also my luggage is finally here from Gatwick.
<egg|zzz|egg> nice
* egg|zzz|egg pokes qboid
Qboid has joined #kspacademia
<egg|zz|egg> lme zzz
egg|zz|egg has quit [Ping timeout: 202 seconds]
Qboid has quit [Quit: o/]
Qboid has joined #kspacademia
<kmath> <Goopypanther> Voyager 1 and 2 have 64kB memory and 120bps telemetry bandwidth so with the current 19 light hour communication del… https://t.co/GaVAdTX8Jr
_whitelogger has joined #kspacademia
* UmbralRaptor 🔪 💻
<UmbralRaptor> (I crashed the terminal with Markov chains, apparently)
<UmbralRaptor> "yes, it is actually called "The Disturbing Function" in celestial mechanics literature"
<iximeow> psst UmbralRaptor https://i.imgur.com/T1mePw4.jpg
<iximeow> i'm realizing dimmer structure requires darker sky than i have here :(
<iximeow> (that galaxy spans to the pair of stars to the right/upper right...)
_whitelogger has joined #kspacademia
_whitelogger has joined #kspacademia
egg|zz|egg has joined #kspacademia
<egg|zz|egg> !meow bofh and whitequark
<Qboid> (1,2): error CS1660: Cannot convert `lambda expression' to non-delegate type `object'
<Qboid> (1,2): error CS0103: The name `bofhtime' does not exist in the current context
<Qboid> System.Func`1[System.String]
* Qboid meows at bofh and whitequark
<egg|zz|egg> !meow cats
* Qboid meows at cats
dx has quit [Quit: RIP]
dx has joined #kspacademia
pthag has joined #kspacademia
<UmbralRaptor> iximeow: still nice, though
<egg|zzz|egg> !meow UmbralRaptor
* Qboid meows at UmbralRaptor
<UmbralRaptor> !pet egg|zzz|egg
* Qboid pets egg|zzz|egg
BPlayer has joined #kspacademia
<egg|zzz|egg> !choose Mollweide|Lambert cylindrical
<Qboid> egg|zzz|egg: Your options are: Mollweide, Lambert cylindrical. My choice: Lambert cylindrical
<egg|zzz|egg> ;choose Mollweide|Lambert cylindrical
<kmath> egg|zzz|egg: Lambert cylindrical
<egg|zzz|egg> stabbity choose Mollweide|Lambert cylindrical
<UmbralRaptor> processing
<UmbralRaptor> egg|zzz|egg: I choose Mollweide
<egg|zzz|egg> UmbralRaptor: yeah probably same but it's more work :-p
* egg|zzz|egg pokes spherical harmonics in the poles
<egg|zzz|egg> UmbralRaptor: aside from the fact that it's Lambert cylindrical rather than Mollweide, can you see something off with this geopotential map, https://i.imgur.com/VjICcnM.png
<UmbralRaptor> egg|zzz|egg: deconvolution artifacts, and eggstremely limited high latitude coverage?
<egg|zzz|egg> UmbralRaptor: well, it's covered alright, just garbage :-p
<egg|zzz|egg> UmbralRaptor: as for the artifacts, it only goes to degree and order 90
<egg|zzz|egg> but, well, it turns out that P_{90, 0} is unfriendly
<UmbralRaptor> hrm
_whitelogger has joined #kspacademia
<bofh> !meow egg|zzz|egg
* Qboid meows at egg|zzz|egg
<kmath> <bofh453> "we're still using a mac. we still don't know how to use it." ⏎ ⏎ #vdd18
<egg|zzz|egg> bofh: how do you evaluate high degree Legendre functions at high latitudes,
<bofh> High latitudes being L_n(cos(\theta)) has \theta ~ 0 or \theta ~ \pi/2?
<kmath> <hikari_no_yume> @whitequark oh wow I didn't realise that site had documentation on it, I'll have to use it going forward
<egg|zz|egg> bofh: um
<egg|zz|egg> bofh: Pnm (sin β), |β| near π/2
<egg|zz|egg> bofh: see <egg|zzz|egg> UmbralRaptor: aside from the fact that it's Lambert cylindrical rather than Mollweide, can you see something off with this geopotential map, https://i.imgur.com/VjICcnM.png
<bofh> egg|zz|egg: so, basically exactly what I was asking, |\theta| near \pi/2...
<egg|zz|egg> bofh: but what is this L you speak of
<bofh> ...actually, wait, *sin*(β) instead of cos(β)?
<egg|zzz|egg> yes
<bofh> egg|zz|egg: me using the wrong symbol, L clearly refers to the Laguerre polynomials,
<egg|zzz|egg> no, you want the son-in-law, not the war
<bofh> ugh. so Pn (cos β) ~ sqrt(β/sin(β)) * J0((n+0.5)*β) (or, more accurately but nastier to implement, ~ sqrt(β/sin(β)) * (J0((n+0.5)*β) - 0.125*β*(1-(β/tan(β)/β^2)/(n+0.5))*J1((n+0.5)*β)) ). there is an analogous expression in terms of higher-order integer Bessel functions that works for Pnm(cos(β)) that I have here TeXed up, sec.
<bofh> But for Pn (sin β) you'd have to rederive the whole asymptotic expansion, and more to the point how the heck did you get a sin β there instead of a cos β?
<egg|zzz|egg> bofh: no but I don't necessarily want it as a function of β anyway
<egg|zzz|egg> bofh: because this is geodesy and not QM :-p
<bofh> egg|zzz|egg: so for x the standard impl literally just calls acos(x) to get it
<egg|zzz|egg> bofh: I have sin β aνδ cos β йуст as easily, from cartesian coords
<egg|zzz|egg> bofh: wtf
<egg|zzz|egg> why would you do that instead of evaluating the polynomial
<bofh> rofl
<bofh> egg|zzz|egg: consider the upward recurrence for high orders of n near a root...
<bofh> (that's pretty much always why you'd use an asymptotic expansion for evaluating an orthogonal polynomial)
<bofh> (in all other cases, yeah, you'd just evaluate the polynomial)
<egg|zzz|egg> what do you mean by the upward recurrence
<egg|zzz|egg> would rewriting Pnm (sin β) as a function of cος β work better
<bofh> n*Pn(x) = (2*n-1)*x*P_{n-1}(x) - (n-1)*P_{n-2}(x)
<bofh> the upward recurrence is just the 3-term relation defining the orthogonal polynomial,
<egg|zzz|egg> okay, what's with that recurrence
<bofh> https://en.wikipedia.org/wiki/Legendre_polynomials#Recursive_definition the last expression under "Recursive definition"?
<egg|zzz|egg> yes but why is it relevant
<egg|zzz|egg> surely you use it to precompute the coefficients and then you have a polynomial?
<egg|zzz|egg> e.g. #1925
<Qboid> [#1925] title: Documentation for the derivation of the Legendre polynomials | | https://github.com/mockingbirdnest/principia/issues/1925
<bofh> depends, oftentimes precomputing the coefficients is *slower* if you're not repeatedly evaluating the same polynomial while it's in cache.
<egg|zzz|egg> bofh: surely you do that at compile time like a properly insane egg,
<egg|zzz|egg> bofh: also I found half a dozen implementations in FORTRAN
<bofh> like, same reason most code doesn't compute explicit coefficients of a Чебышёв polynomial but instead go up via Ч_{n+1}(x) = 2*x*Ч_n(x) - Ч_{n-1}(x)
<egg|zzz|egg> bofh: very modern fortran apparently
<bofh> also the answer to "surely you do that at compile time" is "neither FORTRAN nor C89 have templates capable of evaluating that,"
<bofh> (actually that may be a lie but I'm not sure I want to spend time seeing if I can compute Legendre polynomial coefficients using the C preprocessor...)
<egg|zzz|egg> bofh: I'm sure eventually FORTRAN will have generics, it seems to have some semblance of a type systems and procedures and whatnot now
<egg|zzz|egg> bofh: hm, but doesn't going up via Ч_{n+1}(x) = 2*x*Ч_n(x) - Ч_{n-1}(x) preclude Estrinification tricks?
<egg|zzz|egg> bofh: also something something Atlas-Canon method for polynomial evaluation, https://twitter.com/stephentyrone/status/419175825896771584
<kmath> <stephentyrone> Canon’s scheme for polynomial evaluation: "do the fastest thing that satisfies the targeted error bound."
<bofh> well yes. if you absolutely need perf you're going to convert your coefficients out from the Чебышёв basis to the polynomial basis
<bofh> this will always be the case. but if you can't do that conversion ahead of time or at the *latest* at compile time, doing it at runtime sucks a lot.
<egg|zz|egg> bofh: but I think the issue I'm running into is more that Pnm is badly oscillatory near 1 of either sign
<egg|zz|egg> "at the *latest* at compile time" << at initialization time probably works too tbh
<egg|zz|egg> elaboration time,
<egg|zz|egg> something something Ada terminology best terminology
<bofh> egg|zz|egg: yeah, you'll run into that regardless. the asymptotic is expressly stable there, which is why I'm giving it,
* egg|zz|egg elaborates the polynomial
<egg|zz|egg> (elaboration has no other effect)
<bofh> what's initialization time,
<bofh> is that when you call functions from your PROGRAM that initialize a global COMMON block,
<egg|zz|egg> bofh: yes,
<egg|zz|egg> bofh: I mean, if your thing is long-running, doing it initially on program startup might be OK
<egg|zz|egg> bofh: e.g. if principia wasn't so fond of doing everything in the compiler, computing this as you start KSP wouldn't be much of an issue
<egg|zz|egg> also <3 "elaboration has no other effect"
<bofh> egg|zz|egg: I mean my main point is that you can't do this in a library, since you can't hook main or _start and constructors aren't a thing outside of C++
<egg|zz|egg> bofh: well, your library could have a subroutine somewhere that you call to do your precomputations
<bofh> I mean, okay, point.
<egg|zz|egg> CALL HAVE A CUP OF COFFEE
<bofh> merci, just grabbed another,
<bofh> (ahh the joys of infinite VideoLAN free coffee,)
<egg|zz|egg> bofh: but yeah, I think Pnm's oscillations near 1 are the annoyance here
<egg|zz|egg> maybe i should go through Pnm(sqrt(1-x^2)) near 0
<bofh> egg|zz|egg: hm, that might actually stand a chance of working... actually wait, isn't that equivalent, since the sqrt(1-x*x) near 0 converts that to something near 1...
<egg|zzz|egg> bofh: I mean at the end of the day you're trying to evaluate the same thing
<egg|zzz|egg> but maybe the polynomial has nicer coefficients for evaluation there
<bofh> Hrm, wait a second, near 1 Pn(x) -> 1 for large n, so it's not near-root behaviour that's your issue. But that shouldn't be too oscillatory to cause problems there unless n is like > 100 or something (unless I'm missing something, which is likely).
<egg|zzz|egg> bofh: well it's n up to 90 in that imgur link
<egg|zzz|egg> at low degree it's still OK
<egg|zzz|egg> bofh: remember, it's not QM, it's geodesy
<bofh> I mean okay n ~ 90 would def. be problematic, heck n ~ 50 would still be nasty.
<egg|zzz|egg> bofh: you're making a map out of it :-p
<bofh> Even in geodesy you're still interested in the low-order spherical harmonics tho, no?
<egg|zzz|egg> depends how far you are
<egg|zzz|egg> for LAGEOS, the IERS recommend degree and order 20
<egg|zzz|egg> for Starlette, degree and order 90
<bofh> but yes if your n is like 50 and your x is near \pm 1 or a root just use the damn asymptotic in terms of J0 (or for Jnm it'll be in terms of Jm and J_{-m-1}, moment), that's what asymptotics are *for*,
<bofh> so order 20 is what I'd expect for, like, anything in LEO that's not, like, about to reenter. 90?!?
<bofh> also brb about 3hrs, more AV1 talks,
<egg|zzz|egg> bofh: LEO is a different mess because you have the atmosphere
<egg|zzz|egg> bofh: but Starlette and LAGEOS are high-up geodesy sats
<egg|zzz|egg> Starlette is lower, thus needs MOAR TERMS
<bofh> like LAGEOS is at perigee ~ 5800km so 20 terms is about what I'd expect. starlette is at perigee ~ 800km so what I'd expect is actually how the hell has this thing not reentered it was launched in 1975 and it's like, so low atmospheric drag has to be severe.
<bofh> also Starlette is the *opposite* of high-up, it's low as shit,
<egg|zzz|egg> bofh: it's sufficiently high that you don't care about drag
<egg|zzz|egg> bofh: "The decay in semimajor axis due to the effects of atmospheric drag is currently estimated to be -14 m/year for Starlette, and about -30 m/year for Stella (these are average values, and the decay rates may be larger near the maximum in the 11-year solar cycle, and less near the minimum of the solar cycle)."
<egg|zzz|egg> bofh: also AAAARGH "Satellite de Taille Adaptée avec Réflecteurs Laser pour les Etudes de la Terre"
<egg|zzz|egg> !acr -add:Starlette Satellite de Taille Adaptée avec Réflecteurs Laser pour les ÉTudes de la TErre
<Qboid> egg|zzz|egg: I added the explanation for this acronym.
<UmbralRaptor> That's quite the acronym
<egg|zzz|egg> bofh: UmbralRaptor: french acronyms, esp. in aerospace, tends to be NMR-grade
<egg|zzz|egg> "adequately-sized satellite with laser reflectors for earth studies"
<UmbralRaptor> Hah
<bofh> egg|zzz|egg: that seems eggstremely NMR-grade, honestly,
<egg|zzz|egg> bofh: I think using polynomials of sin and of cos on the appropriate octants should work
<egg|zzz|egg> bofh: hm actually no it's too garbled near π/4 for either
<egg|zzz|egg> bofh: UmbralRaptor: new and improved, https://i.imgur.com/ID6316E.png
<UmbralRaptor> egg|zzz|egg: now with higher latitudes?
<egg|zzz|egg> yes but wonky in the middle
<egg|zzz|egg> (I'm surprised it's that bad tbh, P90 should be ok at 1/sqrt(2) Ꙩ_ꙩ
BPlayer has quit [Ping timeout: 190 seconds]
<UmbralRaptor> Yay, no coffee maker works.
<UmbralRaptor> …
<UmbralRaptor> s/no/new/
<Qboid> UmbralRaptor meant to say: Yay, new coffee maker works.
UmbralRaptor has quit [Remote host closed the connection]
UmbralRaptop has joined #kspacademia
<egg|zzz|egg> !meow UmbralRaptop
* Qboid meows at UmbralRaptop
<UmbralRaptop> !pet egg|zzz|egg
* Qboid pets egg|zzz|egg
<egg|zzz|egg> bofh: okay so I guess at degree and order 90 I have to use the asymptotics
<egg|zzz|egg> bofh: "there is an analogous expression in terms of higher-order integer Bessel functions that works for Pnm(cos(β)) that I have here TeXed up, sec." << meow meow meow meow
_whitelogger has joined #kspacademia
<egg|zzz|egg> !pet whitequark
* Qboid pets whitequark
bofh_av1 has joined #kspacademia
<bofh_av1> best hostname~
<UmbralRaptop> I have questions about this remake of the Iliad.
<egg|zzz|egg> bofh_av1: https://i.imgur.com/ID6316E.png
<kmath> <zekjur> “Oldschool smart home” https://t.co/pobtwefJ9P
<bofh> okay that's really strange how the divergence happens suddenly; do you know at which order things start being garbage?
<egg|zzz|egg> bofh: assuming you mean degree, not order (in order it's always order 0)
<egg|zzz|egg> bofh: it's not sudden in degree, just creeping down from the poles
<egg|zzz|egg> also I have succeeded in Mollweideing things
<UmbralRaptop> \o/
<egg|zzz|egg> Mollweidiert
<egg|zzz|egg> UmbralRaptop: bofh: degree and order 50 https://i.imgur.com/bXQTz4z.png
<egg|zzz|egg> (transformed the polynomials for high latitudes, and 50 is smol enough that it's not a mess at π/4)
<egg|zzz|egg> UmbralRaptop: bofh: for completeness, degree and order 90, https://i.imgur.com/r98D1r9.png
<UmbralRaptop> ꙮ_ꙮ
<bofh> egg|zzz|egg: er, so what I mean by order of Pnm is n
<egg|zzz|egg> bofh: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
<egg|zzz|egg> bofh: what do you mean by degree then
<bofh> I believe degree is equivalent to order for this case (order is a property of which spherical harmonic you are working with, starting with n=0 (s orbitals, etc). degree is a property of any polynomial, and it just happens that the polynomials here equal the degree. but in other cases you have n'th degree expressions that map to, say, 2n-1'th degree polynomials, etc).
<egg|zzz|egg> bofh: .... okay spherical harmonics in the QM world apparently have completely different terminology as well as different normalization, great,
<egg|zzz|egg> bofh: degree is n, order is m
<egg|zzz|egg> bofh: the phrase "to degree and order N" is common when talking about geopotential models
_whitelogger has joined #kspacademia
<egg|zzz|egg> bofh: e.g., "The EGM2008 model (Pavlis et al., 2008) is complete to degree and order 2159,"
<bofh> AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
<bofh> so first off, it's senseless to talk about m on its own since m will *always* range from -n to n and include all of those terms
BPlayer has joined #kspacademia
<bofh> so of course it will be to order N, b/c it's to degree N.
<egg|zzz|egg> bofh: no, m ranges from 0 to n
<egg|zzz|egg> bofh: and it is frequent to truncate m below n
<egg|zzz|egg> bofh: you need to do more geodesy
<egg|zzz|egg> bofh: that very AAAAAAAAAAAAA sentence continues after the comma
<egg|zzz|egg> bofh: "The EGM2008 model (Pavlis et al., 2008) is complete to degree and order 2159, and contains additional spherical harmonic coefficients up to degree 2190 and order 2159."
<egg|zzz|egg> (I need to print that chapter too and give it to the cat,)
<bofh> egg|zzz|egg: wait, from *0* to n? what the shit?
<egg|zzz|egg> bofh: see that link
<egg|zzz|egg> bofh: the first egguation gives the Votential
<bofh> egg|zzz|egg: yes but that doesn't make any sense, where are your P_n^{-m} factors of your Votential?
<egg|zzz|egg> bofh: (much like the Henergy is a function of qosition and pomentum, in this case it is the sum of the Tinetic and Votential parts,)
<egg|zzz|egg> bofh: there is no P_n^{m}, only P_{nm}, different normalization factors
<egg|zzz|egg> well, different signs
<egg|zzz|egg> (there's also the normalization factor which produces the bar)
<bofh> https://wikimedia.org/api/rest_v1/media/math/render/svg/859f4221f77803b39d7bdae77aea08725ab1b5ee oh fucking hell they COMBINE the P_n^m and the P_n^{-m}'s?!?!?! WHYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
<bofh> brb a sec, being kicked out of room
bofh_av1 has quit [Ping timeout: 183 seconds]
<kmath> <imhirama> @ClickToZoom Sleepily interpreted the word perpendicular and watched the whole video waiting for the sheep to start… https://t.co/Fxl5ejpvml
BPlayer has quit [Ping timeout: 190 seconds]
* egg|zz|egg meows at bofh
* egg|zz|egg pokes bofh
* egg|zzz|egg stabs Mathematica
* UmbralRaptop hands egg 3 sneks and a numpy
_whitelogger has joined #kspacademia
* iximeow meows at egg
* whitequark iximeows at egg
<iximeow> !choose garbage collectors|PIC17
<Qboid> iximeow: Your options are: garbage collectors, PIC17. My choice: PIC17
* egg|zz|egg ixies at meow
* egg|zz|egg throws a gluon at whitequark
<whitequark> PIC17
<whitequark> PIC
<whitequark> no
<whitequark> just... not even once
<iximeow> i've decided to invest thousands of dollars of hours into making celestron mounts suck less rather than buy a better mount
<iximeow> whitequark: i have a fairly featureful pic18 emulator now though! :D
<whitequark> begone, evil spirit
* iximeow spooky sounds
<UmbralRaptop> Only the evil material remains
<whitequark> lol
egg|zz|egg has quit [Ping timeout: 180 seconds]
egg|zz|egg has joined #kspacademia
<UmbralRaptop> !meow egg|zz|egg
* Qboid meows at egg|zz|egg
egg|zz|egg has quit [Ping timeout: 190 seconds]
egg|zz|egg has joined #kspacademia
<egg|zzz|egg> !wpn UmbralRaptop, whitequark, bofh, et al.
* Qboid gives UmbralRaptop, whitequark, bofh, et al. a pre-order bell
<UmbralRaptop> *BONG*
egg|zz|egg has quit [Ping timeout: 190 seconds]
egg|zz|egg has joined #kspacademia
egg|zz|egg has quit [Ping timeout: 183 seconds]
egg|zz|egg has joined #kspacademia
_whitelogger has joined #kspacademia
<UmbralRaptop> !u u+0007 egg|zzz|egg
<Qboid> That's not a valid code point.
<Qboid> UmbralRaptop: Object reference not set to an instance of an object
egg|zz|egg has quit [Ping timeout: 183 seconds]
egg|zz|egg has joined #kspacademia
<egg|zzz|egg> !u u+7
<Qboid> U+0007 (␇)
<egg|zzz|egg> meow
<kmath> <nabijaczleweli> @bofh453 @eggleroy self.initialise_and_log_in_or_on_the_problems_one_goes_against_when_faced_with_new_beginnings_a_… https://t.co/lUiovLoupz
<UmbralRaptop> egg|zzz|egg, bofh: I thought that was powershell?
<UmbralRaptop> electrokitty> https://isotropic.org/papers/chicken.pdf
<Qboid> 2d 0h 0m 0s left to event #28: Horizons 3e & Azerspace 2 (Intelsat 38) / Ariane 5 VA245 [at 2018-09-25 21:53:00]. Say '!kountdown 28' for details
<egg|zzz|egg> UmbralRaptop: Ꙩ_ꙩ
<UmbralRaptop> egg|zzz|egg: IIRC, it was submitted to a sketchy journal to see if they actually read over manuscripts. (they did not)
<egg|zzz|egg> UmbralRaptop: maybe they did and they thought it was a good paper,
<UmbralRaptop> Apparently it was a joke paper, and there's video of the author presenting slides on it.
<kmath> <moffmiyazaki> ちなみに我が家の猫職員とMINERVA Ⅱ1と比較するとこのくらいになります。 https://t.co/OnTRjKlw5v
<egg|zzz|egg> cat
<UmbralRaptop> Also the MINERVA lander
pthag has quit [Ping timeout: 202 seconds]
<SnoopJeDi> bofh, look at this hairpin asdfoipuwer https://i.imgur.com/T9KOgvs.jpg
<SnoopJeDi> and maybe other images I took they're okay https://imgur.com/a/nViDg9o
<egg|zz|egg> bofh: UmbralRaptop: “The dust-obscured observations are actually quite good for calibration,” http://www.esa.int/Our_Activities/Space_Science/ExoMars/ExoMars_highlights_radiation_risk_for_Mars_astronauts_and_watches_as_dust_storm_subsides
<UmbralRaptop> hm