Project Orbiter Galaxy

just to make sure I get that right: You have stuff being outside the rendering window, not outside your screen, right?

Well, it was both, but the advice you gave (mostly) fixed it. The default setting was 1440 by 900, and Wine was opening it in a 1280-ish by 800-ish window (which would fit on my screen if not for the panels, my laptop having a maximum resolution of exactly 1280 by 800). So yeah, the edges of the window were going off the edge of my screen (or, at least, were being subsumed under my panels), and the program wasn't getting as big a window as it thought, so the content was going off the edge of the window. Left <-> right wise it's fine now, but the 768 in 1024 * 768 is a bit big for my screen, given GNOME's top and bottom panels.

That's two tons of strange, to say the least. I was very carefull to make all of the GUI displays dynamic (including the system display... it should automatically fit itself into the window, no matter what resolution). Is it possible that Wine, because of your limited screen resolution, opens the whole thing in a window that's actually too small for it?

That was it.

as for the window size, you can't resize the window at runtime, but you CAN adjust your resolution in \Data\Ogalaxy.cfg (allthough I would not recommend going below 1024x768). I forgott to mention that in the manual...
I hope that the rendering outside the window will stop when you set a resolution that fits your screen size.

Yup.

oops, yes, that's the previously mentioned anihilation of binary systems. Looks like I deleted the primary instead of the secondary, will be fixed!

This is due to unavoidable errors in the HYG-database. Thanks for pointing them out. If you find other misclassified stars, just tell me, I'll adjust them in the catalogue.

I thought so. I suspected that the saftey I put in wasn't enough, but never really found the time to check for it seriously. I'll put in a function that checks for apparent magnitude at Sol and then decides wheather they would be visible or not.

Don't forget to check for telescope visibility, not naked eye visibility. I think the limiting magnitude is somewhere around 20 or 30, though of course it's not going to be a sharp cutoff, rather one where above a certain magnitude you only get 90% of what's there, above another you only get 50%, and so on.
 
Left <-> right wise it's fine now, but the 768 in 1024 * 768 is a bit big for my screen, given GNOME's top and bottom panels.
You're not actually limited to a 4:3 aspect ratio, and the 1024 * 768 isn't a technical limit... you can try to make it smaller, but at one point the elements in the GUI will start to overlap (their size is fixed, only their position is dynamic).

But I'm glad it works!

Don't forget to check for telescope visibility, not naked eye visibility. I think the limiting magnitude is somewhere around 20 or 30, though of course it's not going to be a sharp cutoff, rather one where above a certain magnitude you only get 90% of what's there, above another you only get 50%, and so on.
The bolometric corrections for spectral classes are already in the memory anyways, I just didnt find any use for them yet. Looks like I'll need them now.

Still no GUI on mouseover though. Also, CTRL+M no longer changes the view to the galaxy-map.
??? this is getting stranger and stranger, especially that CTRL-M doesn't work. although, the GUI not apearing when you move the mouse to the right window edge when the mouse is otherwise working fine is rather unexpected too. Could it be a resolution problem, like for Linguofreak and TheEyes (i.e. that the right edge of your rendering window isn't the actual right edge of the surface)?

EDIT: Just tested it and can confirm that key combinations DO NOT WORK in the current build (that means all Ctrl and Shift combos!)! thanks for pointing me to it. It must be connected to the new irrlicht version handling keycombinations differently than before. will be fixed as fast as possible.
 
Last edited:
Son of a gun, that was the problem. :embarrassed:

Odd, though. I had set the window size to 1366x768 (my monitor size) and the problem persisted. I just set it to 1024x768 and it works fine.
Also, the mouse is now aligned properly, which I forgot to mention.

I'll start looking around the galaxy, though I don't think I have the astronomical knowledgebase required to find errors.
 
Oh, some other bugs I forgot to mention:

Gas giants are listed as "Sudarsky [n] Giant Giant".

I've found several gas dwarves listed as such with masses in the 2 earth mass range and surface pressures in the 7-10 atmosphere range, and no cloud cover listed (thus you could likely see rock/ice from orbit). These strike me more as super-terrestrials than anything like a gas planet (Venus, which is smaller than Earth, has a 90 bar atmosphere, and would qualify more for gas-dwarf than these would).

The Delta Trianguli system is a multiple IRL (very close binary), and the data given here has luminosity for the pair, but mass only for the primary. The pair orbits close enough that the system generated could actually exist, except maybe for the innermost planet, except all the planets would have shorter years on account of the greater mass. I'd actually prefer to see the mass tweaked up (as long as, if it results in a rerandomization of the planets, the innermost planet doesn't end up within .3 AU or so), rather than the luminosity tweaked down (the system is somewhat of a favorite of mine, and I'm considering writing a work of fiction set there), but do as you wish.

Also, there may be a few too many terrestrials with oxygen floating around. Oxygen is something you'll only see if there's life on a planet, as it's too reactive to stick around without something actively pulling it out of compounds (such as CO2). I found a system with 3(!) terrestrials in it, one of them a moon, all having oxygen in their atmospheres to some amount. I may make some comments later as well, regarding my analysis of how the program assesses haitability, and using that system as a case study (83.2c0.c33675.e).

There also seems to be a dearth of hot jovians/"ice" giants. They turn up in systems with hot stars, but (almost?) never in systems with sunlike stars, while IRL they're fairly common (there's a selection bias in our detection methods, but still, I should be seeing *some* here...)
 
Great input, keep it comming! thanks a lot. I won't have much time to address these issues currently, until the whole thing is running with orbiter, but I'll take care of it!

Gas giants are listed as "Sudarsky [n] Giant Giant".
oops...

I've found several gas dwarves listed as such with masses in the 2 earth mass range and surface pressures in the 7-10 atmosphere range, and no cloud cover listed (thus you could likely see rock/ice from orbit). These strike me more as super-terrestrials than anything like a gas planet (Venus, which is smaller than Earth, has a 90 bar atmosphere, and would qualify more for gas-dwarf than these would).
hmmm... Gas dwarfs are usually determined by looking at their size AND their Gas/Mass ratio. looks like I have to fiddle that a bit.

Also, there may be a few too many terrestrials with oxygen floating around. Oxygen is something you'll only see if there's life on a planet, as it's too reactive to stick around without something actively pulling it out of compounds (such as CO2). I found a system with 3(!) terrestrials in it, one of them a moon, all having oxygen in their atmospheres to some amount. I may make some comments later as well, regarding my analysis of how the program assesses haitability, and using that system as a case study (83.2c0.c33675.e).
I had that impression too, but currently the atmosphere distribution is completely random, just that there are no gases which the planet couldn't retain. I'm planning to make geological and atmospherical composition depending on several other factors, like for example the generation of the parent star and somesuch.

There also seems to be a dearth of hot jovians/"ice" giants. They turn up in systems with hot stars, but (almost?) never in systems with sunlike stars, while IRL they're fairly common (there's a selection bias in our detection methods, but still, I should be seeing *some* here...)

Edit: Sorry, I misread your question a bit before. Yes, there is a dearth of hot jupiters, because I have no modelling of inwards orbital migration. And to be honest, no Idea yet about how to model it...

I just finished a patch of the current version that brings back the key-combos (just copy the new exe over the old), Xyon just put it up:

http://xcc.rpgee.com/orbitermods/jed...y-Patch152.rar
 
Last edited:
I had that impression too, but currently the atmosphere distribution is completely random, just that there are no gases which the planet couldn't retain. I'm planning to make geological and atmospherical composition depending on several other factors, like for example the generation of the parent star and somesuch.

Oh good. You're keeping generation in mind. I was just going to comment that the core had an awful lot of planets for a low metallicity region.

Edit: Sorry, I misread your question a bit before. Yes, there is a dearth of hot jupiters, because I have no modelling of inwards orbital migration. And to be honest, no Idea yet about how to model it...

I never saw what was there before the edit, so the "Sorry, I misread" confused me a bit...

I just finished a patch of the current version that brings back the key-combos (just copy the new exe over the old), Xyon just put it up:

http://xcc.rpgee.com/orbitermods/jed...y-Patch152.rar

I've not been using the key-combos myself. Is there anything else it adds that I should download it for?


EDIT: A few more issues:

Capella's mass and type are off quite significantly (see Wikipedia).

White dwarves have no planets. They don't go supernova and evolve from stars that should have planets, so there's no real reason for them not to (they might swallow their inner planets, and if they lose enough mass in dieing, I suppose that they could end up casting off what's left (since orbital energy will remain constant), but the latter wouldn't happen with every white dwarf). I notice that low-end red giants still have planets (presumably you are calculating swallowing and the outward migration involved in the mass loss and expansion up to being a giant?), so it should just be a matter of calculating additional outward migration for the mass loss involved in becoming a dwarf. (If you're not calculating migration for stars becoming giants, it's fairly simple: Orbital energy remains constant, primary mass decreases, so you just need to calculate the radius for the new primary mass that has the same energy as the old one).

Further EDIT: I'm also getting a crash every once in a while when using the search feature. It seems to occur when the program has been running a while, and hasn't happened on my most recent attempt to duplicate it, so it's not a program-breaker, but it is a bit annoying. I'm currently running it from the terminal instead of clicking on the *.exe, so next time it happens I may have an error for you to diagnose...

Yet another EDIT: Got the crash: It got hit with a Wine error, which might either be a legitimate Windows error that Wine caught, or an incompatibility with Wine. Error dump follows:
Code:
wine: Unhandled page fault on read access to 0x00000000 at address 0x418ea3 (thread 0009), starting debugger...
Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x00418ea3).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00418ea3 ESP:00307c0c EBP:191e5d18 EFLAGS:00010206(   - 00      - RIP1)
 EAX:11f19068 EBX:000186a0 ECX:00000000 EDX:00000003
 ESI:2495fd4c EDI:00000001
Stack dump:
0x00307c0c:  bcc2ac0d 00694fc0 006be310 0032feb8
0x00307c1c:  006c1a38 00000000 1fa15078 1f70d3d0
0x00307c2c:  00307e28 2495fd4c 18b7bde0 00307c58
0x00307c3c:  7bc43f61 00000158 000f0000 18b7be08
0x00307c4c:  7bc3367f 18b7bde0 7bc8aff4 00300064
0x00307c5c:  7bc44616 007a0048 7bc433e7 00000170
Backtrace:
=>1 0x00418ea3 in ogalaxy (+0x18ea3) (0x191e5d18)
  2 0x11f19068 (0x00000032)
  3 0x00000000 (0x00000000)
0x00418ea3: movl	0x0(%ecx),%edx
Modules:
Module	Address			Debug info	Name (68 modules)
PE	  400000-  468000	Export          ogalaxy
PE	10000000-10283000	Deferred        irrlicht
ELF	7b800000-7b93c000	Deferred        kernel32<elf>
  \-PE	7b820000-7b93c000	\               kernel32
ELF	7bc00000-7bca7000	Deferred        ntdll<elf>
  \-PE	7bc10000-7bca7000	\               ntdll
ELF	7bf00000-7bf04000	Deferred        <wine-loader>
ELF	7ca51000-7ca66000	Deferred        midimap<elf>
  \-PE	7ca60000-7ca66000	\               midimap
ELF	7ca66000-7ca8e000	Deferred        msacm32<elf>
  \-PE	7ca70000-7ca8e000	\               msacm32
ELF	7d28f000-7d357000	Deferred        libasound.so.2
ELF	7d6cb000-7d72a000	Deferred        libpulse.so.0
ELF	7d736000-7d74f000	Deferred        msacm32<elf>
  \-PE	7d740000-7d74f000	\               msacm32
ELF	7d74f000-7d758000	Deferred        librt.so.1
ELF	7d764000-7d76a000	Deferred        libattr.so.1
ELF	7d76a000-7d771000	Deferred        libgdbm.so.3
ELF	7d771000-7d776000	Deferred        libcap.so.2
ELF	7d776000-7d77d000	Deferred        libasound_module_pcm_pulse.so
ELF	7d77d000-7d7b4000	Deferred        winealsa<elf>
  \-PE	7d790000-7d7b4000	\               winealsa
ELF	7d7b4000-7d7bd000	Deferred        libxcursor.so.1
ELF	7d7bd000-7d7c2000	Deferred        libxfixes.so.3
ELF	7d7c2000-7d7c6000	Deferred        libxcomposite.so.1
ELF	7d7c6000-7d7ce000	Deferred        libxrandr.so.2
ELF	7d7ce000-7d7d8000	Deferred        libxrender.so.1
ELF	7d7d8000-7d7db000	Deferred        libxinerama.so.1
ELF	7d800000-7d821000	Deferred        imm32<elf>
  \-PE	7d810000-7d821000	\               imm32
ELF	7d821000-7d8bc000	Deferred        winex11<elf>
  \-PE	7d830000-7d8bc000	\               winex11
ELF	7d8cb000-7d8f2000	Deferred        libexpat.so.1
ELF	7d8f2000-7d91f000	Deferred        libfontconfig.so.1
ELF	7d944000-7d9bb000	Deferred        libfreetype.so.6
ELF	7d9e0000-7da74000	Deferred        winmm<elf>
  \-PE	7d9f0000-7da74000	\               winmm
ELF	7da74000-7da79000	Deferred        libxdmcp.so.6
ELF	7da79000-7da7b000	Deferred        libnvidia-tls.so.1
ELF	7da7b000-7e993000	Deferred        libglcore.so.1
ELF	7e993000-7e9ad000	Deferred        libxcb.so.1
ELF	7e9ad000-7e9b1000	Deferred        libxau.so.6
ELF	7e9b1000-7e9b6000	Deferred        libuuid.so.1
ELF	7e9b6000-7ea70000	Deferred        libgl.so.1
ELF	7ea70000-7eb5f000	Deferred        libx11.so.6
ELF	7eb5f000-7eb6f000	Deferred        libxext.so.6
ELF	7eb6f000-7eb75000	Deferred        libxxf86vm.so.1
ELF	7eb82000-7eb98000	Deferred        libz.so.1
ELF	7eb9a000-7ec1c000	Deferred        opengl32<elf>
  \-PE	7ebb0000-7ec1c000	\               opengl32
ELF	7ec1c000-7ec6f000	Deferred        advapi32<elf>
  \-PE	7ec30000-7ec6f000	\               advapi32
ELF	7ec6f000-7ed0f000	Deferred        gdi32<elf>
  \-PE	7ec80000-7ed0f000	\               gdi32
ELF	7ed0f000-7ee5b000	Deferred        user32<elf>
  \-PE	7ed30000-7ee5b000	\               user32
ELF	7ef85000-7ef91000	Deferred        libnss_files.so.2
ELF	7ef91000-7ef9c000	Deferred        libnss_nis.so.2
ELF	7ef9c000-7efb5000	Deferred        libnsl.so.1
ELF	7efb5000-7efdb000	Deferred        libm.so.6
ELF	7efdb000-7eff3000	Deferred        libice.so.6
ELF	7eff3000-7effc000	Deferred        libsm.so.6
ELF	f74e1000-f74ea000	Deferred        libnss_compat.so.2
ELF	f74eb000-f74ef000	Deferred        libdl.so.2
ELF	f74ef000-f7652000	Deferred        libc.so.6
ELF	f7653000-f766c000	Deferred        libpthread.so.0
ELF	f7691000-f77c8000	Deferred        libwine.so.1
ELF	f77ca000-f77eb000	Deferred        ld-linux.so.2
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) C:\Program Files\OrbiterGalaxy\OGalaxy.exe
	00000009    0 <==
0000000c 
	00000012    0
	0000000e    0
	0000000d    0
0000000f 
	00000016    0
	00000014    0
	00000011    0
	00000010    0
00000017 
	00000018    0
Backtrace:
=>1 0x00418ea3 in ogalaxy (+0x18ea3) (0x191e5d18)
  2 0x11f19068 (0x00000032)
  3 0x00000000 (0x00000000)

The error occured after bumming around the galaxy a bit, then trying to type a few characters in the search field. It paused for a second, then crashed without displaying any of the typed characters in the search field.
 
Last edited:
Oh good. You're keeping generation in mind. I was just going to comment that the core had an awful lot of planets for a low metallicity region.
Yes, I plan to revisit the generator as soon as I have a first stable version of the program in orbiter that let's you fly around.

I never saw what was there before the edit, so the "Sorry, I misread" confused me a bit...
sorry, I first thought that you meant that there's too few gas gaint around low mass stars, which is because the accretion disc around those stars has a very low density, which might or might not be accurate.

I've not been using the key-combos myself. Is there anything else it adds that I should download it for?
No other fixes, but the shift + W/S combos might be essential, since they allow moving the camera in the Z-axis. besides that, it's just the exe file in the patch, about 500 kb.

White dwarves have no planets.
Yap. White dwarfs, neutron stars and black holes aren't getting much attention currently.

Capella's mass and type are off quite significantly (see Wikipedia).
I can adjust the type (actually you can do it too, just search for Capella in MilkyWay.ogc and adjust the type) and see if that fixes the mass issue. The problem is that mass information about known star isn't very widely available, so their masses aren't contained in the catalogue. They are calculated, which should be fairly accurate for main sequence stars (if the spectral class is correct), but for giants the program searches for a match of luminosity and temperature in the evolutionary tracks and assigns atributes accordingly, so I doubt their masses are in accordance with their real masses.

Further EDIT: I'm also getting a crash every once in a while when using the search feature.
thanks for the very detailed report. looks like a memory corruption in the search function, will take a look at it.
 
sorry, I first thought that you meant that there's too few gas gaint around low mass stars, which is because the accretion disc around those stars has a very low density, which might or might not be accurate.

Well, I did notice that, but didn't report it because I wasn't sure that it was inaccurate. But you're going to have two competing factors: Number one, as you mentioned, lower mass stars will probably have less massive disks. Number two, lower mass stars form slower and let out less in the way of stellar winds and short wavelength radiation, so disks will last longer, which will mean that more planetary mass will probably form per unit mass of disk. Empirical data does seem to indicate that low-mass stars tend to have either fewer or less massive planets, though.

Oh: I've noticed a couple one-face planets with one-face moons, which is not likely to happen (for one thing, planets close enough to their stars to be one-faces are not likely to have moons due to tidal effects, for another, even if it does happen, the moon would be more likely to lock to the planet than the star, and there's a fair likelyhood that the moon would interfere with the locking of the planet to the star, although this would probably fairly soon end up with the moon being either ejected or sent into the planet).

There's something else I'd noticed, but it's slipped my mind ATM.

No other fixes, but the shift + W/S combos might be essential, since they allow moving the camera in the Z-axis. besides that, it's just the exe file in the patch, about 500 kb.

Yap. White dwarfs, neutron stars and black holes aren't getting much attention currently.

I can adjust the type (actually you can do it too, just search for Capella in MilkyWay.ogc and adjust the type) and see if that fixes the mass issue. The problem is that mass information about known star isn't very widely available, so their masses aren't contained in the catalogue. They are calculated, which should be fairly accurate for main sequence stars (if the spectral class is correct), but for giants the program searches for a match of luminosity and temperature in the evolutionary tracks and assigns atributes accordingly, so I doubt their masses are in accordance with their real masses.

Come to think of it, it's probably the mistype that has the mass so far off.

thanks for the very detailed report. looks like a memory corruption in the search function, will take a look at it.

Speaking of search functions, would it be possible to have some sort of search function for finding planets that fall within certain parameters? Obviously it couldn't search the whole galaxy, but just being able to search the surroundings and real-star catalog would be nice.

Also, could the display filters be checkboxes rather than select-one lists? I can think of several useful searches that could be done that way, for example, for all F, G, and K, stars in classes IV, V, and VI.
 
Number two, lower mass stars form slower and let out less in the way of stellar winds and short wavelength radiation, so disks will last longer

No moddeling of solar winds, I'm afraid, but I can screw around with the density coefficient to produce a bit more massive planets.

Speaking of search functions, would it be possible to have some sort of search function for finding planets that fall within certain parameters?

Systems are only generated for the currently active cube (otherwise loading times would be pushed up significantly), so the only thing I could do is a filter for the active cube. That would involve quite some parsing through the data, which might be a bit much every frame. On the other hand, I could add some logging when the systems are created to reduce that to a minimum, so yes, a basic filter for planetary types should be possible. What parameters would you find most useful to search for?

Also, could the display filters be checkboxes rather than select-one lists? I can think of several useful searches that could be done that way, for example, for all F, G, and K, stars in classes IV, V, and VI.

Can be done, I'll have to see how to fit it into the rather confined space. Added both requests to the list.
 
No moddeling of solar winds, I'm afraid, but I can screw around with the density coefficient to produce a bit more massive planets.

I'm not entirely sure how necessary it is, given that there is empirical evidence that MV's, at least, seem to have either low counts of planets, or low planetary masses, or both. The two factors I listed balance each other, and probably define somewhat of a bell-curve.

Systems are only generated for the currently active cube (otherwise loading times would be pushed up significantly), so the only thing I could do is a filter for the active cube. That would involve quite some parsing through the data, which might be a bit much every frame. On the other hand, I could add some logging when the systems are created to reduce that to a minimum, so yes, a basic filter for planetary types should be possible. What parameters would you find most useful to search for?

All of them :P

More seriously, general type, mass, distance, temperature, and overall habitability, as well as being a planet or moon.

Can be done, I'll have to see how to fit it into the rather confined space. Added both requests to the list.

OK.

I have remembered the other issue (read "missing feature", not "bug") I was trying to remember, which is that the densities of rocky planets only seem to differ from 1 Earth density by a few percent at most. Even for planets with the exact same composition, there's going to be gravitational compression. (Earth is ~15-20% denser than it would be on account of this).
 
All of them :P
Hmmm... would it be sufficient to SEARCH for these planets, without having another filter? then maybe I could put in something like a small script in the searchfunction that let's you enter stuff like planet:mass:1 or something like that. But while being more flexible, it might be more cumbersome to use when you use it often.

which is that the densities of rocky planets only seem to differ from 1 Earth density by a few percent at most. Even for planets with the exact same composition, there's going to be gravitational compression.
that seems rather weird, I remember seeing lots of rocky planets with higher or lesser density than earth. Gravitational compression is taken into account by stargen, but I haven't yet seriously tried to understand the formula used. I'll have a look around!
 
Last edited:
Hmmm... would it be sufficient to SEARCH for these planets, without having another filter? then maybe I could put in something like a small script in the searchfunction that let's you enter stuff like planet:mass:1 or something like that. But while being more flexible, it might be more cumbersome to use when you use it often.

OK, yeah, it probably would be more of a filter thing.

that seems rather weird, I remember seeing lots of rocky planets with higher or lesser density than earth. Gravitational compression is taken into account by stargen, but I haven't yet seriously tried to understand the formula used. I'll have a look around!

Looking at things more closely, I'm finding some nasty math bugs. Planet C of star 254.6j0.a60036.8j has a mass given as around -2.147e+007 kg (note the sign!!!), which is quoted as 6.1 Earth masses. Radius is listed as a hair under 17000 km, quoted as 2.66 ER (which I haven't checked, but looks right). Density is listed as 7.03 g/cc, which translates to 1.27 ED, and that would check out ***but*** I noticed that the surface gravity was less than that of Earth, which raised a huge red flag (mass > Earth and density > Earth should mean gravity > Earth). So I decided to check density and surface gravity by hand (err, calculator), and the density figure I got from a hand check is around 1.7 g/cc. I haven't yet done the surface gravity check, but the hand-calculated density figure makes the quoted gravity seem more reasonable.

I've checked on some other planets, and most or all seem to be OK (stats are consistent with each other when hand checked), aside from this one pathological case (though all have the same negative ~2.15e+007 mass, quoted as however many EM the planet actually has). There does seem to be some tendency towards higher densities with greater masses, but it's not pronounced enough. Really small rocky planets will have maybe .97 ED, large ones will have maye 1.03. In the limit of zero mass, a planet with the same composition as Earth should have around .8 ED, and Venus has around .95 ED with roughly the same composition and 80 percent of the mass. The Jovians also have some questionable densities, although I'm not sure how much of that is different compositions and core sizes and how much is errors in density calculations. In any case, the upper size limit on a Jovian (for roughly equal temperature and composition to Jupiter) comes in around 2 JM and a bit bigger radius than Jupiter (I'm not sure of the exact number), after which point size actually goes down with mass until the lower limit for hydrogen burning. The smallest red dwarves are actually just about the same size as Jupiter.

I did find one more planet that exhibits the denisty calculation bug. Significantly, both planets I've found with this bug (make that all three, I just found another one), are massive rocky planets in (relatively) close orbits around hot stars. In fact, except maybe for the third, they're close enough in that whether a planet could actually form there is somewhat debatable. (also, larger stars, except those explicitly excluded from planet formation, seem to form unnaturally large planets.)

Both in the interest of debugging, and of general nerdiness, would it be possible to bare more planetary parameters in the interface (composition, contributing factors to calculated parameters, etc)? It would help distinguish bugs from places where the algorithms in question are being followed correctly but are incorrect, and both of the preceding cases from places where the algorithms correctly yield surprising results.
 
First, thanks a lot for your work!

I have traced the density calculation a bit, StarGen uses the kothari equations to calculate the radius, and according to cothari the orbital zone a planet is in has considerable influence on its density. I have not yet have the time to check out all the equations, so I can't tell wheather there are some bugs in them or not, but the general concept seems to be sound.

There is no geological composition whatsoever modeled yet, and it seems that, as long as the planet isn't majorly composed of gas, the composition has practically no influence on the density anyways. The function calculating the empirical density is a simple relation between mass, heat and semimajor axis, looking as follows:

Code:
   long double temp; 
    
    temp = pow(mass * SUN_MASS_IN_EARTH_MASSES,(1.0 / 8.0));
    temp = temp * pow1_4(r_ecosphere / orb_radius);
    if (gas_giant)
        return(temp * 1.2);
    else 
        return(temp * 5.5);


No idea yet where the negative mass comes from, must be a conversion error or somesuch. Currently the least of the problems, I guess.

Both in the interest of debugging, and of general nerdiness, would it be possible to bare more planetary parameters in the interface

You have almost all of them there, really. There are a few flags I have not yet added to the interface, except maybe the specific molar constant of the atmosphere, but that doesn't really have much influence on anything.

also, larger stars, except those explicitly excluded from planet formation, seem to form unnaturally large planets.)

There are no stars explicitly excluded. I merely prevent planetary formation in regions where the dust is hotter than 2000 Kelvin, which leads to no planets around very hot stars. More massive stars are producing more massive planets for the same reason low mass stars are producing less massive ones, which is that the density coefficient of the accretion disc is derived directly from the stars mass. If the planets around massive stars are too massive, I can see if I can come up with another way to calculate the density coefficient of the disc around higher mass stars.
 
First, thanks a lot for your work!

I have traced the density calculation a bit, StarGen uses the kothari equations to calculate the radius,

I'm not familiar with them.

and according to cothari the orbital zone a planet is in has considerable influence on its density.

Well, for a gas giant temperature might, but for everything else, the only major difference orbital zone would make would be geological composition, according to what materials are solid / gaseous in the planet's orbital zone.

I have not yet have the time to check out all the equations, so I can't tell wheather there are some bugs in them or not, but the general concept seems to be sound.

There is no geological composition whatsoever modeled yet,

That explains some things and makes others all the more confusing. There's a sudden drop in density (of about the right magnitude, though perhaps a bit sudden, though I'm not sure how sudden it would be IRL) for terrestrials around the ice line that I thought could be explained by a change from rocky to icy composition (as it would be IRL).

and it seems that, as long as the planet isn't majorly composed of gas, the composition has practically no influence on the density anyways.

Do you mean in the sim, or IRL?

IRL, iron has a density of 8 g/cc, pure water ice has a density of 1 g/cc, rock tends to be around 3 g/cc. In fact, IRL, if it's mostly gas, the density is more determined by gravitational compression and less by composition, whereas for solid planets composition is the primary factor.

The function calculating the empirical density is a simple relation between mass, heat and semimajor axis, looking as follows:

Code:
   long double temp; 
    
    temp = pow(mass * SUN_MASS_IN_EARTH_MASSES,(1.0 / 8.0));
    temp = temp * pow1_4(r_ecosphere / orb_radius);
    if (gas_giant)
        return(temp * 1.2);
    else 
        return(temp * 5.5);
That seems weird both IRL, and when compared to what's coming out of the generator...

No idea yet where the negative mass comes from, must be a conversion error or somesuch. Currently the least of the problems, I guess.



You have almost all of them there, really. There are a few flags I have not yet added to the interface, except maybe the specific molar constant of the atmosphere, but that doesn't really have much influence on anything.



There are no stars explicitly excluded. I merely prevent planetary formation in regions where the dust is hotter than 2000 Kelvin, which leads to no planets around very hot stars.

It would probably be best, rather than cutting off formation suddenly at a temp limit, to have the density of the disk drop off with temperature (since the disk won't last long in high-temperature regions).

More massive stars are producing more massive planets for the same reason low mass stars are producing less massive ones, which is that the density coefficient of the accretion disc is derived directly from the stars mass. If the planets around massive stars are too massive, I can see if I can come up with another way to calculate the density coefficient of the disc around higher mass stars.
 
That explains some things and makes others all the more confusing. There's a sudden drop in density (of about the right magnitude, though perhaps a bit sudden, though I'm not sure how sudden it would be IRL) for terrestrials around the ice line that I thought could be explained by a change from rocky to icy composition (as it would be IRL).
I said there's no GEOLOGICAL composition. There is of course a difference between gas, water and "solid matter". However, I have not yet found out in how far this actually influences the density (the difference between water and solid matter, anyways, Gas has a pretty strong influence), but I'll make it a major research point when I revisit the generator code.

Do you mean in the sim, or IRL?
In the sim, in any case. Since accrete was written by an astronomer (though back in the 70's) I had no reason to doubt it so far, but it was clearly developed with sun-like stars in mind. I have not yet payed attention to some of the more intricate workings, so it might very well be that some of the formulae are not aplicable to significantly more massive stars at all.

It would probably be best, rather than cutting off formation suddenly at a temp limit, to have the density of the disk drop off with temperature (since the disk won't last long in high-temperature regions).
I'm afraid I can only specify the density of the disc as a whole, but I don't understand the accrete code very well yet (it's very hard to make sense of it as a mathematical analphabet...)
Would you happen to have any references handy that could help me comming up with an algorithm for calculating a more realistic density of the disc?


On a developement progress note, here's a picture of the Galaxy Map running almost fully functional inside an Orbiter dialogue box:

ogalaxyinorbiter.jpg



Credit for the implementation goes to Face, who packed it into the dialogue box and into its own thread, so Orbiter runs completely normal while you're working in the map. :hail:

It's not quite fully functional yet, there's some problem with loading the map several times during the same session, most probably some incorrect deallocation. Shows up pretty randomly, which makes it a bit hard to find. As soon as that's figured out, I'll write a basic MFD that displays a vector for the target.

I've also updated the first post of this thread with a roadmap, so everyone can see where I stand in the developement and how the whole thing is planed to unfold.
 
Last edited:
I said there's no GEOLOGICAL composition. There is of course a difference between gas, water and "solid matter".

I'm not sure what difference you're making between "geological" and "other" composition...

In any case, the percentages of each constituent that *is* modeled that go into a planet would be one of the parameters I'd like to see bared in the interface.

However, I have not yet found out in how far this actually influences the density (the difference between water and solid matter, anyways, Gas has a pretty strong influence), but I'll make it a major research point when I revisit the generator code.

In the sim, in any case. Since accrete was written by an astronomer (though back in the 70's) I had no reason to doubt it so far, but it was clearly developed with sun-like stars in mind. I have not yet payed attention to some of the more intricate workings, so it might very well be that some of the formulae are not aplicable to significantly more massive stars at all.

I'm afraid I can only specify the density of the disc as a whole, but I don't understand the accrete code very well yet (it's very hard to make sense of it as a mathematical analphabet...)
Would you happen to have any references handy that could help me comming up with an algorithm for calculating a more realistic density of the disc?

I don't know any equations or algorithms, or where to find them, I just know that hot parts of the disk clear faster, and I *think* the wavelength of the radiation and speed of stellar wind involved also has an influence (thus hotter stars would clear their disks faster at equal temperature, if I recall correctly. I've heard that some of your more massive stars have stellar winds that will disrupt planetary formation not only around the star itself, but also stars several LY away). In any case, I only specified manipulation of the disk density because that was how you were talking about the program working. IRL it wouldn't be so much a matter of a lesser initial density in the inner regions of the disk so much as that those parts of the don't last as long. Reducing disk density is just one kludge that could be used to model that.
 
I'm not sure what difference you're making between "geological" and "other" composition...
moz-screenshot.png
moz-screenshot-1.png

well, neither am I, really. But when saying Geological, I think of rocks... so the "solid matter" part. It's probably not apropriate to make such a division, though...

In any case, the percentages of each constituent that *is* modeled that go into a planet would be one of the parameters I'd like to see bared in the interface.

Ok. You already got Ice covering and water covering, I'm afraid the only thing more I can throw in currently is rock/gas ratio. I'll put that in for you.

IRL it wouldn't be so much a matter of a lesser initial density in the inner regions of the disk so much as that those parts of the don't last as long. Reducing disk density is just one kludge that could be used to model that.

I see that I have to study the accrete code a bit more thouroughly. I have no Idea how it behaves on the time axis.
 
well, neither am I, really. But when saying Geological, I think of rocks... so the "solid matter" part. It's probably not apropriate to make such a division, though...

Well, there will be small differences in composition between different types of rock, but your four main groups of materials are:

Iron (and the elements that combine easily with it chemically), which has a density on the order of 8 g/cc. (I'm actually used to talking about these things in kg/m^3, but the program uses g/cc, so I'll go with that. "Six of one, half a dozen of the other", as my Dad says.)

Rocks (Silicon, and the elements that combine with it. I've heard that in systems with low concentrations of oxygen to start with, carbon might become the dominant building block for the "rocks" rather than silicon, but I think I've also heard that there wouldn't be much difference in density), which have a density of around 3 g/cc.

Ices (Water, Ammonia, Methane, etc, depending on temperature), which have a density around 1 g/cc.

Gas (Which, for the purposes of planetary structure, means a 75:25 H-He mix, as no other gas is likely to form a large part of the mass of a planet), which, by definition, doesn't have a well-defined density.

Ok. You already got Ice covering and water covering, I'm afraid the only thing more I can throw in currently is rock/gas ratio. I'll put that in for you.

Great! That will give me a fair bit of insight into what's going on.

Ice or water "coverings" tell me about the surface conditions of a planet, but for all I know the 100% ice covering on a planet only goes 5 or 10 km deep, and constitutes less than 1% of the mass. Furthermore, I'm seeing "Ice planets" with earthlike densities, and "rock planets" with ice-world densities. (Also, "Ice" vs "water" covering is more a difference of surface conditions than structure. The chemical is the same, and the density is almost identical. The only difference is temperature. When I talk about the difference between an "Ice" and a "rock" planet, I'm talking about the difference between "Icy crust and mantle with a rocky core (if any)" and "Rocky crust and mantle with an iron core (if any)". Titan, for instance, is an ice world, and its inhabitants (if any) would see Earth as a planet inhabited by lava monsters.).

I'm a bit confused by the Rock/Gas ratio. Are you sure it's not Rock/Gas/Ice? There's definitely a density change happening in solid planets around the ice line, and I'd assume it would be a change in the Rock/Ice ratio. Whatever is causing it, I would like to see that in the interface as well.

I see that I have to study the accrete code a bit more thouroughly. I have no Idea how it behaves on the time axis.

Oh. BTW. One thing I'm noticing in the red dwarf systems, is that they do tend to have lots of "martian" planets that should have fairly dense atmospheres at their mass, but don't (Eg, several earth masses, temperatures in the mid double-digits kelvin, but only the faintest traces of an atmosphere). My gut instinct is that, if red dwarves are less inclined to forming planets, the rock/ice portion of those planets would be smaller, but the gas portion would certainly be larger. At the very least, even if they aren't collecting hydrogen, anything that massive will certainly have a Earth/Titan-like or better atmosphere of nitrogen, et al, just from geological outgassing, which is where the atmospheres of Earth, Venus, Mars, and Titan come from. Only gas-giant atmospheres (H, He) are collected from off-planet. All other atmospheres are what's been belched out and hasn't yet escaped or reacted chemically with solids/liquids on the surface. Furthermore, my educated guess is that for a given temperature and mass, a planet massive/cold enough to retain H and He would be likely to retain more in the vicinity of a red dwarf than near a hotter star (because red dwarves wouldn't have stellar winds and radiation clearing their disks so aggressively). In short: Alot of the "Martian" worlds we see in the program would IRL be a bit more "Titanian" (Cold, thick atmosphere).

Also: I've noticed quite a few solid planets that strike me as being a bit too close to the orbits of massive Jovians in the same system. (OTOH, this can happen if there's a stable resonance like the 3:2 one between Neptune and Pluto, and such a setup could be very interesting).

Another issue that's more of an aesthetic than realistic one (In fact, it might be downright unrealistic, though we don't have any empirical data on moons outside our own Solar System), is that I'd like to see some Jovians with downright massive (Eg, Earth-mass or so) moons. Most should still be fairly-low mass, but the sci-fi geek in me loves the thought of a habitable planet orbiting a Sudarsky II giant.
 
Iron (and the elements that combine easily with it chemically), which has a density on the order of 8 g/cc.
how much does it matter for the density wheather the core is liquid or not?

I'm a bit confused by the Rock/Gas ratio. Are you sure it's not Rock/Gas/Ice?
From what I've seen so far, yes, but I'll take another look at how water and ice are actually calculated. I'll pass you a patch with an updated planet display as soon as possible.
Edit: confirmed, no "trinitarian" composition. The water covering seems to be estimated from the volatile gas inventory and temperature. Haven't quite understood it yet, but ices definitaly don't have an influence on the density calculation.

In short: Alot of the "Martian" worlds we see in the program would IRL be a bit more "Titanian" (Cold, thick atmosphere).
I had the same thoughts, actually. I think the program currently has only "accreted" atmospheres, not self-generated. I'm not quite certain about this, but I haven't seen anything indicating otherwise so far. There is also the question of how old the system is. The program calculates the decay of Helium and Hydrogen.

Also: I've noticed quite a few solid planets that strike me as being a bit too close to the orbits of massive Jovians in the same system. (OTOH, this can happen if there's a stable resonance like the 3:2 one between Neptune and Pluto, and such a setup could be very interesting).
There is a flag for "resonant spin locked", but I think that's meaning that the planet rotation is locked in a ratio to its orbit, and not the relationships of the orbits of two planets. Might be tough to implement...

Another issue that's more of an aesthetic than realistic one (In fact, it might be downright unrealistic, though we don't have any empirical data on moons outside our own Solar System), is that I'd like to see some Jovians with downright massive (Eg, Earth-mass or so) moons. Most should still be fairly-low mass, but the sci-fi geek in me loves the thought of a habitable planet orbiting a Sudarsky II giant.
That wouldn't be a problem. In fact, my code currently deletes moons above a certain mass on purpose, because I thought them too unrealistic. I can remove that and see what comes out.
Edit: I pushed the mass limit up to one earth mass, and habitable moons seem to have become fairly common around Gas Giants around F-stars that have left main sequence (For having them in Main Sequence stars, I'd have to put in orbital migration first, I'm afraid). However, they're all showing up around Sudarsky III giants, looks like something with the temperature classification isn't quite alright...

and yet another Edit: I took the temperatures for the classifications from Wikipedia, which sets a Sudarsky II at somewhere around or below 250 K. That's about 40 K too low for a habitable planet, so they show up around the colder Sudarsky III in the generator. Should I just put up the classification of a Sudarsky II to 300 to 320 K?
 
Last edited:
Back
Top