Closed jamesdoyle21 closed 1 year ago
Here is the docs from jeff
NOAA skill assessment Zhang Hess Aikman 0810.pdf
They use SVD or cubic spline to interpolate the model data to match the observations time so we should be able to do the same thing, either in the frontend or create a backend api method to do so
Good open source JS technique to do it on the frontend https://github.com/morganherlocker/cubic-spline
From Jeff: The timing offset errors when comparing water levels are artificial since we are not yet fitting a curve to find the times of the true maxima and minima. I suggest removing the time validation parts for now unless we really want to dig in and add the curve fits.
https://dev.oceansmap.com/ott-coops/?permalink=N4IgtghgDgQjD2APEAuUB9Azgd1aANgHYDmqAtAOwBsAdAEwAsDADK8wKx0CcddAjFQA0IfBAAuqAMwAOGpIrMG3BhS4sKk5lQC+w9IQCmeESXIUGNPl3YN5DLtPZ97w0RJSSul6ZKrdmntY+HNq64NAAymIAnvhGaCAAlgAmqCAQAE4AxgDiiZgAKvBQ8MQZ0AAWiVkgwoQQYPEgRSVlldW1IGIVAK5gAEb1ifhpFWJiUJgoAPTTmAYZAG4LNJlZxPnwhPiJhjRZ8GDTaxuY0xkGmGJzC4vVl9MA6vAZ+MnoLfDoALLQ079QCK3BbTMTDAzTZiQyGdK6xeKgZYZTCJLaoaTCTDwHrZS7GMTFUrlKBVGoJGJQJrlK4LTpguKYVAAbRAYwmU1m8yWKxOm22uwM+0Ox2yp3Ol2uXLuWQez1e70+Pz+AKB3IyoPB02AAC9tFronrgIhtCAALrCekGCKJbXxOjsITpcYZRL9HpgtEoEAAUUwLsEAAIcpkwLtAzlvTAAMIAeUDADkYwBBJMB+M5AAiUcDEEIyQD8G6CwDB0IYhdboJyJAoVcEGiC0ZKCZoBSaQJrWJpLp0UpaWpYlpmOxuPbhLaJI6wlDhG18EOqGY04giDnC5QvG0ptrICyOIuZYBBUSjRpUDSdGYvDIzAoZDoFAKl5QrBfzBobAAWp1IFBj6fBygAAlXNiHiFlL2vW97zoAo+DoN83w-Vhv2ESC6BvO9uDghDX1YZDmG-c0QB6QhEjECJohpMA0kacsp3CKAABl60bYwDggK4dkMJtW1SL0OK4gVGTqBomijeBOLEbi8QtXsmngJFRGiOlwQAVSApi0mmQsxDIA5ijOaBEmmKAMiQaIAH4cXwABeNlJhmDUGRoeAZVzTBfyFI5BOkgUtV1LVjX1bQaCgUwwkIeBMHQZJ+ngAAzGKDDiRZxFRQh0DAfB8FwBI2y9KKYrixLktS9KtiynLcDkvsBPECB8FKMgWqgaJEDAESQHmcZdmIXidwMyZ0AOHKDCyD1CGMArd3nYbRriCaMp7OrdwapriBasgSl2MQY36LqerBEgBp3LEMkHZIWIbDIAEkMybFkiti+KkvQFKDDSyaqtyzpfJkrqhpihbxsmzplIWHYrjICpFIWMh+ni5BiOSBqo3W0oADFhkHDJjCuF1TC9GthHgA7bgqwgAAVMjE3HHpARxfD4PhmC27BxAWLAcQSiAZXQCoDESYgxnQCB4uWdALgShYDEIfnUbEPpOmekq3o+r6Mp+3BiLJqVKYkprqwSVXXrKz7Ke10ZMHwAAKOhpDoQNWeYABSQMlFdgBKTomaoFm2ZaiBEgydAzMuTAcSaABifoEpYfoKF99hmdZrbg9DwcwEpcolYuNJY-jrQamEP2A62+YIG5jJef5wXhdFhooB2JXkgMWKenbgl3oARx6YZXRdPp0Dcgxc3QME24L6RmGkAwEoS5PU8Dsgtnbmd3XbjncfQVKUoLugEqoK9mCX-205ayv0G3rms5z8Qo4L1gKHYBez-Llqb9DyOa759v65FmIMWEt27S1lvLduitlZemjiwBgBg47vwvmQbAux3gJXMmAWKIdQbLRgckBKkFT6lxTufFeqC8xYEpAYfiIBo5cASgQ-oVAkHkLQVQgwNCR4JXQMQHoVwC4QGkHHFgJNGJRh2FkAA1t6ZYZZjBEGICxdwBBxBSFkFwKgPhXBE0oBYawXBDFcDCDteRCRkAoEdpIYQKkUACD4GEGWD8LiPVUTdNIQMRrwDGktNEw4cQyjSKPDyv4UCeJBr4qatUmiYzHnnIwwgzLFAWGCPE5J5JpFMXtA6nQUhyzBAlRItIvRl1ZuDViGRjzSXEjGMgMYqYRADFESmXUwTVLSOjSkAZfgqUxNEAY3iWL9H3l6b4Bg9ruSiSINRHgNFaOsSIT0eiaAGKMYkzI+SPFzWBt4xaYNSbukVjQ1AvN8DzAOWII5yQozukSovL08FcmlnjGJIJYBJC-AyFIhYt1SydDMieTI0RDYvDSPICgCDpCwnGlsVGGRgXeNBV6VgC834WhSYkIFIK8bIrYKwGsW5QhAA