Inventor General

## Inventor General

Active Member
Posts: 9
Registered: ‎11-23-2013
Message 1 of 24 (322 Views)

# Equation driven curve - unit error

322 Views, 23 Replies
11-27-2013 07:42 AM

Hi there,

I would like to create an equation driven curve with inventor. I have no problems plotting the function in a plotter, however, inventor won't accept my equation. It gives me the error message, saying: "The equation contains unit errors". I'm using the explicit equations.

That's the bare equation:

"y=sqr(2)*16.5/2/sqr(pi)*sqr(arccos(1-2*x/50)-(sin(2*arccos(1-2*x/50))/2))"

I modified it, inserting variables which I defined also in inventor, leading to this:

"sqrt(2)*height/2/sqrt(PI)*sqrt(acos(1-2*t/length)-sin(2*acos(1-2*t/length))/2))"

But both equations are not accepted by inventor due to unit errors. In this design, I'm using the metric system, millimeters, so I don't understand why and how I have to redefine this for the equation in order to get it working.

I would appreciate your help,

Max

Please use plain text.
Valued Contributor
Posts: 60
Registered: ‎02-23-2009
Message 2 of 24 (316 Views)

# Re: Equation driven curve - unit error

11-27-2013 07:55 AM in reply to: 19112033
Beyond the fact that the equation has unmatched brackets, it could also be because of mixed units (if any).

This gives me an error (i.e. turns red) when I type it into a user defined parameter

sqrt(2 ul) * height / 2 ul / sqrt(PI) * sqrt(acos(1 ul - 2 ul * t / length) - sin(2 ul * acos(1 ul - 2 ul * t / length)) / 2 ul))

However, if you remove the last bracket, it works.

HTH

Not sure of what the equation represents -- might be easier to find the errors (and have someone else understand it) if you broke it down into subcomponents.
Please use plain text.
Active Member
Posts: 9
Registered: ‎11-23-2013
Message 3 of 24 (308 Views)

# Re: Equation driven curve - unit error

11-27-2013 08:18 AM in reply to: conklinjm

I'm quite new to Inventor and not familiar how the program handles equation. E.g. it's totally new for me to specify units in an equation.

BTW: I forgot a bracket in my first post, sorry about that.

Breaking the equation down into subcomponents:

First of all you have the first part, which works without problems:

sqrt(2)*16.5/2/sqrt(PI)

The second part is a bit more complex:

sqrt(acos(1-2*x/50)-(sin(2*acos(1-2*x/50))/2))

So let's break it down a little.

You have this element:

acos(1-2*x/50)

And you want to subtract the following:

(sin(2*acos(1-2*x/50))/2)

So you have this:

acos(1-2*x/50)-(sin(2*acos(1-2*x/50))/2)

Now you want to calculate the square root of this difference:

sqrt(acos(1-2*x/50)-(sin(2*acos(1-2*x/50))/2))

In the end, you multiply this part with the first, resulting in this:

sqrt(2)*16.5/2/sqrt(PI)*sqrt(acos(1-2*x/50)-(sin(2*acos(1-2*x/50))/2))

So, I hope you could grasp how this equation is build up.

Anyway, if I enter this equation, as is, into Inventor, i get the following error messages:

1: Cannot evaluate inverse cosine outside of the range [-1,+1]

2: Cannot evaluate square-root of zero or a negative number

Why can't Inventor calculate the square-root of zero? sqrt(0) is defined as zero.

There seems to be a problem with my equation, but I can't find it.

Thank you for your help so far,

Max

Please use plain text.
Valued Contributor
Posts: 60
Registered: ‎02-23-2009
Message 4 of 24 (298 Views)

# Re: Equation driven curve - unit error

11-27-2013 09:14 AM in reply to: 19112033
It probably comes down to a unit error ... try this.

sqrt(2 ul) * 16.5 in / 2 ul / sqrt(PI) * sqrt(acos(1 ul - 2 ul * x / 50 in) - ( sin(2 deg * acos(1 ul - 2 ul * x / 50 in)) / 2 in ))

Certain functions _require_ a specific type of unit for them to calculate correctly -- for example if x is expecting a unit of 'in' and is given '1 ul' it evaluates it as 0.393701" which is not anywhere near what the intent of the design. Best approach is to go function by function and verify that both the inputs and outputs have the expected units.

HTH
Please use plain text.
Active Member
Posts: 9
Registered: ‎11-23-2013
Message 5 of 24 (293 Views)

# Re: Equation driven curve - unit error

11-27-2013 09:42 AM in reply to: 19112033

Thank you for your help. Now we have eliminated the second error, but the first is preventing the curve to be drawn. There must be something wrong with the acos. But the strange thing is, that I can plot this function without problems in a plotter. Why not in Inventor?

Looking forward to an answer,

Max

Please use plain text.
*Expert Elite*
Posts: 4,015
Registered: ‎04-27-2005
Message 6 of 24 (285 Views)

# Re: Equation driven curve - unit error

11-27-2013 10:18 AM in reply to: 19112033

19112033 wrote:

.........

sqrt(2)*16.5/2/sqrt(PI)

The second part is a bit more complex:

sqrt(acos(1-2*x/50)-(sin(2*acos(1-2*x/50))/2))

So let's break it down a little.

You have this element:

acos(1-2*x/50)

........

Thank you for your help so far,

Max

The reason that this does not work is because your units are not what Inventor expects them to be.  For instance, the equation acos(1-2*x/50).  Inventor expects the units of the input to be unitless and it will output this in degrees.  You can find the input and output in the help.  Search for "algebraic operators".  It should be close to the top of the list.

If you enter acos(1-2*x/50) as an equation, it will fail (x is also defined in the parameters in units (mm)).

In order to get it to work, multiple the length units by (1ul/1mm)

Kirk

Please use plain text.
*Expert Elite*
Posts: 4,015
Registered: ‎04-27-2005
Message 7 of 24 (280 Views)

# Re: Equation driven curve - unit error

11-27-2013 10:43 AM in reply to: 19112033

19112033 wrote:

Thank you for your help. Now we have eliminated the second error, but the first is preventing the curve to be drawn. There must be something wrong with the acos. But the strange thing is, that I can plot this function without problems in a plotter. Why not in Inventor?

Looking forward to an answer,

Max

Now, I am thinking there is something wrong with the ACOS function also.  When I enter a simple equation in the equation curve, I get this error "Cannot perform division with a zero denominator".  There is NO zero in the denominator.

If I change the formula to a COS function, it works.

Sorry if I mislead you.

Kirk

Please use plain text.
Active Member
Posts: 9
Registered: ‎11-23-2013
Message 8 of 24 (273 Views)

# Re: Equation driven curve - unit error

11-27-2013 12:04 PM in reply to: 19112033

Well, if you insert your minimum value of x (which in your case is zero), then you have a denominator of zero. If you change your xmin value to one, it should work. Thats all very strange...

Please use plain text.
*Expert Elite*
Posts: 4,015
Registered: ‎04-27-2005
Message 9 of 24 (265 Views)

# Re: Equation driven curve - unit error

11-27-2013 12:44 PM in reply to: 19112033

In my equation y=ACOS (x/1mm), the denominator is always "1mm".  The numerator varies from 0 to 1.

If:

x=0... then the formula should be ACOS (0/1), which equals 90 deg.

x=1... then the formula should be ACOS (1/1), which equals 0 deg.

Please use plain text.
Employee
Posts: 112
Registered: ‎06-10-2004
Message 10 of 24 (250 Views)

# Re: Equation driven curve - unit error

11-27-2013 03:46 PM in reply to: karthur1

I looked into the ACOS issue.  Mathematically speaking, the arcsine and arccosine functions should take any input value from -1 to 1.  However, Inventor seems to take a value a little less than 1, such as 0.999999, but not 1 itself.  Attached is an Inventor 2013 part that shows an inverse cosine curve:

Once the tmin and tmax are changed to -1 and 1, respectively, Inventor shows an error message:

I'm logging a defect against the above issue in ACOS and ASIN.  Defect number is 1510653.

Glenn

Please use plain text.

### You are not logged in.

Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register

### Need installation help?

Start with some of our most frequented solutions to get help installing your software.

Recently Solved

Inventor