find_ion_saturation_currentο
- plasmapy.analysis.swept_langmuir.ion_saturation_current.find_ion_saturation_current(
- voltage: ndarray,
- current: ndarray,
- *,
- fit_type: str = 'exp_plus_linear',
- current_bound: float | None = None,
- voltage_bound: float | None = None,
Determines the ion-saturation current (\(I_{sat}\)) for a given current-voltage (IV) curve obtained from a swept Langmuir probe. The current collected by a Langmuir probe reaches ion-saturation when the probe is sufficiently biased so the influx of electrons is completely repelled, which leads to only the collection of ions. (For additional details see the Notes section below.).
Aliases:
find_isat_()- Parameters:
voltage (
numpy.ndarray) β 1-D numpy array of monotonically increasing probe biases (should be in volts).current (
numpy.ndarray) β 1-D numpy array of probe current (should be in amperes) corresponding to thevoltagearray.fit_type (
str) βThe type of curve (fit-function) to be fitted to the Langmuir trace, valid options are listed below. (DEFAULT
"exp_plus_linear")"linear""exp_plus_offset""exp_plus_linear"current_bound (
float) βA fraction representing a percentile window around the minimum current. The points to be fitted are defined to be within this window. For example, a value of
0.1indicates to use all points within 10% of the minimum current. (DEFAULTNone)If neither
current_boundorvoltage_boundare specified, then the routine will collect indices based on an internalcurrent_boundsetting for the specifiedfit_type."linear"0.4
"exponential"1.0
"exp_plus_linear"1.0
Cannot be used with keyword
voltage_bound.voltage_bound (
float) βA bias voltage (in volts) that specifies an upper bound used to collect the points for the curve fit. That is, points that satisfy
voltage <= voltage_boundare used in the fit. (DEFAULTNone)Cannot be used with keyword
current_bound.
- Returns:
isat (
Linear) β A fit-function representing the linear portion of the fitted curve. Note: Allisatparameters will be in the same units as those ofvoltageandcurrent. For example, if thevoltagearray is in milli-volts and thecurrentarray is in milli-amperes, then all parameters and computed values ofisatwill have the same units.extras (
ISatExtras) β Additional information from the curve fit:extras.fitted_func(fit-functions)The computed fit-function specified by
fit_type.extras.rsq(float)The coefficient of determination (r-squared) value of the fit, that is of
extras.fitted_func.extras.fitted_indices(slice)A
sliceobject representing the indices of thevoltageandcurrentarrays used for the fit.
Notes
This routine works by:
Selecting the points to be used in the fit as determined by
voltage_boundorcurrent_bound.Fitting the selected points with the fit-function specified by
fit_type.Extracting the linear component of the fit and returning that as the ion-saturation current.
This routine opts to return a function representing a linear ion-saturation current, since, while ideal planar Langmuir probes reach a steady-state ion-saturation current, real world Langmuir probes βsufferβ from expanding sheaths as the bias voltage becomes increasingly negative. This sheath expansion results in the ion-saturation current also increasing.