3D Printing Mathematical Formulas
Grades 9-12- Art
- Math
INTRODUCTION
Creating a physical model of a mathematical formula can make the intangible tangible and help students understand difficult concepts.An isosurface is a three-dimensional analog of an isoline. It is a surface that represents points of a constant value (e.g. pressure, temperature, velocity, density) within a volume of space.I t is a level set of a continuous function whose domain is 3D-space.
You can think of isosurfaces as contours. In the same way that a usual contour map plots vertical two-dimensional "slices" of a three-dimensional surface, isosurfaces would be the three-dimensional slices of some higher-dimensional function.
LESSON PURPOSE
- Understand mathematical equations.
- Be able to use MathMod, Blender and Meshmixer to create and prepare 3D models for 3D printing
- Be able to explain the elements of an algebraic equation.
- Be able to control a surface through manipulating a mathematical equation.
MATERIALS
- 3D printer
- Access to the internet
- Applications: MathMod, Blender and Meshmmixer
RESOURCES
MathMod Editor
MathMod-1.0, which is a replacement for K3DSurf, is Mathematical Modeling software for visualizing and animating parametric and implicit surfaces. It supports 3D/4D plotting and animation.- Download and install the appropriate application for your system from here.
- Open MathMod. On the Mac you need to locate and open the mathmodcollection.js file
- To start, Toggle Isosurfaces and click on one of the named surfaces. You should see the rendered image in the second window.
- To change the render, adjust the x, y, and z min and max values then press the (Update|Add|Cut) & Run button
- To Export a surface click on the Export menu and save the image as a Wavefront.obj file
- To view the script, click on the script icon
- Deconstructing the script:
{ //The two choices for forms are "Iso3D" and "Param3D" "Iso3D": //if set to null the CND Equation input will not be displayed {"Cnd": null, //name of component or components "Component": ["Octahedron"], //Description "Description": ["This is a Description"], //formula "Fxyz": ["abs(x)+abs(y)+abs(z)-1"], //Name of surface "Name": ["Octahedron"], //xmin and max "Xmax": ["2"], "Xmin": ["-1"], //ymin and max "Ymax": ["1"], "Ymin": ["-1"], //z min and max "Zmax": ["1"], "Zmin": ["-1"] }, }
- To create your own, CTRL click on a shape on the left and select Add Current Model to MySelection
- Scroll down to MySelection and toggle the view
- Edit the script to reflect your formula.
{"Iso3D": {"Cnd": ["x^2+y^2+z^2-1"], "Component": ["Sphere"], "Description": ["A sphere"], "Fxyz": ["x^2+y^2+z^2-4^2"], "Name": ["Sphere"], "Xmax": [" 6"], "Xmin": ["-6"], "Ymax": [" 6"], "Ymin": ["-6"], "Zmax": [" 6"], "Zmin": ["-6"] } }
- Press Run to test
- Here is the formula for a squared off sphere:
It is a generalization of a sphere. Try increasing the powers to get nearer to a cube.
x^4 + y^4 + z^4 -1
- Many of the parametric surfaces and some of the IsoSurfaces appear to be solids. When you export them open them up in NetFabb. Chances are you will have to invert them.
- If you see the exclamation point, CTRL +click on the the form and select Extended>Invert Part
- Replace Part
- CTRL_ click on the part again and Export as STL (ASCII)
- If you see the exclamation point, CTRL +click on the the form and select Extended>Invert Part
- If you are working with a surface, you will have to make the surface a solid before printing.
Here are two options:Blender
- Open The latest version of Blender.
- Delete the default cube by pressing X and then clicking on the DELETE button.
- Select User Preferences and navigate to Addons:
- Enable Mesh:3D Print Tools.
- Save the preferences and close the window.
- Select File>Import>wavefront .obj:
- Select the object (an light orange outline around the object):
- Press N to bring up the numbers palette. Change the size to a desirable size:
- Click on the Modifiers (wrench icon):
- Click on Add Modifier:
- Select Solidify:
- Enable Even Thickness and make the thickness between 2-10:
- Click Apply
- Open the 3D Printing Tools and click on the Isolated, Distorted and Non-Manifold buttons:
- Select File>Export>STL
or open 3D Printing Tools and specify the path:
And then Export by clicking the Export Button:
Meshmixer
- Open Meshmixer
- Import your model
- Click on Analysis and select Units/Dimensions:
- Adjust the size of your object:
- Click on Select:
- Click on your form to select some of it:
- Press E to extend your selection:
- From the Edit menu select Extrude:
- Select Normal:
- Change the extrusion to 2:
- Accept the changes:
- Clear the selection:
- Click on print to prepare your object for printing (repairing, adding support, etc.):
- After clicking on Add Support Structure, select Support All Overhangs:
- When support has been added click on Done:
- Click on Export:
Alfred Clebsch
Rudolf Friedrich Alfred Clebsch (19 January 1833 — 7 November 1872) was a German mathematician who worked with algebraic geometry and invariant theory. He collaborated with Paul Gordan on Clebsch-Gordan coefficients for spherical harmonics, which are now widely used in quantum mechanics.The Clebsch diagonal cubic surface, or Klein's icosahedral cubic surface is a cubic surface is a well known form, all of whose 27 exceptional lines can be defined over the real numbers.Image from mo-labs.com
Use MathMod to create and print a Clebsch diagonal Cubic surface.
What must you do to achieve a taller form?
What must you do to achieve a more stout form?
Formulas
- Create a script in the MySelection and plug in these formulas:
- Steiner's Roman Surface
x^2*y^2 + y^2*z^2 + z^2*x^2 -2*x*y*z
- Boys surface
64*(1-z)^3*z^3- 48*(1-z)^2*z^2*(3*x^2+3*y^2+2*z^2)+ 12*(1-z)*z*(27*(x^2+y^2)^2-24*z^2*(x^2+y^2)+ 36*sqrt(2)*y*z*(y^2-3*x^2)+4*z^4)+ (9*x^2+9*y^2-2*z^2)*(-81*(x^2+y^2)^2-72*z^2*(x^2+y^2)+ 108*sqrt(2)*x*z*(x^2-3*y^2)+4*z^4)
- Chub's Surface
x^4 + y^4 + z^4 - x^2 - y^2 - z^2 + 0.5
- Tetrahedral skeleton
Use +/- 5 for the bound
(x^2 + y^2 + z^2)^2 + 8*x*y*z - 10 (x^2 + y^2 + z^2) + 25
- Hunt's Surface
Use +/- 5 for the bound
4*(x^2 + y^2 + z^2 - 13)*(x^2 + y^2 + z^2 - 13)*(x^2 + y^2 + z^2 - 13) + 27*(3*x^2 + y^2 -4*z^2 - 12)^2
- Five fold oddity
use +/-2 for the domain
z + ((x,y)*(x,y)*(x,y)*(x,y)*(x,y)).(1,0)
- Sum of Sins
sin(x) + sin(y) + sin(z)
- P (Schwarz P)
cos(x) + cos(y) + cos(z)
- D (Diamond)
sin(x) sin(y) sin(z) +sin(x) * cos(y) * cos(z) +cos(x) * sin(y) * cos(z) +cos(x) * cos(y) * sin(z)
- G (Gyroid)
cos(x) * sin(y) +cos(y) * sin(z) +cos(z) * sin(x)
- N (Neovius)
3*(cos(x) + cos(y) + cos(z)) +4* cos(x) * cos(y) * cos(z)
- W (iWP)
cos(x) * cos(y) +cos(y) * cos(z) +cos(z) * cos(x) -cos(x) * cos(y) * cos(z)
- P_W (P W Hybrid)
4*(cos(x) * cos(y) + cos(y) * cos(z) + cos(z) * cos(x))- 3* cos(x) * cos(y) * cos(z) +2.4
- Steiner's Roman Surface
- Orbis Gravisuse +/-6 for the domain
-(cos(x) * sin(y) + cos(y) * sin(z) + cos(z) * sin(x)) *(cos(x) * sin(y) + cos(y) * sin(z) + cos(z) * sin(x)) +0.02 +exp((x*x+y*y+z*z)-32.0)
- A Param3d:
HypocycloidFiveSidesuse +/-pi"for domain"Fx":sin(u)* (3 + 0.2*cos(u/5+(0.2-1)/0.2*v)+(1-0.2)*cos(u/5+v))"], "Fy": ["cos(u)* (3 + 0.2*cos(u/5+(0.2-1)/0.2*v)+(1-0.2)*cos(u/5+v)) "], "Fz": ["0.2*sin(u/5+(0.2-1)/0.2*v)+(1-0.2)*sin(u/5+v)]
- A Param3d:
HypocycloidTenSidesuse +/-pi"for domainFx": ["sin(u)*(3+0.1*cos(u/10+(0.1-1)/0.1*v)+(1-0.1)*cos(u/10+v))"], "Fy": ["cos(u)*(3+0.1*cos(u/10+(0.1-1)/0.1*v)+(1-0.1)*cos(u/10+v))"], "Fz": ["0.1*sin(u/10+(0.1-1)/0.1*v)+(1-0.1)*sin(u/10+v)"]
- Here is a torus:
Here is how it would appear in MathMod:
x(u,v) = (a + b cos v) cos u, y(u,v) = (a + b cos v) sin u, z(u,v) = b sin v
{"Param3D": { "Component": ["Torus"], "Description": ["Description of the model"], "Fx": ["(1+0.5*cos(v))*cos(u)"], "Fy": ["(1+0.5*cos(v))*sin(u)"], "Fz": ["0.5*sin(v)"], "Name": ["Torus"], "Umax": ["2*pi"], "Umin": ["0"], "Vmax": ["2*pi"], "Vmin": ["0"] } }
Christopher Olah's Equations
Neumann vs Dirichlet BC demo (wave eq)
Plot of a bijection between [0,1]² and [0,1]
Re(cos(z)) on [-τ,τ]2
Diffusion Eq. with Heavside Function Initial Conditions
Minimal Suface in Minkowski Space
Nomials on the Complex Unit Circle
NYS Learning Standards for Mathematics, Science, and Technology:
Project | Standard 1 | Standard 2 | Standard 3 | Standard 4 | Standard 5 | Standard 6 | Standard 7 |
---|---|---|---|---|---|---|---|
Modeling Equations | √ | √ | √ | √ | √ | √ | √ |
Standard 1: Students will use mathematical analysis, scientific inquiry, and engineering design, as appropriate, to pose questions, seek answers, and develop solutions.
Standard 2: Students will access, generate, process, and transfer information using appropriate technologies.
Standard 3: Students will understand mathematics and become mathematically confident by communicating and reasoning mathematically, by applying mathematics in real-world settings, and by solving problems through the integrated study of number systems, geometry, algebra, data analysis, probability, and trigonometry.
Standard 4: Students will understand and apply scientific concepts, principles, and theories pertaining to the physical setting and living environment and recognize the historical development of ideas in science.
Standard 5: Students will apply technological knowledge and skills to design, construct, use, and evaluate products and systems to satisfy human and environmental needs.
Standard 6: Students will understand the relationships and common themes that connect mathematics, science, and technology and apply the themes to these and other areas of learning.
Standard 7: Students will apply the knowledge and thinking skills of mathematics, science, and technology to address real-life problems and make informed decisions.
Standard 2: Students will access, generate, process, and transfer information using appropriate technologies.
Standard 3: Students will understand mathematics and become mathematically confident by communicating and reasoning mathematically, by applying mathematics in real-world settings, and by solving problems through the integrated study of number systems, geometry, algebra, data analysis, probability, and trigonometry.
Standard 4: Students will understand and apply scientific concepts, principles, and theories pertaining to the physical setting and living environment and recognize the historical development of ideas in science.
Standard 5: Students will apply technological knowledge and skills to design, construct, use, and evaluate products and systems to satisfy human and environmental needs.
Standard 6: Students will understand the relationships and common themes that connect mathematics, science, and technology and apply the themes to these and other areas of learning.
Standard 7: Students will apply the knowledge and thinking skills of mathematics, science, and technology to address real-life problems and make informed decisions.