Important questions of CVS according to ntruhs
Which NTRUHS course/subject is this for? CVS (Cardiovascular System) important questions differ a lot in depth by program.
NTRUHS important questions Cardiovascular System CVS Anatomy Physiology BSc Nursing
"NTRUHS" previous question papers cardiovascular system heart important questions nursing
Mbbs
NTRUHS MBBS physiology cardiovascular system important questions previous papers
https://www.scribd.com/document/704484318/Important-CVS-ques…
Create a study guide PDF with model answers for top 10 CVS questions
Which CVS question(s) should I write the first detailed model answer(s) for in the study guide PDF?
ls -la /tmp/workspace/ 2>/dev/null || mkdir -p /tmp/workspace && ls -la /tmp/workspace/
~/cvs-study-guide/build_pdf.py
# -*- coding: utf-8 -*-
"""
Build: CVS (Cardiovascular System) Study Guide - Top 10 Model Answers
MBBS 1st Year Physiology - NTRUHS Exam Pattern
"""
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.platypus import (
SimpleDocTemplate, Paragraph, Spacer, PageBreak, Table, TableStyle,
ListFlowable, ListItem, HRFlowable
)
from reportlab.lib.enums import TA_CENTER, TA_LEFT
OUT = "/tmp/workspace/cvs-study-guide/CVS_Study_Guide_NTRUHS_MBBS.pdf"
styles = getSampleStyleSheet()
title_style = ParagraphStyle(
"TitleCustom", parent=styles["Title"], fontSize=22, spaceAfter=6,
textColor=colors.HexColor("#1a3c6e")
)
subtitle_style = ParagraphStyle(
"SubtitleCustom", parent=styles["Normal"], fontSize=12, alignment=TA_CENTER,
textColor=colors.HexColor("#444444"), spaceAfter=4
)
qheading_style = ParagraphStyle(
"QHeading", parent=styles["Heading1"], fontSize=14, spaceBefore=6, spaceAfter=8,
textColor=colors.white, backColor=colors.HexColor("#1a3c6e"),
leftIndent=6, borderPadding=(6, 6, 6, 6)
)
subhead_style = ParagraphStyle(
"SubHead", parent=styles["Heading3"], fontSize=11.5, spaceBefore=10, spaceAfter=4,
textColor=colors.HexColor("#1a3c6e")
)
body_style = ParagraphStyle(
"BodyCustom", parent=styles["Normal"], fontSize=10.3, leading=14.5, spaceAfter=6,
alignment=TA_LEFT
)
bullet_style = ParagraphStyle(
"BulletCustom", parent=styles["Normal"], fontSize=10.3, leading=14.2, leftIndent=10
)
recall_style = ParagraphStyle(
"Recall", parent=styles["Normal"], fontSize=10, leading=13.5, textColor=colors.HexColor("#7a4b00")
)
toc_style = ParagraphStyle(
"TOC", parent=styles["Normal"], fontSize=11, leading=18
)
def hr():
return HRFlowable(width="100%", thickness=0.6, color=colors.HexColor("#c9c9c9"), spaceBefore=2, spaceAfter=10)
def recall_box(items, title="Quick Recall"):
data = [[Paragraph(f"<b>{title}</b>", ParagraphStyle('t', parent=recall_style, textColor=colors.HexColor('#7a4b00'), fontSize=10.3))]]
for it in items:
data.append([Paragraph("• " + it, recall_style)])
t = Table(data, colWidths=[16.5*cm])
t.setStyle(TableStyle([
("BACKGROUND", (0, 0), (-1, -1), colors.HexColor("#fff6e0")),
("BOX", (0, 0), (-1, -1), 0.7, colors.HexColor("#e0b400")),
("LEFTPADDING", (0, 0), (-1, -1), 10),
("RIGHTPADDING", (0, 0), (-1, -1), 10),
("TOPPADDING", (0, 0), (-1, -1), 4),
("BOTTOMPADDING", (0, 0), (-1, -1), 4),
]))
return t
def bullets(items):
return ListFlowable(
[ListItem(Paragraph(i, bullet_style), leftIndent=8) for i in items],
bulletType='bullet', start='circle', leftIndent=14
)
story = []
# ---------- COVER ----------
story.append(Spacer(1, 3*cm))
story.append(Paragraph("Cardiovascular System (CVS)", title_style))
story.append(Paragraph("Study Guide - Top 10 Model Answers", ParagraphStyle("t2", parent=title_style, fontSize=16, textColor=colors.HexColor("#333333"))))
story.append(Spacer(1, 0.5*cm))
story.append(Paragraph("MBBS First Year - Physiology", subtitle_style))
story.append(Paragraph("Prepared for NTRUHS (Dr. NTR University of Health Sciences) Exam Pattern", subtitle_style))
story.append(Spacer(1, 1*cm))
story.append(hr())
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph(
"This guide covers the 10 most frequently repeated Cardiovascular System questions in "
"NTRUHS Physiology Paper-I (Structured Essay and Short Answer questions), with concise, "
"exam-oriented model answers, diagrams described in words, and quick-recall value boxes.",
body_style
))
story.append(Spacer(1, 1*cm))
toc_items = [
"1. Properties of Cardiac Muscle",
"2. Origin and Spread of Cardiac Impulse (Conducting System)",
"3. Cardiac Cycle (Wiggers Diagram)",
"4. Normal ECG - Waves, Intervals and Significance",
"5. Cardiac Output - Definition, Measurement and Regulation",
"6. Frank-Starling Law of the Heart",
"7. Heart Sounds (S1 and S2)",
"8. Regulation of Arterial Blood Pressure",
"9. Arterial Pulse and Jugular Venous Pulse (JVP)",
"10. Shock - Types, Stages and Compensatory Mechanisms",
]
story.append(Paragraph("<b>Contents</b>", subhead_style))
for item in toc_items:
story.append(Paragraph(item, toc_style))
story.append(PageBreak())
# ---------- Q1 ----------
story.append(Paragraph("Q1. Describe the Properties of Cardiac Muscle", qheading_style))
story.append(Paragraph("<b>Definition / Introduction</b>", subhead_style))
story.append(Paragraph(
"Cardiac muscle is a specialised, striated, involuntary muscle that combines features of both "
"skeletal and smooth muscle. Its unique properties allow the heart to function as an efficient, "
"self-exciting, rhythmically contracting pump throughout life.", body_style))
story.append(Paragraph("<b>Properties (Model Answer)</b>", subhead_style))
story.append(bullets([
"<b>Excitability (Bathmotropism):</b> Cardiac muscle responds to a stimulus by generating an action potential. Excitability varies during the cardiac cycle due to changes in refractory period.",
"<b>Rhythmicity (Chronotropism)/Automaticity:</b> Cardiac muscle, especially the SA node, can generate its own rhythmic impulses without external nerve stimulation, due to unstable resting membrane potential (pacemaker potential).",
"<b>Conductivity (Dromotropism):</b> The impulse generated spreads through the specialised conducting tissue (SA node → AV node → bundle of His → Purkinje fibres) to cause synchronous contraction.",
"<b>Contractility (Inotropism):</b> Ability to shorten and generate tension in response to a stimulus; governed by intracellular calcium and modified by the Frank-Starling law.",
"<b>All-or-None Law:</b> Because cardiac muscle fibres are connected by gap junctions (functional syncytium), a stimulus above threshold excites the entire myocardium, producing a full contraction; sub-threshold stimuli produce no response.",
"<b>Long Refractory Period:</b> The absolute refractory period (~0.25-0.3 sec) is almost as long as the contraction itself, preventing tetanic contraction and summation - essential for the alternating pump action of the heart.",
"<b>Staircase Phenomenon (Treppe/Bowditch effect):</b> A series of successive supramaximal stimuli of the same strength produce a gradual increase in the force of contraction till it reaches a maximum, due to progressive accumulation of intracellular Ca2+.",
]))
story.append(recall_box([
"Absolute refractory period of cardiac muscle: ~0.25-0.30 sec (almost equal to systole)",
"Cardiac muscle acts as a functional syncytium due to gap junctions/intercalated discs",
"SA node is the natural pacemaker - fastest rate of spontaneous depolarisation",
]))
story.append(PageBreak())
# ---------- Q2 ----------
story.append(Paragraph("Q2. Origin and Spread of Cardiac Impulse (Conducting System of the Heart)", qheading_style))
story.append(Paragraph("<b>Introduction</b>", subhead_style))
story.append(Paragraph(
"The heartbeat originates spontaneously within specialised conducting tissue and spreads in an "
"orderly sequence, ensuring coordinated atrial contraction followed by ventricular contraction.", body_style))
story.append(Paragraph("<b>Components of the Conducting System</b>", subhead_style))
story.append(bullets([
"<b>SA (Sino-Atrial) Node:</b> Located at the junction of superior vena cava and right atrium. Normal pacemaker; intrinsic rate ~ 100-110/min but modulated by vagal tone to ~70-72/min.",
"<b>Internodal pathways:</b> Conduct impulse from SA node to AV node and across both atria (Bachmann's bundle to left atrium).",
"<b>AV (Atrio-Ventricular) Node:</b> Located near the tricuspid valve. Shows a physiological delay (~0.1 sec) allowing atria to complete contraction and empty into ventricles before ventricular systole begins.",
"<b>Bundle of His:</b> Arises from AV node, passes through the fibrous ring, and divides into right and left bundle branches.",
"<b>Right and Left Bundle Branches:</b> Run down either side of the interventricular septum.",
"<b>Purkinje Fibres:</b> Terminal branches that spread rapidly throughout the ventricular myocardium, causing near-simultaneous depolarisation of both ventricles.",
]))
story.append(Paragraph("<b>Sequence of Spread</b>", subhead_style))
story.append(Paragraph(
"SA node → Atrial myocardium (both atria contract) → AV node (delay) → Bundle of His → "
"Right and Left bundle branches → Purkinje fibres → Ventricular myocardium (ventricles contract).",
body_style))
story.append(recall_box([
"Conduction velocity: Purkinje fibres fastest (~4 m/sec), AV node slowest (~0.05 m/sec)",
"AV nodal delay ~0.1 sec is critical for optimal ventricular filling",
"Ectopic pacemakers can arise if SA node fails (AV node ~40-60/min, Purkinje ~15-40/min)",
]))
story.append(PageBreak())
# ---------- Q3 ----------
story.append(Paragraph("Q3. Cardiac Cycle (with Wiggers Diagram)", qheading_style))
story.append(Paragraph("<b>Definition</b>", subhead_style))
story.append(Paragraph(
"The cardiac cycle is the sequence of mechanical and electrical events that occur from the "
"beginning of one heartbeat to the beginning of the next. It consists of systole (contraction) "
"and diastole (relaxation), lasting about 0.8 sec at a heart rate of 75/min.", body_style))
story.append(Paragraph("<b>Phases of Cardiac Cycle</b>", subhead_style))
story.append(bullets([
"<b>Atrial systole (0.1 sec):</b> Atria contract, pushing remaining blood into ventricles.",
"<b>Isovolumetric ventricular contraction (0.05 sec):</b> Ventricles begin contracting; AV valves close (1st heart sound); all valves closed; pressure rises sharply with no change in volume.",
"<b>Rapid ejection (0.1 sec):</b> Aortic and pulmonary valves open once ventricular pressure exceeds arterial pressure; most of stroke volume is ejected.",
"<b>Reduced ejection (0.13 sec):</b> Ejection continues at a slower rate; ventricular pressure begins to fall.",
"<b>Isovolumetric relaxation (0.06 sec):</b> Semilunar valves close (2nd heart sound); ventricles relax with no change in volume; pressure drops sharply.",
"<b>Rapid filling (0.1 sec):</b> AV valves open; blood rushes from atria into relaxed ventricles (produces 3rd heart sound if audible - S3).",
"<b>Reduced filling / Diastasis (0.19 sec):</b> Slow, passive filling of ventricles.",
]))
story.append(Paragraph("<b>Wiggers Diagram - Key Correlations</b>", subhead_style))
story.append(Paragraph(
"A Wiggers diagram plots, on a common time axis: aortic pressure, ventricular pressure, atrial "
"pressure, ventricular volume, ECG, and heart sounds. Key points to reproduce: ventricular pressure "
"rises above atrial pressure to close the mitral valve (S1); ventricular pressure exceeds aortic "
"pressure to open the aortic valve; the dicrotic notch on the aortic pressure curve corresponds to "
"aortic valve closure (S2); the QRS complex precedes ventricular systole; the T wave occurs during "
"ventricular repolarisation/relaxation.", body_style))
story.append(recall_box([
"Total cardiac cycle duration at 75 bpm: 0.8 sec (Systole ~0.3 sec, Diastole ~0.5 sec)",
"End-diastolic volume (EDV): ~120-130 mL; End-systolic volume (ESV): ~50-60 mL",
"Isovolumetric contraction and relaxation = valves all closed, volume constant",
]))
story.append(PageBreak())
# ---------- Q4 ----------
story.append(Paragraph("Q4. Normal ECG - Waves, Intervals and Clinical Significance", qheading_style))
story.append(Paragraph("<b>Definition</b>", subhead_style))
story.append(Paragraph(
"The electrocardiogram (ECG) is a graphic recording of the electrical activity generated by the "
"heart, recorded from the body surface using electrodes.", body_style))
story.append(Paragraph("<b>Waves and Their Significance</b>", subhead_style))
story.append(bullets([
"<b>P wave:</b> Atrial depolarisation. Duration ~0.08-0.10 sec, amplitude ~0.1-0.3 mV.",
"<b>QRS complex:</b> Ventricular depolarisation. Duration ~0.08-0.12 sec.",
"<b>T wave:</b> Ventricular repolarisation.",
"<b>U wave (occasionally seen):</b> Thought to represent repolarisation of papillary muscles or Purkinje fibres.",
]))
story.append(Paragraph("<b>Intervals and Segments</b>", subhead_style))
story.append(bullets([
"<b>PR interval (0.12-0.20 sec):</b> Time from onset of atrial depolarisation to onset of ventricular depolarisation (represents AV nodal delay). Prolonged in heart block.",
"<b>QT interval (0.35-0.44 sec, rate-dependent):</b> Total duration of ventricular depolarisation and repolarisation.",
"<b>ST segment:</b> Isoelectric; corresponds to the plateau of the ventricular action potential. Elevation/depression indicates ischaemia or infarction.",
"<b>PR segment:</b> Corresponds to AV nodal conduction delay.",
]))
story.append(recall_box([
"Standard calibration: 1 small box = 0.04 sec (horizontal), 0.1 mV (vertical)",
"Normal paper speed: 25 mm/sec",
"PR interval prolonged >0.20 sec = 1st degree heart block; ST elevation = classic MI sign",
]))
story.append(PageBreak())
# ---------- Q5 ----------
story.append(Paragraph("Q5. Cardiac Output - Definition, Measurement and Regulation", qheading_style))
story.append(Paragraph("<b>Definition</b>", subhead_style))
story.append(Paragraph(
"Cardiac output (CO) is the volume of blood pumped by each ventricle per minute. "
"CO = Stroke Volume (SV) x Heart Rate (HR). Normal value ~5 L/min (range 4-6 L/min) at rest; "
"Cardiac Index (CO/body surface area) ~3 L/min/m2.", body_style))
story.append(Paragraph("<b>Methods of Measurement</b>", subhead_style))
story.append(bullets([
"<b>Fick's principle:</b> CO = O2 consumption per minute / (arterial O2 content - mixed venous O2 content). Gold standard, invasive.",
"<b>Dye dilution technique:</b> A known amount of dye (e.g., indocyanine green) is injected into venous circulation and its concentration-time curve is analysed downstream.",
"<b>Thermodilution technique:</b> Uses a cold saline bolus and a thermistor-tipped catheter (Swan-Ganz); most common clinical method.",
"<b>Echocardiography:</b> Non-invasive; estimates SV from ventricular volumes and HR.",
]))
story.append(Paragraph("<b>Regulation of Cardiac Output</b>", subhead_style))
story.append(bullets([
"<b>Venous return:</b> The single most important factor; determined by Frank-Starling mechanism (heterometric regulation) - increased venous return stretches the ventricle, increasing force of contraction.",
"<b>Heart rate:</b> Regulated by autonomic nervous system (sympathetic increases, parasympathetic/vagal decreases) and hormones (adrenaline, thyroxine).",
"<b>Contractility (homeometric regulation):</b> Sympathetic stimulation and catecholamines increase contractility independent of fibre length (positive inotropic effect).",
"<b>Afterload:</b> Resistance against which the ventricle ejects blood (aortic pressure/peripheral resistance); increased afterload reduces stroke volume.",
"<b>Preload:</b> End-diastolic volume/pressure - the initial stretch of cardiac muscle fibres before contraction.",
]))
story.append(recall_box([
"CO = SV x HR = 70 mL x 72/min ≈ 5040 mL/min ≈ 5 L/min",
"Normal Cardiac Index: 2.6-4.2 L/min/m2",
"Factors: Preload, Afterload, Contractility, Heart Rate (\"PACH\")",
]))
story.append(PageBreak())
# ---------- Q6 ----------
story.append(Paragraph("Q6. Frank-Starling Law of the Heart", qheading_style))
story.append(Paragraph("<b>Statement</b>", subhead_style))
story.append(Paragraph(
"\"Within physiological limits, the force of contraction of the heart is directly proportional to "
"the initial length of the cardiac muscle fibre\" - i.e., the more the ventricle is filled during "
"diastole (increased venous return/preload), the greater the volume of blood ejected during "
"systole, up to a physiological limit.", body_style))
story.append(Paragraph("<b>Mechanism</b>", subhead_style))
story.append(bullets([
"Increased venous return increases end-diastolic volume, stretching the ventricular myofibrils.",
"Optimal overlap of actin and myosin filaments increases the number of active cross-bridges formed, and stretch increases the sensitivity of troponin C to calcium.",
"This produces a stronger contraction and greater stroke volume - termed <b>heterometric autoregulation</b> (since it depends on a change in fibre length).",
]))
story.append(Paragraph("<b>Physiological Importance</b>", subhead_style))
story.append(bullets([
"Automatically matches the output of the two ventricles (important since right and left heart are in series but pumping independently) - prevents damming of blood in pulmonary or systemic circuit.",
"Allows the heart to adjust cardiac output to increased venous return during exercise, without needing nervous control.",
"Explains compensatory dilatation of the heart in early heart failure.",
"Forms the basis of the ventricular function (Starling) curve, which plots stroke volume/cardiac output against right atrial pressure or end-diastolic volume; the curve flattens or descends beyond the physiological limit (as in heart failure).",
]))
story.append(recall_box([
"Also called heterometric regulation (as opposed to homeometric - Bowditch/Anrep/Treppe effects)",
"The law fails when the muscle fibres are overstretched beyond physiological limit (as in decompensated heart failure)",
]))
story.append(PageBreak())
# ---------- Q7 ----------
story.append(Paragraph("Q7. Heart Sounds (S1 and S2)", qheading_style))
story.append(Paragraph("<b>Introduction</b>", subhead_style))
story.append(Paragraph(
"Heart sounds are produced mainly by turbulence in blood flow caused by the sudden closure of "
"heart valves and the resulting vibrations transmitted to the chest wall.", body_style))
story.append(Paragraph("<b>First Heart Sound (S1)</b>", subhead_style))
story.append(bullets([
"Caused by closure of the mitral and tricuspid (atrioventricular) valves at the onset of ventricular systole (isovolumetric contraction).",
"Low-pitched, soft, and long-duration ('lub').",
"Best heard at the mitral area (5th left intercostal space, midclavicular line) and tricuspid area.",
"Coincides with the onset of the QRS complex on ECG and marks the beginning of systole.",
]))
story.append(Paragraph("<b>Second Heart Sound (S2)</b>", subhead_style))
story.append(bullets([
"Caused by closure of the aortic and pulmonary (semilunar) valves at the end of ventricular systole (onset of isovolumetric relaxation).",
"High-pitched, sharp, short-duration ('dub').",
"Best heard at the aortic and pulmonary areas (2nd intercostal spaces).",
"Physiologically splits into A2 (aortic) and P2 (pulmonary) components, widening normally during inspiration due to increased venous return to the right heart (physiological splitting).",
]))
story.append(Paragraph("<b>Additional Sounds (brief mention)</b>", subhead_style))
story.append(Paragraph(
"S3 (third heart sound) - due to rapid ventricular filling, may be physiological in children/young "
"adults or pathological in heart failure. S4 (fourth heart sound) - due to atrial contraction "
"against a stiff ventricle, always pathological, heard just before S1.", body_style))
story.append(recall_box([
"S1 = AV valve closure (mitral + tricuspid); S2 = Semilunar valve closure (aortic + pulmonary)",
"S1 marks start of systole; S2 marks end of systole / start of diastole",
"Physiological splitting of S2 occurs on inspiration",
]))
story.append(PageBreak())
# ---------- Q8 ----------
story.append(Paragraph("Q8. Regulation of Arterial Blood Pressure", qheading_style))
story.append(Paragraph("<b>Definition</b>", subhead_style))
story.append(Paragraph(
"Arterial blood pressure (BP = Cardiac Output x Total Peripheral Resistance) is maintained within "
"a narrow range by short-term (nervous) and long-term (renal/hormonal) mechanisms.", body_style))
story.append(Paragraph("<b>Short-Term Regulation (seconds to minutes)</b>", subhead_style))
story.append(bullets([
"<b>Baroreceptor reflex:</b> Stretch receptors in the carotid sinus (glossopharyngeal/IX nerve) and aortic arch (vagus/X nerve) sense a rise in BP, increase afferent firing to the vasomotor centre in the medulla, which reflexively reduces sympathetic outflow and increases vagal tone - causing bradycardia and vasodilatation. A fall in BP produces the opposite response.",
"<b>Chemoreceptor reflex:</b> Carotid and aortic bodies respond mainly to hypoxia/hypercapnia/acidosis and produce a pressor response; significant only when BP falls below ~80 mmHg.",
"<b>CNS ischaemic response:</b> Severe fall in cerebral blood flow directly stimulates the vasomotor centre, producing an intense sympathetic (pressor) response (Cushing reflex in raised intracranial pressure).",
]))
story.append(Paragraph("<b>Long-Term Regulation (hours to days)</b>", subhead_style))
story.append(bullets([
"<b>Renin-Angiotensin-Aldosterone System (RAAS):</b> Fall in renal perfusion pressure/blood volume triggers renin release from juxtaglomerular cells → angiotensin I → angiotensin II (via ACE, potent vasoconstrictor, stimulates thirst and ADH) → aldosterone (Na+ and water retention).",
"<b>Renal Body Fluid Mechanism:</b> Pressure natriuresis/diuresis - a rise in BP increases renal excretion of salt and water, reducing blood volume and BP back toward normal; considered the most powerful long-term regulator.",
"<b>ADH (Vasopressin) and Aldosterone:</b> Promote water and sodium retention respectively, increasing blood volume.",
"<b>Atrial Natriuretic Peptide (ANP):</b> Released from stretched atria; promotes natriuresis and vasodilatation, opposing RAAS.",
]))
story.append(recall_box([
"Normal BP: 120/80 mmHg; Mean Arterial Pressure (MAP) = DBP + 1/3(SBP-DBP)",
"Baroreceptors are reset/adapt within 1-2 days - not useful for long-term BP control",
"Renal-body fluid mechanism is the most powerful long-term BP regulator (Guyton's concept)",
]))
story.append(PageBreak())
# ---------- Q9 ----------
story.append(Paragraph("Q9. Arterial Pulse and Jugular Venous Pulse (JVP)", qheading_style))
story.append(Paragraph("<b>Arterial Pulse</b>", subhead_style))
story.append(Paragraph(
"The arterial pulse is a palpable wave of distension produced in an artery by the ejection of "
"blood from the left ventricle during systole. It can be felt wherever an artery lies close to "
"the surface and can be compressed against a bone (e.g., radial, carotid, femoral, dorsalis pedis).", body_style))
story.append(Paragraph("<b>Characteristics assessed clinically</b>", subhead_style))
story.append(bullets([
"Rate, rhythm, volume/amplitude, character (e.g., collapsing pulse in aortic regurgitation, pulsus parvus et tardus in aortic stenosis), condition of vessel wall, and symmetry (comparing both sides).",
]))
story.append(Paragraph("<b>Jugular Venous Pulse (JVP)</b>", subhead_style))
story.append(Paragraph(
"JVP reflects pressure changes in the right atrium, transmitted to the internal jugular vein, "
"and is used clinically to estimate right atrial pressure/central venous pressure.", body_style))
story.append(bullets([
"<b>a wave:</b> Due to right atrial contraction (atrial systole).",
"<b>c wave:</b> Due to bulging of the tricuspid valve into the right atrium during isovolumetric ventricular contraction (small, sometimes not visible).",
"<b>x descent:</b> Due to atrial relaxation and downward pull of ventricular contraction.",
"<b>v wave:</b> Due to rise in atrial pressure as blood fills the right atrium against a closed tricuspid valve.",
"<b>y descent:</b> Due to opening of the tricuspid valve and rapid emptying of blood from atrium into ventricle.",
]))
story.append(recall_box([
"Absent 'a' wave = atrial fibrillation; Giant 'a' wave = tricuspid stenosis/pulmonary hypertension",
"JVP is best seen with patient reclined at 45 degrees, measured as vertical height above the sternal angle (normal <3-4 cm)",
]))
story.append(PageBreak())
# ---------- Q10 ----------
story.append(Paragraph("Q10. Shock - Types, Stages and Compensatory Mechanisms", qheading_style))
story.append(Paragraph("<b>Definition</b>", subhead_style))
story.append(Paragraph(
"Shock is a clinical syndrome resulting from inadequate tissue perfusion relative to metabolic "
"demand, leading to cellular hypoxia and, if uncorrected, irreversible organ damage.", body_style))
story.append(Paragraph("<b>Types of Shock</b>", subhead_style))
story.append(bullets([
"<b>Hypovolemic shock:</b> Due to reduced blood/fluid volume (haemorrhage, burns, severe diarrhoea/vomiting).",
"<b>Cardiogenic shock:</b> Due to pump failure (myocardial infarction, arrhythmias).",
"<b>Distributive (vasodilatory) shock:</b> Due to loss of vascular tone (septic, anaphylactic, neurogenic shock).",
"<b>Obstructive shock:</b> Due to mechanical obstruction to blood flow (cardiac tamponade, massive pulmonary embolism, tension pneumothorax).",
]))
story.append(Paragraph("<b>Stages (classically described for haemorrhagic/hypovolemic shock)</b>", subhead_style))
story.append(bullets([
"<b>Compensated (non-progressive) stage:</b> Compensatory mechanisms (see below) maintain adequate perfusion to vital organs; reversible if the cause is corrected.",
"<b>Progressive/decompensated stage:</b> Compensatory mechanisms begin to fail; vasoconstriction and hypoperfusion cause tissue hypoxia, acidosis, and myocardial depression, worsening the shock in a positive-feedback (vicious) cycle.",
"<b>Irreversible stage:</b> Widespread cellular damage, multi-organ failure; death occurs even if blood volume is later restored.",
]))
story.append(Paragraph("<b>Compensatory Mechanisms</b>", subhead_style))
story.append(bullets([
"<b>Baroreceptor reflex:</b> Immediate reflex tachycardia and generalised vasoconstriction to maintain BP.",
"<b>Chemoreceptor reflex and CNS ischaemic response:</b> Activated as BP falls further, reinforcing sympathetic outflow.",
"<b>Reverse stress-relaxation of blood vessels:</b> Veins and later arteries constrict/contract around the reduced volume, helping maintain filling pressure.",
"<b>Fluid shift (transcapillary refill):</b> Reduced capillary hydrostatic pressure allows movement of interstitial fluid into the capillaries, expanding plasma volume.",
"<b>Activation of RAAS and ADH release:</b> Promote salt and water retention by the kidney to restore blood volume over hours.",
"<b>Increased release of catecholamines and cortisol:</b> Support cardiac output and blood glucose availability.",
]))
story.append(recall_box([
"Class I haemorrhage (<15% blood loss): compensated, minimal signs",
"Class IV haemorrhage (>40% blood loss): decompensated, life-threatening, needs immediate resuscitation",
"Irreversible shock: no response even to full volume replacement - due to cellular/mitochondrial damage",
]))
story.append(Spacer(1, 0.6*cm))
story.append(hr())
story.append(Paragraph(
"<i>Prepared as an exam-oriented revision aid for MBBS First Year Physiology (NTRUHS pattern). "
"Cross-check numeric values against your prescribed textbook (e.g., Sembulingam's Essentials of "
"Medical Physiology) before the examination.</i>",
ParagraphStyle("footnote", parent=body_style, fontSize=8.5, textColor=colors.HexColor("#666666"))
))
doc = SimpleDocTemplate(
OUT, pagesize=A4,
leftMargin=1.8*cm, rightMargin=1.8*cm, topMargin=1.6*cm, bottomMargin=1.6*cm,
title="CVS Study Guide - NTRUHS MBBS Physiology"
)
doc.build(story)
print("PDF created at:", OUT)
mkdir -p /tmp/workspace/cvs-study-guide && cd /tmp/workspace/cvs-study-guide && python build_pdf.py
cd /tmp/workspace/cvs-study-guide && python -c " from pypdf import PdfReader r = PdfReader('CVS_Study_Guide_NTRUHS_MBBS.pdf') print('Pages:', len(r.pages)) import os print('Size KB:', os.path.getsize('CVS_Study_Guide_NTRUHS_MBBS.pdf')/1024) "
CVS Study Guide NTRUHS MBBS
PDF Document · PDF