La calculadora integrada (expresiones RPN)
OghmaNano incluye una pequeña calculadora integrada que evalúa expresiones algebraicas usando Notación Polaca Inversa (RPN). Se utiliza en cualquier lugar donde el software necesite una forma compacta, no ambigua, de especificar una expresión matemática en lugar de un único valor numérico.
En la práctica, encontrará la calculadora con mayor frecuencia en flujos de trabajo como:
- Ajuste y extracción de parámetros — por ejemplo, definir una función de error o una métrica de coste en la ventana de ajuste.
- Entradas basadas en fórmulas — donde una constante de material o un parámetro de modelo se define como una expresión en lugar de un número fijo.
- Automatización y scripting — al construir estudios parametrizados que requieren una sintaxis de expresión compacta.
1. Operaciones admitidas
| Operación | Operador | Ejemplo |
|---|---|---|
| Exponenciación | ^ | \(2^3 = 8\) |
| Multiplicación | * | \(2 * 3 = 6\) |
| División | / | \(6 / 2 = 3\) |
| Suma | + | \(2 + 3 = 5\) |
| Resta | - | \(5 - 3 = 2\) |
| Mayor que | > | \(5 > 3\) es 1 |
| Menor que | < | \(2 < 5\) es 1 |
| Mayor o igual que | >= | \(5 >= 5\) es 1 |
| Menor o igual que | <= | \(3 <= 4\) es 1 |
2. Funciones admitidas
| Nombre de la función | Función | Ejemplo |
|---|---|---|
| Seno | sin | \(\sin(\pi/2) = 1\) |
| Coseno | cos | \(\cos(0) = 1\) |
| Valor absoluto | abs | \(\text{abs}(-3) = 3\) |
| Parte positiva | pos | \(\text{pos}(-3)=0,\ \text{pos}(3)=3\) |
| Logaritmo (base 10) | log | \(\log(100) = 2\) |
| Exponencial | exp | \(\exp(2) = e^2\) |
| Raíz cuadrada | sqrt | \(\sqrt{9} = 3\) |
| Mínimo | min | \(\min(2, 3) = 2\) |
| Máximo | max | \(\max(2, 3) = 3\) |
| Aleatorio | rand | \(\text{rand}(a,b)\) genera un número aleatorio entre \(a\) y \(b\) |
| Log-aleatorio | randlog | \(\text{randlog}(a,b)\) genera un número log-aleatorio entre \(a\) y \(b\) |