<div dir="ltr">To simply trim out all +/-150 uV, for sample, from all channel all dataponts, use trimOutlier.<div><a href="http://sccn.ucsd.edu/wiki/Plugin_list_process">http://sccn.ucsd.edu/wiki/Plugin_list_process</a><br>

</div><div><br></div><div>Makoto</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-04-09 13:10 GMT-07:00 Jason Palmer <span dir="ltr"><<a href="mailto:japalmer29@gmail.com" target="_blank">japalmer29@gmail.com</a>></span>:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dear Tatu,<br>
<br>
Apparently that data is causing a "stack overflow", which can occur with<br>
large datasets using the Windows version (which forces a maximum stack<br>
size). It may be just small enough with the block of data removed. However,<br>
since it also contains large artifacts, this probably contributes to the<br>
need for addition stack resources. The Mac and Linux versions should not<br>
have this issue.<br>
<br>
I typically remove large artifacts before running ICA by simply detecting<br>
timepoints where the potential magnitude is greater than say Â 150uV, and use<br>
pop_select.m to remove them. Or if the boundary events are always at the<br>
beginning/end, or known locations, you can use pop_select to remove them as<br>
well. Or you could search for boundary events and remove continuous section<br>
around the boundaries.<br>
<br>
FYI, I usually remove bad channels with simple heuristics, do average<br>
reference, Â and high-pass filter above 1 Hz as the remaining pre-processing.<br>
<br>
Best,<br>
Jason<br>
<div class="HOEnZb"><div class="h5"><br>
-----Original Message-----<br>
From: <a href="mailto:eeglablist-bounces@sccn.ucsd.edu">eeglablist-bounces@sccn.ucsd.edu</a><br>
[mailto:<a href="mailto:eeglablist-bounces@sccn.ucsd.edu">eeglablist-bounces@sccn.ucsd.edu</a>] On Behalf Of Tatu Huovilainen<br>
Sent: Wednesday, April 09, 2014 1:47 AM<br>
To: <a href="mailto:eeglablist@sccn.ucsd.edu">eeglablist@sccn.ucsd.edu</a><br>
Subject: [Eeglablist] AMICA on semicontinuous data<br>
<br>
Hello EEGlab community,<br>
<br>
I'm still somewhat new to EEGlab, but the features and their documentation<br>
have made it really easy to hop on. Still, I've run into a problem I don't<br>
have the knowhow to solve and the documentation on it is pretty scarce.<br>
<br>
I'm using AMICA for cleaning the data, which works unbelievably well by the<br>
way, but I've learned that if there's even one boundary event in the data<br>
the program crashes. This is problematic as some of the blocks I'm trying to<br>
run ICA on have some ~10 second windows with huge artefacts that have to be<br>
removed. Below is an output of the AMICA command. It's from a block that<br>
without a removed part would run through perfectly well.<br>
<br>
Has anyone encountered this before, and is there maybe some simple<br>
workaround I don't see?<br>
<br>
Any advice would be appreciated. Thank you in advance!<br>
<br>
-Tatu<br>
<br>
(Using Matlab R2012a & EEGlab 13.1.1<br>
[ EEG.icaweights, EEG.icasphere, mods ] = runamica12(<br>
EEG.data(chanInd('EEG'),:) ); Â %%% The chanInd('EEG') just returns a list of<br>
channels of the type.<br>
The system cannot find the path specified.<br>
The system cannot find the path specified.<br>
The system cannot find the path specified.<br>
No recognized parallel environment found. Run qconf -spl to get a list of<br>
available environments and use keyword use_pe.<br>
Running locally with maximum of 4 threads.<br>
Writing data file: D:\Tatu\AMICATMP\tmpdata61471.fdt<br>
  Â  Â  Â  Â  Â  1 processor name = XXXXXX<br>
  Â  Â  Â  Â  Â  1 host_num = Â  1376903278<br>
  This is MPI process Â  Â  Â  Â  Â  1 of Â  Â  Â  Â  Â  1 ; I am process Â  Â  Â  Â  Â  1<br>
of<br>
  Â  Â  Â  Â  Â  1 on node: XXXXXX %Post removed, probably no need..<br>
  Â  Â  Â  Â  Â  1 Â : node root process Â  Â  Â  Â  Â  1 of Â  Â  Â  Â  Â  1<br>
Processing arguments ...<br>
  num_files = Â  Â  Â  Â  Â  Â 1<br>
  FILES:<br>
  D:\Tatu\AMICATMP\tmpdata61471.fdt<br>
  num_dir_files = Â  Â  Â  Â  Â  Â 1<br>
  initial matrix block_size = Â  Â  Â  Â  Â 256<br>
  do_opt_block = Â  Â  Â  Â  Â  Â 0<br>
  number of models = Â  Â  Â  Â  Â  Â 1<br>
  number of density mixture components = Â  Â  Â  Â  Â  Â 3<br>
  pdf type = Â  Â  Â  Â  Â  Â 0<br>
  max_iter = Â  Â  Â  Â  2000<br>
  num_samples = Â  Â  Â  Â  Â  Â 1<br>
  data_dim = Â  Â  Â  Â  Â 134<br>
  field_dim = Â  Â  Â  382975<br>
  do_history = Â  Â  Â  Â  Â  Â 0<br>
  histstep = Â  Â  Â  Â  Â  10<br>
  share_comps = Â  Â  Â  Â  Â  Â 0<br>
  share_start = Â  Â  Â  Â  Â 100<br>
  comp_thresh = Â  0.990000000000000<br>
  share_int = Â  Â  Â  Â  Â 100<br>
  initial lrate = Â  5.000000000000000E-002<br>
  minimum lrate = Â  1.000000000000000E-008<br>
  lrate factor = Â  0.500000000000000<br>
  initial rholrate = Â  5.000000000000000E-002<br>
  rho0 = Â  Â 1.50000000000000<br>
  min rho = Â  Â 1.00000000000000<br>
  max rho = Â  Â 2.00000000000000<br>
  rho lrate factor = Â  0.500000000000000<br>
  kurt_start = Â  Â  Â  Â  Â  Â 3<br>
  num kurt = Â  Â  Â  Â  Â  Â 5<br>
  kurt interval = Â  Â  Â  Â  Â  Â 1<br>
  do_newton = Â  Â  Â  Â  Â  Â 1<br>
  newt_start = Â  Â  Â  Â  Â  50<br>
  newt_ramp = Â  Â  Â  Â  Â  10<br>
  initial newton lrate = Â  Â 1.00000000000000<br>
  do_reject = Â  Â  Â  Â  Â  Â 0<br>
  num reject = Â  Â  Â  Â  Â  Â 3<br>
  reject sigma = Â  Â 3.00000000000000<br>
  reject start = Â  Â  Â  Â  Â  Â 2<br>
  reject interval = Â  Â  Â  Â  Â  Â 3<br>
  max_thrds = Â  Â  Â  Â  Â  Â 2<br>
  write step = Â  Â  Â  Â  Â  10<br>
  write_nd = Â  Â  Â  Â  Â  Â 0<br>
  write_LLt = Â  Â  Â  Â  Â  Â 1<br>
  dec window = Â  Â  Â  Â  Â  Â 1<br>
  max_decs = Â  Â  Â  Â  Â  Â 3<br>
  fix_init = Â  Â  Â  Â  Â  Â 0<br>
  update_A = Â  Â  Â  Â  Â  Â 1<br>
  update_c = Â  Â  Â  Â  Â  Â 1<br>
  update_gm = Â  Â  Â  Â  Â  Â 1<br>
  update_alpha = Â  Â  Â  Â  Â  Â 1<br>
  update_mu = Â  Â  Â  Â  Â  Â 1<br>
  update_beta = Â  Â  Â  Â  Â  Â 1<br>
  invsigmax = Â  Â 100.000000000000<br>
  invsigmin = Â  0.000000000000000E+000<br>
  do_rho = Â  Â  Â  Â  Â  Â 1<br>
  load_rej = Â  Â  Â  Â  Â  Â 0<br>
  load_c = Â  Â  Â  Â  Â  Â 0<br>
  load_gm = Â  Â  Â  Â  Â  Â 0<br>
  load_alpha = Â  Â  Â  Â  Â  Â 0<br>
  load_mu = Â  Â  Â  Â  Â  Â 0<br>
  load_beta = Â  Â  Â  Â  Â  Â 0<br>
  load_rho = Â  Â  Â  Â  Â  Â 0<br>
  load_comp_list = Â  Â  Â  Â  Â  Â 0<br>
  do_mean = Â  Â  Â  Â  Â  Â 1<br>
  do_sphere = Â  Â  Â  Â  Â  Â 1<br>
  doPCA = Â  Â  Â  Â  Â  Â 1<br>
  pcakeep = Â  Â  Â  Â  Â 134<br>
  pcadb = Â  Â 30.0000000000000<br>
  byte_size = Â  Â  Â  Â  Â  Â 4<br>
  doscaling = Â  Â  Â  Â  Â  Â 1<br>
  scalestep = Â  Â  Â  Â  Â  Â 1<br>
A subdirectory or file D:\Tatu\AMICATMP\amicaouttmp\ already exists.<br>
  output directory = D:\Tatu\AMICATMP\amicaouttmp\<br>
  Â  Â  Â  Â  Â  1 : setting num_thrds to Â  Â  Â  Â  Â  Â 2 Â ...<br>
  Â  Â  Â  Â  Â  1 : using Â  Â  Â  Â  Â  2 threads.<br>
  Â  Â  Â  Â  Â  1 : node_thrds = Â  Â  Â  Â  Â  Â 2<br>
  bytes in real = Â  Â  Â  Â  Â  Â 1<br>
  Â  Â  Â  Â  Â  1 : REAL nbyte = Â  Â  Â  Â  Â  Â 1<br>
  getting segment list ...<br>
  blocks in sample = Â  Â  Â  382975<br>
  total blocks = Â  Â  Â  382975<br>
  node blocks = Â  Â  Â  382975<br>
  node Â  Â  Â  Â  Â  Â 1 Â start: file Â  Â  Â  Â  Â  Â 1 Â sample Â  Â  Â  Â  Â  Â 1 Â index<br>
  Â  Â  Â  Â  Â  1<br>
  node Â  Â  Â  Â  Â  Â 1 Â stop : file Â  Â  Â  Â  Â  Â 1 Â sample Â  Â  Â  Â  Â  Â 1 Â index<br>
  Â  Â  Â 382975<br>
  Â  Â  Â  Â  Â  1 : data = Â  Â 19.4008998870850 Â  Â  Â  Â 8.51673507690430<br>
  getting the mean ...<br>
  Â mean = Â  -1.38158794941323 Â  Â  Â  9.108994773376549E-003<br>
  -9.745015379274158E-003<br>
  subtracting the mean ...<br>
  getting the sphering matrix ...<br>
  cnt = Â  Â  Â  382975<br>
  doing eig nx = Â  Â  Â  Â  Â 134 Â lwork = Â  Â  Â  179560<br>
  minimum eigenvalues = Â  Â 1.32521304789175 Â  Â  Â  Â 1.60365130875427<br>
  Â  1.83976537562973<br>
  maximum eigenvalues = Â  Â 287079.512877785 Â  Â  Â  Â 8402.99938147310<br>
  Â  4669.66292334350<br>
  num eigs kept = Â  Â  Â  Â  Â 134<br>
  numeigs = Â  Â  Â  Â  Â 134<br>
  sphering the data ...<br>
  Â  Â  Â  Â  Â  1 Allocating variables ...<br>
  Â  Â  Â  Â  Â  1 : Initializing variables ...<br>
  Â  Â  Â  Â  Â  1 : block size = Â  Â  Â  Â  Â 256<br>
  Â  Â  Â  Â  Â  1 : entering the main loop ...<br>
forrtl: severe (170): Program Exception - stack overflow<br>
Image Â  Â  Â  Â  Â  Â  Â PC Â  Â  Â  Â  Â  Â  Â  Â Routine Â  Â  Â  Â  Â  Â Line Â  Â  Â  Â Source<br>
amica12win64.exe Â  000000013FCEE047 Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
amica12win64.exe Â  000000013FC55847 Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
libiomp5md.dll Â  Â  000000001007BC0C Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
libiomp5md.dll Â  Â  000000001005C428 Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
libiomp5md.dll Â  Â  0000000010053BC8 Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
libiomp5md.dll Â  Â  000000001003591C Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
amica12win64.exe Â  000000013FC41A35 Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
amica12win64.exe Â  000000013FC1447C Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
amica12win64.exe Â  000000014008F42C Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
amica12win64.exe Â  000000013FCEE56F Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
kernel32.dll Â  Â  Â  0000000076CA652D Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
ntdll.dll Â  Â  Â  Â  Â 0000000076DDC541 Â Unknown Â  Â  Â  Â  Â  Â  Â  Unknown Â Unknown<br>
No gm present, setting num_models to 1<br>
No W present, exiting<br>
Reference to non-existent field 'W'.<br>
<br>
Error in runamica12 (line 851)<br>
  Â  Â weights = mods.W(:,:,1);<br>
<br>
--------------------------------<br>
Tatu Huovilainen<br>
Research Assistant<br>
CBRU - Helsinki University<br>
<br>
_______________________________________________<br>
Eeglablist page: <a href="http://sccn.ucsd.edu/eeglab/eeglabmail.html" target="_blank">http://sccn.ucsd.edu/eeglab/eeglabmail.html</a><br>
To unsubscribe, send an empty email to <a href="mailto:eeglablist-unsubscribe@sccn.ucsd.edu">eeglablist-unsubscribe@sccn.ucsd.edu</a><br>
For digest mode, send an email with the subject "set digest mime" to<br>
<a href="mailto:eeglablist-request@sccn.ucsd.edu">eeglablist-request@sccn.ucsd.edu</a><br>
<br>
_______________________________________________<br>
Eeglablist page: <a href="http://sccn.ucsd.edu/eeglab/eeglabmail.html" target="_blank">http://sccn.ucsd.edu/eeglab/eeglabmail.html</a><br>
To unsubscribe, send an empty email to <a href="mailto:eeglablist-unsubscribe@sccn.ucsd.edu">eeglablist-unsubscribe@sccn.ucsd.edu</a><br>
For digest mode, send an email with the subject "set digest mime" to <a href="mailto:eeglablist-request@sccn.ucsd.edu">eeglablist-request@sccn.ucsd.edu</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Makoto Miyakoshi<br>Swartz Center for Computational Neuroscience<br>Institute for Neural Computation, University of California San Diego<br>

</div>
</div>