add barnes and kriging interpolation methods in MeteoInfoMap

This commit is contained in:
wyq 2021-04-25 09:45:49 +08:00
parent ee8a2f1769
commit 02122c8232
63 changed files with 974 additions and 180 deletions

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:android-arm:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-arm.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:android-x86:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-x86.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-ios-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-ios-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:linux-arm64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-linux-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-linux-armhf.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:linux-ppc64le:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-linux-ppc64le.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:linux-x86:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-linux-x86.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:linux-x86_64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-linux-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:macosx-x86_64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-macosx-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp-platform:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp-platform/1.5.4/javacpp-platform-1.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp-platform/1.5.4/javacpp-platform-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp-platform/1.5.4/javacpp-platform-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:windows-x86:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-windows-x86.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:javacpp:windows-x86_64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-windows-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:android-arm64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-android-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:android-arm:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-android-arm.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:android-x86:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-android-x86.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:android-x86_64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-android-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:ios-arm64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-ios-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:ios-x86_64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-ios-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:linux-arm64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-linux-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:linux-armhf:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-linux-armhf.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:linux-ppc64le:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-linux-ppc64le.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:linux-x86:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-linux-x86.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:linux-x86_64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-linux-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:macosx-x86_64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-macosx-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas-platform:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas-platform/0.3.10-1.5.4/openblas-platform-0.3.10-1.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas-platform/0.3.10-1.5.4/openblas-platform-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas-platform/0.3.10-1.5.4/openblas-platform-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:windows-x86:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-windows-x86.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.bytedeco:openblas:windows-x86_64:0.3.10-1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-windows-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/openblas/0.3.10-1.5.4/openblas-0.3.10-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.freehep:freehep-util:2.0.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/freehep/freehep-util/2.0.2/freehep-util-2.0.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/freehep/freehep-util/2.0.2/freehep-util-2.0.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/freehep/freehep-util/2.0.2/freehep-util-2.0.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-android-aarch64:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-android-aarch64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-linux-armv6:2.3.2">
<library name="Maven: org.bytedeco:javacpp:android-arm:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-linux-armv6.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-arm.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-linux-armv6hf:2.3.2">
<library name="Maven: org.bytedeco:javacpp-platform:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-linux-armv6hf.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp-platform/1.5.4/javacpp-platform-1.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp-platform/1.5.4/javacpp-platform-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp-platform/1.5.4/javacpp-platform-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-linux-i586:2.3.2">
<library name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-linux-i586.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-macosx-universal:2.3.2">
<library name="Maven: org.bytedeco:javacpp:android-x86:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-macosx-universal.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-x86.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-solaris-amd64:2.3.2">
<library name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-solaris-amd64.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-android-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-solaris-i586:2.3.2">
<library name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-solaris-i586.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-ios-arm64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-windows-amd64:2.3.2">
<library name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-windows-amd64.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-ios-x86_64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-windows-i586:2.3.2">
<library name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-windows-i586.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-linux-armhf.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/bytedeco/javacpp/1.5.4/javacpp-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.jogl:jogl-all-main:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all-main/2.3.2/jogl-all-main-2.3.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all-main/2.3.2/jogl-all-main-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all-main/2.3.2/jogl-all-main-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.jogl:jogl-all:natives-android-aarch64:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-natives-android-aarch64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.jogl:jogl-all:natives-android-armv6:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-natives-android-armv6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.jogl:jogl-all:natives-linux-amd64:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-natives-linux-amd64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.jogl:jogl-all:natives-linux-armv6:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-natives-linux-armv6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.jogl:jogl-all:natives-linux-armv6hf:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-natives-linux-armv6hf.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.jogamp.jogl:jogl-all:natives-linux-i586:2.3.2">
<library name="Maven: org.jogamp.gluegen:gluegen-rt:natives-android-aarch64:2.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-natives-linux-i586.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-natives-android-aarch64.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -29,8 +29,38 @@
<orderEntry type="library" name="Maven: com.github.haifengl:smile-interpolation:2.6.0" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-math:2.6.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp-platform:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-ppc64le:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:macosx-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas-platform:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-armhf:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-ppc64le:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:macosx-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="module" module-name="meteoinfo-geometry" />
<orderEntry type="library" name="Maven: org.locationtech.jts:jts-core:1.17.0" level="project" />
<orderEntry type="module" module-name="meteoinfo-table" />

View File

@ -182,6 +182,20 @@ import org.meteoinfo.projection.Reproject;
return y;
}
/**
* Get station data array
*
* @return Station data array
*/
public double[] getStData() {
double[] y = new double[getStNum()];
for (int i = 0; i < getStNum(); i++) {
y[i] = data[i][2];
}
return y;
}
/**
* Set data array
*
@ -1009,7 +1023,7 @@ import org.meteoinfo.projection.Reproject;
// </editor-fold>
/**
* Filte station data by radius and extent
* Filter station data by radius and extent
*
* @param radius Radius
* @param aExtent Data extent
@ -1044,6 +1058,36 @@ import org.meteoinfo.projection.Reproject;
this.setData(discretedData);
stations = nstations;
}
/**
* Delete missing values
*/
public void delMissingValue() {
double[][] discreteData;
List<double[]> disDataList = new ArrayList<double[]>();
List<String> nStations = new ArrayList<String>();
int i;
for (i = 0; i < this.getStNum(); i++) {
if (MIMath.doubleEquals(data[i][2], missingValue)) {
continue;
} else {
disDataList.add(new double[]{data[i][0], data[i][1], data[i][2]});
nStations.add(this.stations.get(i));
}
}
discreteData = new double[disDataList.size()][3];
i = 0;
for (double[] disData : disDataList) {
discreteData[i][0] = disData[0];
discreteData[i][1] = disData[1];
discreteData[i][2] = disData[2];
i += 1;
}
this.setData(discreteData);
stations = nStations;
}
// </editor-fold>
// <editor-fold desc="Statictics">

View File

@ -37,8 +37,38 @@
<orderEntry type="library" name="Maven: com.github.haifengl:smile-interpolation:2.6.0" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-math:2.6.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp-platform:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-ppc64le:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:macosx-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas-platform:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-armhf:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-ppc64le:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:macosx-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="module" module-name="meteoinfo-geometry" />
<orderEntry type="module" module-name="meteoinfo-ui" />
<orderEntry type="library" name="Maven: com.toedter:jcalendar:1.4" level="project" />

View File

@ -18,22 +18,11 @@ package org.meteoinfo.geo.analysis;
* @author yaqiang
*/
public enum InterpolationMethods {
/// <summary>
/// IDW radius
/// </summary>
IDW_Radius,
/// <summary>
/// IDV neighbors
/// </summary>
IDW_Neighbors,
/// <summary>
/// Cressman analysis
/// </summary>
Cressman,
/// <summary>
/// Assign point to grid
/// </summary>
AssignPointToGrid,
IDW_RADIUS,
IDW_NEIGHBORS,
CRESSMAN,
BARNES,
KRIGING,
ASSIGN_POINT_GRID,
}

View File

@ -30,7 +30,8 @@ public class InterpolationSetting {
private int _minPointNum;
private double _radius;
private double _missingValue = -9999.0;
private List<Double> _radList; //For cressman analysis
private List<Double> _radList; //For cressman and barnes analysis
private double beta = 1.5; //For kriging interpolation
// </editor-fold>
// <editor-fold desc="Constructor">
@ -40,7 +41,7 @@ public class InterpolationSetting {
public InterpolationSetting() {
_gridDataPara.xNum = 50;
_gridDataPara.yNum = 50;
_gridInterMethod = InterpolationMethods.IDW_Radius;
_gridInterMethod = InterpolationMethods.IDW_RADIUS;
_minPointNum = 1;
_radius = 1;
_radList = new ArrayList<>();
@ -222,6 +223,22 @@ public class InterpolationSetting {
public void setRadiusList(List<Double> value) {
_radList = value;
}
/**
* Get beta value
* @return Beta value
*/
public double getBeta() {
return this.beta;
}
/**
* Set beta value
* @param value Beta value
*/
public void setBeta(double value) {
this.beta = value;
}
// </editor-fold>
// <editor-fold desc="Methods">

View File

@ -10,6 +10,8 @@ import org.meteoinfo.geo.analysis.GeoComputation;
import org.meteoinfo.geometry.shape.PolygonShape;
import org.meteoinfo.geometry.shape.ShapeTypes;
import org.meteoinfo.geo.analysis.InterpolationSetting;
import org.meteoinfo.math.interpolate.InterpUtil;
import smile.interpolation.KrigingInterpolation2D;
import java.util.ArrayList;
import java.util.List;
@ -240,21 +242,39 @@ public class GeoMathUtil {
X = values.get(0);
Y = values.get(1);
switch (interSet.getInterpolationMethod()) {
case IDW_Radius:
case IDW_RADIUS:
stationData.filterData_Radius(interSet.getRadius(), interSet.getGridDataSetting().dataExtent);
aGridData = interpolate_Radius(stationData.data,
X, Y, interSet.getMinPointNum(), interSet.getRadius(), stationData.missingValue);
break;
case IDW_Neighbors:
case IDW_NEIGHBORS:
stationData.filterData_Radius(interSet.getRadius(), interSet.getGridDataSetting().dataExtent);
aGridData = interpolate_Neighbor(stationData.data, X, Y,
interSet.getMinPointNum(), stationData.missingValue);
break;
case Cressman:
case CRESSMAN:
stationData.filterData_Radius(0, interSet.getGridDataSetting().dataExtent);
aGridData = interpolate_Cressman(stationData.data, X, Y, interSet.getRadiusList(), stationData.missingValue);
break;
case AssignPointToGrid:
case BARNES:
stationData.filterData_Radius(0, interSet.getGridDataSetting().dataExtent);
double[][] gData = InterpUtil.barnes(stationData.getX(), stationData.getY(), stationData.getStData(),
X, Y, interSet.getRadiusList(), 1., 1.);
aGridData = new GridData();
aGridData.xArray = X;
aGridData.yArray = Y;
aGridData.data = gData;
break;
case KRIGING:
stationData.filterData_Radius(0, interSet.getGridDataSetting().dataExtent);
gData = InterpUtil.kriging(stationData.getX(), stationData.getY(), stationData.getStData(),
X, Y, interSet.getBeta());
aGridData = new GridData();
aGridData.xArray = X;
aGridData.yArray = Y;
aGridData.data = gData;
break;
case ASSIGN_POINT_GRID:
stationData.filterData_Radius(0, interSet.getGridDataSetting().dataExtent);
aGridData = interpolate_Assign(stationData.data, X, Y, stationData.missingValue);
break;

View File

@ -37,8 +37,38 @@
<orderEntry type="library" name="Maven: com.github.haifengl:smile-interpolation:2.6.0" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-math:2.6.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp-platform:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-ppc64le:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:macosx-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas-platform:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-armhf:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-ppc64le:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:macosx-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-imaging:1.0-alpha1" level="project" />
<orderEntry type="library" name="Maven: com.formdev:flatlaf-extras:1.1.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.formdev:svgSalamander:1.1.2.4" level="project" />

View File

@ -39,8 +39,38 @@
<orderEntry type="library" name="Maven: org.ojalgo:ojalgo:48.4.1" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-interpolation:2.6.0" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-math:2.6.0" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp-platform:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-ppc64le:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:macosx-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas-platform:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-armhf:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-ppc64le:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:macosx-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="module" module-name="meteoinfo-geometry" />
<orderEntry type="library" name="Maven: org.locationtech.jts:jts-core:1.17.0" level="project" />
<orderEntry type="module" module-name="meteoinfo-table" />

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<MeteoInfo File="milconfig.xml" Type="configurefile">
<Path OpenPath="D:\Working\MIScript\Jython\mis\micaps">
<Path OpenPath="D:\Working\MIScript\Jython\mis\common_math\interpolate">
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\plot_types\wind"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map\maskout"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map\geoshow"/>
@ -8,7 +8,6 @@
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map\topology"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\toolbox\miml\cluster"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\toolbox\miml"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\interpolate"/>
<RecentFolder Folder="D:\Run\emips\run_meic"/>
<RecentFolder Folder="D:\Run\emips"/>
<RecentFolder Folder="D:\Run\emips\run_cams"/>
@ -16,19 +15,18 @@
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\traj"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\micaps"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\interpolate"/>
</Path>
<File>
<OpenedFiles>
<OpenedFile File="D:\Working\MIScript\Jython\mis\common_math\interpolate\griddata_kriging.py"/>
<OpenedFile File="D:\Working\MIScript\Jython\mis\common_math\linalg\eof_elnino.py"/>
<OpenedFile File="D:\Working\MIScript\Jython\mis\traj\plot_traj.py"/>
<OpenedFile File="D:\Working\MIScript\Jython\mis\micaps\micaps_7.py"/>
<OpenedFile File="D:\Working\MIScript\Jython\mis\common_math\interpolate\griddata_barnes.py"/>
</OpenedFiles>
<RecentFiles>
<RecentFile File="D:\Working\MIScript\Jython\mis\common_math\interpolate\griddata_kriging.py"/>
<RecentFile File="D:\Working\MIScript\Jython\mis\common_math\linalg\eof_elnino.py"/>
<RecentFile File="D:\Working\MIScript\Jython\mis\traj\plot_traj.py"/>
<RecentFile File="D:\Working\MIScript\Jython\mis\micaps\micaps_7.py"/>
<RecentFile File="D:\Working\MIScript\Jython\mis\common_math\interpolate\griddata_barnes.py"/>
</RecentFiles>
</File>
<Font>
@ -36,5 +34,5 @@
</Font>
<LookFeel DockWindowDecorated="true" LafDecorated="true" Name="FlatDarkLaf"/>
<Figure DoubleBuffering="true"/>
<Startup MainFormLocation="-7,-7" MainFormSize="1293,693"/>
<Startup MainFormLocation="-7,0" MainFormSize="1377,809"/>
</MeteoInfo>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<MeteoInfo File="config.xml" Type="configurefile">
<Path OpenPath="D:\MyProgram\Distribution\Java\MeteoInfo\MeteoInfo\sample\MICAPS"/>
<Path OpenPath="D:\Temp"/>
<Font>
<TextFont FontName="YaHei Consolas Hybrid" FontSize="14"/>
<LegendFont FontName="宋体" FontSize="12"/>

View File

@ -30,8 +30,38 @@
<orderEntry type="library" name="Maven: com.github.haifengl:smile-interpolation:2.6.0" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-math:2.6.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp-platform:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-ppc64le:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:macosx-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas-platform:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-armhf:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-ppc64le:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:macosx-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="module" module-name="meteoinfo-geometry" />
<orderEntry type="library" name="Maven: org.locationtech.jts:jts-core:1.17.0" level="project" />
<orderEntry type="module" module-name="meteoinfo-table" />

View File

@ -359,19 +359,26 @@ public class FrmInterpolate extends javax.swing.JDialog {
InterpolationMethods method = InterpolationMethods.valueOf(this.jComboBox_Methods.getSelectedItem().toString());
switch (method) {
case IDW_Radius:
case IDW_RADIUS:
this.jTextField_Radius.setEnabled(true);
this.jTextField_MinNum.setEnabled(true);
this.jTextField_MinNum.setText(String.valueOf(this._interpSetting.getMinPointNum()));
this.jLabel_MinNum.setText("MinNum:");
this.jTextField_Radius.setText(String.valueOf(this._interpSetting.getRadius()));
break;
case IDW_Neighbors:
case IDW_NEIGHBORS:
this.jTextField_Radius.setEnabled(false);
this.jTextField_MinNum.setEnabled(true);
this.jTextField_MinNum.setText(String.valueOf(this._interpSetting.getMinPointNum()));
this.jLabel_MinNum.setText("MinNum:");
this.jTextField_Radius.setText(String.valueOf(this._interpSetting.getRadius()));
break;
case Cressman:
case CRESSMAN:
case BARNES:
this.jTextField_Radius.setEnabled(true);
this.jTextField_MinNum.setEnabled(false);
this.jTextField_MinNum.setText(String.valueOf(this._interpSetting.getMinPointNum()));
this.jLabel_MinNum.setText("MinNum:");
String radStr = "";
for (int i = 0; i < this._interpSetting.getRadiusList().size(); i++) {
radStr = radStr + String.valueOf(this._interpSetting.getRadiusList().get(i)) + ";";
@ -380,6 +387,12 @@ public class FrmInterpolate extends javax.swing.JDialog {
radStr = radStr.substring(0, radStr.length() - 1);
this.jTextField_Radius.setText(radStr);
break;
case KRIGING:
this.jTextField_Radius.setEnabled(false);
this.jTextField_MinNum.setEnabled(true);
this.jLabel_MinNum.setText("Beta:");
this.jTextField_MinNum.setText(String.valueOf(this._interpSetting.getBeta()));
break;
}
}//GEN-LAST:event_jComboBox_MethodsActionPerformed
@ -410,13 +423,16 @@ public class FrmInterpolate extends javax.swing.JDialog {
setXYSize();
this.jComboBox_Methods.removeAllItems();
this.jComboBox_Methods.addItem(InterpolationMethods.IDW_Radius.toString());
this.jComboBox_Methods.addItem(InterpolationMethods.IDW_Neighbors.toString());
this.jComboBox_Methods.addItem(InterpolationMethods.Cressman.toString());
this.jComboBox_Methods.addItem(InterpolationMethods.AssignPointToGrid.toString());
this.jComboBox_Methods.setSelectedItem(this._interpSetting.getInterpolationMethod().toString());
this.jComboBox_Methods.addItem(InterpolationMethods.IDW_RADIUS);
this.jComboBox_Methods.addItem(InterpolationMethods.IDW_NEIGHBORS);
this.jComboBox_Methods.addItem(InterpolationMethods.CRESSMAN);
this.jComboBox_Methods.addItem(InterpolationMethods.BARNES);
this.jComboBox_Methods.addItem(InterpolationMethods.KRIGING);
this.jComboBox_Methods.addItem(InterpolationMethods.ASSIGN_POINT_GRID);
this.jComboBox_Methods.setSelectedItem(this._interpSetting.getInterpolationMethod());
switch (this._interpSetting.getInterpolationMethod()) {
case Cressman:
case CRESSMAN:
case BARNES:
String radStr = "";
for (int i = 0; i < this._interpSetting.getRadiusList().size(); i++) {
radStr = radStr + String.valueOf(this._interpSetting.getRadiusList().get(i)) + ";";
@ -428,14 +444,17 @@ public class FrmInterpolate extends javax.swing.JDialog {
this.jTextField_MissingValue.setText(String.valueOf(this._interpSetting.getMissingValue()));
this.jTextField_MissingValue.setEnabled(false);
break;
case IDW_Neighbors:
case IDW_Radius:
case IDW_NEIGHBORS:
case IDW_RADIUS:
this.jTextField_Radius.setText(((Double) this._interpSetting.getRadius()).toString());
this.jTextField_MinNum.setText(String.valueOf(this._interpSetting.getMinPointNum()));
this.jTextField_MissingValue.setText(String.valueOf(this._interpSetting.getMissingValue()));
this.jTextField_MissingValue.setEnabled(false);
break;
case AssignPointToGrid:
case KRIGING:
this.jTextField_MinNum.setText(String.valueOf(this._interpSetting.getBeta()));
break;
case ASSIGN_POINT_GRID:
break;
}
@ -458,9 +477,10 @@ public class FrmInterpolate extends javax.swing.JDialog {
InterpolationSetting interpSetting = new InterpolationSetting();
interpSetting.setGridDataSetting(aGDP);
interpSetting.setInterpolationMethod(InterpolationMethods.valueOf(this.jComboBox_Methods.getSelectedItem().toString()));
interpSetting.setInterpolationMethod((InterpolationMethods) this.jComboBox_Methods.getSelectedItem());
switch (interpSetting.getInterpolationMethod()) {
case Cressman:
case CRESSMAN:
case BARNES:
if (!this.jTextField_Radius.getText().isEmpty()) {
String[] radStrs = this.jTextField_Radius.getText().split(";");
List<Double> radList = new ArrayList<Double>();
@ -474,11 +494,14 @@ public class FrmInterpolate extends javax.swing.JDialog {
interpSetting.setMinPointNum(Integer.parseInt(this.jTextField_MinNum.getText()));
break;
case IDW_Neighbors:
case IDW_Radius:
case IDW_NEIGHBORS:
case IDW_RADIUS:
interpSetting.setRadius(Double.parseDouble(this.jTextField_Radius.getText()));
interpSetting.setMinPointNum(Integer.parseInt(this.jTextField_MinNum.getText()));
break;
case KRIGING:
interpSetting.setBeta(Double.parseDouble(this.jTextField_MinNum.getText()));
break;
}
return interpSetting;

View File

@ -2576,7 +2576,7 @@ public class FrmMeteoData extends javax.swing.JDialog {
- aGDP.dataExtent.minX) / aGDP.xNum * 2));
_useSameGridInterSet = true;
if (_meteoDataInfo.isSWATHData()) {
_interpolationSetting.setInterpolationMethod(InterpolationMethods.AssignPointToGrid);
_interpolationSetting.setInterpolationMethod(InterpolationMethods.ASSIGN_POINT_GRID);
aGDP.xNum = 1000;
aGDP.yNum = 1000;
}
@ -2897,7 +2897,7 @@ public class FrmMeteoData extends javax.swing.JDialog {
//String LNameS = this.jComboBox_Level.getSelectedItem().toString() + "_" + this.jComboBox_Time.getSelectedItem().toString();
String LNameM = this.jComboBox_Variable.getSelectedItem().toString() + "_";
String LName = LNameM;
if (_interpolationSetting.getInterpolationMethod() == InterpolationMethods.IDW_Neighbors) {
if (_interpolationSetting.getInterpolationMethod() == InterpolationMethods.IDW_NEIGHBORS) {
hasNoData = false;
}
boolean ifAddLayer = true;

View File

@ -36,7 +36,37 @@
<orderEntry type="library" name="Maven: com.github.haifengl:smile-interpolation:2.6.0" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-math:2.6.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp-platform:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:android-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:ios-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-armhf:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-arm64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-ppc64le:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:linux-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:macosx-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:javacpp:windows-x86_64:1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas-platform:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:android-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:ios-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-armhf:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-arm64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:linux-ppc64le:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:macosx-x86_64:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.bytedeco:openblas:windows-x86_64:0.3.10-1.5.4" level="project" />
</component>
</module>

View File

@ -49,12 +49,12 @@
</dependency>
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacpp</artifactId>
<artifactId>javacpp-platform</artifactId>
<version>1.5.4</version>
</dependency>
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>openblas</artifactId>
<artifactId>openblas-platform</artifactId>
<version>0.3.10-1.5.4</version>
</dependency>
</dependencies>

View File

@ -625,6 +625,190 @@ public class InterpUtil {
return r;
}
/**
* Barnes analysis
*
* @param x_s scatter X array
* @param y_s scatter Y array
* @param v_s scatter value array
* @param X x array
* @param Y y array
* @param radList radii list
* @param kappa A falloff parameter that controls the width of the Gaussian
* function
* @param gamma The smoothing parameter, is constrained to be between 0.2
* and 1.0
* @return result grid data
*/
public static double[][] barnes(double[] x_s, double[] y_s, double[] v_s, double[] X, double[] Y,
List<Double> radList, double kappa, double gamma) {
int xNum = X.length;
int yNum = Y.length;
int pNum = x_s.length;
double[][] r = new double[yNum][xNum];
int irad = radList.size();
int i, j;
//Loop through each stn report and convert stn lat/lon to grid coordinates
double xMin = X[0];
double xMax;
double yMin = Y[0];
double yMax;
double xDelt = X[1] - X[0];
double yDelt = Y[1] - Y[0];
double x, y;
double sum, wSum, w;
double[][] stationData = new double[pNum][5];
for (i = 0; i < pNum; i++) {
x = x_s[i];
y = y_s[i];
stationData[i][0] = x;
stationData[i][1] = y;
stationData[i][2] = v_s[i];
stationData[i][3] = (x - xMin) / xDelt;
stationData[i][4] = (y - yMin) / yDelt;
}
//Construct K-D tree
KDTree.Euclidean<double[]> kdTree = new KDTree.Euclidean<>(2);
for (i = 0; i < pNum; i++) {
if (!Double.isNaN(stationData[i][2]))
kdTree.addPoint(new double[]{stationData[i][0], stationData[i][1]}, stationData[i]);
}
double HITOP = -999900000000000000000.0;
double HIBOT = 999900000000000000000.0;
double[][] TOP = new double[yNum][xNum];
double[][] BOT = new double[yNum][xNum];
for (i = 0; i < yNum; i++) {
for (j = 0; j < xNum; j++) {
TOP[i][j] = HITOP;
BOT[i][j] = HIBOT;
}
}
//Initial grid values are average of station reports within the first radius
double val, sx, sy, sxi, syi;
double rad;
int stNum;
if (radList.size() > 0) {
rad = radList.get(0).doubleValue();
} else {
rad = 4;
}
for (i = 0; i < yNum; i++) {
y = Y[i];
for (j = 0; j < xNum; j++) {
x = X[j];
stNum = 0;
sum = 0;
wSum = 0;
ArrayList<double[]> neighbours = kdTree.ballSearch(new double[]{x, y}, rad * rad);
for (double[] station : neighbours) {
val = station[2];
sx = station[0];
sy = station[1];
double dis = Math.pow(sx - x, 2) + Math.pow(sy - y, 2);
w = Math.exp(-dis / (4 * kappa));
wSum += w;
sum += w * val;
stNum += 1;
if (TOP[i][j] < val) {
TOP[i][j] = val;
}
if (BOT[i][j] > val) {
BOT[i][j] = val;
}
}
if (stNum == 0) {
r[i][j] = Double.NaN;
} else {
r[i][j] = sum / stNum;
}
}
}
//Perform the objective analysis
for (int p = 0; p < irad; p++) {
rad = radList.get(p).doubleValue();
for (i = 0; i < yNum; i++) {
y = Y[i];
for (j = 0; j < xNum; j++) {
if (Double.isNaN(r[i][j])) {
continue;
}
x = X[j];
sum = 0;
wSum = 0;
ArrayList<double[]> neighbours = kdTree.ballSearch(new double[]{x, y}, rad * rad);
for (double[] station : neighbours) {
val = station[2];
sx = station[0];
sy = station[1];
sxi = station[3];
syi = station[4];
if (sxi < 0 || sxi >= xNum - 1 || syi < 0 || syi >= yNum - 1) {
continue;
}
double dis = Math.pow(sx - x, 2) + Math.pow(sy - y, 2);
int i1 = (int) syi;
int j1 = (int) sxi;
int i2 = i1 + 1;
int j2 = j1 + 1;
double a = r[i1][j1];
double b = r[i1][j2];
double c = r[i2][j1];
double d = r[i2][j2];
List<Double> dList = new ArrayList<>();
if (!Double.isNaN(a)) {
dList.add(a);
}
if (!Double.isNaN(b)) {
dList.add(b);
}
if (!Double.isNaN(c)) {
dList.add(c);
}
if (Double.isNaN(d)) {
dList.add(d);
}
double calVal;
if (dList.isEmpty()) {
continue;
} else if (dList.size() == 1) {
calVal = dList.get(0);
} else if (dList.size() <= 3) {
double aSum = 0;
for (double dd : dList) {
aSum += dd;
}
calVal = aSum / dList.size();
} else {
double x1val = a + (c - a) * (syi - i1);
double x2val = b + (d - b) * (syi - i1);
calVal = x1val + (x2val - x1val) * (sxi - j1);
}
double eVal = val - calVal;
w = Math.exp(-dis / (4 * kappa * gamma));
sum += eVal * w;
wSum += w;
}
if (wSum >= 0.000001) {
double aData = r[i][j] + sum / wSum;
r[i][j] = Math.max(BOT[i][j], Math.min(TOP[i][j], aData));
}
}
}
}
//Return
return r;
}
/**
* Barnes analysis
*
@ -766,6 +950,33 @@ public class InterpUtil {
return r;
}
/**
* Kriging interpolation
*
* @param x_s scatter X array
* @param y_s scatter Y array
* @param v_s scatter value array
* @param X x array
* @param Y y array
* @param beta Beta value
* @return result grid data
*/
public static double[][] kriging(double[] x_s, double[] y_s, double[] v_s, double[] X, double[] Y,
double beta) {
KrigingInterpolation2D krigingInterpolation2D = new KrigingInterpolation2D(x_s,
y_s, v_s, beta);
int ny = Y.length;
int nx = X.length;
double[][] gData = new double[ny][nx];
for (int i = 0; i < ny; i++) {
for (int j = 0; j < nx; j++) {
gData[i][j] = krigingInterpolation2D.interpolate(X[j], Y[i]);
}
}
return gData;
}
/**
* Interpolate with inside method - The grid cell value is the sum value
* of the inside points or fill value if no inside point.