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. <EOS>