{
	"Notes": "Notes fields replace commenting, which is not standard in JSON.",
	"Description": "This configuration demonstrates a validation of AcCoRD's surface 
		reactions. Surface reaction probabilities were implemented based on S.S.
		Andrews, 'Accurate particle-based simulation of adsorption, desorption and partial transmission', Physical Biology, vol. 6, p.046015, 2009.
		In this single file, we simultaneously look at reversible adsorption, irreversible adsorption, and reversible transmission. The average time-varying curves generated by this simulation match those in Fig. 6a of the Andrews paper. Only microscopic regions are considered, since these most easily facilitate surface reactions.
		
		Of particular note, this simulation is configured to use Steady State surface transition probabilities. You can see the change in accuracy by changing these values to Mixed or Normal. The Andrews paper demonstrated that using Steady State transition probabilities is accurate for large time steps and over transient time scales. However, please note that these probabilities were originally derived for 1D systems with flat surfaces. The system here can be considered as 1D.
		
		Takes about 30 seconds to run on a PC.",
	"Output Filename": "accord_sample_surface",
	"Warning Override": false,
	"Simulation Control": {
		"Number of Repeats": 1,
		"Final Simulation Time": 0.1,
		"Global Microscopic Time Step": 1e-3,
		"Random Number Seed": 1,
		"Max Number of Progress Updates": 100
	},
	"Chemical Properties": {
		"Number of Molecule Types": 10,
		"Diffusion Coefficients": [5e-12, 5e-12, 5e-12, 5e-12, 5e-12, 5e-12, 0, 0, 0, 0],
		"Global Flow Type": "None",
		"Chemical Reaction Specification": [
			{							
				"Notes": "Fast irreversible adsorption at surface",
				"Label": "Fast Irr Adsorption",
				"Is Reaction Reversible?": false,
				"Surface Reaction?": true,
				"Surface Reaction Type": "Absorbing",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Adsorbing surface"],
				"Reactants": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0],
				"Products Released?": [false, false, false, false, false, false, false, false, false, false],
				"Reaction Rate": 85.9e-6
			},
			{							
				"Notes": "Slow irreversible adsorption at surface",
				"Label": "Slow Irr Adsorption",
				"Is Reaction Reversible?": false,
				"Surface Reaction?": true,
				"Surface Reaction Type": "Absorbing",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Adsorbing surface"],
				"Reactants": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0],
				"Products Released?": [false, false, false, false, false, false, false, false, false, false],
				"Reaction Rate": 4.23e-6
			},
			{							
				"Notes": "Fast reversible adsorption at surface",
				"Label": "Fast Rev Adsorption",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Fast Rev Desorption",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Absorbing",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Adsorbing surface"],
				"Reactants": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0],
				"Products Released?": [false, false, false, false, false, false, false, false, false, false],
				"Reaction Rate": 85.9e-6
			},
			{							
				"Notes": "Slow reversible adsorption at surface",
				"Label": "Slow Rev Adsorption",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Slow Rev Desorption",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Absorbing",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Adsorbing surface"],
				"Reactants": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
				"Products Released?": [false, false, false, false, false, false, false, false, false, false],
				"Reaction Rate": 4.23e-6
			},
			{							
				"Notes": "Fast reversible desorption at surface",
				"Label": "Fast Rev Desorption",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Fast Rev Adsorption",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Desorbing",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Adsorbing surface"],
				"Reactants": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0],
				"Products": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
				"Products Released?": [false, false, true, false, false, false, false, false, false, false],
				"Release Placement Type": "Steady State Diffusion",
				"Reaction Rate": 276
			},
			{							
				"Notes": "Slow reversible desorption at surface",
				"Label": "Slow Rev Desorption",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Slow Rev Adsorption",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Desorbing",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Adsorbing surface"],
				"Reactants": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
				"Products": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0],
				"Products Released?": [false, false, false, true, false, false, false, false, false, false],
				"Release Placement Type": "Steady State Diffusion",
				"Reaction Rate": 28
			},
			{							
				"Notes": "Fast Forward membrane transition",
				"Label": "Fast Forward",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Fast Backward",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Membrane Outer",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Membrane Surface"],
				"Reactants": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
				"Reaction Rate": 5045e-6
			},
			{							
				"Notes": "Fast Backward membrane transition",
				"Label": "Fast Backward",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Fast Forward",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Membrane Inner",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Membrane Surface"],
				"Reactants": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
				"Reaction Rate": 5045e-6
			},
			{							
				"Notes": "Slow Forward membrane transition",
				"Label": "Slow Forward",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Slow Backward",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Membrane Outer",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Membrane Surface"],
				"Reactants": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
				"Reaction Rate": 4.36e-6
			},
			{							
				"Notes": "Slow Backward membrane transition",
				"Label": "Slow Backward",
				"Is Reaction Reversible?": true,
				"Reverse Reaction Label": "Slow Forward",
				"Surface Reaction?": true,
				"Surface Reaction Type": "Membrane Inner",
				"Surface Transition Probability": "Steady State",
				"Default Everywhere?": false,
				"Exception Regions": ["Membrane Surface"],
				"Reactants": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0],
				"Products": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
				"Reaction Rate": 4.36e-6
			}
		]
	},
	"Environment":	{
		"Subvolume Base Size": 1e-6,
		"Region Specification": [
			{
				"Notes": "Main box.",
				"Label": "A",
				"Parent Label": "",
				"Shape": "Rectangular Box",
				"Type": "Normal",
				"Anchor Coordinate": [0, 0, 0],
				"Integer Subvolume Size": 1,
				"Is Region Microscopic?": true,
				"Number of Subvolumes Per Dimension": [2, 1, 1]
			},
			{
				"Notes": "Adsorbing surface.",
				"Label": "Adsorbing surface",
				"Parent Label": "",
				"Shape": "Rectangle",
				"Type": "3D Surface",
				"Surface Type": "Inner",
				"Anchor Coordinate": [0, 0, 0],
				"Integer Subvolume Size": 1,
				"Is Region Microscopic?": true,
				"Number of Subvolumes Per Dimension": [0, 1, 1]
			},
			{
				"Notes": "Second Box.",
				"Label": "B",
				"Parent Label": "",
				"Shape": "Rectangular Box",
				"Type": "Normal",
				"Anchor Coordinate": [2e-6, 0, 0],
				"Integer Subvolume Size": 1,
				"Is Region Microscopic?": true,
				"Number of Subvolumes Per Dimension": [2, 1, 1]
			},
			{
				"Notes": "Membrane placed between A and B regions.",
				"Label": "Membrane Surface",
				"Parent Label": "",
				"Shape": "Rectangle",
				"Type": "3D Surface",
				"Surface Type": "Membrane",
				"Anchor Coordinate": [2e-6, 0, 0],
				"Integer Subvolume Size": 1,
				"Is Region Microscopic?": true,
				"Number of Subvolumes Per Dimension": [0, 1, 1]
			}
		],
		"Actor Specification": [
		{
				"Notes": "Releaser of molecule type 0 in main box.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["A"],
				"Is Actor Active?": true,
				"Start Time": 0,
				"Is There Max Number of Actions?": true,
				"Max Number of Actions": 1,
				"Is Actor Independent?": true,
				"Action Interval": 10e-3,
				"Is Actor Activity Recorded?": true,
				"Random Number of Molecules?": false,
				"Random Molecule Release Times?": false,
				"Release Interval": 0,
				"Slot Interval": 0,
				"Bits Random?": true,
				"Probability of Bit 1": 1,
				"Modulation Scheme": "CSK",
				"Modulation Bits": 1,
				"Modulation Strength": 20000,
				"Is Molecule Type Released?": [true, false, false, false, false, false, false, false, false, false]
		},
		{
				"Notes": "Releaser of molecule type 1 in main box.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["A"],
				"Is Actor Active?": true,
				"Start Time": 0,
				"Is There Max Number of Actions?": true,
				"Max Number of Actions": 1,
				"Is Actor Independent?": true,
				"Action Interval": 10e-3,
				"Is Actor Activity Recorded?": true,
				"Random Number of Molecules?": false,
				"Random Molecule Release Times?": false,
				"Release Interval": 0,
				"Slot Interval": 0,
				"Bits Random?": true,
				"Probability of Bit 1": 1,
				"Modulation Scheme": "CSK",
				"Modulation Bits": 1,
				"Modulation Strength": 20000,
				"Is Molecule Type Released?": [false, true, false, false, false, false, false, false, false, false]
		},
		{
				"Notes": "Releaser of molecule type 2 in main box.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["A"],
				"Is Actor Active?": true,
				"Start Time": 0,
				"Is There Max Number of Actions?": true,
				"Max Number of Actions": 1,
				"Is Actor Independent?": true,
				"Action Interval": 10e-3,
				"Is Actor Activity Recorded?": true,
				"Random Number of Molecules?": false,
				"Random Molecule Release Times?": false,
				"Release Interval": 0,
				"Slot Interval": 0,
				"Bits Random?": true,
				"Probability of Bit 1": 1,
				"Modulation Scheme": "CSK",
				"Modulation Bits": 1,
				"Modulation Strength": 20000,
				"Is Molecule Type Released?": [false, false, true, false, false, false, false, false, false, false]
		},
		{
				"Notes": "Releaser of molecule type 3 in main box.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["A"],
				"Is Actor Active?": true,
				"Start Time": 0,
				"Is There Max Number of Actions?": true,
				"Max Number of Actions": 1,
				"Is Actor Independent?": true,
				"Action Interval": 10e-3,
				"Is Actor Activity Recorded?": true,
				"Random Number of Molecules?": false,
				"Random Molecule Release Times?": false,
				"Release Interval": 0,
				"Slot Interval": 0,
				"Bits Random?": true,
				"Probability of Bit 1": 1,
				"Modulation Scheme": "CSK",
				"Modulation Bits": 1,
				"Modulation Strength": 20000,
				"Is Molecule Type Released?": [false, false, false, true, false, false, false, false, false, false]
		},
		{
				"Notes": "Releaser of molecule type 4 in main box.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["A"],
				"Is Actor Active?": true,
				"Start Time": 0,
				"Is There Max Number of Actions?": true,
				"Max Number of Actions": 1,
				"Is Actor Independent?": true,
				"Action Interval": 10e-3,
				"Is Actor Activity Recorded?": true,
				"Random Number of Molecules?": false,
				"Random Molecule Release Times?": false,
				"Release Interval": 0,
				"Slot Interval": 0,
				"Bits Random?": true,
				"Probability of Bit 1": 1,
				"Modulation Scheme": "CSK",
				"Modulation Bits": 1,
				"Modulation Strength": 20000,
				"Is Molecule Type Released?": [false, false, false, false, true, false, false, false, false, false]
		},
		{
				"Notes": "Releaser of molecule type 5 in main box.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["A"],
				"Is Actor Active?": true,
				"Start Time": 0,
				"Is There Max Number of Actions?": true,
				"Max Number of Actions": 1,
				"Is Actor Independent?": true,
				"Action Interval": 10e-3,
				"Is Actor Activity Recorded?": true,
				"Random Number of Molecules?": false,
				"Random Molecule Release Times?": false,
				"Release Interval": 0,
				"Slot Interval": 0,
				"Bits Random?": true,
				"Probability of Bit 1": 1,
				"Modulation Scheme": "CSK",
				"Modulation Bits": 1,
				"Modulation Strength": 20000,
				"Is Molecule Type Released?": [false, false, false, false, false, true, false, false, false, false]
		},
		{
				"Notes": "Observer at adsorbing surface. Only the last 4 types of molecules should give non-zero values.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["Adsorbing surface"],
				"Is Actor Active?": false,
				"Start Time": 1e-10,
				"Is There Max Number of Actions?": false,
				"Is Actor Independent?": true,
				"Action Interval": 1e-3,
				"Is Actor Activity Recorded?": true,
				"Is Time Recorded with Activity?": false,
				"Is Molecule Type Observed?": [true, true, true, true, true, true, true, true, true, true],
				"Is Molecule Position Observed?": [false, false, false, false, false, false, false, false, false, false]
		},
		{
				"Notes": "Observer at the second box. Only the molecules of type 4 and 5 should give non-zero values.",
				"Is Location Defined by Regions?": true,
				"List of Regions Defining Location": ["B"],
				"Is Actor Active?": false,
				"Start Time": 1e-10,
				"Is There Max Number of Actions?": false,
				"Is Actor Independent?": true,
				"Action Interval": 1e-3,
				"Is Actor Activity Recorded?": true,
				"Is Time Recorded with Activity?": false,
				"Is Molecule Type Observed?": [true, true, true, true, true, true, true, true, true, true],
				"Is Molecule Position Observed?": [false, false, false, false, false, false, false, false, false, false]
		}
		]		
	}
}
