Пример #1
0
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"])
Пример #2
0
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")
Пример #3
0
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"
Пример #4
0
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
Пример #5
0
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",
Пример #6
0
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)
Пример #7
0
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()