@Rariusz I have looked at the data. I'm not sure what are in the columns.
Right now I shall assume that the first column is time = t, the second V(t), the last to i(t) and theta(t), but in which order I wouldn't care to guess.
Before looking closer I should like to know if I'm interpreting the first 2 columns correctly and also what the last 2 are.
You mention as an example that V(10) = 11.345 , but that doesn't agree with the data if t and V correspond to the two first columns, so maybe you just took that out of your head for purposes of explanation?
### The code below concerning fitting V data has been changed.
ICs:= theta(0)=0, D(theta)(0) = 0, D(theta)(0) = 0, i(0) = 0;
## Getting your data from my computer:
op(1,M); # reports 5001,4
## Having a look at the 10 first rows:
## Having a look at the 10 last rows:
##Plotting what I assume to be V(t):
## Model below has been edited:
## Fitting those data to the model V(t) = a+b*sin(c*t+d):
## The plot of V1 is pretty close to plot(M[..,1..2],labels=[t,V]);
## Thus V1 could be used as a simple replacement for V(t)
## at least for a trial run.
plot(M[..,[1,3]]); # plot of the third column as a function of time
plot(M[..,[1,4]],size=[1800,default]); # plot of the fourth column as a function of time
The fit is not all that bad with the exception of t=0:
(max,min)(dw[2..]); # Leaving out the difference at t=0: 0.00082,-0.00023
The third column:
The fourth column: