Skip to content

Create an active ID system for tagging objects, layout for grand data design for solar system modeling #1

@iontom

Description

@iontom

We will try to produce an object id schema system to keep track of objects and bodies. Some will be generated from within this libarary, others will be populated from MetaSim either directly or proxy from other reference engines. Top level positions/coordinates take precedent. Other parameters are meta, and might be equally synonmous with other reference engines. This is just a sketch of data that would be important.

  • Identifiers
    sim_id: [simulation id] from MetaSim/WebHex
    guid: [global id] local
    ss_id: [Solar system id] local, for getting absolute coordinates
  • Position Cartesian (center of mass, maybe integration later for moon volcanism)
    x [barycentric ss position] local to send to renderer
    y [barycentric ss position] local to send to renderer
    z [barycentric ss position] local to send to renderer
    vx [barycentric ss velocity] local to send to renderer
    vy [barycentric ss velocity] local to send to renderer
    vz [barycentric ss velocity] local to send to renderer
  • Revolution
    per [period time to do one revolution if in stable orbit] = native year
    phase [phase of the year,]
    ses [seasonality of the planet based on rotation angles]
  • Rotation
    http://en.wikipedia.org/wiki/File:Earth_precession.svg
    w_p [rotation angle 'pitch'] = axial tilt
    w_r [rotation angle 'roll'] = precesion
    w_y [rotation angle 'yaw'] = time of day
    f_p [rotation freq 'pitch']
    f_r [rotation freq 'roll']
    f_y [rotation freq 'yaw']
  • Optional position equations to send to renderer
    Eq(x, y, z) = Equation[ If Parabolic, If Hyperbolic, If Ellipse, Else NONE]
    Parse from python to JavaScript to describe orbit of planet in case network lag slows
    positioning. Each equation would include orbital params seen below:
  • Store radial/cyl coordinates as well for easier calculation internal
    pos.r [radial position]
    pos.w [theta angle ]
    pos.p [phi angle]
    pos.h [height = z]
  • Primary Descriptors
    mass [mass of the object] local for modeling
    mass_units [kg/tons, fractional Earth mass, etc]
    objtype [object type: asteroid, comet, planetoid, rocky, terra, gas] local to send to M.S., terrainRE
    subtype [ex. rocky->mercurial, etc] local to send to M.S., terrainRE
  • Secondary Descriptors
    objage [how old it is]
    tmp-avg [average "surface" temperature]
    atmo [array for renderer, color, opacity, reflictivity, will feed renderer parameters]
    density [average density calculated from size and mass]
    metl [Metalicity]
    ele [primary elements]
    bom [bombardment level, to determine crater count for terrain] to terrainRE
  • Object descriptors if spheroid
    sa-a [Semi-axis on x axis]
    sa-b [Semi-axis on y axis]
    sa-z [Semi-axis on z axis]
  • If non-spheroid / IE asteroid
  • For large scale modeling, no data pull needed. For modeling Binary asteroids or rotations, there will be a dedicated script for converting asteroid into a density point cloud. Will work closely with terrain.
  • Internal Modeling -[might talk to geologyRE later, but some elements need to be in this reference engine for tidal force modeling]
    density[x,y,z]/[r,w,p]~~~
    material[x,y,z]/[r,w,p]
  • Interplanetary Medium
    dust[x, y, z, ion] clumped dust volumes into spatial model.
    radCart[x,y,z, a, b, g, em] radiation map of the solar system
    radObj[r, obj_id] [radiation level as a function of radius from an object]
  • alpha, beta, gamma, EM
    Flairs TBD
    Comet trails TBD
    Accretion/Protoplanetary discs TBD
    Planetary Nebulae (PNe) TBD

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions