SIEMENS

 

Siemens PLM Software Blog

Smarter decisions, better products.


Skip over Site Identifier and Site Explorer

Siemens PLM Software


Skip over Generic Navigation


Skip over Search


Skip over language selection

Change Country to

  • Argentina
  • Austria
  • Belgium
  • Brazil
  • Chile
  • China
  • Colombia
  • Czech Republic
  • Denmark
  • Finland
  • France
  • Germany
  • India
  • Italy
  • Japan
  • Korea
  • Mexico
  • Netherlands
  • Norway
  • Poland
  • Russia
  • Spain
  • Sweden
  • Switzerland
  • Taiwan
  • United Kingdom
  • United States
  • Uruguay
  • Venezuela

You are here:
Home
« Previous     
     Next »

Geometric Constraint Solving on Imported Data

One of the strengths of the D-Cubed 2D DCM and 3D DCM geometric constraint solvers is their ability to work with models imported from other systems. Of course, before the data gets to the solver it has to be in a format which can be read into the application and this is often a major challenge in its own right. However, what I would like to focus on here is a key product feature that can help when working on imported data.  

One of the most important things to remember when writing any mathematical software is that floating-point numbers are not exact, so 2.0 + 2.0 almost never equals 4.0. For example, to compare double-precision floating-point numbers you need to use a tolerance of at least 0.0000000000000002, or 2.0 x 10e-16 in scientific notation. Also, rounding errors can build up as calculations are done so it is necessary to use a larger tolerance than this. Another consideration is that accuracy can be lost if data is written out to a file and then read in.  

Typically, geometry in CAD systems will be represented by floating-point numbers so the same issues will apply. This is something we take account of throughout the D-Cubed geometric constraint solvers, but we also allow an application to specify two additional tolerances: the linear resolution and the angular resolution. I’ll give some examples of how these are used.
  

Example 1 - Use of linear resolution

In the first model, the user wants to put the peg in a hole that is nominally the same size, and to do this applies a coincident constraint between the two cylindrical faces. Obviously, if the radii are different it isn’t possible to make the faces coincident. In this example the 3D DCM will use the linear resolution to compare the cylinders.  

Example 2 - Use of angular resolution

 

In the second model, the user again wants to the put the peg into the hole, and decides to do this by making two pairs of faces coincident. What is important here is that the angles between the faces in both parts are the same, and to check this 3D DCM uses the angular resolution.  

These are very simple examples just to illustrate the basics, but in the course of solving even a small model the DCM will perform many similar geometric tests, each of which will need to use the correct resolution value. Getting the code to do this correct requires a lot of skill and care, but is absolutely vital to ensure reliability.  

In our geometric constraint solvers, we have default values of 10e-8 for the linear resolution and 10e-11 radians for the angular resolution. However, these can be modified by applications to suit the data. This is important for native data, but even more so for imported models which have been built in a different application. In the examples above, if the blocks were made in one application and the pegs in another it would be necessary to choose the right resolutions.  

Fortunately most of this complexity is hidden from end-users. But it is worth remembering next time you use one of the many CAD applications which use the D-Cubed components how much you rely upon these little numbers.

Follow these topics: General

Tags: "D-Cubed", "PLM Components", 2D DCM, 3D DCM, geometric constraint solving

This entry was posted on Wednesday, August 8th, 2012 at 4:00 am and is filed under General. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Mike has been running the D-Cubed development and support teams for more than 20 years. Since 2004, the D-Cubed Components have been part of the Siemens PLM Components products. Mike is based in Cambridge and spends his free time sailing on the East coast of England. He is @mike_atkins on Twitter.

Leave a Reply

Click here to cancel reply.

  • Recent Comments

    • John Whetstone on Decisions, Decisions….
    • Andy on Decisions, Decisions….
    • Tim Egloff on Issue Management and CAPA on Teamcenter
    • Julius Chip Ritter on Issue Management and CAPA on Teamcenter
    • jmp carpenter charfield on Meet Future Engineer Runze Gao
  • Recent Posts

    • Smart, Fast, Lean Manufacturing with Tecnomatix 11 – MPM
    • Space system dynamic analysis presentation at the 2013 Femap Symposium
    • ROCK – it is what Keyshot does!
    • Principia Solar Car Update and Interview with Student Engineer Kali McKee
    • Finding Solid Edge Apps and the Solid Edge Partner Program (Femap too)
  • Categories

    • Academic
    • Events and Conferences
    • Femap
    • General
    • JT
    • NX
    • Solid Edge
    • Teamcenter
    • Tecnomatix
  • Tags

    #SEU12 2D 3D Academic analyst analyst event CAD CAE CAM collaboration design digital factory digital manufacturing engineering FEA Femap finite element analysis future engineers HD-PLM innovation manufacturing MCAD modeling NX NX Nastran PDM PLM PLM Connection PLM Europe product design product development productivity Siemens PLM simulation social media Solid Edge Solid Edge with Synchronous Technology ST Structural Analysis Synchronous Technology Teamcenter Tecnomatix Tips & Tricks Tips and Tricks Velocity Series
  •  

    August 2012
    M T W T F S S
    « Jul   Sep »
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
  • Archives

  • Page Translation

      Translate to:

      Powered by Google Translate.