radiasoft / rslaser_old

Integrated modeling of CPA crystal-based laser amplifiers
Apache License 2.0
1 stars 1 forks source link

Adding gain calculation to crystal slice propagate method #136

Closed k-wolfinger closed 1 year ago

k-wolfinger commented 1 year ago

Need to restructure CrystalSlice.propagate() method to logically accommodate gain calculation.

bruhwiler commented 1 year ago

We have multiple prop types in the crystal slice. More than one of these (perhaps not all) will require gain calculations. I think we should allow users to toggle gain calculations on/off

The propagate method needs to be restructured to accommodate this complexity, without a lot of copy/paste and annoying if blocks.

bnash commented 1 year ago

Yes, I'm not sure the best way to structure that logic. I would suggest creating a new propagator that just does the gain and then also one that does both the linear propagation (via SRW or LCT) and the gain. Note propagator 'n0n2_lct' for an example of a propagator that doesn't use SRW. Something like this needs to be done for the gain propagator also.

gurhar1133 commented 1 year ago

Let me know how I can assist with all of this