1. A method of source separating composite seismic data that includes signals from two or more seismic sources wherein the method comprises: a) creating composite seismic data by delivering seismic energy into the earth with at least two coded seismic sources operating simultaneously or nearly simultaneously and receiving seismic data from the at least two sources with at least one seismic receiver and recording the seismic energy received by the seismic receiver as composite seismic data; b) selecting a segment of the composite seismic data; c) using a first estimated source signature applied to the earth by each of the at least two seismic sources as a seed to invert the segment of the composite seismic data and create a first inversion; d) computing an error from the first inversion reflecting the source generated data contamination between the at least two seismic sources based on the output of the first inversion; e) revising the first estimated signature of the source signature applied to the earth by each of the at least two seismic sources to create a second estimated signature applied to the ground; f) re-inverting the segment of the composite seismic data at least once to create a revised inversion using the revised source signature estimate as a seed for the revised inversion; g) computing an error from the revised inversion reflecting the source generated data contamination between the at least two seismic sources based on the output of the revised inversion; h) selecting a preferred source signature estimate, e.g. having a low or an acceptable level of computed error; and i) performing an inversion on the composite seismic data using the preferred source signature estimate.