A system comprising a processor configured to: determine a first therapy program that comprises a set of therapy parameter values; generate an algorithmic model of a therapy field based on the first therapy program, wherein the algorithmic model of the therapy field represents where therapy will propagate from a therapy system delivering therapy according to the first therapy program; determine therapy guidelines based on a patient condition selected from a list of patient conditions, wherein the therapy guidelines comprise a reference therapy field; compare the algorithmic model of the first therapy field to the reference therapy field; and automatically adjust a value of at least one of the therapy parameters of the first therapy program to generate a second therapy program based on the comparison; wherein the algorithmic model comprises a first algorithmic model of a first therapy field, the processor further configured to generate a second algorithmic model of a second therapy field that represents where the therapy will propagate from the therapy system based on the second therapy program; characterized in that the system further comprises: means for monitoring a signal indicative of a patient parameter; means for delivering therapy to the patient according to the second therapy program via the therapy system; means for detecting a patient event based on the signal; and means for analyzing the therapy guidelines based on the detected patient event. determine a first therapy program that comprises a set of therapy parameter values; generate an algorithmic model of a therapy field based on the first therapy program, wherein the algorithmic model of the therapy field represents where therapy will propagate from a therapy system delivering therapy according to the first therapy program; determine therapy guidelines based on a patient condition selected from a list of patient conditions, wherein the therapy guidelines comprise a reference therapy field; compare the algorithmic model of the first therapy field to the reference therapy field; and automatically adjust a value of at least one of the therapy parameters of the first therapy program to generate a second therapy program based on the comparison; wherein the algorithmic model comprises a first algorithmic model of a first therapy field, the processor further configured to generate a second algorithmic model of a second therapy field that represents where the therapy will propagate from the therapy system based on the second therapy program; characterized in that the system further comprises: means for monitoring a signal indicative of a patient parameter; means for delivering therapy to the patient according to the second therapy program via the therapy system; means for detecting a patient event based on the signal; and means for analyzing the therapy guidelines based on the detected patient event. means for monitoring a signal indicative of a patient parameter; means for delivering therapy to the patient according to the second therapy program via the therapy system; means for detecting a patient event based on the signal; and means for analyzing the therapy guidelines based on the detected patient event.