Class Memristor

java.lang.Object
org.episteme.natural.physics.classical.waves.electromagnetism.components.Memristor
All Implemented Interfaces:
CircuitComponent

public class Memristor extends Object implements 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 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

      public Real getMemristance()
      Calculates the current memristance based on the internal state. M(w) = R_on * w + R_off * (1 - w)
      Returns:
      Memristance in Ohms
    • getCurrent

      public Real getCurrent(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)
      Specified by:
      getCurrent in interface CircuitComponent
      Parameters:
      voltage - Applied voltage (V)
      dt - Time step (s)
      Returns:
      The current flowing through the memristor
    • getState

      public Real getState()