Skip to content

piktur/rhino_manifolds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Calabi Yau Manifold (n = 6)

In the case of string theory, consistency requires Spacetime to have 10 dimensions (3D regular space + 1 time + 6D hyperspace).[1] The Calabi Yau manifold is a complex Fermat Surface with applications in theoretical physics, particularly in superstring theory, the extra dimensions of spacetime are sometimes conjectured to take the form of a 6-dimensional Calabi–Yau manifold.[2]

On the algorithm, Andrew J. Hanson explains the resultant visualisation "contains enough information to check that it’s a consistent local depiction of the complete manifold and so is still a sufficient (although not ideal) representation."


Tools

Rhino Plugins

MacOS install paths for:

  • Grasshopper: ~/Library/Application Support/McNeel/Rhinoceros/MacPlugIns/Grasshopper/Libraries
  • Other: ~/Applications/RhinoWIP.app/Contents/Resources/ManagedPlugIns

Documentation


Development


Process

1. Generate Intersection Curves

2. Generate 2D View

  • RunPythonScript Make2d() to generate raw 2D curves.
  • Visible PolySurfaces::1
  • Visible Intersect::Curves
  • Rotate model or select the preferred view
  • Select objects on PolySurfaces::1 and Intersect::Curves
  • Set DocumentProperties > Model > Absolute tolerance to 0.1
  • Run Make2D
  • Rename Make2D layer
  • Set DocumentProperties > Model > Absolute tolerance to 0.001
  • Run Make2D
  • Visible Curves::1::0::U
  • Select objects on Curves::1::0::U
  • Set DocumentProperties > Model > Absolute tolerance to 0.0000000001
  • Run Make2d
  • Invisible Curves::1::0::U
  • Visible Curves::1::0::V
  • Select objects on Curves::1::0::V
  • Run Make2d
  • Perform manual selection/correction using:
    • Trim by one or more cutting objects
    • Split by one or more cutting objects
    • ContinueCurve adding additional Control Points
    • BlendCrv to fill between two visually continuous Curves
    • Join continuous Curves within tolerance of each other

Export/Import Views

Export Vector/Raster

  • SelectAll 2D Curves
  • File > Export Selected as Adobe Illustrator .ai
  • File > Export Selected as Rhino .3dm
  • Open exported curves with Adobe Illustrator (NOTE exported SVG data is incompatible with anything other vector editor)
    • Select All
    • Resize selection so that the largest dimension measures 200mm
    • Drag selection into centre of Artboard measuring 210x210mm
    • Set Stroke Width to 0.4mm
    • Save As .eps

Copy A4[SQRDIV].ait to /Applications/Adobe\ Illustrator\ CC\ 2017/Cool\ Extras.localized/en_GB/Templates/A4[SQRDIV].ait

Rasterize File > Export > Export As .psd

  • Select whitespace on 5-d-4::visible::lines::PolySurfaces::1
  • Create a New Layer at bottom of Layer stack
  • Fill selection with paper colour sample

Sources

  1. Supertring Theory
  2. Calabi-Yau manifold
  3. Wolfram Mathematica [Source]
  4. Wolfram Mathematica [Source]
  5. Wolfram Mathematica
  6. Wolfram Mathematica
  7. Wolfram Mathematica
  8. Wolfram Mathematica
  9. Calabi-Yau and Hanson's surfaces
  10. SketchUp
  11. Rhino
  12. "Visualizing the Path from Fermat's Last Theorem to Calabi-Yau Spaces", Hanson, Andrew J.
  13. "Calabi-Yau manifold"
  14. "Calabi - Yau Manifolds"
  15. "Dimensions of Time"
  16. "Mesh Generation with Python"
  17. "The Elegant Universe", Greene, Brian
  18. "The Fabric of the Cosmos", Greene, Brian
  19. "A Construction for Computer Visualization of Certain Complex Curves", Hanson, Andrew J.

TODO

  • Implement concurrency

Releases

No releases published

Packages

No packages published

Languages