Pulmonary function tests

From IDWiki

Flow Volume Loop

  • Full inspiration to TLC, full expiration to RV, full inspiration again to TLC
  • Computer calculates FEV1
  • Interpretation
    • Obstructive: curve shifts left (high TLC from gas trapping), concave end-expiration
    • Restrictive: curve shifts right (low, restricted TLC)
    • Fixed upper-airway obstruction: flattened expiration curve with preserved FEF50% = FIF50%
      • DDX includes post-intubation stenosis, goitre, endotracheal neoplasms, and bronchial stenosis
    • Variable extrathoracic (outside ribcage) obstruction: blunted inspiration curve with FEF50% > FIF50%
      • DDx: vocal cord paralysis, vocal cord constriction, reduce pharyngeal cross-sectional area, airway burns
    • Variable intrathoracic obstruction: blunted expiration curve with FEF50% < FIF50%
      • DDx: tracheomalacia, polychondritis, tracheal or main bronchus tumours

Spirometry

Diffusion Capacity

  • How well CO can get to your lungs
  • Low DLCO DDx: ILD, emphysema, anemia, pulmonary HTN, PNA, edema

Interpretation

  1. Flow-volume curve pattern
  2. FEV1/FVC low? ==> obstruction
  3. FEV1 low? ==> degree of obstruction and post-bronchodilator response (>12% and 200cc increase)
  4. FVC low? ==> gas trapping, lung restriction, post-bronchodilator response (>12% and 200cc increase)
  5. TLC low? ==> restriction; TLC high ==> hyperinflation (gas trapping)
  6. RV high? ==>
  7. DLCO low? ==>
graph LR;

ffr["FEV1/FVC"]

ffr --  <70% --> ffr_down_fvc["FVC"]
ffr -- >=70% --> ffr_norm_fvc["FVC"]

ffr_down_fvc -- low --> ffr_down_fvc_low_tlc["TLC"]
ffr_norm_fvc -- low --> ffr_norm_fvc_low_tlc["TLC"]

ffr_down_fvc -- normal/high -->          obst["Obstructive Pattern"]
ffr_down_fvc_low_tlc --  low -->        mixed["Mixed Pattern"]
ffr_down_fvc_low_tlc -- high -->         obst

ffr_norm_fvc -- normal/high --> empty[" "]
                      empty -->          norm["Normal Pattern"]

ffr_norm_fvc_low_tlc -- low -->          rest["Restrictive Pattern"]
ffr_norm_fvc_low_tlc -- normal/high --> nonsp["Nonspecific Pattern"]

mixed -->            mixed2["Mixed airflow limitation<br/>and restriction"]
obst  -- low DLCO -->  emph["Emphysema and other cystic<br/>lung diseases"]
obst  -- normal DLCO --> cb["Chronic bronchitis,<br/>bronchiectasis, and asthma"]
rest  -- low DLCO -->    pf["Pulmonary fibrosis"]
rest  -- normal DLC -->  nm["Neuromuscular, chest wall,<br/>and pleural disorders"]
nonsp -->               rad["Reactive airways disease,<br/>obesity, and poor effort"]
norm  -- low DLCO -->   vte["Thromboembolic disease,<br/>pulmonary hypertension,<br/>and combined fibrosis/emphysema"]
norm  -- normal DLCO -->     Normal