International Tolerance Grade (ISO 286) function?
burt_harris
Member Posts: 7 ✭✭
I'm trying to understand how to incorporate the concept of International Tolerance (IT) grades in my metric spline part studio. I tried using a variable to define an IT function, but this didn't work. My attempt was to define an "any" variable named "IT" with value:
function(grade, len ) { return 10^(0.2*(grade-1)) * (0.45 * len ^(1/3) + 0.001 * len ); }
I then tried to use this function in another variable Deemin with this definition:
#Deemax-#IT(11,#Dee)
I can't get Deemin to save; the message is enter a valid expression. Perhaps variables are limited to defining single-input functions. I guess I might need to use a Feature Studio to write in full-fledged FeatureScript; are there alternatives I should consider?
Wikipedia summarizes the concept:
function(grade, len ) { return 10^(0.2*(grade-1)) * (0.45 * len ^(1/3) + 0.001 * len ); }
I then tried to use this function in another variable Deemin with this definition:
#Deemax-#IT(11,#Dee)
I can't get Deemin to save; the message is enter a valid expression. Perhaps variables are limited to defining single-input functions. I guess I might need to use a Feature Studio to write in full-fledged FeatureScript; are there alternatives I should consider?
Wikipedia summarizes the concept:
Tagged:
0
Best Answer
-
Took another look at this and worked through an example with more than one input successfully.
I think the issue you're running into is likely with units. If your units aren't consistent, then the calculation will fail.
In this case, since these formula deals with weird units, it'll be easiest just to do everything unitless by using "Number" variables. For example, "D" in your formula has units of [length^1/2]. I'm not even sure how to correctly represent those units on onshape.
1
Answers
-
I don't have much experience with using functions in variables. Could you try hard-coding the "11" value into your formula so that you only have to pass one parameter? At least that would show whether or not the issue is multiple inputs or not.0
-
Took another look at this and worked through an example with more than one input successfully.
I think the issue you're running into is likely with units. If your units aren't consistent, then the calculation will fail.
In this case, since these formula deals with weird units, it'll be easiest just to do everything unitless by using "Number" variables. For example, "D" in your formula has units of [length^1/2]. I'm not even sure how to correctly represent those units on onshape.
1 -
Yes, this makes sense. The formula uses the cube-root of D (a length), weird but...
But as I dug into this further, I found that the ISO 286 doesn't define such a formula. It's all done in tables, and the formula does not give the same results. Thanks anyway.0