Калькулятор алігації — коефіцієнт змішування та кількості
Знайдіть коефіцієнт для змішування дешевого і дорогого інгредієнта (або низької та високої концентрації) для досягнення цільової вартості, плюс точна кількість кожного. Вільний калькулятор алігації-альтернативної з розробленою хрестовою діаграмою.
Калькулятор алігації
Введіть вартість дешевого інгредієнта, дорогого (дорожчого) інгредієнта і цільову вартість суміші. Інструмент повертає коефіцієнт змішування — і точні кількості, якщо ви надаєте загальну кількість.
Вхідні значення
Результати
Коефіцієнт змішування
Кількості
Хрест алігації
Формула алігації
10.00 : 10.00 = (30.00 − 20.00) : (20.00 − 10.00)
Склад суміші
Документація
Що робить цей калькулятор (ELI5)
У вас є дві речі різної вартості — дешева і дорога — і ви хочете змішати їх у суміш, яка має якусь цільову вартість між ними. Алігація розповідає вам, скільки кожної використовувати.
Уявіть гойдалку. Цільова вартість — це точка опори. Інгредієнт, чия вартість далеко від цільової, повинен бути малої кількості, а той, що близько до цільової, повинен бути великої, щоб обидві сторони врівноважилися. Алігація — це просто арифметика цього балансу.
Введіть три числа — дешеву вартість, дорогу вартість і цільову — і інструмент дає вам:
- коефіцієнт змішування (наприклад 1 : 2, це означає 1 частину дешевого до 2 частин дорогого),
- точні кількості кожного інгредієнта, коли ви введете загальну кількість,
- хрестову діаграму і діаграму складу, щоб ви могли бачити суміш.
"Вартість" може бути ціною, відсотковою міцністю чи концентрацією (%, мг/мл, w/v) — чимось, що вимірюється на одній послідовній шкалі.
Формула
З дешевою вартістю C, дорогою вартістю D і цільовою вартістю суміші M, де C < M < D:
Кількість частин кожного інгредієнта походить від протилежної різниці — чим далі цільова вартість розташована від інгредієнта, тим більше іншого інгредієнта вам потрібно. Якщо ви також знаєте загальну кількість Q:
Хрест алігації
Класичний спосіб викласти це — "хрест": поставте дві вартості інгредієнтів ліворуч, цільову в середину, і віднімайте по кожній діагоналі. Кожна різниця потрапляє у протилежний кут і стає кількістю частин того інгредієнта.
1 Dearer (D) ───────┐ ┌─────── (M − C) = dearer parts
2 ╲ ╱
3 Target (M)
4 ╱ ╲
5 Cheaper (C) ───────┘ └─────── (D − M) = cheaper parts
6Робочий приклад
Змішайте інгредієнт вартістю 30, щоб продавати за $20:
Однакові частини. Для 100 одиниць загалом, це 50 дешевого і 50 дорогого — і змішана вартість точно 25 і коефіцієнт стане 5 : 15 = 1 : 3: чим ближче цільова вартість розташована до дорогого інгредієнта, тим більше дорогого інгредієнта вам потрібно.
Алігація альтернативна проти алігації медіальна
- Алігація альтернативна (те, що робить цей інструмент) — ви знаєте дві вартості інгредієнтів і цільову вартість, і ви вирішуєте для коефіцієнта.
- Алігація медіальна — ви знаєте кількості і вартості інгредієнтів, і ви вирішуєте для результуючої вартості суміші. Це просто середнє зважене: .
Ці два є оберненими один до одного, що є зручним способом перевірити вашу роботу: введіть кількості, які дає вам цей інструмент, назад у середнє зважене, і ви повинні отримати вашу цільову вартість.
Де це використовується
- Аптечна композиція — змішайте високо- і низькомісну препарацію (наприклад 70% і 20% розчин) до призначеної концентрації. Вартості — це відсотки чи мг/мл, а не долари; арифметика ідентична.
- Бізнес і ціноутворення — змішайте дешевий і премійний запас, щоб досягти цільової вартості одиниці чи ціни продажу.
- Хімія, їжа та напої — розбавити чи збагатити до цільової концентрації, міцності чи Brix.
Оскільки правило потребує лише однієї вартості на послідовній шкалі, ці ж три входи охоплюють усе.
Як це використовувати
- Введіть дешеву вартість, дорогу вартість і цільову вартість суміші (будь-яка послідовна одиниця).
- За бажанням введіть загальну кількість, щоб отримати точну кількість кожного інгредієнта.
- Прочитайте коефіцієнт, спрощений коефіцієнт і кількості; хрестова діаграма і крап показують розподіл.
Входи синхронізуються з URL сторінки, тому ви можете додати в закладки або поділитися точним налаштуванням. Цільова вартість повинна лежати суворо між двома вартостями інгредієнтів — інакше жодна суміш їх не може досягти, і інструмент говорить про це.
Обчисліть це в коді
Кожен фрагмент приймає дешеву вартість c, дорогу вартість d, цільову вартість m і загальну кількість q, і повертає дві частини і дві кількості.
Excel
Припускаючи, що C2 = дешевий, D2 = дорогий, M2 = цільовий, Q2 = загальна кількість:
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}
6Часто задавані питання
Що, якщо цільова вартість не між двома вартостями? Тоді жодна суміш цих двох не може досягти її — суміш 30 елемента завжди потрапляє між 30. Інструмент позначає це замість повернення фіктивного коефіцієнта.
Чи має значення одиниця? Ні. Коефіцієнт залежить лише від різниць на одній послідовній шкалі, тому ціни, відсотки та мг/мл працюють — просто тримайте всі три входи в одній одиниці.
Чи можу я використовувати його для трьох або більше інгредієнтів? Цей інструмент обробляє випадок з двома інгредієнтами. Проблеми з трьома або більше компонентами мають багато валідних відповідей і зазвичай вирішуються шляхом парування інгредієнтів або лінійних рівнянь.
Алігація це те ж саме, що середнє зважене? Вони обернені. Середнє зважене (алігація медіальна) перетворює кількості в вартість суміші; алігація альтернативна перетворює цільову вартість в кількості.
Джерела
- Alligation — Wikipedia — визначення алігації альтернативної та медіальної та основного правила.
- Alligation Calculator — Omni Calculator — форма на основі концентрації, використовувана в аптечній практиці, з робочими прикладами.
- Pharmaceutical calculations by alligation method — EGPAT — пояснення першоджерел хреста алігації для композиції.