Loading...
Searching...
No Matches
AisMottSchottkyElement.h
1#pragma once
2
3#include "AisAbstractElement.h"
4#include "AisSquidstatGlobal.h"
5#include <QString>
6
7class MottSchottkyElement;
8
29class SQUIDSTATLIBRARY_EXPORT AisMottSchottkyElement final : public AisAbstractElement {
30public:
42 explicit AisMottSchottkyElement(double startingPotential, double endingPotential, double voltageStep,
43 double startFrequency, double endFrequency, double stepsPerDecade,
44 double amplitude, unsigned int minCycles);
45
51
58
63
68 QString getName() const override;
69
74 QStringList getCategory() const override;
75
76 // Getter and Setter methods
77
82 double getStartingPotential() const;
83
88 void setStartingPotential(double startingPotential);
89
94 double getEndingPotential() const;
95
100 void setEndingPotential(double endingPotential);
101
106 double getVoltageStep() const;
107
112 void setVoltageStep(double voltageStep);
113
118 double getStartFrequency() const;
119
124 void setStartFrequency(double startFrequency);
125
130 double getEndFrequency() const;
131
136 void setEndFrequency(double endFrequency);
137
142 double getStepsPerDecade() const;
143
148 void setStepsPerDecade(double stepsPerDecade);
149
154 double getAmplitude() const;
155
160 void setAmplitude(double amplitude);
161
166 unsigned int getMinCycles() const;
167
172 void setMinCycles(unsigned int minCycles);
173
178 double getQuietTime() const;
179
184 void setQuietTime(double quietTime);
185
191
196 void setQuietTimeSampInterval(double quietTimeSampInterval);
197
202 double getStepQuietTime() const;
203
208 void setStepQuietTime(double stepQuietTime);
209
215
220 void setStepQuietSampInterval(double stepQuietTimeSampInterval);
221
227
232 void setStartVoltageVsOCP(bool startVsOCP);
233
238 bool isEndVoltageVsOCP() const;
239
244 void setEndVoltageVsOCP(bool endVsOCP);
245
246private:
247 std::shared_ptr<MottSchottkyElement> m_dataDerived;
248};
This class performs Mott-Schottky analysis on the working electrode for a specified range of potentia...
Definition AisMottSchottkyElement.h:29
bool isStartVoltageVsOCP() const
Check if the starting voltage is measured versus the open circuit potential (OCP).
QString getName() const override
Get the name of the experiment element.
void setStartingPotential(double startingPotential)
Set the starting potential for the experiment.
void setQuietTime(double quietTime)
Set the quiet time before starting the EIS measurement.
unsigned int getMinCycles() const
Get the minimum number of cycles per frequency step.
void setStepQuietTime(double stepQuietTime)
Set the quiet time after each potential step before starting the EIS measurement.
~AisMottSchottkyElement() override
Destructor for the AisMottSchottkyElement object.
AisMottSchottkyElement(double startingPotential, double endingPotential, double voltageStep, double startFrequency, double endFrequency, double stepsPerDecade, double amplitude, unsigned int minCycles)
Constructor for the Mott-Schottky experiment element.
void setMinCycles(unsigned int minCycles)
Set the minimum number of cycles per frequency step.
double getEndingPotential() const
Get the ending potential for the experiment.
void setEndFrequency(double endFrequency)
Set the ending frequency for the EIS measurement.
void setEndingPotential(double endingPotential)
Set the ending potential for the experiment.
void setStartFrequency(double startFrequency)
Set the starting frequency for the EIS measurement.
AisMottSchottkyElement(const AisMottSchottkyElement &other)
Copy constructor for the AisMottSchottkyElement object.
double getVoltageStep() const
Get the voltage step size between each potential.
void setStartVoltageVsOCP(bool startVsOCP)
Set whether the starting voltage is measured versus the open circuit potential (OCP).
void setStepsPerDecade(double stepsPerDecade)
Set the number of frequency steps per decade.
double getStepsPerDecade() const
Get the number of frequency steps per decade.
double getStepQuietTime() const
Get the quiet time after each potential step before starting the EIS measurement.
void setAmplitude(double amplitude)
Set the amplitude of the AC signal used in the EIS measurement.
double getQuietTime() const
Get the quiet time before starting the EIS measurement.
void setEndVoltageVsOCP(bool endVsOCP)
Set whether the ending voltage is measured versus the open circuit potential (OCP).
AisMottSchottkyElement & operator=(const AisMottSchottkyElement &other)
Assignment operator for the AisMottSchottkyElement object.
double getStartFrequency() const
Get the starting frequency for the EIS measurement.
bool isEndVoltageVsOCP() const
Check if the ending voltage is measured versus the open circuit potential (OCP).
void setVoltageStep(double voltageStep)
Set the voltage step size between each potential.
void setQuietTimeSampInterval(double quietTimeSampInterval)
Set the sampling interval during the quiet time.
double getQuietTimeSampInterval() const
Get the sampling interval during the quiet time.
double getEndFrequency() const
Get the ending frequency for the EIS measurement.
double getStartingPotential() const
Get the starting potential for the experiment.
void setStepQuietSampInterval(double stepQuietTimeSampInterval)
Set the sampling interval during the quiet time after each potential step.
QStringList getCategory() const override
Get a list of applicable categories of the experiment element.
double getAmplitude() const
Get the amplitude of the AC signal used in the EIS measurement.
double getStepQuietSampInterval() const
Get the sampling interval during the quiet time after each potential step.