1. A method of generating a graphical virtual environment comprising: receiving input data representative of a real physical environment; processing the input data using a combination of at least two different scientific models to generate simulation data, wherein the processing includes: running a first iteration of a first scientific model using at least a portion of the input data; outputting first scientific model data from the first scientific model into a data structure, the data structure comprising a plurality of data elements; extracting, via an input filter associated with a second scientific model, a subset of the plurality of data elements from the data structure; running the second scientific model using at least the subset of the plurality of data elements from the data structure; outputting, via an output filter, second scientific model data from the second scientific model into the data structure; running a second iteration of the first scientific model based at least in part on the second scientific model data output; and outputting updated first scientific model data into the data structure; and using a graphical simulation engine, generating a graphical virtual environment at least from the updated first scientific model data and the second scientific model data in the data structure.