from pathlib import Path from resistics.project.projectIO import loadProject from resistics.project.projectSpectra import calculateSpectra from resistics.project.projectTransferFunction import processProject, viewImpedance from resistics.project.projectStatistics import calculateRemoteStatistics, viewStatistic from resistics.project.projectMask import newMaskData, calculateMask projectPath = Path("remoteProject") projData = loadProject(projectPath, "remoteConfig.ini") calculateSpectra(projData, sites=["M6", "Remote"]) projData.refresh() processProject(projData, sites=["M6", "Remote"]) viewImpedance(projData, sites=["M6", "Remote"], oneplot=False, save=True, show=False) # calculate the statistic we are interested in calculateRemoteStatistics(projData, "Remote", sites=["M6"], sampleFreqs=[128]) # generate mask maskData = newMaskData(projData, 128) maskData.setStats(["RR_coherenceEqn"]) maskData.addConstraint("RR_coherenceEqn", { "ExHyR-HyHyR": [0.8, 1.0], "EyHxR-HxHxR": [0.8, 1.0] }) # finally, lets give maskData a name, which will relate to the output file maskData.maskName = "rr_cohEqn_80_100" calculateMask(projData, maskData, sites=["M6"])
from pathlib import Path from resistics.project.projectIO import loadProject projectPath = Path("preprocessProject") proj = loadProject(projectPath) proj.printInfo() from resistics.utilities.utilsPlotter import plotOptionsTime, getPresentationFonts plotOptions = plotOptionsTime(plotfonts=getPresentationFonts()) from resistics.ioHandlers.dataReaderATS import DataReaderATS site1 = proj.getSiteData("site1") readerATS = DataReaderATS( site1.getMeasurementTimePath("meas_2012-02-10_11-05-00")) # headers of recording headers = readerATS.getHeaders() chanHeaders, chanMap = readerATS.getChanHeaders() # separate out two datasets timeOriginal1 = readerATS.getPhysicalData("2012-02-10 11:05:00", "2012-02-10 11:09:00", remaverage=False) timeOriginal2 = readerATS.getPhysicalData("2012-02-10 11:10:00", "2012-02-10 11:14:00", remaverage=False) from resistics.ioHandlers.dataWriterInternal import DataWriterInternal # create a new site proj.createSite("site1_gaps")
from pathlib import Path from resistics.project.projectIO import loadProject from resistics.project.projectSpectra import calculateSpectra from resistics.project.projectTransferFunction import processProject, viewImpedance from resistics.project.projectStatistics import ( calculateStatistics, calculateRemoteStatistics, viewStatistic, ) from resistics.project.projectMask import newMaskData, calculateMask projectPath = Path("remoteProject") projData = loadProject(projectPath, "manualWindowsConfig.ini") # calculate spectra calculateSpectra(projData, sites=["M6", "Remote"]) projData.refresh() processProject(projData, sites=["M6", "Remote"]) viewImpedance(projData, sites=["M6", "Remote"], oneplot=False, save=True, show=False) # calculate the statistic we are interested in calculateRemoteStatistics(projData, "Remote", sites=["M6"], sampleFreqs=[128]) # generate mask maskData = newMaskData(projData, 128) maskData.setStats(["RR_coherenceEqn"]) maskData.addConstraint( "RR_coherenceEqn", {"ExHyR-HyHyR": [0.8, 1.0], "EyHxR-HxHxR": [0.8, 1.0]} ) # finally, lets give maskData a name, which will relate to the output file maskData.maskName = "rr_cohEqn_80_100"
Statistic data is calculated for each evaluation frequency for each spectra file. The data is stored in the following path: project -> statData -> site -> measurement -> specdir -> statName -> statData "absvalEqn", "coherence", "powerSpectralDensity", "polarisationDirection", "partialCoherence", "transferFunction", "resPhase", """ # need the project path for loading projectPath = os.path.join("exampleProject") projData = loadProject(projectPath, configFile="ex1_04_config.ini") projData.printInfo() stats, remotestats = getStatNames() # plot the examples we need options = plotOptionsSpec() options["figsize"] = (20, 7) options["plotfonts"]["suptitle"] = 18 options["plotfonts"]["title"] = 16 # coherence viewStatistic( projData, "site1", 128, "coherence", save=True, show=False, plotoptions=options ) viewStatisticHistogram( projData, "site1", 128, "coherence", save=True, show=False, plotoptions=options
import os from resistics.project.projectIO import loadProject projectPath = os.path.join("tutorialProject") projData = loadProject(projectPath) # calculate another set of spectra for the 128 Hz data with notching at 50Hz and 16.667Hz from resistics.project.projectSpectra import calculateSpectra calculateSpectra(projData, sampleFreqs=[128], notch=[50], specdir="notch") projData.refresh() # view the spectra from resistics.utilities.utilsPlotter import plotOptionsSpec, getPaperFonts from resistics.project.projectSpectra import viewSpectra, viewSpectraSection plotOptions = plotOptionsSpec(plotfonts=getPaperFonts()) viewSpectra( projData, "site1", "meas_2012-02-10_11-30-00", specdir="notch", plotoptions=plotOptions, show=True, save=True, ) viewSpectraSection( projData, "site1", "meas_2012-02-10_11-30-00",
import os from resistics.project.projectIO import loadProject # load the project and also provide a config file projectPath = os.path.join("tutorialProject") projData = loadProject(projectPath, configFile="tutorialConfig.ini") projData.printInfo() # calculate spectrum using the new configuration from resistics.project.projectSpectra import calculateSpectra calculateSpectra(projData) projData.refresh() # process the spectra from resistics.project.projectTransferFunction import processProject, viewImpedance processProject(projData) viewImpedance(projData, sites=["site1"], oneplot=False, save=True)
import os from resistics.project.projectIO import loadProject # load the project and also provide a config file projectPath = os.path.join("asciiProject") projData = loadProject(projectPath, configFile="asciiconfig.ini") projData.printInfo() # calculate statistics from resistics.project.projectStatistics import calculateStatistics calculateStatistics(projData) # create a mask based on coherence from resistics.project.projectMask import newMaskData, calculateMask maskData = newMaskData(projData, 0.5) maskData.setStats(["coherence"]) maskData.addConstraint("coherence", {"cohExHy": [0.3, 1.0], "cohEyHx": [0.3, 1.0]}) maskData.maskName = "coh30_100" calculateMask(projData, maskData, sites=["site1"]) fig = maskData.view(0) fig.savefig(os.path.join(projectPath, "images", "maskcoh")) # calculate impedance tensor from resistics.project.projectTransferFunction import processProject processProject( projData, outchans=["Ex", "Ey"], masks={"site1": maskData.maskName}, postpend=maskData.maskName ) projData.refresh()