-
Notifications
You must be signed in to change notification settings - Fork 247
Description
I realized that all inputs to TTI_codegen and Acoustic_codegen are copied e.g :
self.m = DenseData(name="m", shape=self.model.vp.shape, dtype=self.dtype)
self.m.data[:] = self.model.vp**(-2)
Ii means that if model is modified, Acoustic won't be making the inversion workflow complicated. WOuld it be possible to do something like
self.m = DenseData(name="m", shape=self.model.vp.shape, dtype=self.dtype)
self.m.data[:] = self.model.get_m()
where self.model.get_m() would be a pointer to the get_m function so that everytime the operator is called it will run with whatever is vp at the current time. It will allow to separate the model structure (and Shot, rec) fro mthe actual propagator allowing model changes without having to recreate a new operator that wold copy again vp.