🛠️ToolsShed

약물 용량 계산기

체중 기반 약물 용량을 mg/kg로 계산합니다.

일반 약물 (참고)

약물명용량 (mg/kg)최대 용량
Acetaminophen (Paracetamol)151000mg per dose, 75mg/kg/day
Ibuprofen10400mg per dose, 40mg/kg/day
Amoxicillin25500mg per dose
Azithromycin10500mg per dose

면책 조항

이 도구는 교육 목적으로만 사용됩니다. 약물을 투여하기 전에 반드시 의료 전문가와 상담하세요.

자주 묻는 질문

코드 구현

def calculate_dose(weight_kg: float, dose_per_kg: float,
                    frequency: int, max_single_dose: float = None,
                    max_daily_dose: float = None) -> dict:
    """
    Calculate weight-based medication dose.
    weight_kg: patient weight in kg
    dose_per_kg: dose in mg per kg
    frequency: number of doses per day
    max_single_dose: optional cap per dose in mg
    max_daily_dose: optional cap per day in mg
    """
    single_dose = weight_kg * dose_per_kg
    if max_single_dose:
        single_dose = min(single_dose, max_single_dose)

    daily_dose = single_dose * frequency
    if max_daily_dose:
        daily_dose = min(daily_dose, max_daily_dose)
        single_dose = daily_dose / frequency  # re-split if daily capped

    return {
        "single_dose_mg": round(single_dose, 2),
        "daily_dose_mg":  round(daily_dose, 2),
        "frequency":      frequency,
        "doses_per_day":  f"Every {24 // frequency} hours",
    }

# Example: amoxicillin 25 mg/kg TID, max 500 mg/dose
r = calculate_dose(
    weight_kg=30,
    dose_per_kg=25,
    frequency=3,
    max_single_dose=500
)
print(f"Single Dose : {r['single_dose_mg']} mg")
print(f"Daily Dose  : {r['daily_dose_mg']} mg")
print(f"Frequency   : {r['frequency']}x/day ({r['doses_per_day']})")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.