Egendefinert Enhetsomregner

Egendefinerte Enheter: Modellering, Formler og Beste Praksis

Definer dine egne måleenheter forankret til en 'Grunnenhet' eller en annen egendefinert enhet. Modeller lineære faktorer eller fulle uttrykk, og organiser konsistente familier for ditt prosjekt eller domene.

Grunnleggende Konsepter

Hva er en Egendefinert Enhet?
I denne omformeren er en egendefinert enhet brukerdefinert og forankret til en annen egendefinert enhet (eller til Grunnenheten). Du velger et navn, et symbol, en referanse og en faktor eller et uttrykk som transformerer verdier til den valgte referansen.

Referansebasert Modellering

Referansen din er en annen egendefinert enhet eller 'Grunnenhet'.

Konverteringsuttrykket kartlegger inndataverdier til referanseenhetens rom (systemet er bevisst enhetsagnostisk).

  • Dimensjonssikkerhet
    Ved å velge en referanse, knytter du implisitt den egendefinerte enheten til den familien. Hold familier konsistente (f.eks. relaterte enheter som refererer til samme base).
  • Komponerbarhet
    Endre referansen senere uten å gi enheten nytt navn – bare uttrykket må justeres.
  • Reviderbarhet
    Hver enhet har en enkelt, klar definisjon: referanse + uttrykk.

Faktor vs. Uttrykk

Enkle enheter bruker en konstant faktor (f.eks. 1 foo = 0.3048 × Base).

Avanserte enheter kan bruke uttrykk med funksjoner (f.eks. 10 * log(x / 1e-3)).

  • Konstante Faktorer
    Best for faste lineære forhold (lengdeskalaer, arealforhold, osv.).
  • Uttrykk
    Bruk matematiske funksjoner for avledede eller ikke-lineære skalaer (forhold, logaritmer, potenser).
  • Konstanter
    Innebygde konstanter som PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN.

Navngivning, Symboler og Konsistens

Velg korte, utvetydige symboler. Unngå kollisjoner med eksisterende standarder.

Dokumenter hensikten i organisasjonen din – hva den måler og hvorfor den eksisterer.

  • Klarhet
    Foretrekk konsise symboler (1–4 tegn anbefales; brukergrensesnittet tillater opptil 6).
  • Stabilitet
    Behandle symboler som stabile identifikatorer på tvers av datasett og API-er.
  • Stil
    Bruk SI-lignende store/små bokstaver der det er fornuftig (f.eks. 'foo', 'kFoo', 'mFoo').
Viktige Punkter
  • En egendefinert enhet = referanseenhet + konverteringsuttrykk.
  • Referansen forankrer dimensjonen; uttrykket definerer verdikartleggingen.
  • Foretrekk konstante faktorer for lineære skalaer; bruk uttrykk for spesielle tilfeller.

Formelspråk

Uttrykk støtter tall, variabelen x (inndataverdi), aliasverdi, konstanter (PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN), aritmetiske operatorer og vanlige matematiske funksjoner. Uttrykk evalueres til en verdi i den valgte referanseenheten.

Operatorer

OperatorBetydningEksempel
+Addisjonx + 2
-Subtraksjon/Unær Negasjonx - 5, -x
*Multiplikasjon2 * x
/Divisjonx / 3
**Potens (bruk **; ^ blir automatisk konvertert)x ** 2
()Presedens(x + 1) * 2

Funksjoner

FunksjonSignaturEksempel
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)

Uttrykksregler

  • x er inndataverdien; aliasverdi er også tilgjengelig.
  • Bruk eksplisitt multiplikasjon (f.eks. 2 * PI, ikke 2PI).
  • Tilgjengelige konstanter: PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN.
  • Vinkler for trigonometriske funksjoner er i radianer (bruk hjelpefunksjonene degrees() og radians() for konvertering).
  • Referer til andre egendefinerte enheter ved navn (snake_case) eller symbol; deres nåværende toBase-verdier blir injisert som konstanter.
  • Bruk ** for potenser (motoren konverterer automatisk ^ til **).
  • Smart inndatanormalisering: ×, ÷, π, ², ³ blir automatisk konvertert til *, /, PI, ^2, ^3.
  • Tilgjengelige hjelpefunksjoner: degrees(), radians(), percent(), factorial(), gcd(), lcm(), clamp(), sign(), nthRoot().
  • Forbedret feildeteksjon forhindrer vanlige feil (logaritme av negative tall, kvadratrot av negative tall, divisjon med null).
  • Referering til egendefinert enhet: Bruk andre enheter som variabler i uttrykk (f.eks. 'x * A' der A er en annen egendefinert enhet).
  • Mellomrom ignoreres; bruk parenteser for å kontrollere presedens.
  • Uttrykk må produsere et endelig numerisk resultat for gyldige inndata.
Formelens Essens
  • Bruk eksplisitt multiplikasjon (f.eks. 2 * PI).
  • Vinkler for trigonometriske funksjoner er i radianer.
  • log(x) er base 10; ln(x) er naturlig logaritme (base e).

Dimensjonsanalyse og strategier

Dette egendefinerte systemet er enhetsagnostisk. Modeller familier ved å forankre relaterte enheter til den samme 'Grunnenheten' (eller en felles referanse). Hold betydningen konsistent på tvers av familien du designer.

Modelleringsstrategier

StrategiNår skal den brukesNotater
Direkte FaktorLineære forhold (f.eks. 1 foo = k × Base).Bruk et konstant tall (ingen x). Stabilt og presist.
PotensskaleringAvledet fra en baseskala (k^2, k^3).Bruk pow(k, n) der k er baseskalaen.
Forhold eller NormaliseringEnheter definert i forhold til et referansenivå (f.eks. x / ref).Nyttig for indekslignende mål; hold ref eksplisitt i uttrykket.
Logaritmisk SkalaPerseptuelle eller effektforholdsskalaer (f.eks. dB-stil 10 * log(x/ref)).Sørg for at domenet er positivt; dokumenter referanseverdien.
Affin AvbildningSjeldne tilfeller med forskyvninger (a * x + b).Forskyvninger endrer nullpunkter – bruk kun når det er konseptuelt berettiget.

Redaktør og Validering

Opprett enheter med et navn, symbol (opptil 6 tegn), fargemerke, en referanse (Grunnenhet eller en annen egendefinert enhet), og en faktor/uttrykk. Redaktøren validerer formler i sanntid med forbedret feildeteksjon og forhindrer sirkulære referanser.

  • Referansealternativer inkluderer 'Grunnenhet' og eksisterende egendefinerte enheter. Usikre alternativer som ville skapt sykluser, filtreres automatisk ut.
  • Variabler: bruk x (eller value) for inndataverdien. Referer til andre egendefinerte enheter med snake_case-navn eller symbol; deres nåværende toBase-verdier blir injisert som konstanter.
  • Støttede konstanter: PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN.
  • Kjernefunksjoner: sqrt, cbrt, pow, abs, min, max, round, trunc, floor, ceil, sin, cos, tan, asin, acos, atan, atan2, sinh, cosh, tanh, ln, log, log2, exp.
  • Hjelpefunksjoner: degrees(), radians(), percent(), factorial(), gcd(), lcm(), clamp(), sign(), nthRoot() for forbedret brukeropplevelse.
  • Operatorer: +, -, *, /, ** for potens. Smart inndatanormalisering: ×, ÷, π, ², ³ blir automatisk konvertert.
  • Sanntidsvalidering med forhåndsvisning (f.eks. 10 x → resultat), kompleksitetsklassifisering (enkel/moderat/kompleks) og kontekstbevisste forslag.
  • Forbedret feildeteksjon fanger vanlige feil: logaritmer av ikke-positive tall, kvadratrøtter av negative tall, divisjon med null.
  • Avansert syklusdeteksjon forhindrer at enheter avhenger av seg selv (direkte eller indirekte) med klare feilmeldinger.
  • Interaktivt hjelpepanel med kategoriserte eksempler, klikkbare formelutdrag og egendefinerte enhetsknapper for enkel innsetting.

Beste Praksis

  • Foretrekk en konstant faktor hvis mulig; uttrykk bare når det er nødvendig.
  • Velg en referanseenhet som er stabil, allment forstått og usannsynlig å endre seg.
  • Unngå sirkulære kjeder av referanser; hold grafer asykliske.
  • Legg til prøveverdier og kryssjekk med uavhengige kalkulatorer eller kjente identiteter.
  • Hold symboler korte, unike og dokumentert for organisasjonen din.
  • Hvis du bruker logaritmer, noter referanseverdien, basen og det tiltenkte domenet for x.
Kvalitetssjekkliste
  • Test med 3–5 representative verdier og verifiser rundturkonverteringer.
  • Unngå sirkulære referanser; velg en stabil referanseenhet.
  • Dokumenter antakelser (domener, forskyvninger, typiske områder).

Startmaler og eksempler

Disse eksemplene illustrerer vanlige modelleringsmønstre i dette systemet som kun er for egendefinerte enheter. Erstatt konstanter og referanser med dine behov.

NavnFormelReferanseNotater
Baseskalert Enhet (foo)0.3048GrunnenhetDefinerer 1 foo = 0.3048 × Base (enkel lineær faktor).
Potensskalert (foo²)pow(0.3048, 2)GrunnenhetAvledet fra en baseskala (k^2).
Volumskalert (foo³)pow(0.3048, 3)GrunnenhetAvledet fra en baseskala (k^3).
Indeks fra Referansex / 42GrunnenhetNormaliser med et fast nivå (domene x > 0).
Effektforhold (dB-stil)10 * log(x / 0.001)GrunnenhetLogaritmisk mål i forhold til 1 mW (eksempel). Sørg for at x > 0.
Geometrisk Faktor2 * PI * 0.5GrunnenhetEksempel på konstanter og multiplikasjon.
Referer til Annen Egendefinert EnhetA * 2Egendefinert Enhet ABruk en annen enhets symbol/navn som en konstant i uttrykk.
Kompleks Enhetsrelasjonsqrt(x^2 + base_length^2)GrunnenhetPythagoreisk relasjon som bruker den egendefinerte enheten 'base_length' som en konstant.
Skalert Enhet med Forskyvningx * scale_factor + offset_unitGrunnenhetLineær transformasjon som bruker to andre egendefinerte enheter som konstanter.
Prosent av Referanseenhetpercent(x, reference_value)GrunnenhetUttrykk inndata som prosent av en annen egendefinert enhet ved hjelp av hjelpefunksjon.
Begrenset Enhetsområdeclamp(x * multiplier, min_unit, max_unit)GrunnenhetBegrens verdier mellom to egendefinerte enhetskonstanter ved hjelp av clamp-hjelperen.
Enhetsforhold med GCDx / gcd(x, common_divisor)GrunnenhetMatematisk relasjon som bruker GCD-hjelperen med en egendefinert enhetskonstant.
Kjede for Vinkelkonverteringdegrees(x * PI / reference_angle)Egendefinert VinkelenhetKonverter til grader ved hjelp av egendefinert vinkelenhet og hjelpefunksjonen degrees().

Styring og Samarbeid

  • Oppretthold en katalog over godkjente egendefinerte enheter med eiere og revisjonsdatoer.
  • Bruk versjonskontroll når definisjoner utvikler seg; unngå ødeleggende endringer i symboler.
  • Registrer opprinnelsen til konstanter og referanser (standarder, litteratur, interne dokumenter).
  • Automatiser valideringstester (områdekontroller, prøvekonverteringer, monotonisitet).

Ofte Stilte Spørsmål

Bør jeg bruke en konstant faktor eller et uttrykk?

Foretrekk en konstant faktor når forholdet er lineært og fast. Bruk uttrykk bare når kartleggingen avhenger av x eller krever funksjoner (potenser, logaritmer, trigonometri).

Hvordan velger jeg en referanseenhet?

Velg en stabil, allment forstått enhet som fanger den dimensjonen du har til hensikt (f.eks. meter for lengde, m² for areal). Referansen forankrer den dimensjonale betydningen.

Er vinkler i grader eller radianer?

Radianer. Konverter grader ved å multiplisere med PI/180 før du bruker trigonometriske funksjoner.

Kan jeg kjede sammen egendefinerte enheter?

Ja, men unngå sykluser. Hold grafen asyklisk og dokumenter kjeden for å bevare klarheten.

Komplett Verktøykatalog

Alle 71 verktøy tilgjengelig på UNITS

Filtrer etter:
Kategorier:

Ekstra