Alligasjonkalkulator — Blandings forhold og mengder
Finn forholdet for å blande en billigere og en dyrere ingrediens (eller en lav og høy konsentrasjon) for å treffe en målverdi, pluss den nøyaktige mengden av hver. Gratis alligasjon-alternativ kalkulator med arbeidet kryss diagram.
Alligasjonkalkulator
Skriv inn verdien av den billigere ingrediensen, den dyrere (mer kostbar) ingrediensen, og målblandingsverdien. Verktøyet returnerer forholdet du skal blande dem i — og de nøyaktige mengdene hvis du gir en total mengde.
Inngangsverdier
Resultater
Blandings forhold
Mengder
Alligasjonskryss
Alligasjonformel
10.00 : 10.00 = (30.00 − 20.00) : (20.00 − 10.00)
Blandingssammensetning
Dokumentasjon
Hva denne kalkulatoren gjør (Forklart enkelt)
Du har to ting med ulik verdi — en billig og en dyr — og du vil blande dem til en blanding som ligger på en viss målverdi mellom dem. Alligasjon forteller deg hvor mye av hver du skal bruke.
Tenk på en vipp. Målverdien er omdreiningspunktet. Ingrediensen hvis verdi er langt fra målverdien må være liten i mengde, og den som er nær målverdien må være stor, slik at de to sidene balanserer. Alligasjon er bare aritmetikken av denne balansen.
Skriv inn tre tall — den billigere verdien, den dyrere verdien og målverdien — og verktøyet gir deg:
- blandings forholdet (f.eks. 1 : 2, som betyr 1 del billig til 2 deler dyr),
- de eksakte mengdene av hver ingrediens når du legger inn en total mengde,
- et kryss diagram og et sammensetnings diagram slik at du kan se blandingen.
"Verdi" kan være en pris, en prosentuell styrke, eller en konsentrasjon (%, mg/mL, w/v) — alt som måles på en konsistent skala.
Formelen
Med en billigere verdi C, en dyrere verdi D, og en målblandingsverdi M hvor C < M < D:
Hver ingrediens deler kommer fra den motsatte differansen — jo lengre målverdien ligger fra en ingrediens, jo mer av den andre ingrediensen trenger du. Hvis du også kjenner den totale mengden Q:
Alligasjonskrysset
Den klassiske måten å legge dette ut på er "krysset": sett de to ingrediensverdiene på venstre side, målverdien i midten, og trekk fra langs hver diagonal. Hver differanse lander på det motsatte hjørnet og blir den ingrediensens deler.
1 Dearer (D) ───────┐ ┌─────── (M − C) = dearer parts
2 ╲ ╱
3 Target (M)
4 ╱ ╲
5 Cheaper (C) ───────┘ └─────── (D − M) = cheaper parts
6Arbeidseksempel
Bland en 30 ingrediens for å selge til $20:
Like deler. For 100 enheter totalt, det er 50 av den billigere og 50 av den dyrere — og den blandet verdien er nøyaktig 25 og forholdet blir 5 : 15 = 1 : 3: jo nærmere målverdien ligger den dyrere verdien, jo mer dyr ingrediens trenger du.
Alligasjon alternativ vs. alligasjon medial
- Alligasjon alternativ (hva dette verktøyet gjør) — du kjenner de to ingrediensverdiene og målverdien, og du løser for forholdet.
- Alligasjon medial — du kjenner mengdene og verdiene av ingrediensene, og du løser for den resulterende blandingsverdien. Det er bare det vektede gjennomsnittet: .
De to er inverser av hverandre, som er en praktisk måte å sjekke arbeidet ditt på: feed mengdene dette verktøyet gir deg tilbake til et vektet gjennomsnitt og du skulle landet på målverdien din.
Hvor det brukes
- Apoteksblanding — bland en høy- og en lavstyrke fremstilling (f.eks. en 70% og en 20% løsning) til en foreskrevet konsentrasjon. Verdiene er prosenter eller mg/mL i stedet for dollar; aritmetikken er identisk.
- Forretning og prising — bland billig og premium lager for å treffe en målenhets kostnad eller salgspris.
- Kjemi og mat/drikke — fortynn eller berik til en målkonsentrasjon, styrke, eller Brix.
Fordi regelen bare trenger en enkelt verdi på en konsistent skala, dekker de samme tre inngangene alle disse.
Slik bruker du det
- Skriv inn den billigere verdien, den dyrere verdien, og den målblandingsverdien (hvilken som helst konsistent enhet).
- Skriv alternativt inn den totale mengden for å få den nøyaktige mengden av hver ingrediens.
- Les forholdet, det forenklede forholdet, og mengdene; krysset diagrammet og smultringen viser delingen.
Innganger synkroniseres til siden-URL-en, slik at du kan bokmerke eller dele en nøyaktig oppsett. Målverdien må ligge strengt mellom de to ingrediensverdiene — ellers kan ingen blanding av dem nå den, og verktøyet sier det.
Beregn det i kode
Hver snippet tar den billigere verdien c, dyrere verdi d, målverdi m, og total mengde q, og returnerer de to delene og de to mengdene.
Excel
Forutsatt C2 = billigere, D2 = dyrere, M2 = målverdi, Q2 = total mengde:
1=D2-M2 ' cheaper parts (D − M)
2=M2-C2 ' dearer parts (M − C)
3=(D2-M2)/((D2-M2)+(M2-C2))*Q2 ' cheaper amount
4=(M2-C2)/((D2-M2)+(M2-C2))*Q2 ' dearer amount
51def alligation(c, d, m, q=None):
2 if not (c < m < d):
3 raise ValueError("need cheaper < target < dearer")
4 cheaper_parts, dearer_parts = d - m, m - c
5 total = cheaper_parts + dearer_parts
6 if q is None:
7 return cheaper_parts, dearer_parts
8 return cheaper_parts / total * q, dearer_parts / total * q
91function alligation(c, d, m, q) {
2 if (!(c < m && m < d)) throw new Error("need cheaper < target < dearer");
3 const cheaper = d - m, dearer = m - c, total = cheaper + dearer;
4 return q == null
5 ? { cheaper, dearer }
6 : { cheaperAmount: (cheaper / total) * q, dearerAmount: (dearer / total) * q };
7}
81double[] alligation(double c, double d, double m, double q) {
2 if (!(c < m && m < d)) throw new IllegalArgumentException("need c < m < d");
3 double cheaper = d - m, dearer = m - c, total = cheaper + dearer;
4 return new double[] { cheaper / total * q, dearer / total * q };
5}
61(double cheaper, double dearer) Alligation(double c, double d, double m, double q)
2{
3 if (!(c < m && m < d)) throw new ArgumentException("need c < m < d");
4 double cp = d - m, dp = m - c, total = cp + dp;
5 return (cp / total * q, dp / total * q);
6}
71#include <stdexcept>
2#include <utility>
3std::pair<double, double> alligation(double c, double d, double m, double q) {
4 if (!(c < m && m < d)) throw std::invalid_argument("need c < m < d");
5 double cheaper = d - m, dearer = m - c, total = cheaper + dearer;
6 return { cheaper / total * q, dearer / total * q };
7}
81func Alligation(c, d, m, q float64) (float64, float64, error) {
2 if !(c < m && m < d) {
3 return 0, 0, errors.New("need c < m < d")
4 }
5 cheaper, dearer := d-m, m-c
6 total := cheaper + dearer
7 return cheaper / total * q, dearer / total * q, nil
8}
91fn alligation(c: f64, d: f64, m: f64, q: f64) -> Option<(f64, f64)> {
2 if !(c < m && m < d) { return None; }
3 let (cheaper, dearer) = (d - m, m - c);
4 let total = cheaper + dearer;
5 Some((cheaper / total * q, dearer / total * q))
6}
71function alligation($c, $d, $m, $q) {
2 if (!($c < $m && $m < $d)) throw new InvalidArgumentException('need c < m < d');
3 $cheaper = $d - $m; $dearer = $m - $c; $total = $cheaper + $dearer;
4 return [$cheaper / $total * $q, $dearer / $total * $q];
5}
61def alligation(c, d, m, q)
2 raise ArgumentError, "need c < m < d" unless c < m && m < d
3 cheaper, dearer = d - m, m - c
4 total = cheaper + dearer
5 [cheaper / total * q, dearer / total * q]
6end
71alligation <- function(c, d, m, q) {
2 stopifnot(c < m, m < d)
3 cheaper <- d - m; dearer <- m - c; total <- cheaper + dearer
4 c(cheaper = cheaper / total * q, dearer = dearer / total * q)
5}
6Ofte stilte spørsmål
Hva hvis målverdien ikke er mellom de to verdiene? Da kan ingen blanding av de to nå den — en blanding av en 30 vare lander alltid mellom 30. Verktøyet flagg dette i stedet for å returnere et usannsynlig forhold.
Betyr enheten noe? Nei. Forholdet avhenger bare av forskjeller på en konsistent skala, så priser, prosenter, og mg/mL fungerer alle — bare hold alle tre innganger i samme enhet.
Kan jeg bruke det for tre eller flere ingredienser? Dette verktøyet håndterer det to-ingredienssituasjonen. Problemer med tre eller flere komponenter har mange gyldige svar og løses vanligvis ved å pare ingredienser eller med lineære ligninger.
Er alligasjon det samme som et vektet gjennomsnitt? De er inverser. Et vektet gjennomsnitt (alligasjon medial) gjør mengder til en blandingsverdi; alligasjon alternativ gjør en målverdi til mengder.
Kilder
- Alligation — Wikipedia — definisjoner av alligasjon alternativ og medial og den underliggende regelen.
- Alligation Calculator — Omni Calculator — den konsentrasjonsbaserte formen brukt i farmasi, med arbeidede eksempler.
- Pharmaceutical calculations by alligation method — EGPAT — første prinsipper gjennomgang av alligasjonskrysset for blanding.