Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Each channel is saved as a MATLAB timeseries object, with asynchronous (that is, not necessarily uniformly sampled) time values. 

FileStructureFieldsSubfieldsDescription

phys[protocol_id].matphys*.study_id

link to study in database; 0 before saving

* saved as "-struct", so individual variables loaded with phys = load(...)





.name
name



.start_time

(optional)


date-time: precise start time of recording

Optional because for some fMRI physiology we don't have this, or it's not synced with scanner.





.num_chans





.chan{1:N}
cell array of channels




.namechannel name




.type"rec" (recorded) or "calc" (calculated)




.filename

mat file of timeseries object; variable has channel name. File is located in phys folder). The channels are synchronized such that the time is equivalent (this is critical for events). The time should start at 0.

Time is in seconds.






.ts (memory only)the timeseries when loaded; this is not saved in the file, and is only loaded when needed. It slows things down a lot if it gets loaded every time.




.sample_rateempty for asynchronous




.offsettime offset (relative to phys.start_time if present)




.calc_sourcechansfor calculated channels; cell array of "rec" channel names used to calculate "calc" channel




.descrdescription (optional)




.unitsunits (optional)




.num_featuresnumber of features (types of markers, eg. resp peaks/troughs, ECG Q/R/S




.feature{1:N}cell array of features (optional)





.typefeature type (peak/trough, ECG)




.descrdescription (optional)




.num_markers





.marker_list





.markercell array or markers





.name





.x





.y





.shortname





.color


.num_events
this includes states (events with non-zero duration)



.event{1:N}

Cell array of events or states; note that these are all events, not only those in the database. For analysis, we will use the database events and select segments of the timeseries. For this reason, the names don't matter too much, as we can select events for analysis and classify them at the same time we incorporate them into the database.






.timetime in seconds, relative to phys.start_time




.event_idevent_id from database




.durationempty or 0 for event, time for "state"




.type (optional?)


Example (phys file incorrect size - earlier version where timeseries was saved in phys object)

...