Class DiffusionEvolver

java.lang.Object
org.drip.measure.realization.DiffusionEvolver
Direct Known Subclasses:
JumpDiffusionEvolver

public class DiffusionEvolver
extends java.lang.Object
DiffusionEvolver implements the Functionality that guides the Single Factor R1 Diffusion Random Process Variable Evolution. It provides the following Functionality:
  • DiffusionEvolver Constructor
  • Retrieve the Diffusion Evaluator
  • Generate the JumpDiffusionEdge Instance from the specified Jump Diffusion Instance
  • Generate the JumpDiffusionEdge Instance Backwards from the specified Jump Diffusion Instance
  • Generate the Array of Adjacent JumpDiffusionEdge from the specified Random Variate Array
  • Generate the Array of JumpDiffusionVertex Snaps from the specified Random Variate Array
  • Generate the Array of JumpDiffusionVertex Snaps from the specified Random Variate Array
  • Generate the Array of JumpDiffusionVertex Snaps Backwards from the specified Random Variate Array
  • Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and a Weiner Driver
  • Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and a Jump Driver
  • Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and Jump/Weiner Drivers
  • Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and Weiner/Jump Drivers

Module Computational Core Module
Library Numerical Analysis Library
Project Rd Continuous/Discrete Probability Measures
Package Stochastic Jump Diffusion Vertex Edge

Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • DiffusionEvolver

      public DiffusionEvolver​(DiffusionEvaluator evaluator) throws java.lang.Exception
      DiffusionEvolver Constructor
      Parameters:
      evaluator - The Diffusion Evaluator Instance
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • evaluator

      public DiffusionEvaluator evaluator()
      Retrieve the Diffusion Evaluator
      Returns:
      The Diffusion Evaluator
    • increment

      public JumpDiffusionEdge increment​(JumpDiffusionVertex jumpDiffusionVertex, JumpDiffusionEdgeUnit jumpDiffusionEdgeUnit, double timeIncrement)
      Generate the JumpDiffusionEdge Instance from the specified Jump Diffusion Instance
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      jumpDiffusionEdgeUnit - The Random Unit Realization
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The JumpDiffusionEdge Instance
    • incrementReverse

      public JumpDiffusionEdge incrementReverse​(JumpDiffusionVertex jumpDiffusionVertex, JumpDiffusionEdgeUnit jumpDiffusionEdgeUnit, double timeIncrement)
      Generate the JumpDiffusionEdge Instance Backwards from the specified Jump Diffusion Instance
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      jumpDiffusionEdgeUnit - The Random Unit Realization
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The Reverse JumpDiffusionEdge Instance
    • incrementSequence

      public JumpDiffusionEdge[] incrementSequence​(JumpDiffusionVertex jumpDiffusionVertex, JumpDiffusionEdgeUnit[] jumpDiffusionEdgeUnitArray, double timeIncrement)
      Generate the Array of Adjacent JumpDiffusionEdge from the specified Random Variate Array
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      jumpDiffusionEdgeUnitArray - Array of Random Unit Realizations
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The Array of Adjacent JumpDiffusionEdge Instances
    • vertexSequence

      public JumpDiffusionVertex[] vertexSequence​(JumpDiffusionVertex jumpDiffusionVertex, JumpDiffusionEdgeUnit[] jumpDiffusionEdgeUnitArray, double timeIncrement)
      Generate the Array of JumpDiffusionVertex Snaps from the specified Random Variate Array
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      jumpDiffusionEdgeUnitArray - Array of Random Unit Realizations
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The Array of JumpDiffusionVertex Snaps
    • vertexSequence

      public JumpDiffusionVertex[] vertexSequence​(JumpDiffusionVertex jumpDiffusionVertex, JumpDiffusionEdgeUnit[] jumpDiffusionEdgeUnitArray, double[] timeIncrementArray)
      Generate the Array of JumpDiffusionVertex Snaps from the specified Random Variate Array
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      jumpDiffusionEdgeUnitArray - Array of Random Unit Realizations
      timeIncrementArray - The Time Increment Evolution Unit
      Returns:
      The Array of JumpDiffusionVertex Snaps
    • vertexSequenceReverse

      public JumpDiffusionVertex[] vertexSequenceReverse​(JumpDiffusionVertex jumpDiffusionVertex, JumpDiffusionEdgeUnit[] jumpDiffusionEdgeUnitArray, double[] timeIncrementArray)
      Generate the Array of JumpDiffusionVertex Snaps Backwards from the specified Random Variate Array
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      jumpDiffusionEdgeUnitArray - Array of Random Unit Realizations
      timeIncrementArray - The Time Increment Evolution Unit
      Returns:
      The Array of Reverse JumpDiffusionVertex Snaps
    • weinerIncrement

      public JumpDiffusionEdge weinerIncrement​(JumpDiffusionVertex jumpDiffusionVertex, double timeIncrement)
      Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and a Weiner Driver
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The Adjacent JumpDiffusionEdge Instance
    • jumpIncrement

      public JumpDiffusionEdge jumpIncrement​(JumpDiffusionVertex jumpDiffusionVertex, double timeIncrement)
      Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and a Jump Driver
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The Adjacent JumpDiffusionEdge Instance
    • jumpWeinerIncrement

      public JumpDiffusionEdge jumpWeinerIncrement​(JumpDiffusionVertex jumpDiffusionVertex, double timeIncrement)
      Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and Jump/Weiner Drivers
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The Adjacent JumpDiffusionEdge Instance
    • weinerJumpIncrement

      public JumpDiffusionEdge weinerJumpIncrement​(JumpDiffusionVertex jumpDiffusionVertex, double timeIncrement)
      Generate the Adjacent JumpDiffusionEdge Instance from the specified Random Variate and Weiner/Jump Drivers
      Parameters:
      jumpDiffusionVertex - The JumpDiffusionVertex Instance
      timeIncrement - The Time Increment Evolution Unit
      Returns:
      The Adjacent JumpDiffusionEdge Instance