Convertidor de Unidades Personalizadas

Unidades Personalizadas: Modelado, Fórmulas y Buenas Prácticas

Define tus propias unidades de medida ancladas a una 'Unidad Base' o a otra unidad personalizada. Modela factores lineales o expresiones completas, y organiza familias consistentes para tu proyecto o dominio.

Conceptos Fundamentales

¿Qué es una Unidad Personalizada?
En este conversor, una unidad personalizada es definida por el usuario y anclada a otra unidad personalizada (o a la Unidad Base). Eliges un nombre, un símbolo, una referencia y un factor o expresión que transforma los valores a la referencia elegida.

Modelado Basado en Referencias

Tu referencia es otra unidad personalizada o la 'Unidad Base'.

La expresión de conversión mapea los valores de entrada al espacio de la unidad de referencia (el sistema es intencionadamente agnóstico a las unidades).

  • Seguridad Dimensional
    Al seleccionar una referencia, vinculas implícitamente la unidad personalizada a esa familia. Mantén las familias consistentes (p. ej., unidades relacionadas que hacen referencia a la misma base).
  • Componibilidad
    Cambia la referencia más tarde sin renombrar la unidad; solo la expresión necesita ajuste.
  • Auditabilidad
    Cada unidad tiene una única y clara definición: referencia + expresión.

Factor vs Expresión

Las unidades simples usan un factor constante (p. ej., 1 foo = 0.3048 × Base).

Las unidades avanzadas pueden usar expresiones con funciones (p. ej., 10 * log(x / 1e-3)).

  • Factores Constantes
    Lo mejor para relaciones lineales fijas (escalas de longitud, ratios de área, etc.).
  • Expresiones
    Usa funciones matemáticas para escalas derivadas o no lineales (ratios, logaritmos, potencias).
  • Constantes
    Constantes incorporadas como PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN.

Nomenclatura, Símbolos y Consistencia

Elige símbolos cortos y sin ambigüedades. Evita colisiones con estándares existentes.

Documenta la intención en tu organización: qué mide y por qué existe.

  • Claridad
    Prefiere símbolos concisos (se recomiendan 1–4 caracteres; la interfaz de usuario permite hasta 6).
  • Estabilidad
    Trata los símbolos como identificadores estables a través de conjuntos de datos y APIs.
  • Estilo
    Usa mayúsculas y minúsculas similares al SI donde sea sensato (p. ej., 'foo', 'kFoo', 'mFoo').
Puntos Clave
  • Una unidad personalizada = unidad de referencia + expresión de conversión.
  • La referencia ancla la dimensión; la expresión define el mapeo de valores.
  • Prefiere factores constantes para escalas lineales; usa expresiones para casos especiales.

Lenguaje de Fórmulas

Las expresiones admiten números, la variable x (valor de entrada), valor de alias, constantes (PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN), operadores aritméticos y funciones matemáticas comunes. Las expresiones se evalúan a un valor en la unidad de referencia elegida.

Operadores

OperadorSignificadoEjemplo
+Sumax + 2
-Resta/Negación Unariax - 5, -x
*Multiplicación2 * x
/Divisiónx / 3
**Potencia (usa **; ^ se convierte automáticamente)x ** 2
()Precedencia(x + 1) * 2

Funciones

FunciónFirmaEjemplo
sqrtsqrt(x)sqrt(x^2 + 1)
cbrtcbrt(x)cbrt(x)
powpow(a, b)pow(0.3048, 2)
absabs(x)abs(x)
minmin(a, b)min(x, 100)
maxmax(a, b)max(x, 0)
roundround(x)round(x * 1000) / 1000
trunctrunc(x)trunc(x)
floorfloor(x)floor(x)
ceilceil(x)ceil(x)
sinsin(x)sin(PI/6)
coscos(x)cos(PI/3)
tantan(x)tan(PI/8)
asinasin(x)asin(0.5)
acosacos(x)acos(0.5)
atanatan(x)atan(1)
atan2atan2(y, x)atan2(1, x)
sinhsinh(x)sinh(1)
coshcosh(x)cosh(1)
tanhtanh(x)tanh(1)
lnln(x)ln(x)
loglog(x)log(100)
log2log2(x)log2(8)
expexp(x)exp(1)
degreesdegrees(x)degrees(PI/2)
radiansradians(x)radians(180)
percentpercent(value, total)percent(25, 100)
factorialfactorial(n)factorial(5)
gcdgcd(a, b)gcd(12, 8)
lcmlcm(a, b)lcm(12, 8)
clampclamp(value, min, max)clamp(x, 0, 100)
signsign(x)sign(-5)
nthRootnthRoot(value, n)nthRoot(8, 3)

Reglas de Expresión

  • x es el valor de entrada; el valor de alias también está disponible.
  • Usa multiplicación explícita (p. ej., 2 * PI, no 2PI).
  • Constantes disponibles: PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN.
  • Los ángulos para las funciones trigonométricas están en radianes (usa las funciones de ayuda degrees() y radians() para la conversión).
  • Haz referencia a otras unidades personalizadas por nombre (snake_case) o símbolo; sus valores toBase actuales se inyectan como constantes.
  • Usa ** para potencias (el motor convierte automáticamente ^ a **).
  • Normalización inteligente de entrada: ×, ÷, π, ², ³ se convierten automáticamente en *, /, PI, ^2, ^3.
  • Funciones de ayuda disponibles: degrees(), radians(), percent(), factorial(), gcd(), lcm(), clamp(), sign(), nthRoot().
  • La detección de errores mejorada previene errores comunes (logaritmo de números negativos, raíz cuadrada de números negativos, división por cero).
  • Referencia a unidades personalizadas: Usa otras unidades como variables en expresiones (p. ej., 'x * A' donde A es otra unidad personalizada).
  • Los espacios en blanco se ignoran; usa paréntesis para controlar la precedencia.
  • Las expresiones deben producir un resultado numérico finito para entradas válidas.
Esenciales de la Fórmula
  • Usa multiplicación explícita (p. ej., 2 * PI).
  • Los ángulos para funciones trigonométricas están en radianes.
  • log(x) es base 10; ln(x) es logaritmo natural (base e).

Análisis Dimensional y Estrategias

Este sistema personalizado es agnóstico a las unidades. Modela familias anclando unidades relacionadas a la misma 'Unidad Base' (o una referencia compartida). Mantén el significado consistente en toda la familia que diseñes.

Estrategias de Modelado

EstrategiaCuándo usarNotas
Factor DirectoRelaciones lineales (p. ej., 1 foo = k × Base).Usa un número constante (sin x). Estable y preciso.
Escalado de PotenciaDerivado de una escala base (k^2, k^3).Usa pow(k, n) donde k es la escala base.
Ratio o NormalizaciónUnidades definidas en relación a un nivel de referencia (p. ej., x / ref).Útil para medidas tipo índice; mantén ref explícito en la expresión.
Escala LogarítmicaEscalas perceptivas o de ratio de potencia (p. ej., estilo dB 10 * log(x/ref)).Asegúrate de que el dominio sea positivo; documenta el valor de referencia.
Mapeo AfínCasos raros con desplazamientos (a * x + b).Los desplazamientos cambian los puntos cero; aplica solo cuando esté conceptualmente justificado.

Editor y Validación

Crea unidades con un nombre, un símbolo (hasta 6 caracteres), una etiqueta de color, una referencia (Unidad Base u otra unidad personalizada) y un factor/expresión. El editor valida las fórmulas en tiempo real con detección de errores mejorada y previene las referencias circulares.

  • Las opciones de referencia incluyen 'Unidad Base' y unidades personalizadas existentes. Las opciones inseguras que crearían ciclos se filtran automáticamente.
  • Variables: usa x (o value) para el valor de entrada. Haz referencia a otras unidades personalizadas por nombre snake_case o por símbolo; sus valores toBase actuales se inyectan como constantes.
  • Constantes soportadas: PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN.
  • Funciones principales: sqrt, cbrt, pow, abs, min, max, round, trunc, floor, ceil, sin, cos, tan, asin, acos, atan, atan2, sinh, cosh, tanh, ln, log, log2, exp.
  • Funciones de ayuda: degrees(), radians(), percent(), factorial(), gcd(), lcm(), clamp(), sign(), nthRoot() para una experiencia de usuario mejorada.
  • Operadores: +, -, *, /, ** para potencia. Normalización inteligente de entrada: ×, ÷, π, ², ³ se convierten automáticamente.
  • Validación en tiempo real con vista previa (p. ej., 10 x → resultado), clasificación de complejidad (simple/moderada/compleja) y sugerencias contextuales.
  • La detección de errores mejorada detecta errores comunes: logaritmos de números no positivos, raíces cuadradas de números negativos, división por cero.
  • La detección avanzada de ciclos evita que las unidades dependan de sí mismas (directa o indirectamente) con mensajes de error claros.
  • Panel de ayuda interactivo con ejemplos categorizados, fragmentos de fórmula clicables y botones de unidades personalizadas para una inserción fácil.

Buenas Prácticas

  • Prefiere un factor constante si es posible; expresiones solo cuando sea necesario.
  • Elige una unidad de referencia que sea estable, ampliamente entendida y poco probable que cambie.
  • Evita las cadenas de referencias circulares; mantén los grafos acíclicos.
  • Añade valores de muestra y compruébalos con calculadoras independientes o identidades conocidas.
  • Mantén los símbolos cortos, únicos y documentados para tu organización.
  • Si usas logaritmos, registra el valor de referencia, la base y el dominio previsto de x.
Lista de Verificación de Calidad
  • Prueba con 3–5 valores representativos y verifica las conversiones de ida y vuelta.
  • Evita referencias circulares; elige una unidad de referencia estable.
  • Documenta las suposiciones (dominios, desplazamientos, rangos típicos).

Plantillas de Inicio y Ejemplos

Estos ejemplos ilustran patrones de modelado comunes en este sistema exclusivo para unidades personalizadas. Reemplaza las constantes y referencias con tus necesidades.

NombreFórmulaReferenciaNotas
Unidad Escalada por Base (foo)0.3048Unidad BaseDefine 1 foo = 0.3048 × Base (factor lineal simple).
Escalada por Potencia (foo²)pow(0.3048, 2)Unidad BaseDerivada de una escala base (k^2).
Escalada por Volumen (foo³)pow(0.3048, 3)Unidad BaseDerivada de una escala base (k^3).
Índice desde Referenciax / 42Unidad BaseNormalizar por un nivel fijo (dominio x > 0).
Ratio de Potencia (estilo dB)10 * log(x / 0.001)Unidad BaseMedida logarítmica relativa a 1 mW (ejemplo). Asegúrate de que x > 0.
Factor Geométrico2 * PI * 0.5Unidad BaseEjemplo de constantes y multiplicación.
Referencia a Otra Unidad PersonalizadaA * 2Unidad Personalizada AUsa el símbolo/nombre de otra unidad como una constante en las expresiones.
Relación Compleja de Unidadessqrt(x^2 + base_length^2)Unidad BaseRelación pitagórica usando la unidad personalizada 'base_length' como una constante.
Unidad Escalada con Desplazamientox * scale_factor + offset_unitUnidad BaseTransformación lineal usando otras dos unidades personalizadas como constantes.
Porcentaje de la Unidad de Referenciapercent(x, reference_value)Unidad BaseExpresa la entrada como porcentaje de otra unidad personalizada usando la función de ayuda.
Rango de Unidad Limitadoclamp(x * multiplier, min_unit, max_unit)Unidad BaseRestringe los valores entre dos constantes de unidades personalizadas usando el ayudante clamp.
Ratio de Unidades con GCDx / gcd(x, common_divisor)Unidad BaseRelación matemática usando el ayudante GCD con una constante de unidad personalizada.
Cadena de Conversión Angulardegrees(x * PI / reference_angle)Unidad Angular PersonalizadaConvierte a grados usando una unidad de ángulo personalizada y la función de ayuda degrees().

Gobernanza y Colaboración

  • Mantén un catálogo de unidades personalizadas aprobadas con propietarios y fechas de revisión.
  • Usa el control de versiones cuando las definiciones evolucionen; evita cambios que rompan la compatibilidad de los símbolos.
  • Registra la procedencia de las constantes y referencias (estándares, literatura, documentos internos).
  • Automatiza las pruebas de validación (comprobaciones de rango, conversiones de muestra, monotonicidad).

Preguntas Frecuentes

¿Debería usar un factor constante o una expresión?

Prefiere un factor constante siempre que la relación sea lineal y fija. Usa expresiones solo cuando el mapeo dependa de x o requiera funciones (potencias, logaritmos, trigonométricas).

¿Cómo elijo una unidad de referencia?

Elige una unidad estable, ampliamente entendida, que capture la dimensión que pretendes (p. ej., metro para longitud, m² para área). La referencia ancla el significado dimensional.

¿Los ángulos están en grados o radianes?

En radianes. Convierte los grados multiplicando por PI/180 antes de usar las funciones trigonométricas.

¿Puedo encadenar unidades personalizadas?

Sí, pero evita los ciclos. Mantén el grafo acíclico y documenta la cadena para preservar la claridad.

Directorio Completo de Herramientas

Todas las 71 herramientas disponibles en UNITS

Filtrar por:
Categorías: