objref theGraph // ki
proc ifHasContactThenCreateGraphForPointClosestToSphereCentre() { local arc localobj outList, outVec, sec_ref
outList = new List()
outVec = new Vector(2)
pyObj.segmentSearcher.findSegmClosestToThis3DPoint(kSrc.x, kSrc.y, kSrc.z, outList, outVec)
sec_ref = outList.o(0)
arc = outVec.x[0]
kSrc.cachedDistToClosestSegm = outVec.x[1]
if (!kSrc.hasContactWithTheCell()) {
return
}
sec_ref.sec {
_createGraphPotasasiumIn(arc)
}
}
proc dismissGraph() { localobj nil
if (theGraph == nil) {
return
}
removeItemFromList(graphList[1], theGraph)
theGraph.unmap()
theGraph = nil
}
ki_min = 110 // mM
ki_range = 0.3 // mM
proc _createGraphPotasasiumIn() { local arc localobj graph
strdef var, label
arc = $1
graph = new Graph(0)
graphList[1].append(graph)
graph.view(0, ki_min, tstop, ki_range, 593, 780, 400, 200)
sprint(var, "%s.ki(0.5)", somaSecName)
graph.addvar(var, enumColours.red, 1, 0.5, 0.9, 2)
sprint(label, "%s.ki(%g)", secname(), arc)
graph.addvar(label, &ki(arc), enumColours.blue, 1, 0.5, 0.9, 2)
graph.yaxis(0)
graph.label(0.5, 0.09, "Time (ms)", 2, 1, 0, 1, 1)
graph.label(0.1, 0.9, "[K+]in (mM)", 2, 1, 0, 1, 1)
theGraph = graph
}