Dear Jack,
The best OpenQuake rupture surface typology to use here is the
MultiSurface class. For a bit more context, OpenQuake rupture objects which consider a MultiSurface can be generated from a
MultiFaultSource. A MultiFaultSource contains a set of geometric sections (each with a unique section ID), which can combine to form different geometrically complex ruptures (which use the MultiSurfaceClass to combine them into a single OQ rupture surface in such instances).
Each potential combination of sections which can rupture in a single occurrence is referred to as a multi-planar rupture and each of these has a probability of occurrence within a given investigation time (just a side note in case you wish to consider such sources within a probabilistic analysis in OQ, the investigation time in your job file must correspond to that used to develop any MultiFaultSource(s) within your seismic source characterisation).
Attached here I provide an example of an arbitrary OQ rupture usable within a scenario hazard calculation which was generated from a MultiFaultSource (i.e. the surface typology is MultiSurface as would suit your needs here). The rupture is provided in a CSV format (also usable within a scenario calculation), but the logic of how the MultiSurface rupture's mesh is specified is the same as if provided more conventionally within an XML.
Secondly, regarding the calculation of source-to-site distances, in the instance of considering a rupture generated from a MultiFaultSource, the OpenQuake Engine uses the
GC2 system of Spudich and Youngs (2015). For simpler rupture surface typologies, the functions used to compute source-to-site distances consider the 3D
Mesh of points representing the surface and a Mesh representing a given site to compute the seismic hazard at. I provide here links to each function which computes a finite rupture distance metric available in OQ; 1)
Joyner-Boore distance, 2)
rupture distance, 3)
Rx and 4)
Ry0.
Lastly, indeed your logic for satisfying the right-hand rule is correct.
Thanks, and I hope my answer is of help to you.
Christopher
GEM Seismic Hazard Team