Geometry and Physics Modeling with Python
Transcript of Geometry and Physics Modeling with Python
![Page 1: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/1.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometry and Physics Modeling with Python
A. DiCarlo† A. Paoluzzi† G. Scorzelli‡
†University “Roma Tre“, Italy ‡University of Utah, USA
July 3, 2010
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 2: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/2.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Outline
1 Pyplasm: Plasm → PythonGeometric Computing with a functional languagePython EmbeddingExamples
2 Modeling with Chain ComplexesCell complexes vs Chain complexesThe Hasse Matrix Representation
3 Chompy: Python → Python ∪ ErlangDataflow streaming of geometryDistributed Computing via Message Passing
4 Towards Complex Systems SimulationsThe ProtoPlasm framework
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 3: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/3.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Motivations for a new entry
Python: multi-paradigm language with efficient built-in datastructures and simple/effective approach to OO programming.
Python’s elegant syntax and dynamic typing, and itsinterpreted nature, make it ideal for scripting and RAD
We wished for easy access to Biopython, NumPy, SciPy,Femhub, and the geometry libraries already interfaced withPython
The easiest solution?Pyplasm: Plasm → Python
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 4: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/4.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Motivations for a new entry
Python: multi-paradigm language with efficient built-in datastructures and simple/effective approach to OO programming.
Python’s elegant syntax and dynamic typing, and itsinterpreted nature, make it ideal for scripting and RAD
We wished for easy access to Biopython, NumPy, SciPy,Femhub, and the geometry libraries already interfaced withPython
The easiest solution?Pyplasm: Plasm → Python
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 5: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/5.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Motivations for a new entry
Python: multi-paradigm language with efficient built-in datastructures and simple/effective approach to OO programming.
Python’s elegant syntax and dynamic typing, and itsinterpreted nature, make it ideal for scripting and RAD
We wished for easy access to Biopython, NumPy, SciPy,Femhub, and the geometry libraries already interfaced withPython
The easiest solution?Pyplasm: Plasm → Python
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 6: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/6.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Motivations for a new entry
Python: multi-paradigm language with efficient built-in datastructures and simple/effective approach to OO programming.
Python’s elegant syntax and dynamic typing, and itsinterpreted nature, make it ideal for scripting and RAD
We wished for easy access to Biopython, NumPy, SciPy,Femhub, and the geometry libraries already interfaced withPython
The easiest solution?Pyplasm: Plasm → Python
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 7: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/7.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifolds
Domain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:
Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 8: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/8.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexes
Representations:
BSP treesPolytopesHasse graphs
Geometric operators:
Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 9: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/9.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:
Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 10: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/10.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP trees
PolytopesHasse graphs
Geometric operators:
Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 11: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/11.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopes
Hasse graphs
Geometric operators:
Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 12: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/12.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:
Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 13: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/13.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:
Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 14: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/14.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine maps
Hierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 15: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/15.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structures
Boolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 16: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/16.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structuresBoolean Ops
Cartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 17: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/17.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structuresBoolean OpsCartesian products
Minkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 18: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/18.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sums
Charts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 19: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/19.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlases
d -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 20: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/20.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ n
Convex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 21: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/21.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hulls
Domain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 22: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/22.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Geometric extension of Backus’ FL (IBM Yorktown)
(Multidimensional) Geometric Programming at Function Level
Points, curves, surfaces,solids and higher-dimmanifoldsDomain: Hierarchicalpolyhedral complexesRepresentations:
BSP treesPolytopesHasse graphs
Geometric operators:Affine mapsHierarchical structuresBoolean OpsCartesian productsMinkowski sumsCharts and atlasesd -Skeletons, 0 ≤ d ≤ nConvex hullsDomain integrals ofpolynomials
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 23: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/23.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
PLaSM (Programming Language for Solid Modeling)Documentation
Paoluzzi, A., Pascucci, V.& Vicentino, M. (1995).Geometric programming: aprogramming approach togeometric design.ACM Trans. Graph. 14(3), 266–306.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 24: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/24.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Three general rules to write pyplasm code
Plasm primitivesALL CAPS all capital letters
Application
is always unary VIEW(CUBOID([1,4,9]))
Higher-level functions
Unusual but legal in Python COLOR(RED)(CUBE(1))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 25: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/25.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Three general rules to write pyplasm code
Plasm primitivesALL CAPS all capital letters
Application
is always unary VIEW(CUBOID([1,4,9]))
Higher-level functions
Unusual but legal in Python COLOR(RED)(CUBE(1))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 26: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/26.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Three general rules to write pyplasm code
Plasm primitivesALL CAPS all capital letters
Application
is always unary VIEW(CUBOID([1,4,9]))
Higher-level functions
Unusual but legal in Python COLOR(RED)(CUBE(1))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 27: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/27.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Boolean ops example: polygon filling
List = [[[0,0],[4,2],[2.5,3],[4,5],[2,5],[0,3],[-3,3],[0,0]],
[[0,3],[0,1],[2,2],[2,4],[0,3]],
[[2,2],[1,3],[1,2],[2,2]]
]
polylines = STRUCT(AA(POLYLINE)(List))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 28: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/28.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Boolean ops example: polygon filling
List = [[[0,0],[4,2],[2.5,3],[4,5],[2,5],[0,3],[-3,3],[0,0]],
[[0,3],[0,1],[2,2],[2,4],[0,3]],
[[2,2],[1,3],[1,2],[2,2]]
]
polygon = SOLIDIFY(polylines)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 29: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/29.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Boolean ops example: polygon filling
List = [[[0,0],[4,2],[2.5,3],[4,5],[2,5],[0,3],[-3,3],[0,0]],
[[0,3],[0,1],[2,2],[2,4],[0,3]],
[[2,2],[1,3],[1,2],[2,2]]
]
cells = SKELETON(1)(polygon)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 30: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/30.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Boolean ops example: polygon filling
List = [[[0,0],[4,2],[2.5,3],[4,5],[2,5],[0,3],[-3,3],[0,0]],
[[0,3],[0,1],[2,2],[2,4],[0,3]],
[[2,2],[1,3],[1,2],[2,2]]
]
solid = PROD([polygon, Q(0.5)])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 31: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/31.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Boolean ops example: polygon filling
List = [[[0,0],[4,2],[2.5,3],[4,5],[2,5],[0,3],[-3,3],[0,0]],
[[0,3],[0,1],[2,2],[2,4],[0,3]],
[[2,2],[1,3],[1,2],[2,2]]
]
complement = DIFFERENCE([BOX([1,2,3])(solid), solid ])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 32: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/32.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Coding a new pyplasm primitive
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 33: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/33.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
The pyplasm EXPL in plain python
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 34: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/34.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
EXPL examples
List = SPLITCELLS(SPHERE(1)([8,12]))
pol1=EXPL([1,2,3])([1.5,1.5,1.5])(List) pol2 = EXPL(3)(1.5)(List)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 35: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/35.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
EXPL examples
List = SPLITCELLS(SPHERE(1)([8,12]))
pol1=EXPL([1,2,3])([1.5,1.5,1.5])(List) pol2 = EXPL(3)(1.5)(List)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 36: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/36.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Minkowsky sum of cell complexes with a convex cell
polList1 = SPLITCELLS(SK(1)(pol1)) polList2 = SPLITCELLS(pol1)
EXPL([1.5,1.5,1.5])(polList1)) EXPL([1.5,1.5,1.5])(polList2)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 37: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/37.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Minkowsky sum of cell complexes with a convex cell
polList1 = SPLITCELLS(SK(1)(pol1)) polList2 = SPLITCELLS(pol1)
EXPL([1.5,1.5,1.5])(polList1)) EXPL([1.5,1.5,1.5])(polList2)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 38: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/38.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Minkowsky sum of cell complexes with a convex cell
def fun (poly): return COMP([ EXPL([1.5,1.5,1.5]), SPLITCELLS,(OFFSET([.1,.1,.1]) ])(poly)
fun(SPHERE(1)([8,12]))) fun(SKELETON(1)(SPHERE(1)([8,12])))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 39: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/39.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Minkowsky sum of cell complexes with a convex cell
def fun (poly): return COMP([ EXPL([1.5,1.5,1.5]), SPLITCELLS,(OFFSET([.1,.1,.1]) ])(poly)
fun(SPHERE(1)([8,12]))) fun(SKELETON(1)(SPHERE(1)([8,12])))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 40: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/40.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesACM/IEEE Symposium on Solid Modeling and Applications, 43–52. ACM Press, 1993.
a = 10*[1,-5]+[1]; b = MINUS(a); P = PROD
P([ Q(b),Q(b) ]) STRUCT([ P([ Q(a),Q(a) ]), P([ Q(a),Q(b) ]),P([ Q(b),Q(a) ]) ])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 41: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/41.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesACM/IEEE Symposium on Solid Modeling and Applications, 43–52. ACM Press, 1993.
a = 10*[1,-5]+[1]; b = MINUS(a); P = PROD
P([ Q(b),Q(b) ])
STRUCT([ P([ Q(a),Q(a) ]), P([ Q(a),Q(b) ]),P([ Q(b),Q(a) ]) ])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 42: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/42.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesACM/IEEE Symposium on Solid Modeling and Applications, 43–52. ACM Press, 1993.
a = 10*[1,-5]+[1]; b = MINUS(a); P = PROD
P([ Q(b),Q(b) ]) STRUCT([ P([ Q(a),Q(a) ]), P([ Q(a),Q(b) ]),P([ Q(b),Q(a) ]) ])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 43: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/43.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesplan = PROD([ Q(10), Q([5,5]) ]) section = MKPOL([[[0,4],[10,4],[10,7],[5,10],[0,7],[0,0],[10,0]], [[1,2,3,4,5],[1,2,6,7]], [[1],[2]] ])
SK(1)(plan) SK(1)(section)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 44: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/44.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesplan = PROD([ Q(10), Q([5,5]) ]) section = MKPOL([[[0,4],[10,4],[10,7],[5,10],[0,7],[0,0],[10,0]], [[1,2,3,4,5],[1,2,6,7]], [[1],[2]] ])
SK(1)(plan)
SK(1)(section)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 45: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/45.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesplan = PROD([ Q(10), Q([5,5]) ]) section = MKPOL([[[0,4],[10,4],[10,7],[5,10],[0,7],[0,0],[10,0]], [[1,2,3,4,5],[1,2,6,7]], [[1],[2]] ])
SK(1)(plan) SK(1)(section)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 46: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/46.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesIntersection of extrusions. Special case of Cartesian product
house = GPROD([[1,2,3],[1,3,2]])([Obj1,Obj2])
EXPL([1.1,1.1,1.1])(SPLITCELLS(house)) sk1 = OFFSET([.2,.2,.4])(SK(1)(house))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 47: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/47.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesIntersection of extrusions. Special case of Cartesian product
house = GPROD([[1,2,3],[1,3,2]])([Obj1,Obj2])
EXPL([1.1,1.1,1.1])(SPLITCELLS(house))
sk1 = OFFSET([.2,.2,.4])(SK(1)(house))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 48: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/48.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Cartesian product on cell complexesIntersection of extrusions. Special case of Cartesian product
house = GPROD([[1,2,3],[1,3,2]])([Obj1,Obj2])
EXPL([1.1,1.1,1.1])(SPLITCELLS(house)) sk1 = OFFSET([.2,.2,.4])(SK(1)(house))
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 49: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/49.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Scene graph of assemblies
str1 = STRUCT(10*[sk1,T(1)(11)]) str2 = STRUCT(10*[str1,T(2)(31)])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 50: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/50.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Scene graph of assemblies
str1 = STRUCT(10*[sk1,T(1)(11)])
str2 = STRUCT(10*[str1,T(2)(31)])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 51: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/51.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Geometric Computing with a functional languagePython EmbeddingExamples
Scene graph of assemblies
str1 = STRUCT(10*[sk1,T(1)(11)]) str2 = STRUCT(10*[str1,T(2)(31)])
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 52: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/52.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Chain complexes and Cochain complexes
A chain complex is a sequence of linear spaces of d -chains,0 ≤ d ≤ n, with a sequence of boundary operators, eachmapping the space of d -chains to the space of (d − 1)-chains
The dual of the chain complex is the cochain complex
The duals of the boundary operators ∂ are the coboundaryoperator δ, that map the spaces of d -cochains to the spaces of(d + 1)-cochains
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 53: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/53.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Chain complexes and Cochain complexes
All meshes, say partitioning either the boundary or the interiorof a model, and their associated physical fields, are properlyrepresented by a (co)chain complex.
Such a complex therefore gives a complete discreterepresentation of any type of field over any type of geometricmodel.
Huge geometric structures may be properly and efficientlyrepresented by sparse matrices, and therefore efficientlymanipulated through linear computational algebra, in particularby using the last-generation of highly parallel vector GPUs.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 54: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/54.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Chain complexes and Cochain complexesThis representation apply to all cell complexes
The (co)chain representation captures formally andunambiguously all the combinatorial relationships of abstract,geometric, and physical modelling, via the standard topologicaloperators of boundary and coboundary.
This representation apply to all cell complexes, withoutrestriction of type, dimension, codimension, orientability,manifoldness, etc.
Furthermore, this approach unifies the geometric and physicalcomputation in a common formal computational structure.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 55: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/55.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Chains/cochains over a cell complex
A small 2-complex
Real-valued chainsattach a signedd -measure to d -cellssuch as length to1-cells, area to 2-cells,volume to 3-cellsthey restore part of thegeometricalinformation left out bythe purely topologicalconstruction of a cellcomplex
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 56: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/56.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Chains/cochains over a cell complex
A small 2-complexReal-valued chainsattach a signedd -measure to d -cells
such as length to1-cells, area to 2-cells,volume to 3-cellsthey restore part of thegeometricalinformation left out bythe purely topologicalconstruction of a cellcomplex
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 57: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/57.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Chains/cochains over a cell complex
A small 2-complexReal-valued chainsattach a signedd -measure to d -cellssuch as length to1-cells, area to 2-cells,volume to 3-cells
they restore part of thegeometricalinformation left out bythe purely topologicalconstruction of a cellcomplex
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 58: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/58.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Chains/cochains over a cell complex
A small 2-complexReal-valued chainsattach a signedd -measure to d -cellssuch as length to1-cells, area to 2-cells,volume to 3-cellsthey restore part of thegeometricalinformation left out bythe purely topologicalconstruction of a cellcomplex
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 59: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/59.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
Hasse graphChains/cochains over a cell complex
already used in PyPlasm as the basic data structure
Hasse graph of the previous 2-complex
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 60: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/60.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
The Hasse matrixA complete representation of the measured incidence between all cells of all dimensions
Discrete Physics using Metrized Chains. 2009. SIAM/ACM Conf. onGeometric and Physical Modeling
Block structure of the Hasse matrix
H(K) is the sparsebidiagonal matrix ofcoboundary operators
H(K)> is the sparsebidiagonal matrix ofboundary operators
k0, k2, ... are the sizesof d-skeletons of evendimensions
k1, k3, ... are the sizesof d-skeletons of odddimensions
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 61: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/61.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
The Hasse matrixA complete representation of the measured incidence between all cells of all dimensions
Discrete Physics using Metrized Chains. 2009. SIAM/ACM Conf. onGeometric and Physical Modeling
Block structure of the Hasse matrix H(K) is the sparsebidiagonal matrix ofcoboundary operators
H(K)> is the sparsebidiagonal matrix ofboundary operators
k0, k2, ... are the sizesof d-skeletons of evendimensions
k1, k3, ... are the sizesof d-skeletons of odddimensions
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 62: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/62.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
The Hasse matrixA complete representation of the measured incidence between all cells of all dimensions
Discrete Physics using Metrized Chains. 2009. SIAM/ACM Conf. onGeometric and Physical Modeling
Block structure of the Hasse matrix H(K) is the sparsebidiagonal matrix ofcoboundary operators
H(K)> is the sparsebidiagonal matrix ofboundary operators
k0, k2, ... are the sizesof d-skeletons of evendimensions
k1, k3, ... are the sizesof d-skeletons of odddimensions
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 63: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/63.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
The Hasse matrixA complete representation of the measured incidence between all cells of all dimensions
Discrete Physics using Metrized Chains. 2009. SIAM/ACM Conf. onGeometric and Physical Modeling
Block structure of the Hasse matrix H(K) is the sparsebidiagonal matrix ofcoboundary operators
H(K)> is the sparsebidiagonal matrix ofboundary operators
k0, k2, ... are the sizesof d-skeletons of evendimensions
k1, k3, ... are the sizesof d-skeletons of odddimensions
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 64: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/64.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Cell complexes vs Chain complexesThe Hasse Matrix Representation
The Hasse matrixA complete representation of the measured incidence between all cells of all dimensions
Discrete Physics using Metrized Chains. 2009. SIAM/ACM Conf. onGeometric and Physical Modeling
Block structure of the Hasse matrix H(K) is the sparsebidiagonal matrix ofcoboundary operators
H(K)> is the sparsebidiagonal matrix ofboundary operators
k0, k2, ... are the sizesof d-skeletons of evendimensions
k1, k3, ... are the sizesof d-skeletons of odddimensions
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 65: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/65.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
ChompyPython → Python ∪ Erlang
Chompy: to compute with (co)chain complexes using multi-paradigm andconcurrent computer languages (Python and Erlang, respectively).
—linear and higher order— dimension-independent simplicialcomplexes
d -complexes of convex cellsCartesian product of cell complexesskeleton and boundary extractionvarious types of local and global cell and (co)chain refinementfinite integration of polynomials over subcomplexesand so on ...
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 66: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/66.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
ChompyPython → Python ∪ Erlang
Chompy: to compute with (co)chain complexes using multi-paradigm andconcurrent computer languages (Python and Erlang, respectively).
—linear and higher order— dimension-independent simplicialcomplexesd -complexes of convex cells
Cartesian product of cell complexesskeleton and boundary extractionvarious types of local and global cell and (co)chain refinementfinite integration of polynomials over subcomplexesand so on ...
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 67: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/67.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
ChompyPython → Python ∪ Erlang
Chompy: to compute with (co)chain complexes using multi-paradigm andconcurrent computer languages (Python and Erlang, respectively).
—linear and higher order— dimension-independent simplicialcomplexesd -complexes of convex cellsCartesian product of cell complexes
skeleton and boundary extractionvarious types of local and global cell and (co)chain refinementfinite integration of polynomials over subcomplexesand so on ...
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 68: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/68.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
ChompyPython → Python ∪ Erlang
Chompy: to compute with (co)chain complexes using multi-paradigm andconcurrent computer languages (Python and Erlang, respectively).
—linear and higher order— dimension-independent simplicialcomplexesd -complexes of convex cellsCartesian product of cell complexesskeleton and boundary extraction
various types of local and global cell and (co)chain refinementfinite integration of polynomials over subcomplexesand so on ...
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 69: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/69.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
ChompyPython → Python ∪ Erlang
Chompy: to compute with (co)chain complexes using multi-paradigm andconcurrent computer languages (Python and Erlang, respectively).
—linear and higher order— dimension-independent simplicialcomplexesd -complexes of convex cellsCartesian product of cell complexesskeleton and boundary extractionvarious types of local and global cell and (co)chain refinement
finite integration of polynomials over subcomplexesand so on ...
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 70: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/70.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
ChompyPython → Python ∪ Erlang
Chompy: to compute with (co)chain complexes using multi-paradigm andconcurrent computer languages (Python and Erlang, respectively).
—linear and higher order— dimension-independent simplicialcomplexesd -complexes of convex cellsCartesian product of cell complexesskeleton and boundary extractionvarious types of local and global cell and (co)chain refinementfinite integration of polynomials over subcomplexes
and so on ...
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 71: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/71.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
ChompyPython → Python ∪ Erlang
Chompy: to compute with (co)chain complexes using multi-paradigm andconcurrent computer languages (Python and Erlang, respectively).
—linear and higher order— dimension-independent simplicialcomplexesd -complexes of convex cellsCartesian product of cell complexesskeleton and boundary extractionvarious types of local and global cell and (co)chain refinementfinite integration of polynomials over subcomplexesand so on ...
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 72: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/72.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Erlang languageConcurrent processing done rigth
Powerful (open source and multi-platform) concurrentfunctional programming language and runtime system
Purely functional (single assignment, dynamic typing), easy tounderstand and to debug
Fits well with multicore CPUs, clusters and SMP architectures
Even hot swapping of programs is supported — code can bechanged without stopping a system
Developed by Ericsson to support distributed, fault-tolerant,soft real-time, non-stop applications
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 73: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/73.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Erlang languageConcurrent processing done rigth
Powerful (open source and multi-platform) concurrentfunctional programming language and runtime system
Purely functional (single assignment, dynamic typing), easy tounderstand and to debug
Fits well with multicore CPUs, clusters and SMP architectures
Even hot swapping of programs is supported — code can bechanged without stopping a system
Developed by Ericsson to support distributed, fault-tolerant,soft real-time, non-stop applications
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 74: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/74.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Erlang languageConcurrent processing done rigth
Powerful (open source and multi-platform) concurrentfunctional programming language and runtime system
Purely functional (single assignment, dynamic typing), easy tounderstand and to debug
Fits well with multicore CPUs, clusters and SMP architectures
Even hot swapping of programs is supported — code can bechanged without stopping a system
Developed by Ericsson to support distributed, fault-tolerant,soft real-time, non-stop applications
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 75: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/75.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Erlang languageConcurrent processing done rigth
Powerful (open source and multi-platform) concurrentfunctional programming language and runtime system
Purely functional (single assignment, dynamic typing), easy tounderstand and to debug
Fits well with multicore CPUs, clusters and SMP architectures
Even hot swapping of programs is supported — code can bechanged without stopping a system
Developed by Ericsson to support distributed, fault-tolerant,soft real-time, non-stop applications
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 76: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/76.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Erlang languageConcurrent processing done rigth
Powerful (open source and multi-platform) concurrentfunctional programming language and runtime system
Purely functional (single assignment, dynamic typing), easy tounderstand and to debug
Fits well with multicore CPUs, clusters and SMP architectures
Even hot swapping of programs is supported — code can bechanged without stopping a system
Developed by Ericsson to support distributed, fault-tolerant,soft real-time, non-stop applications
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 77: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/77.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Disco: Erlang ∪ PythonDistributed computing framework developed by Nokia Research Center to solve realproblems in handling massive amounts of data
Disco users start Disco jobs in Python scripts.
Jobs requests are sent over HTTP to the master.
Master is an Erlang process that receives requests over HTTP.
Master launches another Erlang process, worker supervisor, oneach node over SSH.
Worker supervisors run Disco jobs as Python processes.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 78: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/78.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Disco: Erlang ∪ PythonDistributed computing framework developed by Nokia Research Center to solve realproblems in handling massive amounts of data
Disco users start Disco jobs in Python scripts.
Jobs requests are sent over HTTP to the master.
Master is an Erlang process that receives requests over HTTP.
Master launches another Erlang process, worker supervisor, oneach node over SSH.
Worker supervisors run Disco jobs as Python processes.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 79: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/79.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Disco: Erlang ∪ PythonDistributed computing framework developed by Nokia Research Center to solve realproblems in handling massive amounts of data
Disco users start Disco jobs in Python scripts.
Jobs requests are sent over HTTP to the master.
Master is an Erlang process that receives requests over HTTP.
Master launches another Erlang process, worker supervisor, oneach node over SSH.
Worker supervisors run Disco jobs as Python processes.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 80: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/80.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Disco: Erlang ∪ PythonDistributed computing framework developed by Nokia Research Center to solve realproblems in handling massive amounts of data
Disco users start Disco jobs in Python scripts.
Jobs requests are sent over HTTP to the master.
Master is an Erlang process that receives requests over HTTP.
Master launches another Erlang process, worker supervisor, oneach node over SSH.
Worker supervisors run Disco jobs as Python processes.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 81: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/81.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Disco: Erlang ∪ PythonDistributed computing framework developed by Nokia Research Center to solve realproblems in handling massive amounts of data
Disco users start Disco jobs in Python scripts.
Jobs requests are sent over HTTP to the master.
Master is an Erlang process that receives requests over HTTP.
Master launches another Erlang process, worker supervisor, oneach node over SSH.
Worker supervisors run Disco jobs as Python processes.
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 82: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/82.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP (Binary Space Partition) treeBack to Chompy dataflow streaming
3 types of geometry nodes: FULL, EMPTY and FUZZY cells
The FUZZY cells, to be split at next step, are in light grayThe FULL cells are in dark grayThe EMPTY cells are not shown (of course :o)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 83: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/83.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP (Binary Space Partition) treeBack to Chompy dataflow streaming
3 types of geometry nodes: FULL, EMPTY and FUZZY cells
The FUZZY cells, to be split at next step, are in light gray
The FULL cells are in dark grayThe EMPTY cells are not shown (of course :o)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 84: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/84.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP (Binary Space Partition) treeBack to Chompy dataflow streaming
3 types of geometry nodes: FULL, EMPTY and FUZZY cells
The FUZZY cells, to be split at next step, are in light grayThe FULL cells are in dark gray
The EMPTY cells are not shown (of course :o)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 85: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/85.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP (Binary Space Partition) treeBack to Chompy dataflow streaming
3 types of geometry nodes: FULL, EMPTY and FUZZY cells
The FUZZY cells, to be split at next step, are in light grayThe FULL cells are in dark grayThe EMPTY cells are not shown (of course :o)
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 86: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/86.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Dataflow graph of the generating expression
Dataflow graph of the pyplasm expression that produces themechanical piece
The dataflow generation is from source preprocessing
The various processes will run concurrently in an Erlang environment
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 87: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/87.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Dataflow graph of the generating expression
Dataflow graph of the pyplasm expression that produces themechanical piece
The dataflow generation is from source preprocessing
The various processes will run concurrently in an Erlang environment
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 88: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/88.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Dataflow graph of the generating expression
Dataflow graph of the pyplasm expression that produces themechanical piece
The dataflow generation is from source preprocessing
The various processes will run concurrently in an Erlang environment
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 89: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/89.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Dataflow graph of the generating expression
Dataflow graph of the pyplasm expression that produces themechanical piece
The dataflow generation is from source preprocessing
The various processes will run concurrently in an Erlang environment
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 90: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/90.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: generation of the 2-circleSplitting of both (a) the model and (b) the computation
Dataflow refinement based on progressive splits of convex cellswith BSP tree nodes (hyperplanes)
model partition induced by the BSP subtree closest to the root,to be detailed independently on different computational nodes
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 91: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/91.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: generation of the 2-circleSplitting of both (a) the model and (b) the computation
Dataflow refinement based on progressive splits of convex cellswith BSP tree nodes (hyperplanes)
model partition induced by the BSP subtree closest to the root,to be detailed independently on different computational nodes
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 92: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/92.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: generation of the 2-circleSplitting of both (a) the model and (b) the computation
Dataflow refinement based on progressive splits of convex cellswith BSP tree nodes (hyperplanes)
model partition induced by the BSP subtree closest to the root,to be detailed independently on different computational nodes
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 93: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/93.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: biquadratic rational B-spline
each refinement is generated by splitting and is contained within theprevious cell
In this case (approximation of a surface with a solid mesh) all of thecells are either EMPTY or FUZZY, i.e. there are no solid cells
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 94: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/94.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: biquadratic rational B-spline
each refinement is generated by splitting and is contained within theprevious cell
In this case (approximation of a surface with a solid mesh) all of thecells are either EMPTY or FUZZY, i.e. there are no solid cells
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 95: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/95.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: biquadratic rational B-spline
each refinement is generated by splitting and is contained within theprevious cell
In this case (approximation of a surface with a solid mesh) all of thecells are either EMPTY or FUZZY, i.e. there are no solid cells
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 96: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/96.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: the Leaning tower of PisaParallel solid modeling using BSP dataflow. 2008. Journal of Comp. Geometry and Appl.
Dataflow refinement of convex cells with BSP tree nodes(hyperplanes)
model partition induced by the BSP subtree closest to the root,detailed on different computational nodes
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 97: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/97.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: the Leaning tower of PisaParallel solid modeling using BSP dataflow. 2008. Journal of Comp. Geometry and Appl.
Dataflow refinement of convex cells with BSP tree nodes(hyperplanes)
model partition induced by the BSP subtree closest to the root,detailed on different computational nodes
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 98: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/98.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
Dataflow streaming of geometryDistributed Computing via Message Passing
Progressive BSP: the Leaning tower of PisaParallel solid modeling using BSP dataflow. 2008. Journal of Comp. Geometry and Appl.
Dataflow refinement of convex cells with BSP tree nodes(hyperplanes)
model partition induced by the BSP subtree closest to the root,detailed on different computational nodes
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 99: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/99.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
The ProtoPlasm framework
The next step:
ProtoPlasm: A Parallel Language for Scalable Modeling ofBiosystems. 2009. Philosophical Transactions of the Royal SocietyA, Vol. 366. Issue "The virtual physiological human: building aframework for computational biomedicine I"
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python
![Page 100: Geometry and Physics Modeling with Python](https://reader036.fdocuments.in/reader036/viewer/2022071519/613c6302f237e1331c513fc5/html5/thumbnails/100.jpg)
Pyplasm: Plasm → PythonModeling with Chain Complexes
Chompy: Python → Python ∪ ErlangTowards Complex Systems Simulations
The ProtoPlasm framework
Thanks for your attention !!
A. DiCarlo, A. Paoluzzi, G. Scorzelli Geometry and Physics Modeling with Python