anchor.diff:                  end,
                   [min(New_V, ?SPIKE_THRESHOLD), New_U]
           end,
  -    [V || [V, U] <- utils:iterate(?TIMESTEPS, F,
  +    [V || [V, _] <- utils:iterate(?TIMESTEPS, F,
                                     [?NEURON_INIT_V, ?NEURON_INIT_U])].
   
   spike_positions(Volt_values) ->
  
positive.code:     Delta = math:pow(abs(TAi - TBi), ?SPIKE_TIME_P),
      Acc + Delta.
  
  time_fitness(G, GSpikes, A, ASpikes) ->
      Zipped = utils:zip(GSpikes, ASpikes),
      N = length(Zipped),
      Total = lists:foldl(time_sum, 0, Zipped),
      %% Spike difference penalty here.
      Res = math:pow(Total, 1/?SPIKE_TIME_P)/N,
      1 / max(Res, 0.00001).
  
negative.code: 
  -record(neuron, {gtype, train, spikes, fitness=0}).
  
  parse_args([Fname, Sdm | T ]) ->
      [atom_to_list(Fname), Sdm | T].
  
  random_genotype_fn(_) ->
      fun () ->
  