Class MembraneDiffusion

  • All Implemented Interfaces:
    UpdateModule, Runnable

    public class MembraneDiffusion
    extends ConcentrationBasedModule<UpdatableDeltaFunction>
    The membrane diffusion module describes the movement of chemical entities across Membranes driven by the MembranePermeability of the cargo. The cargo molecules are crossing a membrane from one side to the other side. The flux of concentration is determined by terms of
      JM = Pd * A * (c1 - c2)
    where Pd is the MembranePermeability, A is the area of the membrane, and c1 and c2 are the concentrations on both sides of the membrane; as in:
      Stein, Wilfred. Transport and diffusion across cell membranes. Elsevier, 2012.
    This concentration based module applies SemiDependentUpdates and is UpdatableSpecific.
      // define the feature to parametrize the diffusion
      MembranePermeability membranePermeability = new MembranePermeability(Quantities.getValue(3.5E-03, CENTIMETRE_PER_SECOND),
             Evidence.MANUALLY_ANNOTATED);
      // assign it to the chemical entity
      SmallMolecule water = new SmallMolecule.Builder("water")
             .assignFeature(membranePermeability)
             .build();
      // create the module
      MembraneDiffusion.inSimulation(simulation)
             .cargo(water)
             .build();
    Author:
    cl