interaction gravity#

Describes the entry gravity at version 0.1.0, registered by mime.interactions.gravity.Gravity.

At a glance#

  • interaction gravity, version 0.1.0, namespace mime

  • Family: gravity, with 1 member, none of them with rungs

  • Nodes: GravityNode

  • The equations are on the node page: equations

  • Derivative: exact

  • Validity: none declared

What it models, and when not to use it#

Weight and buoyancy#

What it models. The weight of a body less the weight of the fluid it displaces, as one wrench about the body’s centre of mass: exp.attach(Gravity(), body=umr, medium=water). The weight acts at the centre of mass and the buoyancy at the body’s centre of buoyancy, so where a body declares that point off its centre of mass the law also delivers the couple the buoyancy makes about it, and reads the body’s pose to turn the offset into the world; it reads the pose only then. The body’s mass and buoyant volume, the medium’s density and the experiment’s gravity vector are its inputs, and they are parameters of the graph, so a study can move them.

It is a member of the gravity family.

When not to use it.

  • With a medium that moves and carries its own hydrostatic load: the medium here is at rest, and with a flow that counts the hydrostatic pressure the buoyancy would be counted twice. No such flow is built yet.

  • For a body whose displaced volume changes, or that floats at a surface: the buoyant volume is a constant of the body, and the fluid’s density is uniform.

  • For anything but weight and buoyancy: it is not the drag, the contact or any hydrodynamic load on the body.

Where its values come from. A declaration, a record or the body’s parts, and what “declared” means: the materials note.

Versions. gravity 0.1.0 is its first.

Settings#

none: the entry takes no setting, so its setting_roles declares none.

Roles, reads and deliveries#

Roles, bound by keyword when the entry is attached: body (body), medium (medium).

Delivers:

Label

Role

Into the target

wrench

body

body.applied_wrench

Reads values of the things it is bound to:

Label

Role

Value

buoyant_volume

body

buoyant_volume

centre_of_buoyancy

body

centre_of_buoyancy

fluid_density

medium

density

mass

body

mass

Reads, values and deliveries that its plan adds for a particular construction are not in these tables: they list what the class declares, and plan is code the build runs when the entry is attached.

Nodes it builds#

Declared in builds; the node walk compares it with what a round-trip case builds.

Supported constructions, by what each bound thing’s dynamics or field provider must offer:

Requires

Note

body: flag rigid, accepts body.applied_wrench

a rigid body in a medium at rest

Gradient status#

The derivative through this entry is exact, the derivative of what it computes.

Validity#

none declared

Family#

Declared: gravity. The family’s conformance suite is run by a test of the lab or of MIME; which test, and in which lane, is resolved when the evidence resolver lands.

References#

[@TatumClassicalMechanics]

Other declarations#

Class variable

Type

Value

holds_off

ClassVar[str | None]

null

id_roles

ClassVar[tuple[str, ...] | None]

null

moving

ClassVar[bool]

false