Refactoring #1569

Feature #1290: === Core: framework ===

Envelope task #1566: == API changes ==

rename hard particle form factors

Added by wuttke almost 4 years ago. Updated 17 days ago.

Status:RfcStart date:03 Aug 2016
Priority:HighDue date:
Assignee:-% Done:


Target version:-


Indispensable because some names are in conflict with established geometric terminology. Question is how far we go. See also #1567.

Resuming from #1497 (please keep aligned when editing):

IsGISAXS FitGISAXS BornAgain 1.6 Proposal (JWu)
[use Box] Cube $
TruncatedCube TruncatedCube
Parallelepiped, Box Box RectangularPrism
Prims3 Prism Prism3 TrigonalPrism
[use Box] SquarePrism $
Prism6 Prism6 HexagonalPrism
[use AnisoPyramid] RectangularPyramid $
[use Tetrahedron @2] TrigonalPyramid $
[use Pyramid] SquarePyramid $$
[use Cone6] HexagonalPyramid $
AnisoPyramid AnisoPyramid ReactangularFrustum
Tetrahedron TruncatedTetrahedron Tetrahedron @1 TrigonalFrustum
Pyramid Pyramid SquareFrustum $
Cone6 Cone6 HexagonalFrustum
[use Tetrahedron] Tetrahedron @3 $
Icosahedron Icosahedron
Dodecahedron Dodecahedron
Cuboctahedron Cuboctahedron @4 SquareBiFrustum
Other 3d figures
Trivial Dot
FullSphere FullSphere Sphere
Sphere TruncatedSphere TruncatedSphere TruncatedSphere
FacettedSphere @0 - -
FacettedSphere @0 - -
Ellipsoid - Ellipsoid $ @8
HemiEllipsoid HemiEllipsoid [delete] @7
[missing #1568] TruncatedEllipsoid @7
Hemispheroid @7 - -
FullSpheroid Spheroid FullSpheroid Spheroid
Spheroid TruncatedSpheroid TruncatedSpheroid
Cone Cone Cone
Cylinder Cylinder Cylinder Cylinder
EllipsoidalCylinder EllipsoidalCylinder EllipsoidalCylinder
Capsule - -
2+1d ripples
Ripple1 Ripple1 Wave @5
Ripple2 Ripple2 Sawtooth @5
  • $ Each of these form factors can easily be modelled by putting certain parameters of a more generic shape to a special value. A fundamental decision is needed whether we want to offer these special cases. Cf #1463.
  • @0 The meanings of »facetted sphere« in IsGISAXS and FitGISAXS differ.
  • @1 »Tetrahedron« means four faces, while this shape has five. So this is definitely untenable.
  • @2 By »tetrahedron«, one would usually understand a »regular« one; therefore it is inappropriate for a generic trigonal pyramid.
  • @3 Implement this later, when confusion over the renamed legacy »tetrahedron« is over.
  • @4 According to, a »cuboctahedron« is something entirely different, so the present name is untenable.
  • @5 Put ripples in a separate directory, and in a separate frame in the GUI, so that it becomes clear that these are ripples. Other proposal (GP): CosineRipple, TriangularRipple.
  • @6 I had thought we should use the term »facetted« for highly symmetric truncation, but according to, the established name is »truncated sphere«.
  • @7 There is no physical reason why the contact angle should be just 90deg. Therefore we no need for HemiEllipsoid and HemiSpheroid. Rather, let us introduce TruncatedEllipsoid with truncation at arbitrary height (#1568).
  • @8 If we have Sphere, TruncatedSphere, and TruncatedEllipsoid, then Ellipsoid should be there for clearer systematic.


#1 Updated by wuttke almost 4 years ago

  • Description updated (diff)

#2 Updated by wuttke almost 4 years ago

After first discussion, tendency to answer the $-question with yes: In principle, special cases of generic shapes merit dedicated classes.

#3 Updated by wuttke 17 days ago

  • Description updated (diff)

#4 Updated by wuttke 17 days ago

  • Description updated (diff)

Also available in: Atom PDF