Evaluation of Data with Second Reloading after Second Unloading possible?
Closed this issue · 2 comments
- pySigmaP version: 0.1.9
- Python version: 3.9.
- Operating System: Windows 10
Description
Is there any way to apply pySigmaP for the evaluation of oedometer tests, in which there is a second reloading after the second unloading ?
What I Did
If I load a dataset with a second reloading, the follow error occurs
ValueError: "x" must be strictly increasing sequence.
Removing the data of the second reloading from the rawdata does resolve that issue, but if possible, I would like to keep the dataset for the evaluation complete.
Thanks in advance!
Hi @felixdoerr
Thanks for using pySigmaP.
Yes, you can. When we released pySigmaP v0.1.9, we included a feature to do so under the request/suggestion of another user who had the same need. You have to specify which unloading-reloading (UR) stage you want to use to calculate the reloading index. You only have to set use_this_UR_stage=n
in the attributes of the Data
class, where n
is the index of the UR stage starting from zero.
However, I must admit there is a not-very-elegant detail in the current release (v0.1.9) to consider. If there is no unloading (U) stage at the end of your test, you must also specify secondUnloading=False
in the attributes of the Data
class to avoid getting the error you mentioned. This is because the first release of pySigmaP was initially developed for tests with only one UR-stage and an optional U-stage after the UR-stage. That optional U-stage would be the second and last unloading stage. If there was no second U-stage, secondUnloading=False
was mandatory. Since we included the feature of allowing several UR-stages, the secondUnloading
attribute will actually refer to the final U-stage of the test.
Since the above might need to be more explicit, this example may help load the data correctly. After it, the methods for calculating 𝜎ₚ should run with no problem:
from pysigmap.data import Data
raw_data = pd.read_csv("test_data.csv")
data = Data(
raw_data,
sigmaV=75,
use_this_UR_stage=1,
secondUnloading=False
)
data.compressionIdx(range2fitCc=[500, np.inf])
data.recompressionIdx(opt=2)
fig = data.plot()
I've attached the files for you to show the outcome. Please, try again, considering the example and what I said before. If it still does not run, and if you want, you can send the data from one of your tests, and I will return the code if I run it successfully. Do not hesitate if you have further questions.
Regards,
Exneyder
Hi @eamontoyaa,
thank you very much for your immediate response. It worked out perfectly well.
Thank you very much for developing such a handy tool - great work!