-
Content Count
13,282 -
Joined
-
Last visited
Community Reputation
5,827 ExcellentAbout NathanKell
-
Rank
Keepin' it Real
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
AVaughan started following NathanKell
-
IIRC, CB's GetTemp just gets the base temperature from the temperature curve (i.e. evaluate that float curve by altitude). You want CB.GetAtmoThermalStats(). It gives the offset to the (base) temperature at altitude, given a bunch of inputs. It calculates that offset by getting the dot product between the polar axis and the sunward vector, the latitude (acos of dot(upaxis, body polar axis) ), the sun's minimum and maximum height above the horizon given the body's position in its solar year (this is obvs less meaningful for stock with its lack of axial tilt ). From that it figures out how much
- 4,339 replies
-
- 3
-
-
- ksp trajectory optimization tool
- orbit
- (and 3 more)
-
Looking for Solar Panel Math Models in KSP
NathanKell replied to Arrowstar's topic in Add-on Development
@R-T-B Yep the EC generation is all in post. The rest of the calculation is setting the angle and determining LOS (Solar Panel also overrides the LOS step to do some raycasts, but it only establishes what the blocking part is, it doesn't generate EC). Happy to help! -
Looking for Solar Panel Math Models in KSP
NathanKell replied to Arrowstar's topic in Add-on Development
@R-T-B can you subclass from solar panel and then override PostCalculateTracking. Set a flag before you call CalculateTracking, and in PostCalculateTracking() only call base() if the flag isn't set, then after your call, set the flag back to false. Hacky, but should prevent EC generation when you call CalculateTracking but still do so when the module does its own thing. (to be clear, EC generation is done in PostCalculateTracking) -
Looking for Solar Panel Math Models in KSP
NathanKell replied to Arrowstar's topic in Add-on Development
@OhioBob great to see you again as well! I've been pretty much detached from all things Kerbal for the last year and a half, and mostly-detached for a couple years before that. Things are well though! Hope same for you? So...I went digging a bit and saw this in physics.cfg: solarLuminosityAtHome = 1360 // Solar flux in W/m^2 at the orbital altitude of the homeworld First, I screwed that up, it should be irradiance. But anyway, that reminded me that solar panels actually hijack the flight integrator's thermo code (which has to calculate solar flux at the vessel's current orbital alt -
Looking for Solar Panel Math Models in KSP
NathanKell replied to Arrowstar's topic in Add-on Development
@Arrowstar @OhioBob That...sounds about like what I wrote there, yes. I have no idea if it's been changed since. It's taking the dot product of the panel's up vector and the ship->Kerbol vector, dividing by (alt/ref_SMA)^2, and that's the output. If the raycast from the panel's suncatcher transform hits any collider on its way to the sun, the panel is counted as "in shadow" and provides no charge. However there's also two other aspects involved, it's coming back to me now. First, the panel's temperature. There's a floatcurve in the PART config that determines a multiplier at a -
Astrion started following NathanKell
-
Is there a Doctor on the Station?
NathanKell replied to Cathix03's topic in Suggestions & Development Discussion
Yeah, I did some work to make the previously internal-only Kerbal Part (code-side) work like other PARTs. That is it would pull its PartModules from cfg and support adding/removing PartModules and changing PartModule values in cfg. But there was a whole lot bound up in the prefab, linking the asset and the Part, such that only the gameplay side is really easily moddable. Me and @Porkjet had a dream at one point to put real humans in, but we never got to it before we moved on. Man, takes me back. -
How does KSP compute aerodynamic heating?
NathanKell replied to Arrowstar's topic in Add-on Development
@FreeThinker density. @Arrowstar flux is (calculated external temp - skin temp) x coefficient x the global convection constant and yields watts per square meter. That is then multiplied by exposed skin area and applied to the skin thermal mass. All constants are in Physics.cfg- 9 replies
-
- 2
-
-
- heating
- aerodynamics
-
(and 1 more)
Tagged with:
-
How does KSP compute aerodynamic heating?
NathanKell replied to Arrowstar's topic in Add-on Development
@FreeThinker Nope, barking up the wrong tree. Heating is proportional to sqrt(rho) * v^3, not rho * v^2 (the latter being dynamic pressure). What's actually related to dynamic pressure is those cool swirly visual FX you see. @Arrowstar sure thing. So, in the simple case (let's assume nothing is occluded), then the hypersonic convective coefficient is: 1E-07 * MachConvectionFactor * (density ^ MachConvectionDensityExponent) * (velocity ^ MachConvectionVelocityExponent) EDIT: Oh, right, and the sqrt is ignored if density >= 1, so it's really (if density > 1, density,- 9 replies
-
- 3
-
-
- heating
- aerodynamics
-
(and 1 more)
Tagged with:
-
Probus started following NathanKell
-
Anth12 started following NathanKell
-
Hey there Nathan of Kell.
how have your been doing??
Hope to hear from ya.
drtedastro.
-
RoboRay started following NathanKell
-
AloE started following NathanKell
-
You have perfect timing, @Bornholio! By reversed, you mean how the mission and expiration stupids are reversed? That's correct because the expiration should decrease the stupider the kerbal, and the mission training time should increase the stupider the kerbal. Both feed into lerps of (min, max, stupid) which linearly interpolate between the given min and max values based on the input stupid value (where 0 results in min and 1 results in max). Unless I misunderstand what you mean.
-
XxLedvin25xX started following NathanKell
-
Barzon started following NathanKell
-
Wilhelm Kerman started following NathanKell
-
MaltYebisu started following NathanKell
-
RSS 1.3 update
I made a full RSS 1.3 with everything to work for 1.3
Can i post it ?
-
@linuxgurugamer hmm. @rsparkyc did the updates to 1.2. Not sure his plans for 1.3.