This thesis treats how to generate collision information for multibody simulations in AgX Dynamicswhere the geometries are described with the data structure boundary representation, BREP. BREP is adata structure that contains the exact mathematical description of each individual surface. To describecomplex surfaces exact and efficient non uniform rational basis spline, NURBS, is used and for trivialsurfaces like planes or spheres simpler equations is used. Since all surfaces in a BREP is described veryaccurate, the accuracy for the collision information can be set high without affecting the amount of dataneeded to describe the geometries.To make AgX Dynamics able to calculate forces in a multibody simulation, collision informationabout were and how much two geometries are intersecting is required. The collision information containswere the overlap between two geometries is, how much the objects have penetrated each other and thedirection for which the objects have to separate. To find the penetration depth and the overlap theNewton Raphson method were used. The experiments conducted, showed that it is possible to useBREPs as a description of geometries to produce the collision information needed for the physics engineused by AgX Dynamics to handle collisions. A comparison between trimesh and BREP for producingthe collision information, shows that data usage is much lower for the representation of geometries withBREPs than trimesh. The results also shows that the accuracy can be significantly higher than fortrimesh as the data usage for trimesh becomes non practical to handle when the required accuracy ishigh. With the high accuracy and with the smooth surfaces used with the BREP the artificial friction isalmost negligible except for cases were intersection points could not be found all around the intersectioncurves due to limitations in the algorithm. / Detta examensarbete behandlar hur man skapar kollisionsinformation för flerkropps simuleringar i AgXDynamics där geometrier beskrivs med datastrukturen boundary representation, BREP. BREP är endatastruktur som innehåller den exakta matematiska beskrivningen för varje enskild yta. Att beskrivakomplexa ytor exakta och effektivt med non uniform rationell basis spline, NURBS, används och förtriviala ytor som plan eller sfärer kan enklare ekvationer används. Eftersom alla ytor i en BREP beskrivsexakt, kan noggrannheten för kollisions informationen sättas högt utan att påverka den mängd data sombehövs för att beskriva geometrier.För att göra AgX Dynamics kunna beräkna krafter i en flerkroppssimulering, krävs kollisions informationom var och hur mycket två geometrier kolliderar. Kollisions informationen innehåller varöverlappningen mellan två geometrier är, hur mycket objekten har penetrerat varandra och den riktningsom föremålen ska separeras. För att hitta penetrationsdjup och överlapp användes Newton Raphsonsmetod. De experiment som utförts, visade att det är möjligt att använda BREPs som en beskrivning avgeometrier för att producera kollisions information som behövs för att den fysikmotor som används avAGX Dynamics ska kunna hantera kollisioner. En jämförelse mellan trimesh och BREP för att producerakollisionen informationen, visar att dataanvändning är mycket lägre när geometrier representeras medBREPs än trimesh. Resultaten visar också att noggrannheten kan vara väsentligt högre för BREP änför trimesh eftersom dataanvändning för trimesh blir opraktiskt att hantera när noggrannheten är hög.Med hög noggrannhet och med de släta ytor som används med BREP blev den artificiella friction nästanförsumbar, utom i fallen där skärningspunkter inte kunde hittas runt hela skärningskurvor på grund avbegränsningar i algoritmen.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:umu-102531 |
Date | January 2015 |
Creators | Sandqvist, Jonas |
Publisher | Umeå universitet, Institutionen för fysik |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0022 seconds