|
fosanalysis
A framework to evaluate distributed fiber optic sensor data
|
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
datahandling package brings a completely new data importing interface:.dat files) is now suported.filereader) and requesting data (filehandler) are now separated.datahandling.tsvutils.tsv_print_metadata_table() to quickly get an overview over the content a bunch of TSV in a given directory.protocols is deprecated and superseded by the datahandling package with the filereader and filehandler modules.protocols.extract_time_intervals() to datahandling.tsvutils.tsv_extract_time_intervals().protocols.extract_time_intervals() to extract time interval partitions of measurement data to smaller .tsv files.This version adds substantial improvements for data preprocessing. The way to clean up raw data got completely overhauled.
preprocessing.Preprocessingpreprocessing.Filtering for noise reductionpreprocessing.Masking for removal of SRAs introducing new SRA detection algorithms:preprocessing.masking.GTMpreprocessing.masking.OSCPpreprocessing.masking.ZscoreOutlierDetectionpreprocessing.Repair for removal of dropouts:preprocessing.repair.ScipyInterpolation1D for replacing dropouts with interpolated datapreprocessing.Resizing for changing data shape with new options:AggregateCropDownsamplingResamplingutils.interpolation.scipy_interpolate1d: interpolation wrapper function around scipy functionalityutils.misc.datetime_to_timestamp() and utils.misc.timestamp_to_datetime()protocols.ODiSI6100TSVFile:.get_data() for data retrievalcrackmonitoring.crack.Crack, not set attributes are now always reported as NoneCrackList:get_cracks_by_location() supersedes the removed CrackList.get_crack()get_cracks_attribute_by_range(),get_cracks_attribute_is_none(),clear_attribute()utils.cropping.cropping() is now a standalone functionpreprocessing.resizing.Crop works as a preset wrapper for utils.cropping.cropping()fosutils.find_next_neighbor() → fosutils.next_finite_neighbor()preprocessing.filtering.SlidingFilter, making preprocessing.filtering.SlidingMean and preprocessing.filtering.SlidingMedian obsoleteprotocols.ODiSI6100TSVFile.get_time_series: Change return order form (time_stamps, time_series, x_value) to (x_value, time_stamps, time_series) for consistency with other data retrival methodsprotocols.ODiSI6100TSVFile.read_file() will now skip blank lines instead of crashingpreprocessing.strip_smooth_crop() was replaced a new more powerful interface.protocols.ODiSI6100TSVFile.get_mean_over_y_record(), the two components of the function got separated: Firstly, use protocols.ODiSI6100TSVFile.get_data() for easy data selection. Secondly, the consolidation is now done by a preprocessing.resizing.Aggregate object.strainprofile.StrainProfilepreprocessing.filtering.SlidingMean and preprocessing.filtering.SlidingMedian, functionality is now in preprocessing.filtering.SlidingFilterCrackList.get_crack(), superseded by CrackList.get_cracks_by_location()fosutils.find_next_finite_neighbor()cracks.Crack to be more descriptiveprotocolcracks.CrackList.get_crack() now returns the nearest crack by default.crop.Crop now treats 2D arrays as well.integration.Integratorprotocols.ODiSI6100TSVFile.header → protocols.ODiSI6100TSVFile.metadatageneratedemofile.py now should produce correct contentpreprocessing.strip_smooth_crop() function will be replaced by a new preprocessing workflow in the next version.protcols.Strainprofile.get_mean_over_y_record() function will be replaced by a new preprocessing workflow in the next version.x_data and y_record_list of protocol.Protocolstrainprofile.Strainprofile to the new structure, complete refactorstrainprofile.Strainprofile.calculate_crack_width() can keep previous data now