From: Gunter K. <gu...@pe...> - 2014-04-17 08:09:28
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Dear all, I am currently using Maxima for visualization of and calculations with real data from oscilloscopes. Normally this data is in a semicolon-separated file of the format time;Channel 2;Channel 3;Channel 4;Channel 5 time;Channel 2;Channel 3;Channel 4;Channel 5 time;Channel 2;Channel 3;Channel 4;Channel 5 ... with 10000 to 1000000 lines. Currently I use read_matrix from the package numericalio to read the data. But I would be willing to convert everything into another format if that is necessary. I then put the data from the 1..100 individual files a measurement series is made up from into an array of lists with the format similar to the following: nolabels:true; measurementseries:makelist( block( [data], data:transpose(read_matrix(filename)) [ time=list_matrix_entries(row(data,1)), ch1=list_matrix_entries(row(data,2)), ch2=list_matrix_entries(row(data,3)), ch3=list_matrix_entries(row(data,4)), ch4=list_matrix_entries(row(data,5)) ] ), filename, [ "filename1", "filename2", "filename3", "filename4", "filename5" ] ) I rather like the object-orientied approach to keep all information a measurement is made up from together. Unfortunately tend to run out of memory much quicker than I thought hoping that every number would use 64 Bits of memory plus a little bit of overhead for every list I create (even with nolabels:true and declaring all temporary variables to be temporary by block() commands.) ...and the whole thing is slower than I would like it to, too. Is here a significantly more efficient way to deal with big lists of numbers in maxima? Thanks a lot, Gunter. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIbBAEBAgAGBQJTT4tSAAoJEFyGwOQhHVuOEJIP9iUsvzZDsXXxx/Zuk6cbEpY3 fMEl6F3spv7F+VVBxJSuAAKRyIdFzo+QldrjIys0D21kJ0feKIqu2R+0r8K4wmZx fgBagzjt1wvhVMyuMiDLYyP9tT3nYHpvKZdnpPIjR8MginB5A36mjU7puvHe9Cqg W/JptY3mixSzSp+0rVMMpMegZzcoiGAyAjbIw5bd1T6v8PyBNGhZ+mB3WRuXqriL iTE8W03LTzsAPeMTtYvlaAJcAj/A9uO6wFDev+abTwO4UXD8qTwn87SQu5TV/43e N1Em0Wl1bAUHnd1iTNs4N+r9NJCcpyS2L81W/TlqZjCamV+/EmiLrEh1LYCf2l1R Qb1lZFmbDy9KlgAyi4iR7cmtkM1wKaiFywBWR45O7dThTDvuvLwjSJVmvLSkq46k gZHfZ9LMgzELmMiSlI3lfy4vFOYCzbEXRXJoXYjvn9OKINr1ONrp3CSj0Df1bL+W sJI2WoKEP020HHHmFQw70uv6at6lzCsZXELOzd1Nop8g75FyH3J9jJaWw3CqcaUY KAyPUSi2CA7kr1hgnL9EvzekToL85G4uCqKS1qk4vv/sNaxT0N0i7OxZkWbV7nBe LksTimFQpkGwxfcS29tAKR7NxG1OX/p81ZrBw66tvV3zlBFchQzjBof+dZBj1Lve x/XGWb990bZCmr0XtPg= =T8/g -----END PGP SIGNATURE----- |