|  | 
|  | IntMpdRdmeSolverExtended () | 
| virtual | ~IntMpdRdmeSolverExtended () | 
| virtual void | buildModel (const uint numberSpeciesA, const uint numberReactionsA, const uint *initialSpeciesCountsA, const uint *reactionTypesA, const double *KA, const int *SA, const uint *DA, const uint kCols) override | 
| virtual void | buildDiffusionModel (const uint numberSiteTypesA, const double *DFA, const uint *RLA, lattice_size_t latticeXSize, lattice_size_t latticeYSize, lattice_size_t latticeZSize, site_size_t particlesPerSite, const unsigned int bytes_per_particle, si_dist_t latticeSpacing, const uint8_t *latticeData, const uint8_t *latticeSitesData, bool rowMajorData) override | 
| virtual void | runTimestep (CudaIntLattice *lattice, uint32_t timestep) override | 
| void | setParticleSizes (const uint32_t *sizes, uint32_t numTypes) | 
| void | enableParticleSizeChecking (bool enable=true) | 
| bool | isParticleSizeCheckingEnabled () const | 
| uint32_t | validateConstraints (CudaIntLattice *lattice) | 
| void | getOccupancyStatistics (CudaIntLattice *lattice, uint32_t *occupancyCounts, uint32_t maxOccupancy) | 
| uint32_t | getParticleSize (particle_t particleType) const | 
|  | IntMpdRdmeSolver () | 
| virtual | ~IntMpdRdmeSolver () | 
| virtual void | initialize (unsigned int replicate, map< string, string > *parameters, ResourceAllocator::ComputeResources *resources) | 
|  | Initialize the simulation. 
 | 
| virtual bool | needsReactionModel () | 
|  | Tells whether the solver needs a reaction model. 
 | 
| virtual bool | needsDiffusionModel () | 
|  | Tells whether the solver needs a reaction model. 
 | 
| virtual void | generateTrajectory () | 
|  | Actually run the simulation. 
 | 
| virtual void | setReactionRate (unsigned int rxid, float rate) | 
|  | RDMESolver (RandomGenerator::Distributions neededDists) | 
| virtual | ~RDMESolver () | 
| virtual void | setDiffusionModel (DiffusionModel *dm, const uint8_t *lattice, size_t latticeSize, const uint8_t *latticeSites, size_t latticeSitesSize) | 
|  | CMESolver (RandomGenerator::Distributions neededDists) | 
| virtual | ~CMESolver () | 
| virtual void | setReactionModel (lm::io::ReactionModel *reactionModel) | 
| virtual void | setModelPropensityFunction (uint reaction, double(*propensityFunction)(double time, uint *speciesCounts, void *args), void *propensityFunctionArg) | 
| virtual void | setSpeciesUpperLimit (uint species, uint limit) | 
| virtual void | setSpeciesLowerLimit (uint species, uint limit) | 
| virtual void | setFptTrackingList (list< uint > speciesList) | 
| virtual void | addToParameterTrackingList (pair< string, double * >parameter) | 
| virtual void | setReactionRateCME (unsigned int reactionId, double rate) | 
| virtual void | getSpeciesCountView (uint **counts, int *number) | 
| virtual void | getReactionRateConstantsView (int reactionNumber, double **rates, int *rateConstantCount) | 
|  | MESolver () | 
|  | Create the MESolver. 
 | 
| virtual | ~MESolver () | 
|  | 
| virtual void | allocateLattice (lattice_size_t latticeXSize, lattice_size_t latticeYSize, lattice_size_t latticeZSize, site_size_t particlesPerSite, const unsigned int bytes_per_particle, si_dist_t latticeSpacing) | 
| virtual void | writeLatticeData (double time, CudaIntLattice *lattice, lm::io::Lattice *latticeDataSet) | 
| virtual void | writeLatticeSites (double time, CudaIntLattice *lattice) | 
| virtual void | recordSpeciesCounts (double time, CudaIntLattice *lattice, lm::io::SpeciesCounts *speciesCountsDataSet) | 
| virtual void | writeSpeciesCounts (lm::io::SpeciesCounts *speciesCountsDataSet) | 
| virtual int | hookSimulation (double time, CudaIntLattice *lattice) | 
| virtual void | hookCheckSimulation (double time, CudaIntLattice *lattice) | 
| virtual uint64_t | getTimestepSeed (uint32_t timestep, uint32_t substep) | 
| virtual void | setLatticeData (const uint8_t *latticeData) | 
| virtual void | computePropensities () | 
| virtual void | copyModelsToDevice () | 
| virtual void | calculateXLaunchParameters (unsigned int *gridXSize, dim3 *gridSize, dim3 *threadBlockSize, const unsigned int maxXBlockSize, const unsigned int latticeXSize, const unsigned int latticeYSize, const unsigned int latticeZSize) | 
| virtual void | calculateYLaunchParameters (unsigned int *gridXSize, dim3 *gridSize, dim3 *threadBlockSize, const unsigned int blockXSize, const unsigned int blockYSize, const unsigned int latticeXSize, const unsigned int latticeYSize, const unsigned int latticeZSize) | 
| virtual void | calculateZLaunchParameters (unsigned int *gridXSize, dim3 *gridSize, dim3 *threadBlockSize, const unsigned int blockXSize, const unsigned int blockZSize, const unsigned int latticeXSize, const unsigned int latticeYSize, const unsigned int latticeZSize) | 
| virtual void | calculateReactionLaunchParameters (unsigned int *gridXSize, dim3 *gridSize, dim3 *threadBlockSize, const unsigned int blockXSize, const unsigned int blockYSize, const unsigned int latticeXSize, const unsigned int latticeYSize, const unsigned int latticeZSize) | 
| virtual void | allocateDiffusionModel (uint numberSiteTypesA, lattice_size_t latticeXSize, lattice_size_t latticeYSize, lattice_size_t latticeZSize, site_size_t particlesPerSite, unsigned int bytes_per_particle, si_dist_t latticeSpacing) | 
| virtual void | setLatticeSitesData (const uint8_t *latticeSitesData) | 
| virtual void | destroyDiffusionModel () | 
| virtual void | allocateModel (uint numberSpecies, uint numberReactions) | 
| virtual void | destroyModel () | 
| virtual double | recordParameters (double nextRecordTime, double recordInterval, double simulationTime) | 
| virtual void | queueRecordedParameters (bool flush=false) | 
| void | updateSpeciesCounts (uint r) | 
| bool | reachedSpeciesLimit () | 
| virtual int | hookSimulation (double time) | 
| virtual int | onBeginTrajectory () | 
| virtual int | onEndTrajectory () | 
| static double | zerothOrderPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | firstOrderPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | secondOrderPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | secondOrderSelfPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | kHillPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | kHillTransportPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | zerothOrderHeavisidePropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | michaelisMentenPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | competitiveMMPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | uncompetitiveMMPropensity (double time, uint *speciesCounts, void *pargs) | 
| static double | noncompetitiveMMPropensity (double time, uint *speciesCounts, void *pargs) | 
| uint32_t | seed | 
| double | tau | 
| bool | reactionModelModified | 
| void * | cudaOverflowList | 
| cudaStream_t | cudaStream | 
| uint32_t | overflowTimesteps | 
| uint32_t | overflowListUses | 
| float * | model_reactionRates | 
| size_t | zeroOrderSize | 
| size_t | firstOrderSize | 
| size_t | secondOrderSize | 
| float * | zeroOrder | 
| float * | firstOrder | 
| float * | secondOrder | 
| float * | propZeroOrder | 
| float * | propFirstOrder | 
| float * | propSecondOrder | 
| uint | numberSiteTypes | 
| double * | DF | 
| uint * | RL | 
| Lattice * | lattice | 
| RandomGenerator::Distributions | neededDists | 
| unsigned int | replicate | 
| map< string, string > * | parameters | 
| ResourceAllocator::ComputeResources * | resources | 
| RandomGenerator * | rng | 
| uint | numberSpecies | 
| uint | numberSpeciesToTrack | 
| uint | numberReactions | 
| uint * | initialSpeciesCounts | 
| uint * | speciesCounts | 
| uint * | reactionTypes | 
| int * | S | 
| uint * | D | 
| void ** | propensityFunctions | 
| void ** | propensityFunctionArgs | 
| list< PropensityArgs * > | propensityArgs | 
| uint | numberSpeciesLimits | 
| SpeciesLimit * | speciesLimits | 
| uint | numberFptTrackedSpecies | 
| FPTTracking * | fptTrackedSpecies | 
| list< TrackedParameter > | trackedParameters | 
| uint * | numberDependentSpecies | 
| uint ** | dependentSpecies | 
| int ** | dependentSpeciesChange | 
| uint * | numberDependentReactions | 
| uint ** | dependentReactions | 
Extended IntMpdRdmeSolver that supports particle size-aware simulations. Uses specialized CUDA kernels that enforce size constraints during diffusion and reaction operations.