Calcul géométrique avec Wolfram | Choses à essayer
Calcul géométrique avec Wolfram | Choses à essayer
Effectuez des modifications et exécutez n’importe quel morceau de code en cliquant à l’intérieur du code et en appuyant sur .
+
Modélisation et calcul géométriques. La géométrie avec Wolfram offre un ensemble complet d’outils et de solutions intégrés pour la modélisation, l’analyse, la visualisation et la synthèse de la géométrie, adaptés aux besoins de chacun, des débutants aux plus avancés.
Générez et utilisez des régions maillées
Générez et utilisez des régions maillées
Créez un maillage 3D à l’aide de fonctions intégrées : |
mesh=MengerMesh[2,3]
Calculez une mesure de la région du maillage : |
SurfaceArea[mesh]
Calculez-en une autre : |
Volume[mesh]
Utilisez le maillage comme domaine de calcul numérique : |
Integrate[yz,{x,y,z}∈mesh]
Calculez des maillages à partir de points : |
SeedRandom[1324];points=RandomReal[{-1,1},{20,2}];{VoronoiMesh[points,Epilog{Red,Point[points]}],DelaunayMesh[points,Epilog{Red,Point[points]}]}
Calculez les propriétés d’une région géométrique
Calculez les propriétés d’une région géométrique
Importez une région (l’évaluation peut prendre plus de temps) : |
In[]:=
physicalregion=ResourceData["Stanford Dragon"]
Calculez l’inertie de rotation de cette région autour de son centroïde (en supposant une densité unitaire) : |
In[]:=
ℐ=MomentOfInertia[physicalregion];
Calculez le centroïde, les axes principaux et les moments d’inertie principaux de cette région : |
In[]:=
center=RegionCentroid[physicalregion];principalAxes=Eigenvectors[ℐ];principalMoments=Eigenvalues[ℐ];
Visualisez la région avec les axes principaux mis à l’échelle en fonction de leurs valeurs propres : |
In[]:=
Show[physicalregion,Graphics3D[MapThread[{#1,Arrowheads[{-0.05`,0.05`}],Arrow[Tube[{-#2,#2}#30.5`+Threaded[center]]]}&,{{Red,Blue,Green},principalAxes,Normalize[principalMoments]}]]]
Out[]=
Résolvez sur l’ensemble des régions
Résolvez sur l’ensemble des régions
Définissez un ensemble de primitives géométriques : |
In[]:=
primitives={Cuboid[{-3,-3,-.1},{3,3,.1}],Cylinder[{{-3,0,0},{3,0,0}},1],Cylinder[{{0,-3,0},{0,3,0}},1],Cylinder[{{0,0,-2},{0,0,2}},1]};
Utilisez les primitives pour définir une région géométrique solide constructive : |
In[]:=
csgregion=CSGRegion["Difference",{CSGRegion["Union",Most[primitives]],Last[primitives]}]
Représentez des régions géométriques de différentes manières : |
In[]:=
booleanregion=BooleanRegion[(#1||#2||#3)&&!#4&,primitives];RegionConvert[booleanregion,"Implicit"]
Résolvez une équation différentielle pour modéliser les changements de température dans cette région : |
In[]:=
sol=NDSolveu[x,y,z,t]==3u[x,y,z,t],DirichletCondition[u[x,y,z,t]==1,{x==3,x==-3,y==3,y==-3}],DirichletCondition[u[x,y,z,t]==5,+==1],u[x,y,z,0]==3,u,{t,0,25},{x,y,z}∈booleanregion;
∂
t
2
∇
{x,y,z}
2
x
2
y
Visualisez la solution à un moment donné : |
In[]:=
SliceContourPlot3DEvaluate[u[x,y,z,25]/.sol],{"ZStackedPlanes",Range[-1,1,0.2]},{x,y,z}∈Cuboid[{-3,-3,-3},{3,3,3}],
Animez la solution numérique (l’évaluation peut prendre plus de temps) : |
In[]:=
ListAnimateTableRasterizeSliceContourPlot3DEvaluate[u[x,y,z,t]/.sol],"CenterPlanes",{x,-3,3},{y,-3,3},{z,-3,3},,{t,0,5.,.1},ControlPlacement->Top
Importez, réparez, exportez et imprimez un modèle 3D
Importez, réparez, exportez et imprimez un modèle 3D
Importez un modèle 3D : |
In[]:=
model=ResourceData["Stanford Bunny"]
Trouvez les trous au bas de cette maille : |
In[]:=
FindMeshDefects[model,ViewPoint->{0.3,-1.3,-1.5}]
Réparez les trous : |
In[]:=
repairedmodel=RepairMesh[model,ViewPoint->{0.3,-1.3,-1.5}]
Exportez le modèle vers un fichier : |
In[]:=
Export["example.stl",repairedmodel]
Envoyez le modèle à un service d’impression 3D : |
Printout3D[repairedmodel,"Sculpteo"]
Explorez la géométrie synthétique
Explorez la géométrie synthétique
Trouvez une instance aléatoire d’une figure décrite par des propositions géométriques : |
scene=RandomInstance[GeometricScene[{a,b,c,o},{Triangle[{a,b,c}],CircleThrough[{a,b,c},o],o==Midpoint[{a,c}]}]]
Explorez les conjectures associées aux propositions connues d’une figure : |
conjectures=FindGeometricConjectures[scene]
Obtenez une liste de conjectures associées à la figure spécifiée : |
conjectures["Conclusions"]