Expresiones matemáticas

Fecha de la última modificación: 14 de Marzo de 2005


Como se ha explicado anteriormente, el XML Schema permite el control del tipo de dato de cada elemento. Esto reduce el riesgo de errores al crear ficheros MechXML, porque el parser valida el fichero MechXML frente a su Schema e informa de todos los errores encontrados. Sin embargo, la especificación MechXML permite que muchos valores numéricos (relacionados con la geometría, inercia, etc.) puedan ser definidos a través de expresiones matemáticas.

El uso de expresiones matemáticas tiene muchas ventajas. La primera es que permite el uso de "parámetros". Los parámetros son definidos al principio del elemento task y pueden ser usados en el modelo. Esta característica puede ser usada para cambiar algunos valores del modelo actualizando el valor de un parámetro: por ejemplo, las propiedades de inercia, algunas dimensiones, etc. La segunda ventaja es que permite definir variables dependientes del tiempo tales como fuerzas o movimientos guiados. La última y más interesante de las características es que las expresiones pueden incluir llamadas a variables del modelo y funciones de usuario. Como se puede comprender las expresiones son una herramienta muy poderosa y son un componente clave en MechXML. Un ejemplo de como las expresiones pueden ser usadas en MechXML es el siguiente:

 <motion id="steering">
    <distance ref="ground_to_rack">
        <displacement>
            <function>0.005*sin(2*PI*t)</function>
        </displacement>
    </distance>
</motion>

En el ejemplo se puede observar que se ha usado una expresión para definir un movimiento de guiado de una coordenada relativa. En la expresión se ha utilizado la función trigonométrica sin y la constante PI. El tiempo se referido por la variable t. Otro ejemplo es es siguiente:

<Fy>getDist(bar2, point4, ground, point8) + myForce1.output1</Fy>

En este caso se ha empleado una expresión para definir una fuerza que esta aplicada en la dirección del eje "y". En la expresión se llama a una variable del modelo y a una de las salidas de una función de usuario. Primero se pide la distancia entre el punto "point4" del sólido "bar2" al punto "point8" del "ground" y a continuación se llama a la variable de salida "output1" de la función de usuario "myForce1".
 

Volver a Indice