%------------------------------------------------------------------------------------------
%
% Title: 	Calcium Signals in Small Structures
% Filename:	CaSignal_SVREndoCalmodDisc.par
% Author: 	Ronald van Elburg
% 
% Associated Paper:
% Cornelisse LN, van Elburg RAJ, Meredith RM, Yuste R, Mansvelder HD (2007) 
% High Speed Two-Photon Imaging of Calcium Dynamics in Dendritic Spines: 
% Consequences for Spine Calcium Kinetics and Buffer Capacity. 
% PLoS ONE 2(10): e1073 doi:10.1371/journal.pone.0001073
%
%
%
%
%------------------------------------------------------------------------------------------
Structure			= Disc_Structure
R_Structure			= 2/Sigma		% Radius of the simulated structure: Cylinder or Sphere (0.57 um)


Total_Dye 					= 	10
EndogenousBuffer.total      =   Total_EndogenousBuffer 
% Calmodulin Parameters for Dye	
D_Dye			= 0.025    					% Diffusion Constant Calmodulin pers. com. Warren Zipfel (0.025 um^2/ms)
KPlus_Dye 		= 0.4						% Fluorescent dye calcium binding rate (0.45/(ms uM)) 
KD_Dye 			= 2							% Fluorescent dye calcium affinity (0.17 uM)
  
path = ".\"   		% If running under Windows, specify here the path to the
                           						% directory containing the script imported below
file = path "CaSignal_main.par"

include file               						% Import the simulation parameters from the main script


% Auxilary variables for monitoring concentrations at different distances from the membrane

	NoOfSteps = 6    % number of shells in the output (NOT IN THE SIMULATION, THERE THE GRIDSIZE DEFINES THE COMPARTMENTS)
	dR=R_Structure/NoOfSteps
	
	R1k=(NoOfSteps-0.5)*dR
	R6k=(NoOfSteps-5.5)*dR
	
	Ca1 := Ca[R1k] ; Dye1 := Dye[R1k] 
	Ca6 := Ca[R6k] ; Dye6 := Dye[R6k] 

	CaAverage:=Ca[] ; DyeAverage:=Dye[]

% Exporting the variables defined above to file, the first three variables need 
% adjustment defining new scripts, to prevent these scripts from overwriting old 
% results and using the wrong Loop variables, make sure that the LoopVars are 
% integer version of the real loopvars used in for loops.
 
	Exp='SVREndoCalmod'
	LoopVar=Sigma*100
	LoopVar2=Total_EndogenousBuffer
	Geom='D' 

	plot point.mute  Ca1 "Output\Exp""Exp""\CSE""Exp""Geom""_Ca1_""LoopVar""_""LoopVar2"
	plot point.mute  Ca6 "Output\Exp""Exp""\CSE""Exp""Geom""_Ca6_""LoopVar""_""LoopVar2"
	plot point.mute  CaAverage "Output\Exp""Exp""\CSE""Exp""Geom""_CaAverage_""LoopVar""_""LoopVar2"
	
	plot point.mute  Dye1 "Output\Exp""Exp""\CSE""Exp""Geom""_Dye1_""LoopVar""_""LoopVar2"
	plot point.mute  Dye6 "Output\Exp""Exp""\CSE""Exp""Geom""_Dye6_""LoopVar""_""LoopVar2"
	plot point.mute  DyeAverage "Output\Exp""Exp""\CSE""Exp""Geom""_DyeAverage_""LoopVar""_""LoopVar2"

% Parameter variation
	for Total_EndogenousBuffer = 25 to 1000 step 25
	for Sigma   = 0.25  to 10 step 0.25


% The adaptive integration method fails for the fast calcium change
% to overcome this problem we run the first 20 ms with a fixed timestep 
% of 0.001 ms, then after the fast changes we switch to the adaptive method 
% for optimal performance.

Run  20.0  1.0e-3 ; current CalciumCurrent

Run  adaptive 480.0  1.0e-3 accuracy; current CalciumCurrent