Class Memristor
java.lang.Object
org.episteme.natural.physics.classical.waves.electromagnetism.components.Memristor
- All Implemented Interfaces:
CircuitComponent
Represents a Memristor (memory resistor).
A memristor is a non-linear two-terminal electrical component relating electric charge and magnetic flux linkage. Its resistance (memristance) depends on the history of current that has flowed through it.
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Constructor Summary
ConstructorsConstructorDescriptionMemristor(double rOn, double rOff, double mobility, double length, double initialState) Creates a new Memristor. -
Method Summary
Modifier and TypeMethodDescriptiongetCurrent(Real voltage, Real dt) Updates the state of the memristor based on applied voltage and time step. dw/dt = (mu_v * R_on / D^2) * i(t)Calculates the current memristance based on the internal state.getState()
-
Constructor Details
-
Memristor
public Memristor(double rOn, double rOff, double mobility, double length, double initialState) Creates a new Memristor.- Parameters:
rOn- Minimum resistance (Ohms)rOff- Maximum resistance (Ohms)mobility- Dopant mobility (m^2/V/s)length- Device length (m)initialState- Initial state (0 to 1)
-
-
Method Details
-
getMemristance
Calculates the current memristance based on the internal state. M(w) = R_on * w + R_off * (1 - w)- Returns:
- Memristance in Ohms
-
getCurrent
Updates the state of the memristor based on applied voltage and time step. dw/dt = (mu_v * R_on / D^2) * i(t)- Specified by:
getCurrentin interfaceCircuitComponent- Parameters:
voltage- Applied voltage (V)dt- Time step (s)- Returns:
- The current flowing through the memristor
-
getState
-