MathGroup Archive 2008

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Multiple Executions of .nb file part2

  • To: mathgroup at smc.vnet.net
  • Subject: [mg90518] Re: Multiple Executions of .nb file part2
  • From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
  • Date: Fri, 11 Jul 2008 02:05:56 -0400 (EDT)
  • Organization: Uni Leipzig
  • References: <g54op3$f50$1@smc.vnet.net>
  • Reply-to: kuska at informatik.uni-leipzig.de

Hi,

 > fun[]:= (SmV;
 >
 > ***code***
 >
 > )
 >

cant't work but

fun[SmV_]:=Module[{your local variables except SmV},***code***]

may be.

Regards
   Jens

Dave wrote:
> Hi,
> 
> I think I maybe over simplified my situation. My project uses a series of 
> nested differential equations. These run over a given time and then print 
> either a graph or the plot points or both (depending on my needs).
> 
> An example of the code is:
> 
> ****************************
> 
> 
> Off[General::spell]
> 
> time = 500;
> 
> SmV = -80;
> 
> 
> 
> PD2mnax0[PD2u_] := 1/(1 + Exp[-(PD2u + 24.7)/5.29]);
> 
> PD2hnax0[PD2u_] := 1/(1 + Exp[(PD2u + 48.9)/5.18]);
> 
> PD2mk10x[PD2u_] := 1/(1 + Exp[-(PD2u + 14.2)/11.8]);
> 
> PD2taumnax[PD2u_] := 1.32 - 1.26/(1 + Exp[-(PD2u + 120)/25]);
> 
> PD2tauhnax[PD2u_] := (0.67/(1 + Exp[-(PD2u + 62.9)/10]))*(1.5 + 1/(1 + Exp[(
> 
> PD2u + 34.9)/3.6]));
> 
> PD2taumk1[PD2u_] := 7.2 - 6.4/(1 + Exp[-(PD2u + 28.3)/19.2]);
> 
> 
> 
> 
> 
> solution = NDSolve[{
> 
> 
> PD2mnax'[t] == (PD2mnax0[PD2z[t]] - PD2mnax[t])*(1/
> 
> PD2taumnax[PD2z[t]]), PD2mnax[0] == PD2mnax0[-80]*(1/
> 
> PD2taumnax[-80]), PD2hnax'[t] == (PD2hnax0[PD2z[t]] - PD2hnax[
> 
> t])*(1/PD2tauhnax[PD2z[
> 
> t]]), PD2hnax[
> 
> 0] == PD2hnax0[-80]*(1/PD2tauhnax[-80]),
> 
> PD2mkx'[t] == (PD2mk10x[PD2z[t]] - \
> 
> PD2mkx[t])*(1/PD2taumk1[PD2z[t]]),
> 
> PD2mkx[0] == PD2mk10x[-80]*(1/PD2taumk1[-80]), PD2z'[t] == (-1*(0
> 
> + 1*1100*(PD2mnax[t]^3)*PD2hnax[t]*(PD2z[t] - 50)
> 
> + 1*150*(PD2mkx[t]^4)*(PD2z[t] + 80)
> 
> + 1*0.00081*(PD2z[t] + 50)
> 
> )
> 
> *(1/6)),
> 
> PD2z[0] == SmV
> 
> 
> },
> 
> 
> 
> 
> {PD2z, PD2mnax,
> 
> PD2hnax, PD2mkx}, {t, 0, time}, Method -> Automatic, MaxSteps -> \
> 
> Infinity];
> 
> 
> 
> ParametricPlot[Evaluate[{t, PD2z[
> 
> t]} /. solution], {t, 0, time},
> 
> PlotPoints -> time, PlotRange -> {-80, 50}, PlotLabel -> "PD Axon"];
> 
> (*
> 
> mkw = Table[0, {time-1}];
> 
> For[w=1,w<(time),mkw[[w]]=PD2z[w]/.solution;w++];
> 
> mkw
> 
> *)
> 
> 
> 
> *******************************
> 
> 
> 
> 
> 
> This produces what looks like a flat line on a graph.
> 
> I need to run this file several times changing the variable SmV. Can I 
> encapsulate the whole thing in a function? I have tried but it doesn't work.
> 
> 
> fun[]:= (SmV;
> 
> ***code***
> 
> )
> 
> fun[-80]
> 
> out- fun[-80]
> 
> 
> 
> Thank you
> 
> David Fourie
> 
> 
> 
> 
> 
> 
> 


  • Prev by Date: Re: What does FullForm[ ] actually do?
  • Next by Date: Re: Problem parsing date formats using Import
  • Previous by thread: Multiple Executions of .nb file part2
  • Next by thread: Re: Multiple Executions of .nb file part2