Open bboyeleven opened 1 month ago
Hi,
The code has a PID controller to scale the anomalous transport up and down to match a target discharge current. It does nothing by default unless a target current is supplied by the user. You shouldn't need to worry about it.
Hi. 🙌 I am currently trying to write a python code that is using the
curve_fit
function from the packagescipy.optimize
to try to fit some external data (electron mobility to be precise) with the physic model from HallThruster.jl.The goal of doing so is to run the simulation once, recover the classical and electron-wall collision frequency in the python code and adjust the anomalous parameters (that modifies the anomalous collision frequency and so the total collision frequency and so the electron mobility) to match the external data by using the
curve_fit
function with the anomalous parameters as varying variables.It works pretty well, except I didn't implement yet this part from the source file
update_electrons.jl
because I don't understand it yet :What is the target discharge current ? And why using a PID control ? This part of the code is used to calculate a variable called
anom_multiplier[]
which is then used in the calculation of anomalous collision frequencyThis work could be very interesting to calibrate the anomalous model of HallThruster.jl to external data to perform accurate simulation on different thrusters. And then if you have a 1D code that performs accurately and quick, you can build up a database and trying to identify physic correlations (especially for anomalous model).