A system for simulating a medical procedure comprising: a physical model of a heart comprising a sensor mesh lining the inner surfaces of the physical model of the heart, wherein the physical model of the heart is a three-dimensional physical device having the size and shape of a human heart; a user input device comprising a distal end inserted within the physical model of the heart; a display device; and a simulation controller coupled to the sensor mesh, the user input device, and the display device, the simulation controller comprising a processor and memory, the memory storing instructions that, when executed by the processor, cause the processor to: initialize a virtual model of the heart; display, on the display device, an anatomical map of a state of the virtual model of the heart; receive contact data from the sensor mesh; compute a location of the distal end of the user input device within the physical model of the heart in accordance with the contact data; update the state of the virtual model of the heart; generate electrophysiological data in accordance with the location of the distal end of the user input device and the state of the virtual model of the heart; and display, on the display device, an electroanatomical map of the heart by superimposing the electrophysiological data on the anatomical map. a physical model of a heart comprising a sensor mesh lining the inner surfaces of the physical model of the heart, wherein the physical model of the heart is a three-dimensional physical device having the size and shape of a human heart; a user input device comprising a distal end inserted within the physical model of the heart; a display device; and a simulation controller coupled to the sensor mesh, the user input device, and the display device, the simulation controller comprising a processor and memory, the memory storing instructions that, when executed by the processor, cause the processor to: initialize a virtual model of the heart; display, on the display device, an anatomical map of a state of the virtual model of the heart; receive contact data from the sensor mesh; compute a location of the distal end of the user input device within the physical model of the heart in accordance with the contact data; update the state of the virtual model of the heart; generate electrophysiological data in accordance with the location of the distal end of the user input device and the state of the virtual model of the heart; and display, on the display device, an electroanatomical map of the heart by superimposing the electrophysiological data on the anatomical map. initialize a virtual model of the heart; display, on the display device, an anatomical map of a state of the virtual model of the heart; receive contact data from the sensor mesh; compute a location of the distal end of the user input device within the physical model of the heart in accordance with the contact data; update the state of the virtual model of the heart; generate electrophysiological data in accordance with the location of the distal end of the user input device and the state of the virtual model of the heart; and display, on the display device, an electroanatomical map of the heart by superimposing the electrophysiological data on the anatomical map.