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.
egg is now known as egg|zzz|egg
<egg|zzz|egg> z
<egg|zzz|egg> z
<egg|zzz|egg> zz
<egg|zzz|egg> zzz
<egg|zzz|egg> zzzzz
<UmbralRaptop> Sleeping like a rodent?
<bofh> (technically speaking you can change the *x to x everywhere including in the decl, there's no reason to make it pass-by-reference if you aren't calling it from Fortran, oops)
<egg|phone|egg> Bofh: sig Dec is better than approx rootn, not worse?
<egg|phone|egg> S,:,: 4,
<bofh> approx rootn should give you < 5 but > 4.3 I think
<egg|phone|egg> Uh it's 3,2 %?
<bofh> uh 3.2% != 3.2 sig. dec., unless I'm misunderstanding something.
<bofh> one is percent relative error, the other is correct significant binary floating-point mantissa digits
<egg|phone|egg> Binary or Dec?
<egg|phone|egg> If it says digits I read sigdec by default
<bofh> "digits" in the context of floats always gets interpreted as binary significant digits by me, so
<bofh> (clearly the easiest way to settle this is to just test it empirically :p)
<egg|phone|egg> Ah
<bofh> (I do know Kahan means binary digits whenever he uses that term in qbrt.pdf tho)
<egg|phone|egg> So which one is it though
<egg|phone|egg> Kahan does not assume binary until halfway through
<egg|phone|egg> For non-binary you need a table but the first part of the paper works
<egg|phone|egg> Hence digits not bits
<bofh> Hmm.
<egg|phone|egg> SOMETHING SOMETHING IBM FLOATING POINT
<egg|phone|egg> Zzz
<UmbralRaptop> … why does United need to know my gender?
<kmath> <Foone> Subverting gender forms (and forms in general) for fun and profit: ⏎ Select any option, then right click->inspect on… https://t.co/fFZJ9eyeY1
<bofh> Welp checking twitter was a mistake. Fuck this country so much.
<UmbralRaptop> Apparently we're now fighting 3 wars in the mideast, and supporting a 4th? >_<
<bofh> screw this I think I'm going to take whitequark's lead and start posting catgirls on main
<UmbralRaptop> Tired: horny on main. Wired: fuzzy on main.
<bofh> LOL
Majiir is now known as Snoozee
<egg|phone|egg> !Wpn whitequark UmbralRaptor bofh et al.
* Qboid gives whitequark UmbralRaptor bofh et al. a Fuchsian bell/Poké Ball hybrid
<egg|phone|egg> !Wpn котя
* Qboid gives котя a rhombic terminal/log hybrid
egg|cell|egg has joined #kspacademia
egg|phone|egg has quit [Ping timeout: 186 seconds]
Sarbian has quit [Quit: ZNC - http://znc.in]
Sarbian has joined #kspacademia
tawny has quit [Ping timeout: 383 seconds]
egg|cell|egg is now known as egg|a320|egg
<egg|a320|egg> !Wpn whitequark
* Qboid gives whitequark a Bolzano-Weierstraß stern file
egg|a320|egg has quit [Ping timeout: 186 seconds]
egg|phone|egg has joined #kspacademia
egg|phone|egg is now known as egg|lhr|egg
egg|lhr|egg has quit [Ping timeout: 198 seconds]
APlayer has joined #kspacademia
<egg|zzz|egg> !wpn whitequark
* Qboid gives whitequark a signaling Pokémon
<egg|zzz|egg> !wpn bofh
* Qboid gives bofh a bash-compatible pharmacological dip pen
egg|phone|egg has joined #kspacademia
tawny has joined #kspacademia
<bofh> !wpn egg|zzz|egg
* Qboid gives egg|zzz|egg a Martian mechanism
tawny has quit [Ping timeout: 186 seconds]
tawny has joined #kspacademia
awang has joined #kspacademia
UmbralRaptop has quit [Remote host closed the connection]
APlayer has quit [Ping timeout: 182 seconds]
awang has quit [Ping timeout: 198 seconds]
<iximeow> !wpn cat
* Qboid gives cat a Java crow
<rqou> bofh: ping?
<rqou> bofh: i'm actually trying to implement "A Generalized Eigenvalue Approach for Solving Riccati Equations" now
<rqou> i don't understand how the step "An orthogonal row transformation can then be constructed in order to construct a deflated pencil 'lambda E~ - A~' following (55):"
<rqou> works
<bofh> rqou: pong
<rqou> also, do you have a good example of how to compute the "QZ algorithm?"
<bofh> sec, let me pull up the paper
awang has joined #kspacademia
<bofh> rqou: Golub and van Loan if you want to implement QZ yourself, lapack SGGEV (tho you prolly want to trim it a bit if you're going to run it on a µC) if you want a pre-done impl.
<bofh> (SGGES if you need the generalized Schur form as well as eigenvalues)
<rqou> so i'm not actually sure exactly which results i need at this point
<rqou> i'm still trying to understand how the algorithm is supposed to work
<bofh> it's kind of long and nontrivial, but anything for solving Riccati Equations will have that property.
<rqou> so first of all i don't know how the "pencil" 53 is related to anything
<rqou> and then i don't understand what D~ is
<rqou> and then i don't understand how U is supposed to be constructed in 55
<rqou> and then i don't understand how step 67 works either
awang has quit [Ping timeout: 383 seconds]
<rqou> bofh: last time i asked this you told me to do "QR decomp via Householder reduction to upper Hessenberg followed by standard QR"
<rqou> but i don't see how that is connected to anything
<bofh> rqou: yeah that works if you just need eigenvalues and not generalized eigenvalues, which I assume you need the latter if they're saying to use QZ instead of QR.
<bofh> anyway I found the paper, let me try to puzzle out what this pencil is.
<rqou> wait, so have you actually implemented this? :P
<bofh> rqou: I know people who have, for their research, I myself have not b/c I've never needed to solve general Riccati Eq'ns.
<bofh> (I could just ask one of them worst-case, but this paper is pretty readable. Sec)
<rqou> i don't need general riccati equations
<rqou> i just need "the discrete time algebraic Riccati equation"
<rqou> is that any simpler?
<rqou> i don't need general riccati equations
<rqou> ugh, flaky university wifi
<rqou> bofh: first dumb question: are the generalized eigenvalues that the paper talks about equivalent to the ones i learned about?
<rqou> the paper talks about Ax=lambda*Bx but the generalized eigenvalues that i learned about are (A-lambda*I)^m x = 0
<X> Wut
<rqou> what?
<X> That’s the guy that made an alternative to the quadratic equation. I think, but it only works for like a <<<< b
<rqou> ??
<X> Riccati
<rqou> well i don't care about that i just want my LQR control
<bofh> rqou: yeah I don't understand why they talk about using QZ, QR suffices here.
<rqou> lol why does QR suffice? :P
<rqou> QR and QZ are completely different?
<bofh> the latter is a generalization of the former
<rqou> well, i don't see why restricting to QR works either :P
<rqou> can i not end up with complex conjugate eigenvalues?
<bofh> sec, trying to figure out the E~ construction
* egg|zzz|egg stabs BS 1363
<egg|zzz|egg> !wpn bofh, rqou, whitequark, et al.
* Qboid gives bofh, rqou, whitequark, et al. a holographic blizzard with an exception attachment
<rqou> worksforme(tm)
<rqou> bofh: um, the scipy code also needs QZ?
<bofh> rqou: I thought scipy *implements* QZ tho
<rqou> scipy also ends up calling "GGES"
<rqou> then it calls "tgsen"
<rqou> and then it calls "trtrs"
<rqou> bofh: do i just reimplement this code?
<rqou> oh what it _also_ needs QR
<bofh> rqou: I mean that'd be the easiest way to do it *probably*
<rqou> this seems really complicated
<rqou> ugh, it needs LU as well
<rqou> seems like this requires ALL THE LINALG PRIMITIVES
<rqou> zomg wtf is happening in this code
<rqou> why is this some unholy amalgam of python, C, and fortran?
<bofh> "some unholy amalgam of python, C, and fortran" is like, the description of most scientific computing code, incl. scipy
Felger has joined #kspacademia
<rqou> but WHY?
Felger has quit [Remote host closed the connection]
<rqou> why is everything in this ecosystem shit?
<rqou> does nobody ever run code on potatos like me?
Felger has joined #kspacademia
<egg|zzz|egg> bofh: seems FNLIB is unfaithful (still much better rounded than glibc but that's the lowest bar in the world)
<egg|zzz|egg> !wpn Felger
* Qboid gives Felger a spherical equinoctial parabola/lemma hybrid
<egg|zzz|egg> bofh: also slowest so far
<Felger> That didn't take long
<egg|zzz|egg> Felger: what, getting an absurd !wpn? :-p
<Felger> Well, that too
UmbralRaptop has joined #kspacademia
<Felger> :D
<egg|zzz|egg> Felger: how's your pet station
<Felger> Still burning very-nearly circular orbits in the sky
<Felger> How's yours?
<bofh> egg|zzz|egg: I think the Newton iterate count it does can be decreased and also unrolled.
<bofh> rqou: yeah I think you want to write an impl from scratch (well, mostly scratch, using lapack) in that case :/
<rqou> basically just copying the scipy code?
<rqou> why is everything in this ecosystem shit?
<egg|zzz|egg> bofh: yeah msvc is not good at unrolling
<bofh> most scientific computing is run on large clusters and not on like a raspi is my guess
<rqou> lol this is smaller than a raspi
<egg|zzz|egg> Felger: I don't really have a pet station afaik :-p
<egg|zzz|egg> Felger: I have a good cube root thoo
<Felger> Well, you've got a pet orbital dynamics simulator, which is pretty good too
<egg|zzz|egg> bofh: but at what point does optimizing the implementation turn it into just another implementation
<egg|zzz|egg> bofh: unrolling is OK, but changing the iteration count morally makes it another method
<egg|zzz|egg> Felger: true
<egg|zzz|egg> bofh: https://gist.github.com/eggrobin/95ad0f07e0a0a391fda78a3bcbcefbac so egg_halley is just better than egg, the double-newton thing is overly smart
<bofh> is it faster, tho?
<bofh> oh, very marginally, it seems.
<rqou> bofh: btw, what's the numerical accuracy of arm cortex-m VSQRT.F32?
<rqou> can i trust it?
<Felger> Hmm
<Felger> I need to figure out how to get me a copy of 1.3.1
<Felger> Steam auto-updated past it. Nuts.
<egg|zzz|egg> hmm, there might be a way to get an older version?
<egg|zzz|egg> at least in the KSP store there is
<bofh> VSQRT.F32 or VRSQRTE.F32?
<bofh> the former is IEEE754 single minus denormals, so you can trust it
<bofh> the latter is I think 9 bits of precision with the rest all zero (which is annoying, rsqrtps on Intel is 11)
<rqou> cortex-m only has the former
<rqou> the latter is NEON
<rqou> again, potato mode :P
<bofh> oh Cortex-*M*. My condolences.
<rqou> is cortex-m that bad?
<rqou> cortex-m is still ieee754 compliant
<bofh> it's annoying compared to Cortex-A :P
<rqou> how so?
<bofh> no NEON/SIMD unit on most cores, mostly
<rqou> does that matter much?
* egg|zzz|egg zzz
<Felger> Oh nice, all the previous versions are listed in the "Betas" tab in Steam
<Felger> So I can roll back to a functional RO / Kopernicus version super easily
<Iskierka> bofh: is there context to the 240W potato?
<UmbralRaptop> I'm guessing an old computer?
<kmath> YouTube - 240v mains electric potato
<bofh> it eventually gets to a steady-state of passing about 1A for a bit
<Iskierka> ... interesting way to cook one