Siccus intersous according to Sembulingm for knrush university exam
succus entericus Sembulingam physiology composition functions KNRUHS exam
https://www.scribd.com/document/899472133/Succus-Entericus-N…
Note: The term "Siccus intersous" in your query is the phonetic spelling of Succus Entericus - this is the correct medical term.
| Property | Value |
|---|---|
| Volume per day | ~2 litres (1.8 - 3 L/day) |
| pH | 7.8 - 8.0 (slightly alkaline) |
| Colour | Yellow |
| Specific gravity | 1.011 |
| Reaction | Alkaline |
| Point | Detail |
|---|---|
| Most important enzyme in succus entericus | Enterokinase (activates trypsinogen) |
| Lactase deficiency | Lactose intolerance - osmotic diarrhea |
| Sucrase-isomaltase deficiency | Cannot digest sucrose, cramping |
| Absent succus entericus | Maldigestion and malabsorption |
| Brunner's gland hyperplasia | May cause duodenal obstruction |
Search for KNRUHS previous exam questions on succus entericus
KNRUHS previous year question paper succus entericus physiology MBBS
Kaloji Narayana Rao University Health Sciences KNRUHS first year MBBS physiology question bank succus entericus
https://firstranker.com/kaloji-narayana-rao-university-of-he…
https://www.telanganastudy.com/knruhs-mbbs.html
"KNRUHS" OR "KNR university" physiology "succus entericus" OR "intestinal juice" previous year question paper site:scribd.com OR site:slideshare.net OR site:studocu.com
KNRUHS MBBS physiology paper I GI system "succus entericus" "short note" OR "essay" question 2018 2019 2020 2021 2022 2023
https://www.scribd.com/document/742085213/KNRUHS-Physio-Prvs…
"Write a short note on succus entericus" is a classic, repeatedly asked 5-mark short note question in KNRUHS Physiology Paper I. The full answer from the previous response covers everything you need.
For physiothearpy students
KNRUHS BPT physiotherapy first year physiology GI gastrointestinal system syllabus topics
https://www.scribd.com/document/829977287/Important-Question…
KNRUHS BPT physiotherapy physiology GI system important questions "gastric juice" OR "bile" OR "deglutition" OR "peristalsis" previous year
Exam pattern note: BPT Physiology Paper I covers GI system. Questions appear as Long Essays (10 marks), Short Notes (5 marks), and VSAQs (2 marks). Key topics from the Scribd BPT question bank: "Composition, functions and regulation of..." is the most common 10-mark format.
| Movement | Location | Purpose |
|---|---|---|
| Mastication | Mouth | Mechanical breakdown of food |
| Deglutition (Swallowing) | Pharynx/Oesophagus | Propulsion to stomach |
| Peristalsis | Entire GI tract | Forward propulsion of food |
| Segmentation | Small intestine | Mixing of chyme |
| Haustral churning | Large intestine | Mixing and water absorption |
| Mass movements | Large intestine | Propels faeces |
| Cell | Secretion |
|---|---|
| Parietal (Oxyntic) cells | HCl + Intrinsic factor |
| Chief (Peptic/Zymogen) cells | Pepsinogen |
| Mucous neck cells | Mucus |
| G cells (antrum) | Gastrin |
| D cells | Somatostatin |
| Phase | Stimulus | Mediator | % of Total |
|---|---|---|---|
| Cephalic phase | Sight/smell/thought of food | Vagus (ACh) | 30% |
| Gastric phase | Food in stomach (distension + chemical) | Gastrin | 60% |
| Intestinal phase | Chyme in duodenum | Gastrin (duodenal) | 10% |
| Nutrient | Mouth | Stomach | Small Intestine |
|---|---|---|---|
| Carbohydrates | Ptyalin (starch → maltose) | - | Pancreatic amylase + disaccharidases → monosaccharides |
| Proteins | - | Pepsin (proteins → peptones) | Trypsin, chymotrypsin → amino acids |
| Fats | Lingual lipase (minimal) | Gastric lipase (minimal) | Pancreatic lipase + bile salts → fatty acids + glycerol |
| Nutrient | Mechanism | Route |
|---|---|---|
| Glucose, Galactose | Active transport (Na⁺ cotransport) | Portal vein |
| Fructose | Facilitated diffusion | Portal vein |
| Amino acids | Active transport | Portal vein |
| Fatty acids, fat-sol vitamins | Form chylomicrons → lymphatics | Lacteals → thoracic duct |
| Water | Osmosis | Portal vein |
| Iron | Active transport (duodenum) | Portal vein |
| Vit B12 | Requires intrinsic factor → absorbed in ileum | Portal vein |
| Calcium | Active transport (with Vit D) | Portal vein |
| Hormone | Source | Stimulus | Actions |
|---|---|---|---|
| Gastrin | G cells (antrum) | Protein, distension, vagus | Stimulates HCl and pepsin; gastric motility |
| Secretin | S cells (duodenum) | Acid in duodenum | Stimulates HCO₃⁻ from pancreas; inhibits gastric secretion |
| CCK | I cells (duodenum) | Fats + proteins in duodenum | Stimulates pancreatic enzymes; contracts gallbladder; inhibits gastric emptying |
| GIP | K cells (duodenum) | Glucose + fats | Inhibits gastric secretion; stimulates insulin |
| Motilin | M cells (duodenum) | Fasting | Migrating motor complex (MMC) - housekeeping contractions |
| VIP | Nerve fibres | Neural | Relaxes smooth muscle; stimulates intestinal secretion |
| Enterocrinin | Small intestine | Chyme | Stimulates succus entericus |
| Somatostatin | D cells | Fat, protein, acid | Inhibits most GI secretions |
Create and pdf for me
ls -la /home/daytona/workspace/ 2>/dev/null || mkdir -p /home/daytona/workspace
mkdir -p /home/daytona/workspace/gi-physiology-bpt
~/gi-physiology-bpt/generate_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm, mm
from reportlab.platypus import (
SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle,
HRFlowable, PageBreak, KeepTogether
)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
OUTPUT = "/home/daytona/workspace/gi-physiology-bpt/GI_Physiology_BPT_KNRUHS.pdf"
doc = SimpleDocTemplate(
OUTPUT,
pagesize=A4,
rightMargin=1.8*cm,
leftMargin=1.8*cm,
topMargin=2*cm,
bottomMargin=2*cm,
title="GI Physiology Notes - BPT 1st Year KNRUHS",
author="Orris AI"
)
# ── Colour palette ──────────────────────────────────────────────────────────
DARK_BLUE = colors.HexColor("#1a3a5c")
MED_BLUE = colors.HexColor("#2e6da4")
LIGHT_BLUE = colors.HexColor("#dce9f5")
ACCENT = colors.HexColor("#e8734a")
GREEN = colors.HexColor("#2e7d32")
LIGHT_GREEN = colors.HexColor("#e8f5e9")
YELLOW_BG = colors.HexColor("#fff8e1")
GREY_BG = colors.HexColor("#f5f5f5")
WHITE = colors.white
BLACK = colors.black
styles = getSampleStyleSheet()
# Custom styles
title_style = ParagraphStyle(
"DocTitle", parent=styles["Normal"],
fontSize=22, leading=28, textColor=WHITE,
alignment=TA_CENTER, fontName="Helvetica-Bold", spaceAfter=4
)
subtitle_style = ParagraphStyle(
"Subtitle", parent=styles["Normal"],
fontSize=11, leading=14, textColor=colors.HexColor("#cce0f5"),
alignment=TA_CENTER, fontName="Helvetica", spaceAfter=2
)
h1_style = ParagraphStyle(
"H1", parent=styles["Normal"],
fontSize=14, leading=18, textColor=WHITE,
fontName="Helvetica-Bold", spaceBefore=14, spaceAfter=4,
leftIndent=0, borderPad=6
)
h2_style = ParagraphStyle(
"H2", parent=styles["Normal"],
fontSize=12, leading=16, textColor=DARK_BLUE,
fontName="Helvetica-Bold", spaceBefore=10, spaceAfter=4,
borderPad=4
)
h3_style = ParagraphStyle(
"H3", parent=styles["Normal"],
fontSize=10.5, leading=14, textColor=MED_BLUE,
fontName="Helvetica-Bold", spaceBefore=8, spaceAfter=3
)
body_style = ParagraphStyle(
"Body", parent=styles["Normal"],
fontSize=9.5, leading=14, textColor=BLACK,
fontName="Helvetica", spaceAfter=4, alignment=TA_JUSTIFY
)
bullet_style = ParagraphStyle(
"Bullet", parent=styles["Normal"],
fontSize=9.5, leading=13, textColor=BLACK,
fontName="Helvetica", spaceAfter=2,
leftIndent=14, bulletIndent=4
)
bold_bullet = ParagraphStyle(
"BoldBullet", parent=bullet_style,
fontName="Helvetica-Bold", textColor=DARK_BLUE
)
note_style = ParagraphStyle(
"Note", parent=styles["Normal"],
fontSize=9, leading=13, textColor=colors.HexColor("#5d4037"),
fontName="Helvetica-Oblique", spaceAfter=4,
leftIndent=10, rightIndent=10, backColor=YELLOW_BG,
borderPad=6
)
exam_style = ParagraphStyle(
"Exam", parent=styles["Normal"],
fontSize=9.5, leading=14, textColor=colors.HexColor("#1b5e20"),
fontName="Helvetica", spaceAfter=3, leftIndent=14, bulletIndent=4
)
# ── Helper builders ─────────────────────────────────────────────────────────
def section_header(text, level=1):
"""Coloured section header bar."""
bg = DARK_BLUE if level == 1 else MED_BLUE
tbl = Table([[Paragraph(text, h1_style if level==1 else
ParagraphStyle("h1w", parent=h1_style, fontSize=12))]],
colWidths=[doc.width])
tbl.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), bg),
("TOPPADDING", (0,0), (-1,-1), 7),
("BOTTOMPADDING",(0,0),(-1,-1), 7),
("LEFTPADDING", (0,0), (-1,-1), 10),
]))
return tbl
def h2(text):
return Paragraph(f"<font color='#{MED_BLUE.hexval()[2:]}'>▌</font> {text}", h2_style)
def h3(text):
return Paragraph(f"◆ {text}", h3_style)
def body(text):
return Paragraph(text, body_style)
def bullet(text, bold=False):
st = bold_bullet if bold else bullet_style
return Paragraph(f"• {text}", st)
def note(text):
return Paragraph(f"📝 {text}", note_style)
def sp(h=4):
return Spacer(1, h)
def hr():
return HRFlowable(width="100%", thickness=0.5, color=colors.HexColor("#b0c4de"), spaceAfter=4)
def make_table(headers, rows, col_widths=None, header_bg=MED_BLUE):
"""Generic styled table."""
if col_widths is None:
n = len(headers)
col_widths = [doc.width / n] * n
data = [[Paragraph(f"<b><font color='white'>{h}</font></b>",
ParagraphStyle("th", parent=body_style, alignment=TA_CENTER))
for h in headers]]
for i, row in enumerate(rows):
data.append([Paragraph(str(cell),
ParagraphStyle("td", parent=body_style,
backColor=LIGHT_BLUE if i%2==0 else WHITE))
for cell in row])
tbl = Table(data, colWidths=col_widths, repeatRows=1)
tbl.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), header_bg),
("ROWBACKGROUNDS",(0,1), (-1,-1), [LIGHT_BLUE, WHITE]),
("GRID", (0,0), (-1,-1), 0.4, colors.HexColor("#90a4ae")),
("TOPPADDING", (0,0), (-1,-1), 5),
("BOTTOMPADDING", (0,0), (-1,-1), 5),
("LEFTPADDING", (0,0), (-1,-1), 6),
("VALIGN", (0,0), (-1,-1), "MIDDLE"),
("ALIGN", (0,0), (-1,0), "CENTER"),
]))
return tbl
def exam_box(items_10, items_5, items_vsaq):
"""Exam questions box."""
content = []
box_style = TableStyle([
("BACKGROUND", (0,0), (-1,0), GREEN),
("BACKGROUND", (0,1), (-1,-1), LIGHT_GREEN),
("GRID", (0,0), (-1,-1), 0.4, colors.HexColor("#81c784")),
("TOPPADDING", (0,0), (-1,-1), 6),
("BOTTOMPADDING", (0,0), (-1,-1), 6),
("LEFTPADDING", (0,0), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
])
rows = [[Paragraph("<b><font color='white'>🎯 KNRUHS EXAM QUESTIONS</font></b>",
ParagraphStyle("eh", parent=body_style, fontSize=11))]]
col1 = [Paragraph("<b>Long Essays (10 marks)</b>", h3_style)]
for q in items_10:
col1.append(Paragraph(f"• {q}", exam_style))
col2 = [Paragraph("<b>Short Notes (5 marks)</b>", h3_style)]
for q in items_5:
col2.append(Paragraph(f"• {q}", exam_style))
col3 = [Paragraph("<b>VSAQs (2 marks)</b>", h3_style)]
for q in items_vsaq:
col3.append(Paragraph(f"• {q}", exam_style))
# Combine into single cell list
combined = []
for item in col1 + [sp(6)] + col2 + [sp(6)] + col3:
combined.append(item)
inner = Table([[combined]], colWidths=[doc.width])
inner.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), LIGHT_GREEN),
("LEFTPADDING",(0,0),(-1,-1), 10),
("TOPPADDING", (0,0),(-1,-1), 8),
("BOTTOMPADDING",(0,0),(-1,-1), 8),
("BOX", (0,0),(-1,-1), 1.5, GREEN),
]))
return inner
# ════════════════════════════════════════════════════════════════════════════
# BUILD DOCUMENT
# ════════════════════════════════════════════════════════════════════════════
story = []
# ── COVER BANNER ────────────────────────────────────────────────────────────
cover_data = [[
Paragraph("GI SYSTEM PHYSIOLOGY", title_style),
Paragraph("BPT 1st Year — KNRUHS Exam Notes", subtitle_style),
Paragraph("Based on Sembulingam's Essentials of Medical Physiology", subtitle_style),
]]
cover = Table([
[Paragraph("GI SYSTEM PHYSIOLOGY", title_style)],
[Paragraph("BPT 1st Year — KNRUHS Exam Notes", subtitle_style)],
[Paragraph("Based on Sembulingam's Essentials of Medical Physiology", subtitle_style)],
[Paragraph("Gastrointestinal System | Motility | Secretions | Digestion | Absorption",
ParagraphStyle("tags", parent=subtitle_style, fontSize=9,
textColor=colors.HexColor("#aad4f5")))],
], colWidths=[doc.width])
cover.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), DARK_BLUE),
("TOPPADDING", (0,0), (-1,-1), 12),
("BOTTOMPADDING", (0,0), (-1,-1), 12),
("LEFTPADDING", (0,0), (-1,-1), 20),
("RIGHTPADDING", (0,0), (-1,-1), 20),
("BOX", (0,0), (-1,-1), 2, ACCENT),
]))
story.append(cover)
story.append(sp(10))
story.append(note("Exam Pattern: Long Essay 10 marks | Short Note 5 marks | VSAQ 2 marks. "
"GI System is in Physiology Paper I (MB2019105). All topics are Sembulingam-based."))
story.append(sp(8))
# ════════════════════════════════════════════════════════════════════════════
# UNIT 1: OVERVIEW
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("UNIT 1: OVERVIEW OF THE GI TRACT"))
story.append(sp(6))
story.append(h2("General Organization"))
story.append(body("The GI tract (alimentary canal) extends from mouth to anus:"))
story.append(body("<b>Mouth → Pharynx → Oesophagus → Stomach → Small Intestine → Large Intestine → Rectum → Anal Canal</b>"))
story.append(bullet("<b>Accessory organs:</b> Salivary glands, Liver, Gallbladder, Pancreas"))
story.append(sp(6))
story.append(h2("Layers of the GI Wall"))
story.append(make_table(
["Layer", "Components", "Function"],
[
["Mucosa (innermost)", "Epithelium, lamina propria, muscularis mucosae", "Secretion + Absorption"],
["Submucosa", "Connective tissue, Meissner's plexus, glands", "Controls secretion"],
["Muscularis externa", "Inner circular + Outer longitudinal muscle; Auerbach's plexus", "Controls motility"],
["Serosa (outermost)", "Visceral peritoneum", "Protection"],
],
col_widths=[3.5*cm, 8*cm, 5*cm]
))
story.append(sp(6))
story.append(h2("Enteric Nervous System (ENS) — 'Second Brain'"))
story.append(bullet("<b>Meissner's plexus</b> (submucosal) — controls <b>secretion</b>"))
story.append(bullet("<b>Auerbach's / Myenteric plexus</b> — controls <b>motility</b>"))
story.append(bullet("Parasympathetic (vagus) — <b>stimulates</b> GI activity"))
story.append(bullet("Sympathetic — <b>inhibits</b> GI activity"))
story.append(sp(8))
# ════════════════════════════════════════════════════════════════════════════
# UNIT 2: MOTILITY
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("UNIT 2: MOVEMENTS OF THE GI TRACT (MOTILITY)"))
story.append(sp(6))
story.append(make_table(
["Movement", "Location", "Purpose"],
[
["Mastication", "Mouth", "Mechanical breakdown of food"],
["Deglutition", "Pharynx / Oesophagus", "Propulsion to stomach"],
["Peristalsis", "Entire GI tract", "Forward propulsion of chyme"],
["Segmentation", "Small intestine", "Mixing of chyme with digestive juices"],
["Haustral churning", "Large intestine", "Mixing and water absorption"],
["Mass movements", "Large intestine (3-4×/day)", "Propels faeces to rectum"],
],
col_widths=[4.5*cm, 5.5*cm, 6.5*cm]
))
story.append(sp(8))
story.append(h2("Deglutition (Swallowing) — Short Note / Essay"))
story.append(body("<b>Three phases:</b>"))
story.append(bullet("<b>1. Voluntary (oral) phase</b> — tongue pushes bolus backward to pharynx"))
story.append(bullet("<b>2. Pharyngeal phase (involuntary)</b> — soft palate closes nasopharynx; epiglottis covers larynx; upper oesophageal sphincter opens"))
story.append(bullet("<b>3. Oesophageal phase</b> — peristaltic wave carries bolus; lower oesophageal sphincter (LES) relaxes to allow entry into stomach"))
story.append(bullet("<b>Centre:</b> Deglutition centre in medulla oblongata (nucleus tractus solitarius)"))
story.append(sp(6))
story.append(h2("Peristalsis — VSAQ / Short Note"))
story.append(bullet("Progressive wave of <b>relaxation ahead</b> + <b>contraction behind</b> the bolus"))
story.append(bullet("Propels food in caudal (downward) direction"))
story.append(bullet("Governed by myenteric (Auerbach's) plexus"))
story.append(bullet("<b>Law of intestine:</b> oral segment contracts, anal segment relaxes"))
story.append(sp(6))
story.append(h2("Segmentation (Mixing Contractions)"))
story.append(bullet("Rhythmic contractions dividing intestinal contents into segments"))
story.append(bullet("Mixes chyme with digestive juices — enhances digestion and absorption"))
story.append(bullet("Does <b>NOT</b> propel food; brings chyme repeatedly in contact with mucosa"))
story.append(sp(8))
# ════════════════════════════════════════════════════════════════════════════
# UNIT 3: SECRETIONS
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("UNIT 3: SECRETIONS OF THE GI TRACT"))
story.append(sp(6))
# 3.1 SALIVA
story.append(h2("3.1 Saliva"))
story.append(make_table(
["Property", "Value"],
[["Volume/day","1.0 – 1.5 L"],["pH","6.0 – 7.0"],["Reaction","Slightly acidic to neutral"],
["Major glands","Parotid (serous), Submandibular (mixed), Sublingual (mucous)"]],
col_widths=[5*cm, 11.5*cm]
))
story.append(sp(4))
story.append(h3("Composition"))
story.append(bullet("Water (99%) + electrolytes (Na⁺, K⁺, Cl⁻, HCO₃⁻)"))
story.append(bullet("<b>Salivary amylase (Ptyalin)</b> — digests starch → maltose"))
story.append(bullet("<b>Lingual lipase</b> — begins fat digestion"))
story.append(bullet("Mucin (lubricant), Lysozyme (antibacterial), IgA (immunological)"))
story.append(h3("Functions"))
story.append(bullet("Lubricates and moistens food (bolus formation)"))
story.append(bullet("Begins carbohydrate digestion (ptyalin / salivary amylase)"))
story.append(bullet("Antibacterial action (lysozyme, IgA)"))
story.append(bullet("Helps speech and taste (dissolves food chemicals for taste buds)"))
story.append(bullet("Buffers acid in oesophagus"))
story.append(h3("Regulation"))
story.append(bullet("<b>Parasympathetic</b> (CN VII via chorda tympani; CN IX via glossopharyngeal) → copious watery saliva"))
story.append(bullet("<b>Sympathetic</b> → thick mucous saliva"))
story.append(note("No hormonal control — saliva is purely neurally regulated (unlike all other GI secretions)."))
story.append(sp(8))
# 3.2 GASTRIC JUICE
story.append(h2("3.2 Gastric Juice — Long Essay (10 marks)"))
story.append(make_table(
["Property","Value"],
[["Volume/day","2 – 3 L"],["pH","1.5 – 2.0 (strongly acidic)"],
["Reaction","Acidic"],["Colour","Colourless"]],
col_widths=[5*cm, 11.5*cm]
))
story.append(sp(4))
story.append(h3("Cells and Their Secretions"))
story.append(make_table(
["Cell Type", "Location", "Secretion", "Function"],
[
["Parietal (Oxyntic) cells","Body/fundus","HCl + Intrinsic Factor","Activates pepsin; Vit B12 absorption"],
["Chief (Peptic) cells","Body/fundus","Pepsinogen","→ Pepsin (protein digestion)"],
["Mucous neck cells","Neck of glands","Mucus","Protects stomach lining"],
["G cells","Antrum","Gastrin","Stimulates HCl and motility"],
["D cells","Antrum/fundus","Somatostatin","Inhibits gastric secretion"],
],
col_widths=[4.2*cm, 3.5*cm, 4*cm, 4.8*cm]
))
story.append(sp(4))
story.append(h3("Phases of Gastric Secretion"))
story.append(make_table(
["Phase","Stimulus","Mediator","% of Total"],
[
["Cephalic phase","Sight/smell/thought of food","Vagus (ACh)","30%"],
["Gastric phase","Food in stomach (distension + chemical)","Gastrin","60%"],
["Intestinal phase","Chyme in duodenum","Gastrin (duodenal)","10%"],
],
col_widths=[3.5*cm, 6*cm, 4*cm, 3*cm]
))
story.append(sp(4))
story.append(h3("Inhibition of Gastric Secretion"))
story.append(make_table(
["Inhibitor","Source","Trigger","Effect"],
[
["Secretin","S cells, duodenum","Acid in duodenum","↓ Gastrin, ↑ HCO₃⁻"],
["CCK","I cells, duodenum","Fat + protein in duodenum","↓ Gastric emptying"],
["GIP","K cells, duodenum","Glucose + fat","↓ HCl secretion"],
["Somatostatin","D cells","Fat, protein, acid","↓ Most GI secretions"],
],
col_widths=[3.5*cm, 4*cm, 5*cm, 4*cm]
))
story.append(sp(8))
# 3.3 PANCREATIC JUICE
story.append(h2("3.3 Pancreatic Juice — Long Essay (10 marks)"))
story.append(make_table(
["Property","Value"],
[["Volume/day","1.5 – 2 L"],["pH","8.0 – 8.5 (most alkaline digestive juice)"],
["Reaction","Strongly alkaline"],["Source","Acinar cells (enzymes) + Ductal cells (HCO₃⁻)"]],
col_widths=[5*cm, 11.5*cm]
))
story.append(sp(4))
story.append(h3("Enzymes (secreted as INACTIVE zymogens)"))
story.append(make_table(
["Enzyme Type","Zymogen","Active Form","Substrate → Product"],
[
["Proteolytic","Trypsinogen","Trypsin*","Proteins → Polypeptides"],
["Proteolytic","Chymotrypsinogen","Chymotrypsin","Proteins → Polypeptides"],
["Proteolytic","Proelastase","Elastase","Elastin peptides"],
["Proteolytic","Procarboxypeptidase","Carboxypeptidase","Peptides → Amino acids"],
["Carbohydrate","(Active)","Pancreatic amylase","Starch → Maltose"],
["Lipid","(Active)","Pancreatic lipase","TG → Fatty acids + Monoglyceride"],
["Nuclease","(Active)","DNase / RNase","DNA/RNA → Nucleotides"],
],
col_widths=[3.5*cm, 4*cm, 4.5*cm, 4.5*cm]
))
story.append(note("*Trypsinogen is activated by ENTEROKINASE (from succus entericus) → Trypsin. "
"Trypsin then activates all other zymogens. This is the most important activation step!"))
story.append(sp(4))
story.append(h3("Regulation"))
story.append(make_table(
["Stimulus","Hormone Released","Action on Pancreas"],
[
["Acid in duodenum","Secretin (S cells)","↑ HCO₃⁻-rich 'volume' secretion (neutralises acid)"],
["Fat + protein in duodenum","CCK (I cells)","↑ Enzyme-rich secretion"],
["Vagus (cephalic phase)","ACh","↑ Enzyme secretion"],
],
col_widths=[5*cm, 5*cm, 6.5*cm]
))
story.append(note("Clinical: In acute pancreatitis — premature activation of zymogens within the pancreas "
"causes auto-digestion of pancreatic tissue."))
story.append(sp(8))
# 3.4 BILE
story.append(h2("3.4 Bile — Short Note / Long Essay"))
story.append(make_table(
["Property","Value"],
[["Volume/day","500 – 1000 mL"],["Produced by","Hepatocytes (liver)"],
["Stored in","Gallbladder (concentrated 5–10×)"],
["pH (hepatic bile)","7.8 – 8.6"],["pH (gallbladder bile)","7.0"]],
col_widths=[5*cm, 11.5*cm]
))
story.append(sp(4))
story.append(h3("Composition"))
story.append(bullet("<b>Bile salts</b> — sodium cholate, deoxycholate, chenodeoxycholate (most important)"))
story.append(bullet("<b>Bile pigments</b> — bilirubin (yellow), biliverdin (green)"))
story.append(bullet("Cholesterol, Phospholipids (lecithin)"))
story.append(bullet("Water, electrolytes"))
story.append(h3("Functions"))
story.append(bullet("<b>Emulsification of fats</b> — bile salts break large fat globules into tiny micelles (↑ surface area for lipase action)"))
story.append(bullet("<b>Absorption of fat-soluble vitamins</b> (A, D, E, K)"))
story.append(bullet("<b>Neutralisation</b> of acidic chyme (HCO₃⁻ in bile)"))
story.append(bullet("<b>Excretion</b> of bilirubin, cholesterol, toxins, drugs"))
story.append(bullet("<b>Intestinal motility</b> — bile salts stimulate peristalsis"))
story.append(bullet("<b>Antibacterial</b> action"))
story.append(h3("Enterohepatic Circulation — Short Note"))
story.append(body("Bile salts are absorbed in the <b>terminal ileum</b> → portal vein → liver → re-secreted into bile. "
"90–95% of bile salts are recycled; only 5–10% lost in faeces (replaced by new synthesis in liver)."))
story.append(note("Importance: Conserves bile salts; disruption (e.g., ileum resection) causes fat malabsorption and diarrhoea."))
story.append(h3("Regulation"))
story.append(make_table(
["Stimulus","Response"],
[
["Secretin","↑ Bile volume (choleretic effect — water + HCO₃⁻ secretion)"],
["CCK","Contracts gallbladder + relaxes sphincter of Oddi → bile release"],
["Bile salts themselves","Strongest stimulus for bile secretion (choleretic)"],
["Vagus nerve","Mild stimulation of bile secretion"],
],
col_widths=[5*cm, 11.5*cm]
))
story.append(sp(8))
# 3.5 SUCCUS ENTERICUS
story.append(h2("3.5 Succus Entericus (Intestinal Juice) — Short Note (5 marks)"))
story.append(make_table(
["Property","Value"],
[["Volume/day","~2 L"],["pH","7.8 – 8.0"],["Reaction","Alkaline"],
["Colour","Yellow, slightly turbid"],
["Glands","Brunner's glands (duodenum) + Crypts of Lieberkühn (all small intestine)"]],
col_widths=[5*cm, 11.5*cm]
))
story.append(sp(4))
story.append(h3("Enzymes"))
story.append(make_table(
["Enzyme","Action"],
[
["Enterokinase (Enteropeptidase)","Activates trypsinogen → trypsin (MOST IMPORTANT)"],
["Erepsin (Aminopeptidase + Dipeptidase)","Polypeptides/dipeptides → Amino acids"],
["Maltase","Maltose → Glucose + Glucose"],
["Sucrase (Invertase)","Sucrose → Glucose + Fructose"],
["Lactase","Lactose → Glucose + Galactose"],
["Intestinal lipase","Triglycerides → Fatty acids + Glycerol (minor role)"],
["Nucleotidase / Nucleosidase","Nucleotides → Nucleosides → Purines/Pyrimidines"],
],
col_widths=[5.5*cm, 11*cm]
))
story.append(sp(4))
story.append(h3("Functions"))
story.append(bullet("<b>Digestive</b> — enzymes complete digestion of proteins, carbs, fats, nucleic acids"))
story.append(bullet("<b>Protective</b> — mucus protects intestinal mucosa from enzymatic digestion"))
story.append(bullet("<b>Activator</b> — enterokinase activates trypsinogen (triggers cascade activation of all pancreatic zymogens)"))
story.append(bullet("<b>Neutralisation</b> — NaHCO₃ raises pH of acidic chyme to 7.8–8.0"))
story.append(bullet("<b>Absorptive</b> — provides fluid medium for nutrient absorption"))
story.append(h3("Regulation"))
story.append(bullet("<b>Enterocrinin</b> (from small intestine mucosa) — specific hormone for succus entericus secretion"))
story.append(bullet("Parasympathetic / Vagus — stimulates secretion"))
story.append(bullet("Mechanical stimulation by chyme (via Meissner's plexus)"))
story.append(note("Key exam point: Disaccharidases (maltase, sucrase, lactase) are BRUSH BORDER (membrane-bound) enzymes, NOT freely secreted into lumen."))
story.append(sp(10))
# ════════════════════════════════════════════════════════════════════════════
# UNIT 4: DIGESTION & ABSORPTION
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("UNIT 4: DIGESTION AND ABSORPTION"))
story.append(sp(6))
story.append(h2("Digestion Summary"))
story.append(make_table(
["Nutrient","Mouth","Stomach","Small Intestine","End Product"],
[
["Carbohydrates","Ptyalin → maltose","None","Pancreatic amylase + disaccharidases","Monosaccharides (glucose, fructose, galactose)"],
["Proteins","None","Pepsin → peptones","Trypsin, chymotrypsin, carboxypeptidase, erepsin","Amino acids"],
["Fats","Lingual lipase (trace)","Gastric lipase (minor)","Pancreatic lipase + bile salts","Fatty acids + Monoglycerides"],
["Nucleic acids","None","None","DNase, RNase → nucleotides → nucleosidase","Purines, pyrimidines, sugars"],
],
col_widths=[2.8*cm, 3*cm, 3*cm, 4.8*cm, 4*cm]
))
story.append(sp(8))
story.append(h2("Absorption — Site and Mechanism"))
story.append(body("The <b>small intestine</b> is the primary site of absorption. Villi + microvilli (brush border) create ~200 m² of absorptive surface area."))
story.append(sp(4))
story.append(make_table(
["Nutrient","Mechanism","Route"],
[
["Glucose, Galactose","Active transport (Na⁺-dependent cotransport)","Portal vein → liver"],
["Fructose","Facilitated diffusion","Portal vein → liver"],
["Amino acids","Active transport (Na⁺-dependent)","Portal vein → liver"],
["Fatty acids, fat-sol. vitamins (A,D,E,K)","Form chylomicrons → enter lacteals","Thoracic duct → blood"],
["Water","Osmosis (follows solute absorption)","Portal vein"],
["Iron (Fe²⁺)","Active transport — DMT1 transporter (duodenum)","Portal vein"],
["Vitamin B12","Requires Intrinsic Factor (IF) — absorbed in terminal ileum","Portal vein"],
["Calcium","Active transport (Vitamin D dependent, duodenum)","Portal vein"],
["Water-soluble vitamins (B, C)","Active/facilitated transport","Portal vein"],
],
col_widths=[4.5*cm, 7.5*cm, 4.5*cm]
))
story.append(note("Clinical: Lactase deficiency → Lactose intolerance (osmotic diarrhea, bloating). "
"Intrinsic factor deficiency (autoimmune destruction of parietal cells) → Pernicious anaemia (Vit B12 deficiency)."))
story.append(sp(10))
# ════════════════════════════════════════════════════════════════════════════
# UNIT 5: LIVER
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("UNIT 5: LIVER — FUNCTIONS"))
story.append(sp(6))
story.append(h2("Functions of the Liver — Short Note (5 marks)"))
story.append(make_table(
["Function Category","Details"],
[
["Metabolic","Carbohydrate: glycogen storage, glycogenesis, glycogenolysis, gluconeogenesis"],
["Metabolic","Protein: deamination, transamination, urea synthesis (urea cycle)"],
["Metabolic","Fat: beta-oxidation, ketone body formation, cholesterol synthesis, lipoprotein synthesis"],
["Bile production","500–1000 mL/day; bile salts, bile pigments, cholesterol"],
["Detoxification","Drugs, hormones, alcohol, ammonia → urea; conjugation reactions"],
["Storage","Glycogen, Vitamins A, D, B12, Iron (as ferritin), copper"],
["Synthesis","Plasma proteins: albumin, fibrinogen, prothrombin, clotting factors (II, VII, IX, X)"],
["Haemopoiesis","In fetal life (extramedullary haemopoiesis)"],
["Phagocytosis","Kupffer cells destroy old RBCs, bacteria, debris"],
["Heat production","Thermogenesis (liver is major heat-producing organ)"],
],
col_widths=[5*cm, 11.5*cm]
))
story.append(sp(10))
# ════════════════════════════════════════════════════════════════════════════
# UNIT 6: LARGE INTESTINE
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("UNIT 6: LARGE INTESTINE & DEFECATION"))
story.append(sp(6))
story.append(h2("Functions of the Large Intestine"))
story.append(bullet("Absorption of <b>water and electrolytes</b> (mainly Na⁺ and water — ~1.5 L/day absorbed)"))
story.append(bullet("Storage and elimination of <b>faeces</b>"))
story.append(bullet("<b>Bacterial action</b> — synthesis of Vit K, Vit B complex by gut flora"))
story.append(bullet("Secretion of <b>mucus only</b> (NO digestive enzymes)"))
story.append(sp(6))
story.append(h2("Defecation Reflex — Short Note"))
story.append(body("Mass movements push faeces into rectum → <b>rectal distension</b> → afferent impulses to sacral cord (S2, S3, S4) → parasympathetic reflex → <b>contraction of rectum + relaxation of internal anal sphincter</b> → urge to defecate."))
story.append(bullet("<b>Internal anal sphincter</b> — smooth muscle, involuntary (under ANS)"))
story.append(bullet("<b>External anal sphincter</b> — skeletal muscle, <b>voluntary</b> (under pudendal nerve)"))
story.append(note("Valsalva manoeuvre: forced expiration against closed glottis increases intra-abdominal pressure to aid defecation. Physiotherapy significance: relevant in pelvic floor rehabilitation."))
story.append(sp(10))
# ════════════════════════════════════════════════════════════════════════════
# UNIT 7: GI HORMONES
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("UNIT 7: GI HORMONES — Summary Table"))
story.append(sp(6))
story.append(make_table(
["Hormone","Source","Stimulus","Main Actions"],
[
["Gastrin","G cells (antrum)","Protein, distension, vagus","↑ HCl, pepsin; ↑ gastric motility; ↑ mucosal growth"],
["Secretin","S cells (duodenum)","Acid in duodenum (pH <4.5)","↑ Pancreatic HCO₃⁻; ↓ gastric secretion; ↑ bile volume"],
["CCK","I cells (duodenum)","Fats + proteins in duodenum","↑ Pancreatic enzymes; gallbladder contraction; ↓ gastric emptying"],
["GIP (Gastric Inhibitory Peptide)","K cells (duodenum)","Glucose + fats","↓ HCl; ↑ Insulin release (incretin effect)"],
["Motilin","M cells (duodenum)","Fasting state","Migrating motor complex (MMC) — 'intestinal housekeeper'"],
["VIP (Vasoactive Intestinal Peptide)","Nerve fibres (ENS)","Neural stimulation","Relaxes smooth muscle; ↑ intestinal secretion; vasodilation"],
["Enterocrinin","Small intestine mucosa","Chyme","Stimulates succus entericus secretion"],
["Somatostatin","D cells (pancreas/antrum)","Fat, protein, acid","Inhibits gastrin, insulin, glucagon, most GI secretions"],
["Substance P","ENS neurons","Gut distension","↑ Peristalsis; sensory neurotransmitter"],
],
col_widths=[3.2*cm, 3.5*cm, 4.5*cm, 5.3*cm]
))
story.append(sp(10))
# ════════════════════════════════════════════════════════════════════════════
# EXAM QUESTIONS
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("KNRUHS BPT EXAM — IMPORTANT QUESTIONS"))
story.append(sp(6))
story.append(h2("Long Essays — 10 Marks Each"))
long_qs = [
"Describe the composition, mechanism of secretion and regulation of gastric juice. Add a note on functions.",
"Describe the composition, functions and regulation of pancreatic juice. Add a note on pancreatitis.",
"Describe the composition and functions of bile. Explain enterohepatic circulation.",
"Describe the mechanism of swallowing (deglutition). Add a note on the deglutition centre.",
"Describe the movements of the small intestine and their physiological significance.",
"Describe the digestion and absorption of carbohydrates.",
"Describe the digestion and absorption of fats.",
"Write about the functions of the liver.",
]
for q in long_qs:
story.append(Paragraph(f"• {q}", exam_style))
story.append(sp(6))
story.append(h2("Short Notes — 5 Marks Each"))
short_qs = [
"Succus entericus",
"Composition and functions of saliva",
"Functions of bile / Bile salts",
"Enterohepatic circulation of bile salts",
"GI hormones (Gastrin, Secretin, CCK)",
"Gastric emptying and its regulation",
"Absorption of iron",
"Absorption of Vitamin B12",
"Mass movements of the colon",
"Defecation reflex",
"Intrinsic factor of Castle",
"Peristalsis",
"Segmentation contractions",
"Functions of the large intestine",
"Gastric phases of gastric secretion",
"Chylomicrons",
]
for q in short_qs:
story.append(Paragraph(f"• {q}", exam_style))
story.append(sp(6))
story.append(h2("Very Short Answer Questions (VSAQs) — 2 Marks Each"))
vsaq_data = [
("What is enterokinase?", "Enzyme in succus entericus that activates trypsinogen → trypsin"),
("What is intrinsic factor?", "Glycoprotein from parietal cells; required for Vitamin B12 absorption in terminal ileum"),
("What is chyme?", "Semi-liquid mixture of food with gastric juice formed in the stomach"),
("What is emulsification?", "Breaking of large fat globules into small micelles by bile salts (↑ lipase surface area)"),
("Name the hormone that contracts the gallbladder.", "CCK (Cholecystokinin)"),
("pH of pancreatic juice?", "8.0 – 8.5"),
("What is enterocrinin?", "Hormone from small intestinal mucosa that stimulates succus entericus secretion"),
("Name the phases of gastric secretion.", "Cephalic (30%), Gastric (60%), Intestinal (10%)"),
("Most important enzyme in succus entericus?", "Enterokinase"),
("Site of Vitamin B12 absorption?", "Terminal ileum"),
("What is Brunner's gland?", "Mucus-secreting glands in duodenal submucosa; protect against acid"),
("What is the law of the intestine?", "Oral segment contracts, anal segment relaxes — governs peristalsis direction"),
("What is the role of secretin?", "Stimulates pancreatic HCO₃⁻ secretion; released in response to acid in duodenum"),
("Name fat-soluble vitamins.", "A, D, E, K — absorbed with fat, require bile salts"),
("What is the migrating motor complex?", "Periodic contractile activity during fasting; clears residue from GI tract; triggered by motilin"),
]
vsaq_table_data = [[
Paragraph(f"<b>Q: {q}</b>", ParagraphStyle("vq", parent=body_style, fontName="Helvetica-Bold")),
Paragraph(f"A: {a}", body_style)
] for q, a in vsaq_data]
vsaq_tbl = Table(vsaq_table_data, colWidths=[7.5*cm, 9*cm], repeatRows=0)
vsaq_tbl.setStyle(TableStyle([
("ROWBACKGROUNDS", (0,0),(-1,-1), [LIGHT_BLUE, WHITE]),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#90a4ae")),
("TOPPADDING", (0,0),(-1,-1), 5),
("BOTTOMPADDING",(0,0),(-1,-1), 5),
("LEFTPADDING", (0,0),(-1,-1), 6),
("VALIGN", (0,0),(-1,-1), "TOP"),
]))
story.append(vsaq_tbl)
story.append(sp(10))
# ════════════════════════════════════════════════════════════════════════════
# QUICK REVISION
# ════════════════════════════════════════════════════════════════════════════
story.append(section_header("QUICK REVISION — KEY VALUES"))
story.append(sp(6))
story.append(make_table(
["Secretion","Volume/day","pH","Key Enzyme/Component"],
[
["Saliva","1.0–1.5 L","6.0–7.0","Salivary amylase (ptyalin)"],
["Gastric juice","2–3 L","1.5–2.0","HCl, Pepsin, Intrinsic Factor"],
["Pancreatic juice","1.5–2 L","8.0–8.5","Trypsin (+ all enzymes); NaHCO₃"],
["Bile","0.5–1 L","7.8–8.6 (hepatic)","Bile salts (emulsification)"],
["Succus entericus","~2 L","7.8–8.0","Enterokinase, Disaccharidases"],
["Total GI secretions","~7–8 L","—","Most reabsorbed in small intestine"],
],
col_widths=[4*cm, 3.5*cm, 3.5*cm, 5.5*cm]
))
story.append(sp(8))
# Footer note
footer = Table([[
Paragraph("GI Physiology Notes for BPT 1st Year | KNRUHS Exam Preparation | "
"Based on Sembulingam's Essentials of Medical Physiology | "
"Generated by Orris AI",
ParagraphStyle("footer", parent=body_style, fontSize=8,
textColor=colors.grey, alignment=TA_CENTER))
]], colWidths=[doc.width])
footer.setStyle(TableStyle([
("TOPPADDING",(0,0),(-1,-1),8),
("LINEABOVE",(0,0),(-1,-1),0.5,colors.HexColor("#b0bec5")),
]))
story.append(footer)
# BUILD
doc.build(story)
print(f"PDF created: {OUTPUT}")
cd /home/daytona/workspace/gi-physiology-bpt && python generate_pdf.py
ls -lh /home/daytona/workspace/gi-physiology-bpt/GI_Physiology_BPT_KNRUHS.pdf
GI Physiology BPT KNRUHS
PDF Document · PDF
| Unit | Content |
|---|---|
| 1 | Overview of GI tract - layers, ENS |
| 2 | Motility - deglutition, peristalsis, segmentation |
| 3 | All secretions - Saliva, Gastric juice, Pancreatic juice, Bile, Succus entericus |
| 4 | Digestion and absorption tables |
| 5 | Liver functions |
| 6 | Large intestine and defecation reflex |
| 7 | GI hormones summary table |
| Exam Q | Long essays, short notes, VSAQ with answers |
| Quick revision | Key values (pH, volume) of all secretions |
Liver function in git
| Component | Role |
|---|---|
| Bile salts | Emulsification of dietary fats → micelle formation (critical for lipase action) |
| Bile pigments (bilirubin) | Excretory product of haem breakdown |
| Cholesterol | Excreted via bile (main route of cholesterol elimination) |
| Phospholipids (lecithin) | Assist micelle formation; stabilize cholesterol in bile |
| HCO₃⁻ (bicarbonate) | Neutralises acid chyme entering duodenum |
| Type | Cause | Bilirubin | Urine | Stool |
|---|---|---|---|---|
| Pre-hepatic (haemolytic) | Excess RBC destruction | ↑ Unconjugated | Normal | Normal/dark |
| Hepatic (hepatocellular) | Liver cell damage | Both raised | Dark | Pale |
| Post-hepatic (obstructive) | Bile duct blockage | ↑ Conjugated | Dark (bilirubin in urine) | Clay-coloured (pale) |
Newborn jaundice: UDP-glucuronyl transferase is synthesized slowly after birth → temporary unconjugated hyperbilirubinaemia. - Costanzo Physiology, p. 394
"In a person with poor liver function, blood glucose after a carbohydrate-rich meal may rise 2-3 times as much as normal." - Guyton & Hall, p. 861
"Liver damage can lead to excess accumulation of hormones... causing overactivity of the hormonal systems." - Guyton & Hall, p. 863
| Substance | Storage Details |
|---|---|
| Glycogen | Glucose buffer; released during fasting |
| Vitamin A | Largest store - lasts ~10 months |
| Vitamin D | 3-4 months' supply |
| Vitamin B12 | 1+ year supply (used with Intrinsic Factor for absorption in ileum) |
| Iron (Ferritin) | Apoferritin binds excess Fe²⁺ → ferritin; releases when blood iron falls |
| Vitamin K | Needed for synthesis of clotting factors II, VII, IX, X |
| Function | Key Point |
|---|---|
| Bile secretion | Emulsifies fats; excretes bilirubin and cholesterol |
| Bilirubin processing | Conjugates bilirubin → excretes in bile → faeces |
| Glucose buffer | Stores glycogen; gluconeogenesis in fasting |
| Fat metabolism | Beta-oxidation; ketone bodies; lipoprotein synthesis |
| Protein metabolism | Urea synthesis; plasma protein synthesis; deamination |
| Detoxification | CYP450 enzymes; Kupffer cells |
| Storage | Vitamins A, D, B12; iron (ferritin); glycogen |
| Haemopoiesis | Fetal life only |
| Heat production | Major thermogenic organ |
| Liver Dysfunction | Effect |
|---|---|
| ↓ Bile production | Fat malabsorption, steatorrhoea, deficiency of A, D, E, K |
| ↓ Albumin synthesis | Hypoalbuminaemia → peripheral oedema, ascites |
| ↓ Clotting factor synthesis | Bleeding tendency, prolonged PT/INR |
| ↓ Urea synthesis | ↑ Ammonia → hepatic encephalopathy |
| ↓ Bilirubin conjugation | Jaundice |
| ↓ Detoxification | Drug toxicity; hormone excess |
| ↓ Glycogen storage | Hypoglycaemia after meals |
Prepare a clinical exam question bank on liver dysfunction for BPT
~/gi-physiology-bpt/liver_qbank.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.platypus import (
SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle,
HRFlowable, PageBreak, KeepTogether
)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY, TA_RIGHT
OUTPUT = "/home/daytona/workspace/gi-physiology-bpt/Liver_Dysfunction_QBank_BPT.pdf"
doc = SimpleDocTemplate(
OUTPUT, pagesize=A4,
rightMargin=1.8*cm, leftMargin=1.8*cm,
topMargin=2*cm, bottomMargin=2*cm,
title="Liver Dysfunction - Clinical Exam Question Bank BPT KNRUHS",
author="Orris AI"
)
# ── Colours ──────────────────────────────────────────────────────────────────
DARK_RED = colors.HexColor("#7b1c1c")
MED_RED = colors.HexColor("#c0392b")
LIGHT_RED = colors.HexColor("#fdecea")
DARK_BLUE = colors.HexColor("#1a3a5c")
MED_BLUE = colors.HexColor("#2e6da4")
LIGHT_BLUE = colors.HexColor("#dce9f5")
GREEN = colors.HexColor("#1b5e20")
LIGHT_GREEN = colors.HexColor("#e8f5e9")
ORANGE = colors.HexColor("#e65100")
AMBER = colors.HexColor("#fff3e0")
PURPLE = colors.HexColor("#4a148c")
LIGHT_PURP = colors.HexColor("#f3e5f5")
TEAL = colors.HexColor("#004d40")
LIGHT_TEAL = colors.HexColor("#e0f2f1")
GREY_BG = colors.HexColor("#f5f5f5")
WHITE = colors.white
BLACK = colors.black
styles = getSampleStyleSheet()
# ── Custom styles ─────────────────────────────────────────────────────────────
def S(name, **kwargs):
base = kwargs.pop("parent", styles["Normal"])
return ParagraphStyle(name, parent=base, **kwargs)
title_s = S("T", fontSize=20, leading=26, textColor=WHITE, alignment=TA_CENTER,
fontName="Helvetica-Bold", spaceAfter=3)
sub_s = S("Sub", fontSize=10, leading=14, textColor=colors.HexColor("#ffcdd2"),
alignment=TA_CENTER, fontName="Helvetica", spaceAfter=2)
h1_s = S("H1", fontSize=13, leading=17, textColor=WHITE,
fontName="Helvetica-Bold", spaceBefore=2, spaceAfter=2)
h2_s = S("H2", fontSize=11.5, leading=15, textColor=DARK_BLUE,
fontName="Helvetica-Bold", spaceBefore=10, spaceAfter=4)
h3_s = S("H3", fontSize=10.5, leading=14, textColor=MED_RED,
fontName="Helvetica-Bold", spaceBefore=6, spaceAfter=3)
body_s = S("Body", fontSize=9.5, leading=14, textColor=BLACK,
fontName="Helvetica", spaceAfter=3, alignment=TA_JUSTIFY)
bullet_s = S("Bul", fontSize=9.5, leading=13, textColor=BLACK,
fontName="Helvetica", spaceAfter=2, leftIndent=14, bulletIndent=4)
ans_s = S("Ans", fontSize=9.5, leading=14, textColor=colors.HexColor("#1b5e20"),
fontName="Helvetica", spaceAfter=2, leftIndent=14)
note_s = S("Note", fontSize=9, leading=13, textColor=colors.HexColor("#4a148c"),
fontName="Helvetica-Oblique", spaceAfter=3,
leftIndent=8, rightIndent=8, backColor=LIGHT_PURP, borderPad=5)
q_num_s = S("QN", fontSize=10, leading=14, textColor=DARK_BLUE,
fontName="Helvetica-Bold", spaceAfter=2)
case_q_s = S("CQ", fontSize=9.5, leading=14, textColor=TEAL,
fontName="Helvetica-Bold", spaceAfter=2)
mcq_s = S("MCQ", fontSize=9.5, leading=13, textColor=BLACK,
fontName="Helvetica", leftIndent=16, spaceAfter=1)
correct_s = S("Cor", fontSize=9.5, leading=13,
textColor=colors.HexColor("#1b5e20"),
fontName="Helvetica-Bold", leftIndent=16, spaceAfter=1)
# ── Helpers ───────────────────────────────────────────────────────────────────
def sp(h=5): return Spacer(1, h)
def hr(c=None):
return HRFlowable(width="100%", thickness=0.5,
color=c or colors.HexColor("#b0c4de"), spaceAfter=4)
def banner(text, bg=DARK_RED, sub=None):
rows = [[Paragraph(text, h1_s)]]
if sub:
rows.append([Paragraph(sub, S("bs", parent=sub_s, fontSize=9,
textColor=colors.HexColor("#ffcdd2")))])
t = Table(rows, colWidths=[doc.width])
t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), bg),
("TOPPADDING",(0,0),(-1,-1),8),("BOTTOMPADDING",(0,0),(-1,-1),8),
("LEFTPADDING",(0,0),(-1,-1),12),
]))
return t
def h2(txt): return Paragraph(f"<font color='#{MED_BLUE.hexval()[2:]}'>▌</font> {txt}", h2_s)
def h3(txt): return Paragraph(f"◆ {txt}", h3_s)
def body(txt): return Paragraph(txt, body_s)
def bul(txt): return Paragraph(f"• {txt}", bullet_s)
def note(txt): return Paragraph(f"📌 {txt}", note_s)
def q_box(num, question, marks, answer_lines, hint=None, category=""):
"""Single question block with answer."""
cat_colors = {
"SAQ": (MED_BLUE, LIGHT_BLUE),
"LAQ": (DARK_RED, LIGHT_RED),
"MCQ": (TEAL, LIGHT_TEAL),
"VSAQ": (GREEN, LIGHT_GREEN),
"CASE": (PURPLE, LIGHT_PURP),
}
hdr_c, bg_c = cat_colors.get(category, (DARK_BLUE, LIGHT_BLUE))
q_para = Paragraph(f"<b>Q{num}.</b> {question}",
S(f"q{num}", parent=body_s, fontName="Helvetica-Bold",
textColor=DARK_BLUE))
marks_para = Paragraph(f"[{marks}]",
S(f"m{num}", parent=body_s, alignment=TA_RIGHT,
textColor=hdr_c, fontName="Helvetica-Bold"))
hdr_row = Table([[q_para, marks_para]], colWidths=[doc.width - 2.5*cm, 2*cm])
hdr_row.setStyle(TableStyle([
("BACKGROUND",(0,0),(-1,-1), bg_c),
("TOPPADDING",(0,0),(-1,-1),6),("BOTTOMPADDING",(0,0),(-1,-1),6),
("LEFTPADDING",(0,0),(-1,-1),8),
("VALIGN",(0,0),(-1,-1),"MIDDLE"),
("LINEBELOW",(0,0),(-1,-1),0.5,hdr_c),
]))
ans_paras = []
for line in answer_lines:
if line.startswith("•"):
ans_paras.append(Paragraph(line, ans_s))
elif line.startswith("**"):
ans_paras.append(Paragraph(
f"<b>{line.strip('*')}</b>",
S(f"ah{num}", parent=ans_s, fontName="Helvetica-Bold", spaceAfter=1)))
else:
ans_paras.append(Paragraph(line, ans_s))
if hint:
ans_paras.append(Paragraph(f"<i>Examiner's tip: {hint}</i>",
S(f"ht{num}", parent=note_s, fontSize=8.5)))
ans_block = Table([[ans_paras]], colWidths=[doc.width])
ans_block.setStyle(TableStyle([
("BACKGROUND",(0,0),(-1,-1), GREY_BG),
("TOPPADDING",(0,0),(-1,-1),6),("BOTTOMPADDING",(0,0),(-1,-1),6),
("LEFTPADDING",(0,0),(-1,-1),12),
("BOX",(0,0),(-1,-1),0.5,hdr_c),
]))
return KeepTogether([hdr_row, ans_block, sp(8)])
def mcq_block(num, stem, options, correct_idx, explanation):
"""MCQ block: stem + A-D options + answer + explanation."""
letters = ["A", "B", "C", "D", "E"]
paras = [Paragraph(f"<b>Q{num}.</b> {stem}",
S(f"mcqs{num}", parent=body_s, fontName="Helvetica-Bold",
textColor=TEAL))]
for i, opt in enumerate(options):
style = correct_s if i == correct_idx else mcq_s
prefix = "✓ " if i == correct_idx else f" "
paras.append(Paragraph(f"{prefix}({letters[i]}) {opt}", style))
paras.append(sp(3))
paras.append(Paragraph(
f"<b>Answer: ({letters[correct_idx]})</b> — {explanation}",
S(f"me{num}", parent=ans_s, fontName="Helvetica-Bold",
textColor=GREEN, backColor=LIGHT_GREEN, borderPad=4)))
block = Table([[paras]], colWidths=[doc.width])
block.setStyle(TableStyle([
("BACKGROUND",(0,0),(-1,-1), LIGHT_TEAL),
("BOX",(0,0),(-1,-1),0.5, TEAL),
("TOPPADDING",(0,0),(-1,-1),6),("BOTTOMPADDING",(0,0),(-1,-1),6),
("LEFTPADDING",(0,0),(-1,-1),10),
]))
return KeepTogether([block, sp(8)])
def case_block(num, vignette, questions_answers):
"""Clinical case vignette block."""
case_paras = [
Paragraph(f"<b>CLINICAL CASE {num}</b>",
S(f"ch{num}", parent=body_s, fontName="Helvetica-Bold",
textColor=PURPLE, fontSize=10)),
sp(3),
Paragraph(vignette, S(f"cv{num}", parent=body_s, textColor=BLACK)),
sp(4),
]
for qi, (q, a) in enumerate(questions_answers, 1):
case_paras.append(Paragraph(f"<b>({qi}) {q}</b>",
S(f"cq{num}{qi}", parent=body_s,
fontName="Helvetica-Bold", textColor=TEAL)))
case_paras.append(Paragraph(f"Answer: {a}",
S(f"ca{num}{qi}", parent=ans_s)))
case_paras.append(sp(2))
block = Table([[case_paras]], colWidths=[doc.width])
block.setStyle(TableStyle([
("BACKGROUND",(0,0),(-1,-1), LIGHT_PURP),
("BOX",(0,0),(-1,-1),1.5,PURPLE),
("TOPPADDING",(0,0),(-1,-1),8),("BOTTOMPADDING",(0,0),(-1,-1),8),
("LEFTPADDING",(0,0),(-1,-1),12),
]))
return KeepTogether([block, sp(10)])
def make_table(headers, rows, col_widths=None, hdr_bg=MED_BLUE):
n = len(headers)
col_widths = col_widths or [doc.width/n]*n
data = [[Paragraph(f"<b><font color='white'>{h}</font></b>",
S("th", parent=body_s, alignment=TA_CENTER)) for h in headers]]
for i, row in enumerate(rows):
data.append([Paragraph(str(c), S("td", parent=body_s,
backColor=LIGHT_BLUE if i%2==0 else WHITE))
for c in row])
t = Table(data, colWidths=col_widths, repeatRows=1)
t.setStyle(TableStyle([
("BACKGROUND",(0,0),(-1,0),hdr_bg),
("ROWBACKGROUNDS",(0,1),(-1,-1),[LIGHT_BLUE, WHITE]),
("GRID",(0,0),(-1,-1),0.4,colors.HexColor("#90a4ae")),
("TOPPADDING",(0,0),(-1,-1),5),("BOTTOMPADDING",(0,0),(-1,-1),5),
("LEFTPADDING",(0,0),(-1,-1),6),("VALIGN",(0,0),(-1,-1),"MIDDLE"),
]))
return t
# ═══════════════════════════════════════════════════════════════════════════
# BUILD STORY
# ═══════════════════════════════════════════════════════════════════════════
story = []
# ── COVER ─────────────────────────────────────────────────────────────────────
cover = Table([
[Paragraph("LIVER DYSFUNCTION", title_s)],
[Paragraph("Clinical Exam Question Bank", sub_s)],
[Paragraph("BPT 1st Year Physiology | KNRUHS Exam Preparation", sub_s)],
[Paragraph("Essays • Short Notes • MCQs • VSAQs • Clinical Case Vignettes",
S("ct", parent=sub_s, fontSize=9, textColor=colors.HexColor("#ef9a9a")))],
], colWidths=[doc.width])
cover.setStyle(TableStyle([
("BACKGROUND",(0,0),(-1,-1), DARK_RED),
("TOPPADDING",(0,0),(-1,-1),12),("BOTTOMPADDING",(0,0),(-1,-1),12),
("LEFTPADDING",(0,0),(-1,-1),20),("RIGHTPADDING",(0,0),(-1,-1),20),
("BOX",(0,0),(-1,-1),2.5,ORANGE),
]))
story += [cover, sp(10)]
story.append(note("KNRUHS BPT Pattern: Long Essays 10 marks | Short Notes 5 marks | "
"VSAQs 2 marks | MCQs in some papers. "
"Topics covered: Jaundice, Cirrhosis, Portal Hypertension, "
"Hepatic Encephalopathy, Liver Function Tests, Liver Failure."))
story.append(sp(10))
# ═══════════════════════════════════════════════════════════════════════════
# SECTION 1: LONG ESSAYS
# ═══════════════════════════════════════════════════════════════════════════
story += [banner("SECTION 1: LONG ESSAY QUESTIONS (10 Marks)", DARK_RED), sp(8)]
story.append(q_box(1,
"Describe the types of jaundice. Explain the differences in their clinical features, "
"biochemical findings, and urine/stool changes. Add a note on physiotherapy considerations.",
"10 marks", [
"**DEFINITION:**",
"• Jaundice = yellowish discolouration of skin, sclera, mucous membranes due to ↑ bilirubin (>2.5–3 mg/dL)",
"**TYPE 1 — PRE-HEPATIC (HAEMOLYTIC) JAUNDICE:**",
"• Cause: Excessive breakdown of RBCs (malaria, sickle cell anaemia, mismatched blood transfusion)",
"• Bilirubin: ↑ Unconjugated (indirect) bilirubin",
"• Urine: Normal colour (no bilirubin in urine — unconjugated is protein-bound, not filtered)",
"• Stool: Dark (excess urobilinogen/stercobilin)",
"• LFTs: Normal AST/ALT; ↑ LDH; anaemia present",
"**TYPE 2 — HEPATIC (HEPATOCELLULAR) JAUNDICE:**",
"• Cause: Liver cell damage — viral hepatitis, alcoholic liver disease, cirrhosis, drug toxicity",
"• Bilirubin: Both unconjugated AND conjugated elevated",
"• Urine: Dark (conjugated bilirubin spills into urine); urobilinogen also present",
"• Stool: Pale (less bile reaching gut)",
"• LFTs: ↑↑ AST, ALT; ↑ PT/INR; ↓ Albumin",
"**TYPE 3 — POST-HEPATIC (OBSTRUCTIVE) JAUNDICE:**",
"• Cause: Blockage of bile duct — gallstones, carcinoma head of pancreas, cholangiocarcinoma",
"• Bilirubin: ↑ Conjugated (direct) bilirubin",
"• Urine: Dark ('cola-coloured') — conjugated bilirubin excreted in urine",
"• Stool: Clay-coloured / pale — no bile reaching intestine → no stercobilin",
"• LFTs: ↑ Alkaline phosphatase, GGT; ↑↑ Bilirubin; normal/mild AST/ALT rise",
"• Pruritus (itch) due to bile salt deposition in skin",
"**PHYSIOTHERAPY CONSIDERATIONS:**",
"• Patients with obstructive jaundice have fat malabsorption → ↓ Vitamin K → bleeding risk",
"• Hepatic encephalopathy patients need cognitive assessment before PT",
"• Fatigue, muscle wasting common in chronic liver disease — affects rehabilitation",
], hint="Table comparing all 3 types always fetches full marks. Learn urine/stool changes by heart.",
category="LAQ"))
story.append(q_box(2,
"Describe the pathophysiology of portal hypertension. Enumerate its complications "
"and explain how each arises. Add a note on ascites.",
"10 marks", [
"**DEFINITION:**",
"• Portal hypertension = sustained increase in portal venous pressure (>10–12 mmHg; normal 5–10 mmHg)",
"**CAUSES:**",
"• Pre-hepatic: Portal vein thrombosis, splenic vein thrombosis",
"• Hepatic (most common): Cirrhosis (↑ intrahepatic resistance due to fibrosis + vasoconstriction)",
"• Post-hepatic: Budd-Chiari syndrome, right heart failure",
"**PATHOPHYSIOLOGY:**",
"• Cirrhosis → ↑ intrahepatic vascular resistance → ↑ portal pressure",
"• Splanchnic vasodilation (from ↑ NO) → ↑ portal blood inflow → maintains hypertension",
"• Portosystemic collaterals develop to bypass obstructed portal system",
"**COMPLICATIONS (and mechanism):**",
"• 1. VARICES — dilated portosystemic collaterals at oesophagus, stomach, rectum, umbilicus",
" Oesophageal varices → rupture → haematemesis (life-threatening; 30% mortality/bleed)",
"• 2. ASCITES — ↑ portal pressure + ↓ albumin (↓ oncotic pressure) + ↑ aldosterone → Na⁺/water retention",
" Fluid accumulates in peritoneal cavity; can become infected (Spontaneous Bacterial Peritonitis)",
"• 3. SPLENOMEGALY → Hypersplenism → ↓ platelets (thrombocytopenia), ↓ WBC, ↓ RBC",
"• 4. HEPATIC ENCEPHALOPATHY — portosystemic shunting bypasses liver → ↑ ammonia reaches brain",
"• 5. CAPUT MEDUSAE — dilated periumbilical veins radiating from umbilicus (classic sign)",
"• 6. HEPATORENAL SYNDROME — renal vasoconstriction from systemic vasodilation → acute renal failure",
"• 7. PORTOPULMONARY HYPERTENSION — portal hypertension → pulmonary vasoconstriction",
"**ASCITES — NOTE:**",
"• Mechanism: ↑ Portal pressure + ↓ Plasma oncotic pressure (↓ albumin) + ↑ Renal Na⁺ retention (RAAS)",
"• SAAG (Serum-Ascites Albumin Gradient) ≥1.1 g/dL = portal hypertension cause",
"• Management: Na⁺ restriction, diuretics (spironolactone + furosemide), paracentesis",
], hint="Draw a flowchart: Cirrhosis → Portal HTN → Varices / Ascites / Encephalopathy.",
category="LAQ"))
story.append(q_box(3,
"Write an essay on liver function tests. Explain what each test measures and "
"the clinical significance of abnormal values.",
"10 marks", [
"**DEFINITION:** LFTs = group of blood tests evaluating hepatocellular damage, synthetic function, and cholestasis.",
"**I. MARKERS OF HEPATOCELLULAR INJURY:**",
"• AST (Aspartate Aminotransferase / SGOT): Found in liver, heart, skeletal muscle, kidney",
" Normal: 10–40 U/L. Elevated in: viral hepatitis, alcoholic liver disease, MI, myopathy",
"• ALT (Alanine Aminotransferase / SGPT): More liver-specific than AST",
" Normal: 7–56 U/L. Elevated in: viral hepatitis, drug toxicity, fatty liver",
" AST:ALT ratio >2:1 = strongly suggests ALCOHOLIC liver disease",
"• Elevated to thousands: ischaemic hepatitis, paracetamol (acetaminophen) overdose, fulminant hepatitis",
"**II. MARKERS OF CHOLESTASIS (BILE FLOW OBSTRUCTION):**",
"• Alkaline Phosphatase (ALP): Normal 44–147 U/L",
" ↑ in obstructive jaundice, primary biliary cirrhosis, bone disease (non-specific)",
"• GGT (Gamma-glutamyltranspeptidase): Most sensitive marker of alcohol misuse",
" ↑ with alcohol, cholestasis, liver tumours",
"• Bilirubin (Total, Direct, Indirect): Differentiates type of jaundice (see Q1)",
"**III. MARKERS OF SYNTHETIC FUNCTION (true liver function):**",
"• Serum Albumin: Normal 3.5–5 g/dL; half-life 15–20 days",
" ↓ in chronic liver disease → oedema, ascites. Not useful for ACUTE liver failure.",
"• Prothrombin Time (PT) / INR: Most sensitive marker of ACUTE liver failure",
" ↑ PT/INR = ↓ synthesis of clotting factors II, V, VII, IX, X (Vitamin K dependent)",
"• PT does NOT correct with Vitamin K in hepatocellular disease (confirms liver, not Vit K, is the problem)",
"**IV. OTHER TESTS:**",
"• Serum Ammonia: ↑ in hepatic encephalopathy",
"• LDH: Elevated in haemolysis (pre-hepatic jaundice)",
"• Serum proteins (total): ↓ globulins can indicate immune dysfunction",
"**SUMMARY TABLE:**",
"• Hepatocellular: ↑↑ AST/ALT, ↑ PT, ↓ Albumin",
"• Cholestatic/Obstructive: ↑↑ ALP, GGT, ↑ Direct bilirubin",
"• Haemolytic: ↑ Indirect bilirubin, ↑ LDH, Normal ALP/AST",
], hint="PT/INR is the most important marker of acute hepatic synthetic failure — always mention this.",
category="LAQ"))
# ═══════════════════════════════════════════════════════════════════════════
# SECTION 2: SHORT NOTES
# ═══════════════════════════════════════════════════════════════════════════
story += [PageBreak(), banner("SECTION 2: SHORT NOTE QUESTIONS (5 Marks)", MED_RED), sp(8)]
story.append(q_box(4,
"Write a short note on Hepatic Encephalopathy.",
"5 marks", [
"• Hepatic encephalopathy (HE) = neuropsychiatric dysfunction due to liver failure",
"• Primary mechanism: ↑ Ammonia (NH₃) in blood → crosses blood-brain barrier → alters cerebral metabolism",
"**Causes / Precipitants:**",
"• Cirrhosis with portosystemic shunting (bypasses liver → ammonia not cleared)",
"• Precipitants: GI bleeding (↑ ammonia from gut bacteria), infection, hypokalemia, dehydration, sedatives",
"**Grades of HE (West Haven Criteria):**",
"• Grade 1: Mild confusion, altered sleep, impaired attention",
"• Grade 2: Lethargy, disorientation, asterixis (liver flap — coarse tremor on wrist extension)",
"• Grade 3: Somnolence, gross disorientation, incomprehensible speech",
"• Grade 4: Coma (hepatic coma)",
"**Key Sign: Asterixis (Liver Flap)** — best elicited by asking patient to extend wrists",
"**Management:**",
"• Identify and treat precipitating cause",
"• Lactulose (30–60 g/day) — acidifies colon → traps NH₃ as NH₄⁺, reduces absorption",
"• Rifaximin — non-absorbable antibiotic reduces gut ammonia-producing bacteria",
"• Dietary: Branched-chain amino acids (BCAA) supplementation; restrict protein temporarily",
"**Physiotherapy Note:** Cognitive assessment mandatory; fall risk ↑; avoid exercise during acute HE",
], category="SAQ"))
story.append(q_box(5,
"Write a short note on Cirrhosis of the Liver.",
"5 marks", [
"• Cirrhosis = diffuse fibrosis + replacement of normal liver architecture by regenerative nodules",
"**Causes:**",
"• Alcohol (most common in developed world)",
"• Viral hepatitis (HBV, HCV — most common globally)",
"• Non-alcoholic fatty liver disease (NAFLD)",
"• Autoimmune hepatitis, Wilson's disease, haemochromatosis, primary biliary cirrhosis",
"**Pathology:**",
"• Chronic hepatocyte injury → inflammation → stellate cell activation → collagen deposition (fibrosis)",
"• Fibrosis + nodule formation → distorted vascular architecture → portal hypertension",
"**Clinical Features:**",
"• Compensated: Fatigue, anorexia, mild hepatomegaly — may be asymptomatic",
"• Decompensated: Jaundice, ascites, variceal bleeding, encephalopathy, coagulopathy",
"• Spider naevi, palmar erythema, gynaecomastia, caput medusae, splenomegaly",
"**Investigations:**",
"• ↑ PT/INR, ↓ Albumin, ↑ Bilirubin, ↑ AST/ALT (may be normal in end-stage)",
"• Ultrasound: Nodular liver, splenomegaly, ascites",
"• Liver biopsy: Gold standard for diagnosis",
"**Child-Pugh Score:** Classifies severity using bilirubin, albumin, PT, ascites, encephalopathy",
], category="SAQ"))
story.append(q_box(6,
"Write a short note on Ascites — its mechanism, clinical features and relevance to physiotherapy.",
"5 marks", [
"• Ascites = abnormal accumulation of fluid in the peritoneal cavity (>25 mL detectable on imaging)",
"**Mechanism in Portal Hypertension:**",
"• ↑ Portal pressure → ↑ hydrostatic pressure in splanchnic capillaries → fluid transudation",
"• ↓ Albumin (liver failure) → ↓ plasma oncotic pressure → fluid leaks out of vessels",
"• Splanchnic vasodilation → RAAS activation → Na⁺ and water retention → fluid accumulation",
"**Clinical Features:**",
"• Abdominal distension; shifting dullness; fluid thrill (in tense ascites)",
"• Ankle oedema, eversion of umbilicus, hernias, dyspnoea (from diaphragm elevation)",
"**Investigations:**",
"• Diagnostic paracentesis: Ascitic fluid analysis — SAAG ≥1.1 g/dL confirms portal hypertension",
"• If ascitic neutrophils >250/mm³ → Spontaneous Bacterial Peritonitis (SBP)",
"**Management:**",
"• Sodium restriction (<2 g/day)",
"• Diuretics: Spironolactone (first-line; aldosterone antagonist) + Furosemide",
"• Large-volume paracentesis for tense ascites + albumin infusion",
"**Physiotherapy Relevance:**",
"• Tense ascites → ↓ diaphragm excursion → respiratory compromise",
"• Breathing exercises (diaphragmatic) important post-paracentesis",
"• Mobility impaired → DVT risk ↑; graduated mobilisation required",
], category="SAQ"))
story.append(q_box(7,
"Write a short note on Oesophageal Varices and their management.",
"5 marks", [
"• Oesophageal varices = dilated submucosal veins in the lower oesophagus due to portal hypertension",
"**Mechanism of Formation:**",
"• Portal HTN → blood diverted via coronary (left gastric) vein → oesophageal submucosal veins → dilate",
"• Threshold portal pressure for variceal formation: HVPG (hepatic venous pressure gradient) >10–12 mmHg",
"**Clinical Features:**",
"• Asymptomatic until rupture",
"• Rupture → massive haematemesis (vomiting blood), melaena — life-threatening emergency",
"• Precipitated by: ↑ intra-abdominal pressure (straining, vomiting), alcohol, NSAIDs",
"**Management:**",
"• Acute bleed: IV access, resuscitation, blood transfusion, octreotide/somatostatin (↓ portal flow)",
"• Endoscopic band ligation (gold standard for treatment)",
"• Sclerotherapy (injection of sclerosant agent)",
"• Balloon tamponade (Sengstaken-Blakemore tube) — temporary measure",
"• TIPS (Transjugular Intrahepatic Portosystemic Shunt) — decompresses portal system",
"• Prevention: Non-selective beta-blockers (propranolol, nadolol) ↓ portal pressure",
"**Physiotherapy Note:** Avoid Valsalva, heavy lifting, straining in patients with known varices",
], category="SAQ"))
story.append(q_box(8,
"Write a short note on Hepatorenal Syndrome (HRS).",
"5 marks", [
"• HRS = acute functional renal failure in patients with severe liver disease / portal hypertension",
"• Kidneys are structurally normal — dysfunction is FUNCTIONAL (reversible with liver transplant)",
"**Mechanism:**",
"• Splanchnic vasodilation (↑ NO) → ↓ effective arterial blood volume",
"• Activation of RAAS + SNS + ADH → intense RENAL vasoconstriction → ↓ GFR → renal failure",
"**Types:**",
"• HRS Type 1: Rapid deterioration — creatinine doubles to >2.5 mg/dL in <2 weeks; poor prognosis",
"• HRS Type 2: Gradual decline; associated with diuretic-resistant ascites",
"**Diagnostic Criteria:**",
"• Cirrhosis + ascites; ↑ serum creatinine; no hypovolaemia or nephrotoxic drugs; no improvement with fluid",
"• Urine Na⁺ <10 mmol/L (distinguishes from other causes)",
"**Management:**",
"• Terlipressin + Albumin infusion (vasopressin analogue reduces splanchnic vasodilation)",
"• Liver transplantation = definitive treatment",
"• Haemodialysis as bridge",
], category="SAQ"))
story.append(q_box(9,
"Write a short note on Spontaneous Bacterial Peritonitis (SBP).",
"5 marks", [
"• SBP = infection of ascitic fluid without an obvious source (e.g. perforation)",
"• Common organisms: E. coli, Klebsiella, Streptococcus pneumoniae",
"**Mechanism:** Gut bacterial translocation through ↑ intestinal permeability in cirrhosis → infects ascites",
"**Clinical Features:**",
"• Fever, abdominal pain/tenderness, worsening hepatic encephalopathy",
"• May be clinically subtle — high index of suspicion required",
"**Diagnosis:**",
"• Diagnostic paracentesis: Ascitic polymorphonuclear (PMN) count >250 cells/mm³ = SBP",
"• Culture of ascitic fluid (often negative — low inoculum)",
"**Treatment:**",
"• IV cefotaxime 2g every 8 hours × 5 days + IV albumin infusion (prevents HRS)",
"**Prophylaxis:** Norfloxacin/ciprofloxacin in patients with prior SBP or low ascitic protein (<1 g/dL)",
], category="SAQ"))
# ═══════════════════════════════════════════════════════════════════════════
# SECTION 3: VSAQ
# ═══════════════════════════════════════════════════════════════════════════
story += [PageBreak(), banner("SECTION 3: VERY SHORT ANSWER QUESTIONS (2 Marks)", DARK_BLUE), sp(8)]
vsaqs = [
("What is jaundice? When does it become clinically visible?",
"Yellowish discolouration of skin/sclera due to ↑ bilirubin. "
"Clinically visible when serum bilirubin >2.5–3 mg/dL (normal <1 mg/dL)."),
("What is the most sensitive marker of ACUTE liver synthetic failure?",
"Prothrombin time (PT) / INR — reflects ↓ synthesis of clotting factors "
"(half-life hours); more sensitive than albumin (half-life 20 days)."),
("Why is the stool clay-coloured in obstructive jaundice?",
"Bile cannot reach the intestine due to duct obstruction → no bilirubin → "
"no stercobilin (brown pigment) formed → pale/clay-coloured stools."),
("What is asterixis? What does it indicate?",
"Coarse flapping tremor of outstretched wrists ('liver flap'). "
"Indicates hepatic encephalopathy (↑ ammonia → altered brain function)."),
("What is the role of lactulose in hepatic encephalopathy?",
"Lactulose acidifies the colon → converts NH₃ (ammonia) to NH₄⁺ (ammonium) "
"which is not absorbed → reduces blood ammonia levels."),
("Name two causes of ↑ unconjugated bilirubin.",
"1. Haemolytic anaemia (excess RBC breakdown). "
"2. Gilbert's syndrome (↓ UDP-glucuronyl transferase activity)."),
("What is the SAAG and what value indicates portal hypertension?",
"SAAG = Serum-Ascites Albumin Gradient = serum albumin − ascitic albumin. "
"SAAG ≥1.1 g/dL = portal hypertension cause of ascites."),
("Which enzyme is more specific for liver disease — AST or ALT? Why?",
"ALT (Alanine Aminotransferase) — it is found predominantly in liver cells. "
"AST is also found in cardiac muscle, skeletal muscle, kidneys — less specific."),
("What does an AST:ALT ratio >2:1 suggest?",
"Alcoholic liver disease (alcoholic hepatitis). "
"In viral hepatitis, ALT usually exceeds AST."),
("What is caput medusae?",
"Dilated, tortuous periumbilical veins radiating from the umbilicus, "
"resembling Medusa's snakes. Sign of portal hypertension (portosystemic collaterals)."),
("Why do patients with cirrhosis develop oedema and ascites?",
"↓ Albumin synthesis by damaged liver → ↓ plasma oncotic pressure "
"+ ↑ portal pressure → fluid shifts out of vessels into tissue and peritoneum."),
("What is the most common cause of hepatic encephalopathy precipitation in cirrhosis?",
"Gastrointestinal bleeding — blood in gut is metabolised by bacteria → ↑ ammonia production "
"→ overwhelms shunted liver → encephalopathy."),
("What is the Child-Pugh score used for?",
"Assesses severity of cirrhosis and operative mortality risk. "
"Parameters: Bilirubin, Albumin, PT, Ascites, Encephalopathy. Classes A/B/C."),
("What is Spider Naevi? What level of findings suggests liver disease?",
"Dilated cutaneous arterioles with radiating legs, blanch on pressure. "
">5 spider naevi = clinically significant; due to ↑ oestrogens in chronic liver disease."),
("What is the physiotherapy significance of raised PT/INR in liver disease?",
"↑ PT/INR = ↓ clotting factors → ↑ bleeding risk. "
"Physiotherapists must avoid invasive procedures, monitor for bruising/haematomas during therapy."),
]
vsaq_table_data = [[
Paragraph(f"<b>Q{i+10}. {q}</b>", S(f"vq{i}", parent=body_s, fontName="Helvetica-Bold", textColor=DARK_BLUE)),
Paragraph(f"✔ {a}", S(f"va{i}", parent=ans_s, textColor=GREEN)),
] for i, (q, a) in enumerate(vsaqs)]
vsaq_tbl = Table(vsaq_table_data, colWidths=[8*cm, 8.5*cm], repeatRows=0)
vsaq_tbl.setStyle(TableStyle([
("ROWBACKGROUNDS",(0,0),(-1,-1),[LIGHT_BLUE, GREY_BG]),
("GRID",(0,0),(-1,-1),0.3,colors.HexColor("#90a4ae")),
("TOPPADDING",(0,0),(-1,-1),6),("BOTTOMPADDING",(0,0),(-1,-1),6),
("LEFTPADDING",(0,0),(-1,-1),7),("VALIGN",(0,0),(-1,-1),"TOP"),
]))
story += [vsaq_tbl, sp(10)]
# ═══════════════════════════════════════════════════════════════════════════
# SECTION 4: MCQs
# ═══════════════════════════════════════════════════════════════════════════
story += [PageBreak(), banner("SECTION 4: MULTIPLE CHOICE QUESTIONS", TEAL), sp(8)]
mcqs = [
("A patient presents with dark urine, pale stools, pruritus, and jaundice. "
"Which type of jaundice is most likely?",
["Pre-hepatic (haemolytic)", "Hepatic (hepatocellular)",
"Post-hepatic (obstructive)", "Neonatal jaundice"],
2,
"Obstructive jaundice — conjugated bilirubin spills into urine (dark urine), "
"no bile reaches gut (pale stools), bile salts in skin cause pruritus."),
("In alcoholic liver disease, which enzyme ratio is characteristically elevated?",
["ALT:AST ratio >2:1", "AST:ALT ratio >2:1",
"ALP:GGT ratio >2:1", "GGT:ALT ratio >2:1"],
1,
"AST:ALT >2:1 in alcoholic liver disease. "
"In viral hepatitis, ALT tends to be higher than AST."),
("Which is the MOST SENSITIVE test for ACUTE hepatic synthetic failure?",
["Serum albumin", "ALT levels",
"Prothrombin time (PT) / INR", "Serum bilirubin"],
2,
"PT/INR reflects synthesis of short-lived clotting factors. "
"Albumin has a 15–20 day half-life so it is not useful for acute failure."),
("Hepatic encephalopathy is primarily caused by accumulation of which substance?",
["Bilirubin", "Urea",
"Ammonia (NH₃)", "Bile acids"],
2,
"Ammonia — produced from amino acid deamination and gut bacteria. "
"Liver failure → ammonia not converted to urea → crosses BBB → cerebral dysfunction."),
("A patient with cirrhosis develops acute kidney injury with urine Na⁺ <10 mmol/L "
"and no response to fluid challenge. What is the diagnosis?",
["Acute tubular necrosis", "Hepatorenal syndrome",
"Prerenal AKI", "Glomerulonephritis"],
1,
"Hepatorenal syndrome — functional renal failure in cirrhosis. "
"Kidneys are structurally normal; key clue is urine Na⁺ <10 and no fluid response."),
("Which investigation finding confirms Spontaneous Bacterial Peritonitis (SBP)?",
["Ascitic fluid protein >2.5 g/dL", "Ascitic PMN count >250 cells/mm³",
"Positive blood culture", "Ascitic pH <7.0"],
1,
"Ascitic PMN count >250 cells/mm³ is the diagnostic criterion for SBP, "
"regardless of culture results."),
("Asterixis (liver flap) is characteristically seen in which condition?",
["Obstructive jaundice", "Haemolytic jaundice",
"Hepatic encephalopathy", "Cholecystitis"],
2,
"Asterixis = coarse flapping tremor of wrists in Grade 2+ hepatic encephalopathy. "
"Due to ↑ ammonia causing impaired inhibitory motor control."),
("Which vitamin deficiency is most likely in obstructive jaundice and why?",
["Vitamin C — poor absorption in acidic environment",
"Vitamin B12 — intrinsic factor loss",
"Vitamin K — fat malabsorption due to absent bile",
"Vitamin B1 — associated with alcohol use"],
2,
"Vitamin K is fat-soluble — requires bile salts for absorption. "
"In obstructive jaundice, bile cannot reach gut → Vit K malabsorption "
"→ ↓ clotting factors II, VII, IX, X → ↑ bleeding time."),
]
for i, (stem, opts, correct, expl) in enumerate(mcqs):
story.append(mcq_block(i+25, stem, opts, correct, expl))
# ═══════════════════════════════════════════════════════════════════════════
# SECTION 5: CLINICAL CASE VIGNETTES
# ═══════════════════════════════════════════════════════════════════════════
story += [PageBreak(), banner("SECTION 5: CLINICAL CASE VIGNETTES", PURPLE), sp(8)]
story.append(note("Case vignettes test applied clinical reasoning. "
"For BPT exams, focus on linking the physiology to the clinical signs and physiotherapy implications."))
story.append(sp(8))
story.append(case_block(1,
"A 52-year-old male chronic alcoholic presents with abdominal distension, yellowish eyes, "
"swollen ankles, and confusion. On examination: jaundice, spider naevi on chest, "
"shifting dullness on abdomen, asterixis (flapping tremor). "
"Lab reports: ALT 98 U/L, AST 210 U/L, Albumin 2.1 g/dL, PT 22 sec (INR 2.1), "
"Bilirubin 4.8 mg/dL, Ammonia 140 µmol/L.",
[
("What is the most likely diagnosis?",
"Decompensated alcoholic cirrhosis with portal hypertension, ascites, and hepatic encephalopathy."),
("Interpret the AST:ALT ratio and its significance.",
"AST:ALT = 210:98 ≈ 2.1:1 — ratio >2:1 is characteristic of ALCOHOLIC liver disease. "
"AST elevation predominates due to mitochondrial damage from alcohol."),
("Explain why this patient has ascites and oedema.",
"↑ Portal pressure (cirrhosis → fibrosis) + ↓ Albumin 2.1 g/dL (↓ oncotic pressure) "
"+ RAAS activation (Na⁺/water retention) → ascites. ↓ Albumin → peripheral oedema."),
("What is causing the confusion (asterixis)?",
"Hepatic encephalopathy — portosystemic shunting bypasses liver → ammonia (140 µmol/L) "
"reaches brain → impaired cerebral metabolism. Asterixis = Grade 2 HE."),
("What are the physiotherapy considerations for this patient?",
"1) Cognitive assessment before PT — Grade 2 HE may affect compliance. "
"2) Fall risk ↑ — asterixis, confusion. "
"3) Tense ascites → ↓ diaphragm excursion → breathing exercises essential. "
"4) ↑ INR 2.1 → bleeding precautions, avoid aggressive joint mobilisation. "
"5) Muscle wasting (low albumin) → gentle progressive strengthening."),
]
))
story.append(case_block(2,
"A 35-year-old woman presents with sudden onset of massive haematemesis (vomiting blood). "
"She has known chronic hepatitis C. Examination: BP 88/60 mmHg, HR 122/min, "
"abdomen shows splenomegaly and dilated periumbilical veins. "
"Upper endoscopy shows large varices at the gastro-oesophageal junction.",
[
("What is the diagnosis and what caused the bleeding?",
"Ruptured oesophageal varices due to portal hypertension from HCV-induced cirrhosis. "
"Portal pressure >12 mmHg threshold → varices → rupture on straining/Valsalva."),
("Explain the significance of dilated periumbilical veins.",
"Caput medusae — portosystemic collaterals forming via paraumbilical veins to drain "
"the obstructed portal system. Classic sign of portal hypertension."),
("What immediate management is required?",
"IV access + resuscitation. Octreotide/terlipressin (↓ portal blood flow). "
"Urgent endoscopic band ligation (gold standard). Blood transfusion (target Hb 7–8 g/dL). "
"IV ceftriaxone (prophylaxis against SBP in variceal bleed)."),
("What physiotherapy precautions are needed?",
"Strict avoidance of Valsalva manoeuvre, heavy lifting, straining. "
"No resistive exercises until varices treated. Breathing exercises should be diaphragmatic "
"(not forced expiration against resistance). Monitor vitals closely during any activity."),
]
))
story.append(case_block(3,
"A 28-year-old woman is 32 weeks pregnant. She presents with jaundice, pruritus (severe itching), "
"and dark urine. She has no fever. LFTs show: ALP 450 U/L (elevated), GGT 89 U/L, "
"Bilirubin (Direct) 4.2 mg/dL. ALT mildly elevated at 65 U/L. Ultrasound: normal liver.",
[
("What type of jaundice is this likely to be?",
"Post-hepatic / Cholestatic jaundice — elevated direct bilirubin, ↑↑ ALP, GGT, "
"dark urine, pruritus. In pregnancy context — likely Intrahepatic Cholestasis of Pregnancy (ICP) "
"or gallstone obstruction."),
("Why does the patient have pruritus?",
"Bile salt accumulation in the skin (due to cholestasis → bile cannot flow → bile salts "
"deposit in dermis → stimulate itch receptors → pruritus)."),
("What is the significance of ALP elevation in this context?",
"ALP is elevated in both obstructive liver disease AND normal pregnancy (placental ALP). "
"GGT elevation helps confirm hepatic origin of ALP rise."),
("What vitamin deficiency risk exists and why?",
"Vitamin K deficiency — cholestasis → no bile in gut → fat-soluble vitamins (A,D,E,K) "
"not absorbed → ↑ PT/INR → bleeding risk for mother and neonate."),
]
))
# ═══════════════════════════════════════════════════════════════════════════
# QUICK REFERENCE TABLE
# ═══════════════════════════════════════════════════════════════════════════
story += [PageBreak(), banner("QUICK REFERENCE: LIVER DYSFUNCTION AT A GLANCE", DARK_BLUE), sp(8)]
story.append(h2("Jaundice — Differential Summary"))
story.append(make_table(
["Parameter","Pre-hepatic","Hepatic","Post-hepatic"],
[
["Cause","Haemolysis","Hepatitis / Cirrhosis","Bile duct obstruction"],
["Bilirubin (type)","↑ Unconjugated","Both ↑","↑ Conjugated"],
["Urine colour","Normal","Dark","Dark ('cola')"],
["Stool colour","Dark","Pale","Clay-coloured (pale)"],
["Urine bilirubin","Absent","Present","Present"],
["Urobilinogen (urine)","↑↑","↑ or ↓","Absent"],
["ALP","Normal","Mild ↑","↑↑ (markedly)"],
["AST / ALT","Normal","↑↑","Normal / mild ↑"],
["Pruritus","Absent","Sometimes","Present (severe)"],
["LDH","↑↑","Normal / mild ↑","Normal"],
],
col_widths=[4.5*cm, 4*cm, 4*cm, 4*cm]
))
story.append(sp(8))
story.append(h2("Complications of Cirrhosis — Quick Recall"))
story.append(make_table(
["Complication","Mechanism","Key Feature"],
[
["Ascites","Portal HTN + ↓ albumin + RAAS","Shifting dullness; SAAG ≥1.1"],
["Oesophageal varices","Portal HTN → portosystemic shunts","Haematemesis; band ligation"],
["Hepatic encephalopathy","↑ Ammonia from gut/shunting","Asterixis; lactulose Rx"],
["Splenomegaly / Hypersplenism","Portal HTN → spleen congestion","↓ Platelets, WBC, RBC"],
["SBP","Bacterial translocation into ascites","PMN >250/mm³; cefotaxime"],
["Hepatorenal syndrome","Renal vasoconstriction","Urine Na⁺ <10; terlipressin"],
["Caput medusae","Paraumbilical vein collaterals","Periumbilical venous pattern"],
["Coagulopathy","↓ Clotting factor synthesis","↑ PT/INR; bleeding risk"],
["Hypoalbuminaemia","↓ Albumin synthesis","Oedema, ascites"],
["Jaundice","↓ Bilirubin conjugation/excretion","Yellow sclera/skin"],
],
col_widths=[4.5*cm, 6*cm, 6*cm]
))
story.append(sp(8))
story.append(h2("Liver Function Tests — Summary"))
story.append(make_table(
["Test","Normal","What It Measures","Elevated In"],
[
["ALT (SGPT)","7–56 U/L","Hepatocyte injury (liver-specific)","Viral hepatitis, NAFLD, drug toxicity"],
["AST (SGOT)","10–40 U/L","Hepatocyte injury (less specific)","Liver disease + cardiac/skeletal muscle"],
["ALP","44–147 U/L","Cholestasis / bile duct obstruction","Obstructive jaundice, bone disease"],
["GGT","9–48 U/L","Cholestasis; alcohol use","Alcoholism, cholestasis, liver tumour"],
["Bilirubin (Total)","0.2–1.2 mg/dL","Bilirubin metabolism","Jaundice (all types)"],
["Albumin","3.5–5 g/dL","Liver synthetic function (chronic)","↓ in cirrhosis, malnutrition"],
["PT / INR","11–13 sec / <1.1","Liver synthetic function (ACUTE)","Acute liver failure, obstructive jaundice"],
["Ammonia","15–45 µmol/L","Urea cycle function","Hepatic encephalopathy"],
],
col_widths=[3.2*cm, 3*cm, 5*cm, 5.3*cm]
))
story.append(sp(10))
# Footer
footer = Table([[
Paragraph("Liver Dysfunction Clinical Question Bank | BPT 1st Year | KNRUHS Exam | "
"Sources: Schwartz's Surgery, Goldman-Cecil Medicine, Rosen's Emergency Medicine, "
"Costanzo Physiology | Generated by Orris AI",
S("foot", parent=body_s, fontSize=7.5, textColor=colors.grey, alignment=TA_CENTER))
]], colWidths=[doc.width])
footer.setStyle(TableStyle([
("TOPPADDING",(0,0),(-1,-1),8),
("LINEABOVE",(0,0),(-1,-1),0.5,colors.HexColor("#b0bec5")),
]))
story.append(footer)
doc.build(story)
print(f"PDF created: {OUTPUT}")
cd /home/daytona/workspace/gi-physiology-bpt && python liver_qbank.py
ls -lh /home/daytona/workspace/gi-physiology-bpt/Liver_Dysfunction_QBank_BPT.pdf
Liver Dysfunction QBank BPT
PDF Document · PDF
| Section | Content | Count |
|---|---|---|
| Section 1 | Long Essay Questions (10 marks) with full model answers | 3 essays |
| Section 2 | Short Note Questions (5 marks) with detailed answers | 6 short notes |
| Section 3 | VSAQs (2 marks) with concise answers | 15 questions |
| Section 4 | MCQs with 4 options, correct answer highlighted + explanation | 8 MCQs |
| Section 5 | Clinical Case Vignettes with scenario-based Q&A | 3 cases |
| Quick Ref | Jaundice differential table, Cirrhosis complications, LFT summary | 3 tables |
Stomach movements according to Sembulingm for bpt to knrush university exam
Exam pattern note: This topic appears as:
- Short Note (5 marks): "Write a short note on movements of the stomach"
- Short Note (5 marks): "Gastric emptying and its regulation"
- VSAQ (2 marks): "What is receptive relaxation?", "What is retropulsion?"
- Essay component: Often asked as part of a 10-mark essay on gastric juice or GI motility
| Region | Area | Wall | Function |
|---|---|---|---|
| Orad (proximal) region | Fundus + upper body | Thin walled | Storage — receives food |
| Caudad (distal) region | Lower body + antrum | Thick walled | Mixing & propulsion — churns and empties |
Gastric pacemaker (greater curvature)
↓ wave travels distally
Mid-body → Antrum → Pylorus
| Action | What happens | Result |
|---|---|---|
| Propulsion | Wave pushes contents toward pylorus | Small amount of chyme enters duodenum |
| Retropulsion | Pylorus closes just before wave arrives | Most contents thrown BACK into stomach |
| Stimulants | Inhibitors |
|---|---|
| Parasympathetic (vagus / ACh) | Sympathetic |
| Gastrin | Secretin |
| Motilin | CCK (inhibits gastric emptying) |
| Distension | GIP (gastric inhibitory peptide) |
Note: Slow waves (BER) set the FREQUENCY (3/min) — neural/hormonal input changes the FORCE and whether action potentials occur, not the frequency.
Water > Isotonic fluids > Hypertonic fluids > Carbohydrates > Proteins > Fats (slowest)
| Factor | Mechanism |
|---|---|
| Large food volume in stomach | ↑ Gastric distension → ↑ peristalsis |
| Gastrin | ↑ Gastric motility + relaxes pylorus |
| Motilin | ↑ Gastric contractions (fasting) |
| Parasympathetic (vagus) | ↑ Peristaltic strength |
| Liquid consistency of chyme | Passes pylorus easily |
| Factor | Hormone/Reflex | Trigger |
|---|---|---|
| Fat in duodenum | CCK (from I cells) | Fatty acids in duodenum |
| Acid (low pH) in duodenum | Secretin (from S cells) + enterogastric reflex | pH <4.5 in duodenum |
| Hypertonic chyme in duodenum | Enterogastric reflex | Osmoreceptors |
| Protein in duodenum | CCK | Amino acids |
| Sympathetic stimulation | Noradrenaline | Stress, fear |
| GIP (Gastric Inhibitory Peptide) | K cells | Glucose + fat in duodenum |
| Movement | Region | Mechanism | Function |
|---|---|---|---|
| Receptive relaxation | Orad (fundus) | Vagovagal reflex; VIP | Accommodate food without ↑ pressure |
| Gastric accommodation | Orad (fundus) | ENS mediated | Storage of up to 1.5 L |
| Peristalsis | Caudad (body + antrum) | BER 3/min; vagus; gastrin | Mixing + churning + emptying |
| Retropulsion | Antrum - pylorus | Pylorus closes during wave | Reduces particle size to <2 mm |
| Hunger contractions / MMC | Whole stomach | Motilin every 90 min | Housekeeping; clears residue |
| Vomiting | Whole stomach | Medullary centre | Expels noxious material |
| Fact | Answer |
|---|---|
| Neurotransmitter of receptive relaxation | VIP |
| Type of reflex in receptive relaxation | Vagovagal reflex |
| Vagotomy effect | Abolishes receptive relaxation → ↑ pressure on filling |
| Frequency of gastric peristalsis | 3 waves/minute (BER) |
| What causes retropulsion? | Pyloric closure during peristaltic wave |
| Particle size for gastric emptying of solids | <1–2 mm |
| Fastest emptying substance | Water / isotonic fluids |
| Slowest emptying substance | Fats |
| Hormone that slows emptying (fat) | CCK |
| Hormone that slows emptying (acid) | Secretin |
| MMC interval (fasting) | Every 90 minutes |
| Hormone triggering MMC | Motilin |
| Vomiting centre location | Medulla oblongata |
| Stomach muscle layers (unique) | 3 layers — longitudinal, circular, oblique |
| Gastric pacemaker location | Greater curvature at junction of proximal and middle body |