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.
UmbralRaptor has quit [Ping timeout: 190 seconds]
UmbralRaptop has joined #kspacademia
<UmbralRaptop>
found in physics.cfg: thermalIntegrationAlwaysRK2 = False // Do we always use RK2 even at 1x warp? Else we use RK1 at 1x warp.
<bofh>
wait, RK*Two*? How ancient is this code?
<Majiir>
!wpn egg
* Qboid
gives egg a 📠
<Majiir>
!wpn egg|zzz|egg
* Qboid
gives egg|zzz|egg a liquid-cooled ☣
awang has joined #kspacademia
Majiir is now known as Snoozee
<UmbralRaptop>
bofh: It's KSP code. ¯\_(ツ)_/¯
<UmbralRaptop>
Oh, hey. I think I just got messaged on the bird website by a crank.
<iximeow>
ben shapiro caused gravitational anomalies!!
<UmbralRaptop>
Dirty secret of astronomy: many subfields use very little or no GR.
ferram4_ has quit [Read error: -0x1: UNKNOWN ERROR CODE (0001)]
ferram4 has joined #kspacademia
tawny- has joined #kspacademia
tawny has quit [Ping timeout: 198 seconds]
Profound has joined #kspacademia
APlayer has joined #kspacademia
<e_14159>
SnoopJeDi: I read the article; zip?
<egg|zzz|egg>
!wpn whitequark
* Qboid
gives whitequark a bifurcated fish
tawny- has quit [Ping timeout: 383 seconds]
APlayer has quit [Ping timeout: 182 seconds]
APlayer has joined #kspacademia
APlayer has quit [Read error: Connection reset by peer]
APlayer has joined #kspacademia
<egg|zzz|egg>
bofh: KSP is silly like that (note that UmbralRaptop's presumably default setting is that it's Euler when not in time warp :D)
<egg|zzz|egg>
!wpn whitequark
* Qboid
gives whitequark a bromine union
<egg|zzz|egg>
!wpn котя
* Qboid
gives котя a quark
<egg|zzz|egg>
appropriate
<whitequark>
lol
<egg|zzz|egg>
awang: do we think KSP 1.4.1 and 1.4.2 are mostly ABI compatible?
APlayer has quit [Ping timeout: 182 seconds]
<egg|zzz|egg>
bofh: OK so I think I know how to compute upper bounds on the rounding error for the Householder, and I see things I could do that might improve it (e.g. clobber 37 bits rather than 36 so 5 * x^3 is exact etc.), but I'd want to experimentally check that that doesn't worsen things; to do that decently I'd need a correctly-rounded cbrt to check against, any idea how to implement that (can be fairly slow, it's easy to
<egg|zzz|egg>
be faster than I/O through Mathematica)
APlayer has joined #kspacademia
APlayer has quit [Ping timeout: 182 seconds]
<egg|zzz|egg>
bofh: meh nevermind none of that improves my theoretical bounds
<egg|zzz|egg>
bofh: something that would improve things is the last multiplication x(x^3-y) being exact but it is not
<egg|zzz|egg>
!wpn UmbralRaptop
* Qboid
gives UmbralRaptop a repeater
<UmbralRaptop>
!wpn egg|zzz|egg
* Qboid
gives egg|zzz|egg a sub-calibre basket
<UmbralRaptop>
!coffee
* egg|zzz|egg
fetches the intercontinental ballistic coffee delivering system
<kmath>
<JCTArtStudio> #Dromaeosaur concept sketches I did in the night. I quite like the fighting pair on the top left. https://t.co/TgU4cZA8L2
<bofh>
!coffee
<bofh>
!amphetamines
<bofh>
damnit
<bofh>
egg|zzz|egg: clearly you should implement quad precision FMA in software :P (actually wait, if you're targeting Sandy Bridge or later, AVX gets you a *hardware* FMA that's reasonably fast)
<bofh>
s/Sandy/Ivy/ since you care about doubles
<egg|zzz|egg>
bofh: my understanding is that you shouldn't use AVX in sandy
<egg|zzz|egg>
bofh: also I have a soft fma in the standard libs anyway so that's fine
<bofh>
nah, you shouldn't use AVX512 like ever (also FMA3 isn't necessary vector-only, there are scalar instructions too)
<egg|zzz|egg>
bofh: but at some point we should migrate to AVX, for now we'd like principia to work for dinosaurs on nehalems or whatever
<egg|zzz|egg>
bofh: when we migrate to AVX we'll have to change our allocator to allocate aligned for that though
<egg|zzz|egg>
but the nice thing is that 3d vectors will fit in one ymm register :-p
<egg|zzz|egg>
bofh: but even with an fma, how do I write a correctly-rounded cbrt
<kmath>
<bofh453> @EmilyGorcenski ...you know, I never realized that despite so much linalg background even tho it's obvious once you… https://t.co/O4qRaxtN4r
<egg|zzz|egg>
bofh: e.g. if you have theta functions you can compute eigenvalues of a 5*5 matrix with that (yes, it's stupid and ill-conditioned, but that holds for <5*5 too)
<whitequark>
egg|zzz|egg: cant you just
<whitequark>
ship two builds of principia
<whitequark>
one with avx and one without
<whitequark>
i think both gnu and msvc platforms allow you to even do that within one shared object
<whitequark>
on gnu you need the IFUNC relocation
<whitequark>
and on msvc it's some godforsaken pragma
<whitequark>
egg|zzz|egg: that said
<whitequark>
you know about avx offset right?
<bofh>
egg|zzz|egg: wait, how would you compute eigenvalues using theta functions?
<bofh>
"This technique gives closed form solutions in terms of hypergeometric functions in one variable for any polynomial equation which can be written in the form
<bofh>
x^p+bx^q+c."
<whitequark>
egg|zzz|egg: yeah issuing even one AVX512 instruction kicks you out of the highest P-state
<bofh>
LITERALLY SCREAMING IN HORROR ATM
<whitequark>
for a small eternity
<whitequark>
so if you have a compiler that autovectorizes to AVX512 but that code is only lukewarm you get worse performance
<egg|zzz|egg>
whitequark: AVX or AVX512? because we'd be looking at AVX, not 512
<whitequark>
oh
<bofh>
whitequark: yeah but that's AVX512 only, and doesn't extend to plain AVX, correct?
<whitequark>
yes
<whitequark>
I'm honestly not certain why even Intel even bothers with AVX512
<egg|zzz|egg>
we have stuff that's 3d in binary64 everywhere so anyway that's hot
<whitequark>
did they just get inspired by hidamari sketch or what
<bofh>
(also rofl I am so using "lukewarm" as a code descriptor now)
<egg|zzz|egg>
we occasionally have 6d stuff but that's definitely not more than tepid
<bofh>
I think so, honestly? iirc rygorous claims AVX512 is spiritually descended from Xeon Phi or somesuch
<bofh>
but it genuinely seems useless
<egg|zzz|egg>
why can't we have binary128 instead >_>
<egg|zzz|egg>
(OK then I'd want 512-bit registers to hold four of those)
<egg|zzz|egg>
bofh: needless to say, please do not compute eigenvalues this way, but still, it works
<bofh>
egg|zzz|egg: TIL
Profound has quit [Read error: Connection reset by peer]
<awang>
egg|zzz|egg: I'd imagine 1.4.1 and 1.4.2 are ABI compatible? I thought that the CLR would guarantee a particular layout
<awang>
And I don't remember reading about any API changes
<egg|zzz|egg>
awang: yeah but it's not like they document things
<awang>
Bornholio also booted 1.4.2 with pretty much everything in the golden spreadsheet, so that's a good sign
<egg|zzz|egg>
OK so our 1.4.2 release will support 1.4.1 too
<awang>
Yeah, true
<egg|zzz|egg>
hopefully it doesn't blow something up
<UmbralRaptop>
Incidentally, there will probably be a 1.4.3 soon.
<egg|zzz|egg>
UmbralRaptop: WHAT
<egg|zzz|egg>
stabbity
<egg|zzz|egg>
bofh: ok so I think I have an error bounded by (1+half ulp)**12 on my Householder correction term
<egg|zzz|egg>
bofh: not sure what to do with that though
<egg|zzz|egg>
bofh: do you know what the longest sequence of 1s or 0s after the round bit is for a cube root?
<bofh>
OH: "Mind you I'm pretty sure if you use Theta functions to compute eigenvalues of a 5x5 matrix, god literally comes down from the sky and punches you personally."
<bofh>
egg|zzz|egg: not offhand, that actually sounds like a nasty thing to compute for a general double
<bofh>
since you get into decimal expansion fun
<egg|zzz|egg>
bofh: yes that's a pretty good description of what happens if you compute eigenvalues that way
<bofh>
and so I *think* it can in theory be arbitrarily long, but that's not meaningful here
<egg|zzz|egg>
nah, e.g. for a sqrt you can bound it to p-1 or p+1 where p is your precision
<kmath>
<hennichodernich> @bofh453 @rygorous BTW "fun roll loops" roughly translates to German "Spaßbrötchenkringel"
<APlayer>
LOL
<UmbralRaptop>
It's important to choose flags that make math both fun and safe.
<egg|zzz|egg>
!wpn UmbralRaptop
* Qboid
gives UmbralRaptop an acid-sensing cipher
<egg|zzz|egg>
!wpn bofh
* Qboid
gives bofh a plurdled underflow
<egg|zzz|egg>
bofh: what's your derivation for (2p+3)/3?
* egg|zzz|egg
hasn't tried yet
<bofh>
egg|zzz|egg: a semi-intuitive total guess, rofl. I'm doing an actual proper derivation based on the technique in that paper now, which unsurprisingly takes more than 15 seconds.
<egg|zzz|egg>
:-p
<bofh>
whitequark: damnit I have diggy diggy hole stuck in my head AGAIN
<UmbralRaptop>
!acr -add:CSV Catalog of Suspected Variables
<Qboid>
UmbralRaptop: I added the explanation for this acronym.
<whitequark>
bofh: same
<whitequark>
I AM A DWARF AND I'M DIGGING A HOLE
<whitequark>
DIGGY DIGGY HOLE
<whitequark>
DIGGY DIGGY HOLE
<whitequark>
!wpn -add:wpn hole
<Qboid>
whitequark: Weapon added!
* UmbralRaptop
is mildly afraid of this meme.
<whitequark>
!wpn -add:adj diggy
<Qboid>
whitequark: Adjective added!
<whitequark>
!wpn
* Qboid
gives whitequark a fluorine file
<bofh>
TO DIG AND DIG MAKES US FREE, COME ON BROTHER SING WITH ME
<whitequark>
bofh
<bofh>
qat
* whitequark
just wrote some 8051 assembly for Dallas DS80C320
* whitequark
is partying like it's 1995
<bofh>
what the everliving hell please teach me your time travel skills (or maybe not, if it involves writing 8051 asm)
tawny has joined #kspacademia
<whitequark>
CY7C68013A, a pretty good way to terminate USB 2.0, has a customized DS80C320 core inside
<whitequark>
there still isn't anything better to interface USB 2.0 to an FPGA and get full 480 Mbps minus protocol overhead to actually go into the FPGA
<whitequark>
unless you have a reasonably large & fast FPGA that can talk via ULPI
<bofh>
Huh, that's actually useful to know since I've needed to interface USB2 to FPGAs and the standard solutions Xilinx shoves on you rarely get even half of 480Mbps
<whitequark>
CY7C68013A basically has a shitty 8051 inside for configuration and control requests but when you actually transfer useful data it doesn't do anything
<whitequark>
the FPGA directly talks to the USB FIFOs
<whitequark>
16-bit bus at 30 MHz → exactly 480 Mbps
<whitequark>
I think it gets to 48 MHz but with some caveats
<whitequark>
I'm going to be using a 8-bit bus at 48 MHz in this device because I'm out of FPGA pins
<whitequark>
so that's 384 Mbps at most but it's well enough
<egg|phone|egg>
!Wpn -add:Wpn lagoon
<Qboid>
egg|phone|egg: Invalid type
<egg|phone|egg>
!Wpn -add:wpn lagoon
<Qboid>
egg|phone|egg: Weapon already added!
<whitequark>
!wpn -add:wpn FIFO
<Qboid>
whitequark: Weapon added!
<whitequark>
!wpn -add:adj USB
<Qboid>
whitequark: Adjective added!
<whitequark>
!wpn
* Qboid
gives whitequark an icy conifer
<egg|phone|egg>
!Wpn whitequark
* Qboid
gives whitequark a disassembler/Norgg hybrid
<whitequark>
!wpn egg
* Qboid
gives egg an aquatic transpose fluent
<whitequark>
... what kind of weapon is "fluent"
<UmbralRaptop>
A time varying quantity, or a function. Its instantaneous rate of change is a fluxion.
<UmbralRaptop>
Blame Newton.
<bofh>
whitequark: hm, not bad at all
<bofh>
whitequark: also what's the pin count on this FPGA?
<whitequark>
QFN-48 package
<whitequark>
total 39 GPIOs
<whitequark>
16 of them are used for actual domain problem, 20 for communication with CY7C68013A
<whitequark>
3 free so far
<whitequark>
probably could stick I2C there or a LED or something
<egg|phone|egg>
!acr -add:EGNOS European Geostationary Navigation Overlay Service
<Qboid>
egg|phone|egg: I already know an explanation for EGNOS! (Update it with !acr -update:EGNOS European Geostationary Navigation Overlay Service)
<egg|phone|egg>
EGNOS?
<Qboid>
egg|phone|egg: [EGNOS] => European Geostationary Navigation Overlay Service
<egg|phone|egg>
Huh
<bofh>
whitequark: QFN48? that's a surprisingly small form factor for an FPGA, what's the gate count? oh, is this like an ice40?
<bofh>
also ROFL at pcbclone
<whitequark>
iCE40UP5K, yes
<whitequark>
there's also an iCE40UP3K with 21GPIOs in 30-ball BGA
<bofh>
Not bad. Well, modulo it being BGA which precludes soldering it yourself (I swear I need to try BGA rework with blowtorch sometime, on that note)
<bofh>
what board was it that had that obscenely bright RGB LED btw?
<whitequark>
huh? BGA is easily solderable with a toaster oven
<whitequark>
azonenberg doesn't even use a toaster oven controller
<whitequark>
he literally just sets the thermostat to 230°C
<whitequark>
and yes that's how he solders shit like xilinx series 7 FPGAs
<bofh>
...oh, that would make sense. Like I've done that to REflow BGA (a broken XBox 360 RRoD-mode), but I was always under the impression that to freshly solder BGA you still needed to handle placement of the solder balls themselves precisely on the board too, and that might shift if you just do something like that.
<bofh>
I guess not.
<whitequark>
well you slap the chip where it ought to be
<whitequark>
granted, azonenberg's chips are freaking heavy
<bofh>
(I really need to get out of this habit of mentally contriving ways something wouldn't work b/c it sounds too easy).
<bofh>
Yeah, series 7 Xilinx are *huge*
<whitequark>
if you're doing like a 6-ball CSBGA maybe it WILL move
<whitequark>
then again why the fuck are you doing a 6-ball CSBGA on a toaster oven, do you hate yourself?
<bofh>
True. Also I'm curious what chips even come in 6-ball CSBGA that don't also have like TSSOP versions.
<bofh>
whitequark: when did PCB design become so cheap all of a sudden? and with that turnaround?!?
<bofh>
like suddenly it makes sense for me to just design those PCBs I've had as half-completed projects for *years* b/c it's suddenly not going to make me dead broke
<whitequark>
wait until you see their prices
<whitequark>
$40 for 10x10 2-layer with 48 hour processing, $25 more for a steel stencil w/o frame
<bofh>
FOURTY EIGHT HOUR how is it that fast
<whitequark>
oh they do 24-hour too
<bofh>
like, at that price
<bofh>
damn
<bofh>
like I think I need to get a shitload of electronics stuff done now
<whitequark>
$67 with 24 hour turnaround
<bofh>
holy fuck that's *insane*
<bofh>
on like, minimum stock one, not like 10000 or something?
<whitequark>
@10
<whitequark>
with this uh caveat
<whitequark>
"However, very rarely orders are short 1 (~0.5%) or 2 (~0.1%) PCBs. The board house is cheap and dirty, and refuses to do anything about these orders."
<whitequark>
they also do up to 14 layers, aluminium and flexpcb
<whitequark>
$50 aluminium, $100 flex
<whitequark>
$45 for 4-layer, $100 for 4-layer with 48-hour turnaround
<bofh>
Ehh, that's a perfectly acceptable caveat. Also that's a pretty good r--that's an INSANELY CHEAP rate for 4-layer.
<whitequark>
oh I mention caveat because it's funny
<whitequark>
you can panelize btw
<bofh>
Nice.
<whitequark>
oh and they ship with dhl/fedex/ups, no need to deal with shitty airmail
<bofh>
Oh excellent, so it'll actually get to you in a reasonable timeframe, and tracked too.
<bofh>
today's accidental discovery: Drano is very good at cleaning cellphone outer screen glass (don't ask).
<bofh>
I mean the grime is primarily going to be oils and lipids & sodium hydroxide *would* be good at getting rid of those, with the sodium hypochlorite oxidizing just about anything else that's stuck there, and neither would damage glass, so.
<bofh>
hmm.
<whitequark>
sodium hydroxide *does* damage glass
<whitequark>
ever seen one of those 10L 1M NaOH bottles in a chem dept?
<bofh>
oh, good point. that's a ~fairly slow process (by which I mean I don't think that happens over the course of, like, 15 seconds) tho, I *think*.
<bofh>
HAND HELD EASY TO USE - This fireball extinguisher weighs less than 3 pounds and requires no training.
<bofh>
SAFE FOR USE on Class A (ordinary combustibles), Class B (Flammable liquid) spills, Class C (energized electrical fires)
<bofh>
SELF ACTIVATING – Simply throw or roll into a fire and it will self-activate within 3 – 5 seconds
<bofh>
is this literally a fire-extinguishing bocce ball?
<whitequark>
apparently
<egg|zzz|egg>
[insert classic french comedy sketch]
<whitequark>
they do appear to be remarkably efficient for what you expect
<whitequark>
on youtube videos
* egg|zzz|egg
hears strange animal scrams
<whitequark>
it has a fuse inside and some kinda powder, bicarbonate i think?
<egg|zzz|egg>
s/cram/cream
<Qboid>
egg|zzz|egg meant to say: /me hears strange animal screams
* egg|zzz|egg
assume some animal is eating some other animal
<bofh>
egg|zzz|egg: it was funnier the first time, I was imagining like a raccoon manually inserting graphite control rods into an RBMK
<egg|zzz|egg>
bofh: here it would probably be a badger
<egg|zzz|egg>
or maybe a fox
<egg|zzz|egg>
sometimes you see foxes on the lawn at night
<bofh>
do foxes have sufficiently complex hand mobility and fine motor control to hold a control rod tho?
<egg|zzz|egg>
well they can just bite the rope holding up the rods
<bofh>
Point.
<egg|zzz|egg>
bofh: is throwing balls of fire extinguisher a D&D skill of sorts
<SnoopJeDi>
e_14159, "zip" is a speedrunning term for abusing the collision resolution behavior in certain games to go fast. Sonic's particularly notable for them, as is the Mega Man series.
<bofh>
SnoopJeDi: oh man so like, Sonic 2006 is the game that taught me that "physics" can be used as a verb.
<bofh>
like "he physics'd thru the floor of that level"
<bofh>
egg|zzz|egg: ROFL
<SnoopJeDi>
bofh, it can and I and 100+ of my colleagues physics'd the fricc out of today
<bofh>
egg|zzz|egg: probably!
<whitequark>
warning: Submodule in commit e9a64996bedbc224d1edb401162d2c3cc15eb7c1 at path: '(null)' collides with a submodule named the same. Skipping it.
<whitequark>
thank you git
<whitequark>
null: not just for javascript
<bofh>
nice.
<SnoopJeDi>
It was such a good day and I now remember that I don't actually hate science but man I'm exhausted
<bofh>
hey it's worth it for the reminder :D
<SnoopJeDi>
the levitron is my favorite bang-for-the-buck demo
<SnoopJeDi>
updating my schpiel this year with a mini-rant about how angular momentum is embedded in the fabric of reality at like pretty much every level
<bofh>
It really is, tbh.
<SnoopJeDi>
so that people who consider a spinning top not falling over being very remarkable are rather foolish in a sense :P
<SnoopJeDi>
usually am able to wow them with some discussion of why the Milky Way is only a stripe in the night sky
<SnoopJeDi>
Rocky Kolb's public lecture was...idk, kinda dull. It's always hard to tell with those, but he basically described GR and the dark matter/energy mysteries and that's been done to death for a decade now
<bofh>
SnoopJeDi: I mean anything with a rotationally symmetric Lagrangian will by necessity be a system that is angular-momentum-conserving, so.
<SnoopJeDi>
bofh, yea, the rabbit hole goes deep if you're willing to be rather generous about what you even much by it, a la QM
<bofh>
oh for fun get into both orbital angular momentum (the QM analogue of what you expect) and also spin angular momentum :D
<SnoopJeDi>
yea, I draw contrast between "we can talk about galaxies this way...and also matter at the other end of the scale"
<SnoopJeDi>
can't quite get into the nitty-gritty of anything spin-orbit, but everybody nods their head enough when you mumble about electrons whirling around a nucleus
<egg|zzz|egg>
!wpn whitequark
* Qboid
gives whitequark an assert
<egg|zzz|egg>
bofh: how did you get p+1 for the cube root? maybe I can see whether it looks sane
<bofh>
egg|zzz|egg: so I basically did the analogous procedure as in the paper you linked, which is why I don't think it's sane, since that seems to imply that the result would be p+1 for arbitrary rootn, which seems completely false.
<egg|zzz|egg>
bofh: I mean it would be consistent with the rule of thumb of "twice the digits" :-p
<UmbralRaptop>
SnoopJeDi: given how much I struggled with Euler angles, I refuse to beleive that spinning tops aren't magic. >_>
<SnoopJeDi>
same
<SnoopJeDi>
particularly self-inverting tops
<egg|zzz|egg>
UmbralRaptop: you should take a course on differential geometry
<egg|zzz|egg>
that's the only sane way to approach SO(3)
<egg|zzz|egg>
or SU(2) for that matter
<UmbralRaptop>
I'm not sure if we have that here.
<bofh>
I mean yes, but also down the differential geometry path lies madness universally.
<bofh>
UmbralRaptop: pretty sure you do, at least basic Riemannian. It'll be a math course, not physics.
<egg|zzz|egg>
bofh: yes, but you'll be able to approch the madness soundly and free from coordinates
<bofh>
true.
<SnoopJeDi>
I made a very embarassing Frenet frame error this week >_>
<bofh>
whitequark: I swear I wind up being entirely too happy whenever I make a comment to the effect of "girl in X fiction is me" and people agree. >_>