update netcdf to version 5.5.3

This commit is contained in:
wyq 2022-08-04 21:14:03 +08:00
parent c3a1719730
commit 3e76fee824
13 changed files with 236 additions and 144 deletions

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: edu.ucar:netcdfAll:5.5.2">
<library name="Maven: edu.ucar:netcdfAll:5.5.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/edu/ucar/netcdfAll/5.5.2/netcdfAll-5.5.2.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/edu/ucar/netcdfAll/5.5.3/netcdfAll-5.5.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/edu/ucar/netcdfAll/5.5.2/netcdfAll-5.5.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/edu/ucar/netcdfAll/5.5.3/netcdfAll-5.5.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/edu/ucar/netcdfAll/5.5.2/netcdfAll-5.5.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/edu/ucar/netcdfAll/5.5.3/netcdfAll-5.5.3-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -90,7 +90,7 @@
<orderEntry type="library" name="Maven: org.locationtech.proj4j:proj4j:1.1.4" level="project" />
<orderEntry type="library" name="Maven: net.sf.geographiclib:GeographicLib-Java:1.52" level="project" />
<orderEntry type="module" module-name="meteoinfo-dataframe" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.2" level="project" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.3" level="project" />
<orderEntry type="library" name="Maven: com.github.albfernandez:juniversalchardet:2.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.11.0" level="project" />
<orderEntry type="library" name="Maven: com.formdev:flatlaf:2.4" level="project" />

View File

@ -49,7 +49,7 @@
<orderEntry type="library" name="Maven: org.locationtech.proj4j:proj4j:1.1.4" level="project" />
<orderEntry type="library" name="Maven: net.sf.geographiclib:GeographicLib-Java:1.52" level="project" />
<orderEntry type="module" module-name="meteoinfo-dataframe" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.2" level="project" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.3" level="project" />
<orderEntry type="library" name="Maven: com.github.albfernandez:juniversalchardet:2.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.11.0" level="project" />
</component>

View File

@ -43,7 +43,7 @@
<dependency>
<groupId>edu.ucar</groupId>
<artifactId>netcdfAll</artifactId>
<version>5.5.2</version>
<version>5.5.3</version>
<!--<scope>system</scope>
<systemPath>${project.basedir}/lib/netcdfAll-5.5.3-SNAPSHOT.jar</systemPath>-->
</dependency>

View File

@ -98,7 +98,7 @@
<orderEntry type="library" name="Maven: org.locationtech.proj4j:proj4j:1.1.4" level="project" />
<orderEntry type="library" name="Maven: net.sf.geographiclib:GeographicLib-Java:1.52" level="project" />
<orderEntry type="module" module-name="meteoinfo-dataframe" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.2" level="project" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.3" level="project" />
<orderEntry type="library" name="Maven: com.github.albfernandez:juniversalchardet:2.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.11.0" level="project" />
<orderEntry type="library" name="Maven: org.meteothink:wContour:1.7.1" level="project" />

View File

@ -22,96 +22,20 @@
</library>
</orderEntry>
<orderEntry type="module" module-name="meteoinfo-chart" />
<orderEntry type="module" module-name="meteoinfo-console" />
<orderEntry type="library" name="Maven: de.sciss:docking-frames-common:2.0.0" level="project" />
<orderEntry type="library" name="Maven: de.sciss:docking-frames-core:2.0.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-simple:1.7.19" level="project" />
<orderEntry type="module" module-name="meteoinfo-geo" />
<orderEntry type="module" module-name="meteoinfo-math" />
<orderEntry type="library" name="Maven: org.ejml:ejml-experimental:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-core:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-ddense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-dsparse:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-zdense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-simple:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-fdense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-cdense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-fsparse:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ojalgo:ojalgo:51.3.0" 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.19.0" level="project" />
<orderEntry type="module" module-name="meteoinfo-table" />
<orderEntry type="module" module-name="meteoinfo-image" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-imaging:1.0-alpha2" level="project" />
<orderEntry type="module" module-name="meteoinfo-data" />
<orderEntry type="module" module-name="meteoinfo-projection" />
<orderEntry type="library" name="Maven: org.locationtech.proj4j:proj4j:1.1.4" level="project" />
<orderEntry type="library" name="Maven: net.sf.geographiclib:GeographicLib-Java:1.52" level="project" />
<orderEntry type="module" module-name="meteoinfo-dataframe" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.2" level="project" />
<orderEntry type="library" name="Maven: com.github.albfernandez:juniversalchardet:2.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.11.0" level="project" />
<orderEntry type="library" name="Maven: com.formdev:flatlaf:2.4" level="project" />
<orderEntry type="library" name="Maven: com.formdev:flatlaf-extras:2.4" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.formdev:svgSalamander:1.1.3" level="project" />
<orderEntry type="library" name="Maven: com.itextpdf:itextpdf:5.5.13.2" level="project" />
<orderEntry type="module" module-name="meteoinfo-ui" />
<orderEntry type="module" module-name="meteoinfo-common" />
<orderEntry type="library" name="Maven: com.google.guava:guava:30.1.1-jre" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:failureaccess:1.0.1" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava" level="project" />
<orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:3.0.2" level="project" />
<orderEntry type="library" name="Maven: org.checkerframework:checker-qual:3.8.0" level="project" />
<orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.5.1" level="project" />
<orderEntry type="library" name="Maven: com.google.j2objc:j2objc-annotations:1.3" level="project" />
<orderEntry type="library" name="Maven: com.toedter:jcalendar:1.4" level="project" />
<orderEntry type="library" name="Maven: org.meteothink:wContour:1.7.1" level="project" />
<orderEntry type="library" name="Maven: org.scilab.forge:jlatexmath:1.0.7" level="project" />
<orderEntry type="library" name="Maven: org.scilab.forge:jlatexmath-font-greek:1.0.7" level="project" />
<orderEntry type="library" name="Maven: org.scilab.forge:jlatexmath-font-cyrillic:1.0.7" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" />
<orderEntry type="library" name="Maven: com.l2fprod:l2fprod-common-all:0.1" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-util:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.netbeans:openide-lookup:1.9-patched-1.0" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsio-emf:2.4" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsio:2.4" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-io:2.2.2" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsio-tests:2.4" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsbase:2.4" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsio-pdf:2.4" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphics2d:2.4" level="project" />
<orderEntry type="library" name="Maven: junit:junit:4.10" level="project" />
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsio-ps:2.4" level="project" />
<orderEntry type="library" name="Maven: org.jogamp.jogl:jogl-all:v2.4.0-rc4" level="project" />
<orderEntry type="library" name="Maven: org.jogamp.jogl:jogl-all-natives-linux-aarch64:v2.4.0-rc4" level="project" />
@ -130,23 +54,31 @@
<orderEntry type="library" name="Maven: org.jogamp.gluegen:gluegen-rt-natives-windows-amd64:v2.4.0-rc4" level="project" />
<orderEntry type="library" name="Maven: org.jogamp.gluegen:gluegen-rt-natives-windows-i586:v2.4.0-rc4" level="project" />
<orderEntry type="library" name="Maven: org.joml:joml:1.10.4" level="project" />
<orderEntry type="module" module-name="meteoinfo-console" />
<orderEntry type="library" name="Maven: org.python:jython-standalone:2.7.3b1" level="project" />
<orderEntry type="library" name="Maven: com.fifesoft:rsyntaxtextarea:3.2.0" level="project" />
<orderEntry type="library" name="Maven: com.fifesoft:autocomplete:3.2.0" level="project" />
<orderEntry type="module" module-name="meteoinfo-ndarray" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.19" level="project" />
<orderEntry type="module" module-name="meteoinfo-math" />
<orderEntry type="module" module-name="meteoinfo-geometry" />
<orderEntry type="module" module-name="meteoinfo-table" />
<orderEntry type="module" module-name="meteoinfo-image" />
<orderEntry type="module" module-name="meteoinfo-data" />
<orderEntry type="library" name="Maven: com.formdev:flatlaf:2.4" level="project" />
<orderEntry type="library" name="Maven: com.formdev:flatlaf-extras:2.4" level="project" />
<orderEntry type="library" name="Maven: com.itextpdf:itextpdf:5.5.13.2" level="project" />
<orderEntry type="module" module-name="meteoinfo-common" />
<orderEntry type="library" name="Maven: com.toedter:jcalendar:1.4" level="project" />
<orderEntry type="library" name="Maven: org.scilab.forge:jlatexmath-font-greek:1.0.7" level="project" />
<orderEntry type="library" name="Maven: org.scilab.forge:jlatexmath-font-cyrillic:1.0.7" level="project" />
<orderEntry type="library" name="Maven: org.netbeans:openide-lookup:1.9-patched-1.0" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsio:2.4" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsio-tests:2.4" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-graphicsbase:2.4" level="project" />
<orderEntry type="library" name="Maven: junit:junit:4.10" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math4-legacy:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-complex:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-angle:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-rootfinder:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-quaternion:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-rng-sampling:1.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math4-legacy-exception:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math4-legacy-core:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math4-core:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-core:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-gamma:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-fraction:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-combinatorics:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-arrays:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-field:1.1-SNAPSHOT" level="project" />
@ -155,9 +87,77 @@
<orderEntry type="library" name="Maven: org.apache.commons:commons-rng-client-api:1.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-statistics-distribution:1.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:2.0.0" level="project" />
<orderEntry type="library" name="Maven: de.sciss:docking-frames-common:2.0.0" level="project" />
<orderEntry type="library" name="Maven: de.sciss:docking-frames-core:2.0.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-simple:1.7.19" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.19" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-experimental:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-simple:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ojalgo:ojalgo:51.3.0" level="project" />
<orderEntry type="library" name="Maven: com.github.haifengl:smile-interpolation: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:openblas-platform:0.3.10-1.5.4" level="project" />
<orderEntry type="library" name="Maven: org.locationtech.jts:jts-core:1.19.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-imaging:1.0-alpha2" level="project" />
<orderEntry type="module" module-name="meteoinfo-projection" />
<orderEntry type="module" module-name="meteoinfo-dataframe" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.3" level="project" />
<orderEntry type="library" name="Maven: com.github.albfernandez:juniversalchardet:2.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.11.0" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.formdev:svgSalamander:1.1.3" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:30.1.1-jre" level="project" />
<orderEntry type="library" name="Maven: org.freehep:freehep-io:2.2.2" level="project" />
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-complex:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-angle:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-rootfinder:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-quaternion:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-rng-sampling:1.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math4-legacy-exception:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math4-legacy-core:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-numbers-fraction:1.1-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-core:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-ddense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-dsparse:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-zdense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-fdense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-cdense:0.40" level="project" />
<orderEntry type="library" name="Maven: org.ejml:ejml-fsparse:0.40" 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: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: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.locationtech.proj4j:proj4j:1.1.4" level="project" />
<orderEntry type="library" name="Maven: net.sf.geographiclib:GeographicLib-Java:1.52" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:failureaccess:1.0.1" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava" level="project" />
<orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:3.0.2" level="project" />
<orderEntry type="library" name="Maven: org.checkerframework:checker-qual:3.8.0" level="project" />
<orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.5.1" level="project" />
<orderEntry type="library" name="Maven: com.google.j2objc:j2objc-annotations:1.3" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math4-core:4.0-SNAPSHOT" level="project" />
</component>
</module>

View File

@ -1,32 +1,32 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<MeteoInfo File="milconfig.xml" Type="configurefile">
<Path OpenPath="D:\Working\MIScript\Jython\mis\meteo">
<Path OpenPath="D:\Working\MIScript\Jython\mis\common_math\stats">
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\plot_types\3d"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\plot_types"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\plot_types\contour"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\fitting"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\interpolate"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\linalg"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\random"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\signal"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\spatial"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\special"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\stats"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\optimize"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\meteo"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\optimize"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\fitting"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\special"/>
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\stats"/>
</Path>
<File>
<OpenedFiles>
<OpenedFile File="D:\Working\MIScript\Jython\mis\LaSW\typhoon_map_slice.py"/>
<OpenedFile File="D:\MyProgram\java\MeteoInfoDev\toolbox\meteoview3d\mainGUI.py"/>
<OpenedFile File="D:\Working\MIScript\Jython\mis\common_math\optimize\curve_fit_1.py"/>
<OpenedFile File="D:\Working\MIScript\Jython\mis\common_math\optimize\curve_fit_2.py"/>
<OpenedFile File="D:\Working\MIScript\Jython\mis\common_math\stats\beta_1.py"/>
</OpenedFiles>
<RecentFiles>
<RecentFile File="D:\Working\MIScript\Jython\mis\LaSW\typhoon_map_slice.py"/>
<RecentFile File="D:\MyProgram\java\MeteoInfoDev\toolbox\meteoview3d\mainGUI.py"/>
<RecentFile File="D:\Working\MIScript\Jython\mis\common_math\optimize\curve_fit_1.py"/>
<RecentFile File="D:\Working\MIScript\Jython\mis\common_math\optimize\curve_fit_2.py"/>
<RecentFile File="D:\Working\MIScript\Jython\mis\common_math\stats\beta_1.py"/>
</RecentFiles>
</File>
<Font>
@ -34,5 +34,5 @@
</Font>
<LookFeel DockWindowDecorated="true" LafDecorated="true" Name="FlatDarkLaf"/>
<Figure DoubleBuffering="true"/>
<Startup MainFormLocation="-7,0" MainFormSize="1434,795"/>
<Startup MainFormLocation="-7,-7" MainFormSize="1293,685"/>
</MeteoInfo>

View File

@ -1,4 +1,6 @@
from org.meteoinfo.math.optimize import OptimizeUtil, ParamUnivariateFunction
from org.apache.commons.math4.legacy.fitting.leastsquares import LeastSquaresBuilder
from org.apache.commons.math4.legacy.fitting.leastsquares import LevenbergMarquardtOptimizer
import warnings
from ..core import numeric as np
@ -91,9 +93,7 @@ class UniFunc(ParamUnivariateFunction):
args = tuple(self.getParameters())
return self.f(x, *args)
def curve_fit(f, xdata, ydata, p0=None, sigma=None, absolute_sigma=False,
check_finite=True, bounds=(-np.inf, np.inf), method=None,
jac=None, **kwargs):
def curve_fit(f, xdata, ydata, p0=None, npoint=5, step=0.1):
"""
Use non-linear least squares to fit a function, f, to data.
@ -114,7 +114,13 @@ def curve_fit(f, xdata, ydata, p0=None, sigma=None, absolute_sigma=False,
initial values will all be 1 (if the number of parameters for the
function can be determined using introspection, otherwise a
ValueError is raised).
:return:
:param npoint: int
Number of points for difference calculation. Default value is 5.
:param step: float
Step size for difference calculation.
:return: tuple
Fitted parameter values.
"""
if p0 is None:
# determine number of parameters by inspecting the function
@ -129,14 +135,12 @@ def curve_fit(f, xdata, ydata, p0=None, sigma=None, absolute_sigma=False,
n = p0.size
func = UniFunc(f)
best = OptimizeUtil.curveFit(func, xdata.asarray(), ydata.asarray(), 5, 0.1, p0.tojarray('double'))
best = OptimizeUtil.curveFit(func, xdata.asarray(), ydata.asarray(), npoint, step, p0.tojarray('double'))
r = tuple(best)
return r
# def curve_fit(f, xdata, ydata, p0=None, sigma=None, absolute_sigma=False,
# check_finite=True, bounds=(-np.inf, np.inf), method=None,
# jac=None, **kwargs):
# def curve_fit(f, xdata, ydata, p0=None, npoint=5, step=0.1):
# """
# Use non-linear least squares to fit a function, f, to data.
#
@ -157,7 +161,13 @@ def curve_fit(f, xdata, ydata, p0=None, sigma=None, absolute_sigma=False,
# initial values will all be 1 (if the number of parameters for the
# function can be determined using introspection, otherwise a
# ValueError is raised).
# :return:
# :param npoint: int
# Number of points for difference calculation. Default value is 5.
# :param step: float
# Step size for difference calculation.
#
# :return: tuple
# Fitted parameter values.
# """
# if p0 is None:
# # determine number of parameters by inspecting the function
@ -172,7 +182,7 @@ def curve_fit(f, xdata, ydata, p0=None, sigma=None, absolute_sigma=False,
# n = p0.size
#
# func = UniFunc(f)
# jac_func = OptimizeUtil.getJacobianFunction(func, xdata.asarray(), func.order, 5, 0.1)
# jac_func = OptimizeUtil.getJacobianFunction(func, xdata.asarray(), func.order, npoint, step)
# problem = LeastSquaresBuilder().start(p0.tojarray('double')). \
# model(jac_func). \
# target(ydata.tojarray('double')). \

View File

@ -69,7 +69,7 @@
<orderEntry type="library" name="Maven: org.locationtech.proj4j:proj4j:1.1.4" level="project" />
<orderEntry type="library" name="Maven: net.sf.geographiclib:GeographicLib-Java:1.52" level="project" />
<orderEntry type="module" module-name="meteoinfo-dataframe" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.2" level="project" />
<orderEntry type="library" name="Maven: edu.ucar:netcdfAll:5.5.3" level="project" />
<orderEntry type="library" name="Maven: com.github.albfernandez:juniversalchardet:2.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.11.0" level="project" />
<orderEntry type="library" name="Maven: com.formdev:flatlaf:2.4" level="project" />

View File

@ -26,32 +26,54 @@ public class MyParametricUnivariateFunction implements ParametricUnivariateFunct
@Override
public double value(double v, double... parameters) {
function.setParameters(parameters);
return function.value(v);
double y = Double.POSITIVE_INFINITY;
try {
y = function.value(v);
} catch (Exception e) {
e.printStackTrace();
}
return y;
}
@Override
public double[] gradient(double v, double... parameters) {
public double[] gradient(double x, double ... parameters) {
function.setParameters(parameters);
// create a differentiator
FiniteDifferencesDifferentiator differentiator =
new FiniteDifferencesDifferentiator(nbPoints, stepSize);
// create a new function that computes both the value and the derivatives
// using DerivativeStructure
UnivariateDifferentiableFunction diffFunc = differentiator.differentiate(function);
double y = function.value(v);
int n = parameters.length;
double[] gradients = new double[n];
for (int i = 0; i < n; i++) {
DerivativeStructure xDS = new DerivativeStructure(n, 1, i, parameters[i]);
DerivativeStructure yDS = diffFunc.value(xDS);
int[] idx = new int[n];
idx[i] = 1;
gradients[i] = yDS.getPartialDerivative(idx);
gradients[i] = Double.POSITIVE_INFINITY;
}
try {
// create a differentiator
FiniteDifferencesDifferentiator differentiator =
new FiniteDifferencesDifferentiator(nbPoints, stepSize);
// create a new function that computes both the value and the derivatives
// using DerivativeStructure
UnivariateDifferentiableFunction diffFunc = differentiator.differentiate(function);
for (int i = 0; i < n; i++) {
DerivativeStructure xDS = new DerivativeStructure(n, 1, i, parameters[i]);
DerivativeStructure yDS = diffFunc.value(xDS);
int[] idx = new int[n];
idx[i] = 1;
gradients[i] = yDS.getPartialDerivative(idx);
}
} catch (Exception e) {
e.printStackTrace();
}
return gradients;
/*final double a = parameters[0];
final double b = parameters[1];
final double c = parameters[2];
final double[] grad = new double[3];
grad[0] = Math.exp(-b * x);
grad[1] = -a * x * grad[0];
grad[2] = 1;
return grad;*/
}
}

View File

@ -57,6 +57,53 @@ public class OptimizeUtil {
return jacobian;
}
/* *//**
* Get Jacobian function.
* @param func The uni-variate function
* @param x X values
* @param params Parameter number
* @param nbPoints Number of points for difference calculation
* @param stepSize Step size for difference calculation
* @return Jacobian function
*//*
public static MultivariateJacobianFunction getJacobianFunction(ParamUnivariateFunction func, Array x,
int params, int nbPoints, double stepSize) throws NoSuchMethodException {
// create a differentiator
FiniteDifferencesDifferentiator differentiator =
new FiniteDifferencesDifferentiator(nbPoints, stepSize);
Array finalX = x.copyIfView();
MultivariateJacobianFunction jacobianFunc = new MultivariateJacobianFunction() {
public Pair<RealVector, RealMatrix> value(final RealVector point) {
func.setParameters(point.toArray());
// create a new function that computes both the value and the derivatives
// using DerivativeStructure
UnivariateDifferentiableFunction diffFunc = differentiator.differentiate(func);
int n = (int) finalX.getSize();
RealVector value = new ArrayRealVector(n);
for (int i = 0; i < n; i++) {
value.setEntry(i, func.value(x.getDouble(i)));
}
RealMatrix jacobian = new Array2DRowRealMatrix(n, params);
double v;
for (int i = 0; i < params; i++) {
for (int j = 0; j < n; j++) {
DerivativeStructure xDS = new DerivativeStructure(n, 1, j, value.getEntry(j));
DerivativeStructure yDS = diffFunc.value(xDS);
int[] idx = new int[n];
idx[j] = 1;
jacobian.setEntry(j, i, yDS.getPartialDerivative(idx));
}
}
return new Pair<RealVector, RealMatrix>(value, jacobian);
}
};
return jacobianFunc;
}*/
/**
* Get Jacobian function.
* @param func The uni-variate function
@ -67,11 +114,7 @@ public class OptimizeUtil {
* @return Jacobian function
*/
public static MultivariateJacobianFunction getJacobianFunction(ParamUnivariateFunction func, Array x,
int params, int nbPoints, double stepSize) throws NoSuchMethodException {
// Class cls = func.getClass();
// Method method = cls.getMethod("value");
// int order = method.getParameterCount() - 1;
int params, int nbPoints, double stepSize) throws NoSuchMethodException {
// create a differentiator
FiniteDifferencesDifferentiator differentiator =
new FiniteDifferencesDifferentiator(nbPoints, stepSize);

View File

@ -1,6 +1,10 @@
package org.meteoinfo.math.optimize;
import org.apache.commons.math4.legacy.analysis.UnivariateFunction;
import org.apache.commons.math4.legacy.linear.ArrayRealVector;
import org.apache.commons.math4.legacy.linear.RealVector;
import org.meteoinfo.ndarray.Array;
import org.meteoinfo.ndarray.IndexIterator;
import java.util.List;
@ -39,10 +43,23 @@ public class ParamUnivariateFunction implements UnivariateFunction {
* @param x X
* @return Y
*/
@Override
public double value(double x) {
return value(x, this.parameters);
}
public RealVector value(Array x) {
RealVector r = new ArrayRealVector((int) x.getSize());
IndexIterator iter = x.getIndexIterator();
int i = 0;
while(iter.hasNext()) {
r.setEntry(i, value(iter.getDoubleNext()));
i += 1;
}
return r;
}
/**
* Value
* @param x X