|
|
16-12-2014, 14:59
|
#136
|
Registered User
Join Date: Nov 2012
Location: Orust Sweden
Boat: Najad 34
Posts: 4,353
|
Re: World Magnetic Model Plugin
Pavel..
If I'm correct the installer package now puts WMM.COF in /plugins/wmm_pi/data/
But the plugin source search for it in /plugins/, so when I deleted the old wmm.cof from /plugins/ there is a warning message in the log:
Code:
23:29:07: WMM: Error opening coefficient file
23:29:07: Warning: WMM model data file C:\Program\OpenCPN\plugins/WMM.COF can't be loaded, using the bundled data.
or am I "talking through my hat" again??
Håkan
|
|
|
16-12-2014, 15:11
|
#137
|
Registered User
Join Date: Feb 2010
Location: Tierra del Fuego
Boat: Phantom 19
Posts: 6,264
|
Re: World Magnetic Model Plugin
Hakan...
Seems Windows only, will have a look why as soon as I get to a Windows machine...
BTW, the plugin has the COF table embedded so the non-existent file gives us 5 years to fix it
Thanks
Pavel
|
|
|
16-12-2014, 16:17
|
#138
|
Registered User
Join Date: Nov 2012
Location: Orust Sweden
Boat: Najad 34
Posts: 4,353
|
Re: World Magnetic Model Plugin
Pavel..
I think it's here:
wmm_pi.cpp:660
Code:
pConf->SetPath ( _T ( "/Directories" ) );
wxString s =wxFileName::GetPathSeparator();
wxString def = *GetpSharedDataLocation() + _T("plugins")
+ s + _T("wmm_pi") + s + _T("data") + s;
pConf->Read ( _T ( "WMMDataLocation" ), &m_wmm_dir, def);
return true;
Since the config-file has its old value, WMMDataLocation=C:\\Program\\OpenCPN\\plugins, &m_wmm_dir will take that.
And if I delete the config file key:WMMDataLocation, pConf->Write will nicely print a new correct value.
But how to automate that for all users I'll ask a very clever Czech. But five years is long time, right.
Håkan
|
|
|
16-12-2014, 16:26
|
#139
|
Registered User
Join Date: Feb 2010
Location: Tierra del Fuego
Boat: Phantom 19
Posts: 6,264
|
Re: World Magnetic Model Plugin
Hakan...
Thanks for finding the cause. I think we will simply throw that setting away... With the plan I have for the plugin system (which should happen faster than in 5 years ), it will be useless anyway...
Pavel
|
|
|
16-12-2014, 16:29
|
#140
|
Registered User
Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,943
|
Re: World Magnetic Model Plugin
Hakan, how do you find these?
|
|
|
17-12-2014, 01:56
|
#141
|
Registered User
Join Date: Nov 2012
Location: Orust Sweden
Boat: Najad 34
Posts: 4,353
|
Re: World Magnetic Model Plugin
Rick..
Well... I searched for the text .cof and from the hit traced back to see how the directory to the file was constructed. Then debug and some breakpoints to see what's happened.
Pavel...
Thanks, of course we'll trust on you as usual.
Håkan
|
|
|
17-12-2014, 02:50
|
#142
|
Registered User
Join Date: Jul 2010
Location: Hannover - Germany
Boat: Amel Sharki
Posts: 2,547
|
Re: World Magnetic Model Plugin
Quote:
Originally Posted by nohal
Gerhard...
Would you mind posting the whole report? What you show on the picture is a false positive, but I'm going to commit a fix to make even the less smart statical code analyzers happy.
Pavel
|
Here are the other issues found by a stupid analyzer. Of course it is better to have a smart OS which simply pop-ups a blue screen when in doubt...
Gerhard
Code:
wmm_pi.cpp
----------
In file included from wmm_pi/src/wmm_pi.cpp:38:
In file included from wmm_pi/src/wmm_pi.h:48:
wmm_pi/src/WMM_SubLibrary.c:1851:3: warning: Potential leak of memory pointed to by 'MagneticModel'
WMM_Error(2);
^~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:2549:24: warning: The right operand of '*' is a garbage value
* (double) (n+1) * LegendreFunction-> Pcup[index];
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:3276:15: warning: The left operand of '==' is a garbage value
if(Hemisphere=='n' || Hemisphere=='N')
~~~~~~~~~~^
3 warnings generated.
---------------------------------------------------------------------------------------------------------------------------
wmm_pi/src/wmm_pi.cpp:142:24: Potential leak of memory pointed to by 'MagneticModel' (within a call to 'WMM_AllocateModelMemory')
wmm_pi/src/wmm_pi.cpp:142:24: Calling 'WMM_AllocateModelMemory'
wmm_pi/src/WMM_SubLibrary.c:1789:1: Entered call from 'wmm_pi::Init'
wmm_pi/src/WMM_SubLibrary.c:1816:46: Memory is allocated
wmm_pi/src/WMM_SubLibrary.c:1828:3: Potential leak of memory pointed to by 'MagneticModel'
--------------------------------------------------------------------
wmm_pi/src/wmm_pi.cpp:435:2: The left operand of '==' is a garbage value (within a call to 'WMM_CalculateGridVariation')
wmm_pi/src/wmm_pi.cpp:435:2: Calling 'WMM_CalculateGridVariation'
wmm_pi/src/WMM_SubLibrary.c:163:1: Entered call from 'wmm_pi::SetCursorLatLon'
wmm_pi/src/WMM_SubLibrary.c:199:2: Calling 'WMM_GetTransverseMercator'
wmm_pi/src/WMM_SubLibrary.c:3237:1: Entered call from 'WMM_CalculateGridVariation'
wmm_pi/src/WMM_SubLibrary.c:3267:5: 'Hemisphere' declared without an initial value
wmm_pi/src/WMM_SubLibrary.c:3273:2: Calling 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3330:1: Entered call from 'WMM_GetTransverseMercator'
wmm_pi/src/WMM_SubLibrary.c:3273:2: Returning from 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3276:15: The left operand of '==' is a garbage value
------------------------------------------------------------------
wmm_pi/src/wmm_pi.cpp:463:2: The left operand of '==' is a garbage value (within a call to 'WMM_CalculateGridVariation')
wmm_pi/src/wmm_pi.cpp:463:2: Calling 'WMM_CalculateGridVariation'
wmm_pi/src/WMM_SubLibrary.c:163:1: Entered call from 'wmm_pi::SetPositionFix'
wmm_pi/src/WMM_SubLibrary.c:199:2: Calling 'WMM_GetTransverseMercator'
wmm_pi/src/WMM_SubLibrary.c:3237:1: Entered call from 'WMM_CalculateGridVariation'
wmm_pi/src/WMM_SubLibrary.c:3267:5: 'Hemisphere' declared without an initial value
wmm_pi/src/WMM_SubLibrary.c:3273:2: Calling 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3330:1: Entered call from 'WMM_GetTransverseMercator'
wmm_pi/src/WMM_SubLibrary.c:3273:2: Returning from 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3276:15: The left operand of '==' is a garbage value
------------------------------------------------------------------
wmm_pi/src/wmm_pi.cpp:545:2: The right operand of '*' is a garbage value (within a call to 'WMM_Geomag')
wmm_pi/src/wmm_pi.cpp:545:2: Calling 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:3077:1: Entered call from 'wmm_pi::SendVariationAt'
wmm_pi/src/WMM_SubLibrary.c:3115:2: Calling 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:99:1: Entered call from 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:124:10: Calling 'WMM_PcupLow'
wmm_pi/src/WMM_SubLibrary.c:2034:1: Entered call from 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:2070:6: Assuming 'schmidtQuasiNorm' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:2078:14: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:2118:14: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:2138:14: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:124:10: Returning from 'WMM_PcupLow'
wmm_pi/src/WMM_SubLibrary.c:3115:2: Returning from 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:3117:2: Calling 'WMM_SecVarSummation'
wmm_pi/src/WMM_SubLibrary.c:2518:1: Entered call from 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:2536:14: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:2538:12: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:2549:24: The right operand of '*' is a garbage value
--------------------------------------------------------------------------
wmm_pi/src/wmm_pi.cpp:546:2: The left operand of '==' is a garbage value (within a call to 'WMM_CalculateGridVariation')
wmm_pi/src/wmm_pi.cpp:546:2: Calling 'WMM_CalculateGridVariation'
wmm_pi/src/WMM_SubLibrary.c:163:1: Entered call from 'wmm_pi::SendVariationAt'
wmm_pi/src/WMM_SubLibrary.c:199:2: Calling 'WMM_GetTransverseMercator'
wmm_pi/src/WMM_SubLibrary.c:3237:1: Entered call from 'WMM_CalculateGridVariation'
wmm_pi/src/WMM_SubLibrary.c:3267:5: 'Hemisphere' declared without an initial value
wmm_pi/src/WMM_SubLibrary.c:3273:2: Calling 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3330:1: Entered call from 'WMM_GetTransverseMercator'
wmm_pi/src/WMM_SubLibrary.c:3360:2: Calling 'WMM_Error'
wmm_pi/src/WMM_SubLibrary.c:435:1: Entered call from 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3360:2: Returning from 'WMM_Error'
wmm_pi/src/WMM_SubLibrary.c:3273:2: Returning from 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3276:15: The left operand of '==' is a garbage value
==============================================================================================================================================================================
WMM_SubLibrary.c
----------------
wmm_pi/src/WMM_SubLibrary.c:357:9: warning: Null pointer argument in call to string copy function
strcpy(Error, "WMM Error: The Month entered is invalid, valid months are '1 to 12'\n");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from wmm_pi/src/WMM_SubLibrary.c:2:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/string.h:186:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/secure/_string.h:83:3: note: expanded from macro 'strcpy'
__builtin___strcpy_chk (dest, src, __darwin_obsz (dest))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:362:9: warning: Null pointer argument in call to string copy function
strcpy(Error, "WMM Error: The day entered is invalid\n");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from wmm_pi/src/WMM_SubLibrary.c:2:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/string.h:186:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/secure/_string.h:83:3: note: expanded from macro 'strcpy'
__builtin___strcpy_chk (dest, src, __darwin_obsz (dest))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:964:88: warning: The left operand of '/' is a garbage value
CoordGeodetic->HeightAboveEllipsoid = CoordGeodetic->HeightAboveGeoid + DeltaHeight / 1000;
~~~~~~~~~~~ ^
wmm_pi/src/WMM_SubLibrary.c:1690:19: warning: Assigned value is garbage or undefined
PrintElement = GeoMagneticElements.GV; /*8. The Grid Variation*/
^ ~~~~~~~~~~~~~~~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:1851:3: warning: Potential leak of memory pointed to by 'MagneticModel'
WMM_Error(2);
^~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:1962:28: warning: The right operand of '/' is a garbage value
f1[k] = (double)(2*n-1) / PreSqr[n+m] / PreSqr[n-m];
^ ~~~~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:2549:24: warning: The right operand of '*' is a garbage value
* (double) (n+1) * LegendreFunction-> Pcup[index];
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wmm_pi/src/WMM_SubLibrary.c:3164:13: warning: Potential leak of memory pointed to by 'TimedMagneticModel'
tot_RMSx = sqrt(tot_RMSx) / n;
^~~~
wmm_pi/src/WMM_SubLibrary.c:3276:15: warning: The left operand of '==' is a garbage value
if(Hemisphere=='n' || Hemisphere=='N')
~~~~~~~~~~^
wmm_pi/src/WMM_SubLibrary.c:3637:21: warning: Access to field 'EditionDate' results in a dereference of a null pointer (loaded from variable 'model')
model->EditionDate = releasedate.DecimalYear;
~~~~~ ^
wmm_pi/src/WMM_SubLibrary.c:3639:15: warning: Access to field 'epoch' results in a dereference of a null pointer (loaded from variable 'model')
model->epoch = atof(values[MODELSTARTYEAR]);
~~~~~ ^
wmm_pi/src/WMM_SubLibrary.c:3771:4: warning: Access to field 'Main_Field_Coeff_G' results in a dereference of a null pointer (loaded from variable 'model')
model->Main_Field_Coeff_G[index] = gnm;
^~~~~~~~~~~~~~~~~~~~~~~~~
12 warnings generated.
----------------------------------------------------------------------------------------------------------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:357:9: Null pointer argument in call to string copy function
wmm_pi/src/WMM_SubLibrary.c:3706:6: Assuming 'stream' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3727:9: Assuming 'header_index' is < 'array_size'
wmm_pi/src/WMM_SubLibrary.c:3735:16: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3779:3: Calling 'assignheadervalues'
wmm_pi/src/WMM_SubLibrary.c:3630:1: Entered call from 'WMM_readMagneticModel_ISO'
wmm_pi/src/WMM_SubLibrary.c:3636:35: Passing null pointer value via 2nd parameter 'Error'
wmm_pi/src/WMM_SubLibrary.c:3636:5: Calling 'WMM_DateToYear'
wmm_pi/src/WMM_SubLibrary.c:317:1: Entered call from 'assignheadervalues'
wmm_pi/src/WMM_SubLibrary.c:357:9: Null pointer argument in call to string copy function
---------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:362:9: Null pointer argument in call to string copy function
wmm_pi/src/WMM_SubLibrary.c:3706:6: Assuming 'stream' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3727:9: Assuming 'header_index' is < 'array_size'
wmm_pi/src/WMM_SubLibrary.c:3735:16: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3779:3: Calling 'assignheadervalues'
wmm_pi/src/WMM_SubLibrary.c:3630:1: Entered call from 'WMM_readMagneticModel_ISO'
wmm_pi/src/WMM_SubLibrary.c:3636:35: Passing null pointer value via 2nd parameter 'Error'
wmm_pi/src/WMM_SubLibrary.c:3636:5: Calling 'WMM_DateToYear'
wmm_pi/src/WMM_SubLibrary.c:317:1: Entered call from 'assignheadervalues'
wmm_pi/src/WMM_SubLibrary.c:362:9: Null pointer argument in call to string copy function
---------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:964:88: The left operand of '/' is a garbage value
wmm_pi/src/WMM_SubLibrary.c:1308:30: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1308:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1308:30: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1308:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1308:30: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1308:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1362:30: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1362:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1362:30: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1362:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1362:30: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1362:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1413:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1430:4: Calling 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:943:1: Entered call from 'WMM_GetUserInput'
wmm_pi/src/WMM_SubLibrary.c:963:17: Calling 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:850:1: Entered call from 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:963:17: Returning from 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:1430:4: Returning from 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:1432:7: Assuming 'j' is not equal to 1
wmm_pi/src/WMM_SubLibrary.c:1413:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1413:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1430:4: Calling 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:943:1: Entered call from 'WMM_GetUserInput'
wmm_pi/src/WMM_SubLibrary.c:963:17: Calling 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:850:1: Entered call from 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:963:17: Returning from 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:1430:4: Returning from 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:1432:7: Assuming 'j' is not equal to 1
wmm_pi/src/WMM_SubLibrary.c:1413:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1413:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1430:4: Calling 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:943:1: Entered call from 'WMM_GetUserInput'
wmm_pi/src/WMM_SubLibrary.c:963:17: Calling 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:850:1: Entered call from 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:963:17: Returning from 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:1430:4: Returning from 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:1432:7: Assuming 'j' is not equal to 1
wmm_pi/src/WMM_SubLibrary.c:1413:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1413:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1430:4: Calling 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:943:1: Entered call from 'WMM_GetUserInput'
wmm_pi/src/WMM_SubLibrary.c:959:1: 'DeltaHeight' declared without an initial value
wmm_pi/src/WMM_SubLibrary.c:963:17: Calling 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:850:1: Entered call from 'WMM_ConvertGeoidToEllipsoidHeight'
wmm_pi/src/WMM_SubLibrary.c:963:17: Returning from 'WMM_GetGeoidHeight'
wmm_pi/src/WMM_SubLibrary.c:964:88: The left operand of '/' is a garbage value
--------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:1690:19: Assigned value is garbage or undefined
wmm_pi/src/WMM_SubLibrary.c:1616:6: Assuming 'PrintOption' is not equal to 1
wmm_pi/src/WMM_SubLibrary.c:1641:36: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1643:25: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1645:29: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1655:38: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1663:6: Calling 'WMM_CalculateGeoMagneticElements'
wmm_pi/src/WMM_SubLibrary.c:133:1: Entered call from 'WMM_Grid'
wmm_pi/src/WMM_SubLibrary.c:1663:6: Returning from 'WMM_CalculateGeoMagneticElements'
wmm_pi/src/WMM_SubLibrary.c:1664:6: Calling 'WMM_CalculateSecularVariation'
wmm_pi/src/WMM_SubLibrary.c:205:1: Entered call from 'WMM_Grid'
wmm_pi/src/WMM_SubLibrary.c:1664:6: Returning from 'WMM_CalculateSecularVariation'
wmm_pi/src/WMM_SubLibrary.c:1690:19: Assigned value is garbage or undefined
--------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:1828:3: Potential leak of memory pointed to by 'MagneticModel'
wmm_pi/src/WMM_SubLibrary.c:3706:6: Assuming 'stream' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3727:9: Assuming 'header_index' is < 'array_size'
wmm_pi/src/WMM_SubLibrary.c:3735:16: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3735:4: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3735:16: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3745:10: Assuming 'tempint' is > 0
wmm_pi/src/WMM_SubLibrary.c:3748:39: Calling 'WMM_AllocateModelMemory'
wmm_pi/src/WMM_SubLibrary.c:1789:1: Entered call from 'WMM_readMagneticModel_ISO'
wmm_pi/src/WMM_SubLibrary.c:1816:46: Memory is allocated
wmm_pi/src/WMM_SubLibrary.c:1818:6: Assuming 'MagneticModel' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:1828:3: Potential leak of memory pointed to by 'MagneticModel'
--------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:1962:28: The right operand of '/' is a garbage value
wmm_pi/src/WMM_SubLibrary.c:3150:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3150:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3150:8: Assuming 'i' is equal to 0
wmm_pi/src/WMM_SubLibrary.c:3150:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3150:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3150:8: Assuming 'i' is equal to 0
wmm_pi/src/WMM_SubLibrary.c:3150:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3150:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3150:8: Assuming 'i' is equal to 0
wmm_pi/src/WMM_SubLibrary.c:3150:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3154:3: Calling 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:3077:1: Entered call from 'WMM_Comparison'
wmm_pi/src/WMM_SubLibrary.c:3115:2: Calling 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:99:1: Entered call from 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:123:6: Assuming 'nMax' is > 16
wmm_pi/src/WMM_SubLibrary.c:125:14: Calling 'WMM_PcupHigh'
wmm_pi/src/WMM_SubLibrary.c:1859:1: Entered call from 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:1916:6: Assuming 'f1' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:1927:6: Assuming 'PreSqr' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:1937:6: Assuming 'f2' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:1947:14: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:1954:12: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1959:13: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:1954:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:1954:12: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1959:13: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:1962:28: The right operand of '/' is a garbage value
-------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:2549:24: The right operand of '*' is a garbage value
wmm_pi/src/WMM_SubLibrary.c:3150:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3154:3: Calling 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:3077:1: Entered call from 'WMM_Comparison'
wmm_pi/src/WMM_SubLibrary.c:3115:2: Calling 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:99:1: Entered call from 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:124:10: Calling 'WMM_PcupLow'
wmm_pi/src/WMM_SubLibrary.c:2034:1: Entered call from 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:2070:6: Assuming 'schmidtQuasiNorm' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:2078:14: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:2118:14: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:2138:14: Loop body executed 0 times
wmm_pi/src/WMM_SubLibrary.c:124:10: Returning from 'WMM_PcupLow'
wmm_pi/src/WMM_SubLibrary.c:3115:2: Returning from 'WMM_AssociatedLegendreFunction'
wmm_pi/src/WMM_SubLibrary.c:3117:2: Calling 'WMM_SecVarSummation'
wmm_pi/src/WMM_SubLibrary.c:2518:1: Entered call from 'WMM_Geomag'
wmm_pi/src/WMM_SubLibrary.c:2536:14: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:2538:12: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:2549:24: The right operand of '*' is a garbage value
-------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:3164:13: Potential leak of memory pointed to by 'TimedMagneticModel'
wmm_pi/src/WMM_SubLibrary.c:3141:23: Calling 'WMM_AllocateModelMemory'
wmm_pi/src/WMM_SubLibrary.c:1789:1: Entered call from 'WMM_Comparison'
wmm_pi/src/WMM_SubLibrary.c:1816:46: Memory is allocated
wmm_pi/src/WMM_SubLibrary.c:1818:6: Assuming 'MagneticModel' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:3141:23: Returned allocated memory
wmm_pi/src/WMM_SubLibrary.c:3150:8: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3150:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3150:8: Assuming 'i' is not equal to 0
wmm_pi/src/WMM_SubLibrary.c:3164:13: Potential leak of memory pointed to by 'TimedMagneticModel'
-------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:3276:15: The left operand of '==' is a garbage value
wmm_pi/src/WMM_SubLibrary.c:3267:5: 'Hemisphere' declared without an initial value
wmm_pi/src/WMM_SubLibrary.c:3273:2: Calling 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3330:1: Entered call from 'WMM_GetTransverseMercator'
wmm_pi/src/WMM_SubLibrary.c:3273:2: Returning from 'WMM_GetUTMParameters'
wmm_pi/src/WMM_SubLibrary.c:3276:15: The left operand of '==' is a garbage value
-------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:3637:21: Access to field 'EditionDate' results in a dereference of a null pointer (loaded from variable 'model')
wmm_pi/src/WMM_SubLibrary.c:3702:2: 'model' initialized to a null pointer value
wmm_pi/src/WMM_SubLibrary.c:3706:6: Assuming 'stream' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3727:9: Assuming 'header_index' is < 'array_size'
wmm_pi/src/WMM_SubLibrary.c:3735:16: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3779:22: Passing null pointer value via 1st parameter 'model'
wmm_pi/src/WMM_SubLibrary.c:3779:3: Calling 'assignheadervalues'
wmm_pi/src/WMM_SubLibrary.c:3630:1: Entered call from 'WMM_readMagneticModel_ISO'
wmm_pi/src/WMM_SubLibrary.c:3637:21: Access to field 'EditionDate' results in a dereference of a null pointer (loaded from variable 'model')
-------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:3639:15: Access to field 'epoch' results in a dereference of a null pointer (loaded from variable 'model')
wmm_pi/src/WMM_SubLibrary.c:3702:2: 'model' initialized to a null pointer value
wmm_pi/src/WMM_SubLibrary.c:3706:6: Assuming 'stream' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3727:9: Assuming 'header_index' is < 'array_size'
wmm_pi/src/WMM_SubLibrary.c:3735:16: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3779:22: Passing null pointer value via 1st parameter 'model'
wmm_pi/src/WMM_SubLibrary.c:3779:3: Calling 'assignheadervalues'
wmm_pi/src/WMM_SubLibrary.c:3630:1: Entered call from 'WMM_readMagneticModel_ISO'
wmm_pi/src/WMM_SubLibrary.c:3639:15: Access to field 'epoch' results in a dereference of a null pointer (loaded from variable 'model')
-------------------------------------------------------------
wmm_pi/src/WMM_SubLibrary.c:3771:4: Access to field 'Main_Field_Coeff_G' results in a dereference of a null pointer (loaded from variable 'model')
wmm_pi/src/WMM_SubLibrary.c:3706:6: Assuming 'stream' is not equal to null
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3727:9: Assuming 'header_index' is < 'array_size'
wmm_pi/src/WMM_SubLibrary.c:3735:16: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3745:10: Assuming 'tempint' is > 0
wmm_pi/src/WMM_SubLibrary.c:3749:8: Null pointer value stored to 'model'
wmm_pi/src/WMM_SubLibrary.c:3713:2: Looping back to the head of the loop
wmm_pi/src/WMM_SubLibrary.c:3713:9: Entering loop body
wmm_pi/src/WMM_SubLibrary.c:3771:4: Access to field 'Main_Field_Coeff_G' results in a dereference of a null pointer (loaded from variable 'model')
==================================================================================================================================================================
|
|
|
12-01-2020, 05:34
|
#143
|
Registered User
Join Date: Jul 2010
Location: Hannover - Germany
Boat: Amel Sharki
Posts: 2,547
|
Re: World Magnetic Model Plugin
If someone is still using the WMM plugin, here is the actual WMM.COF file for 2020 til 2025. If you don't know where to copy the file look at your opencpn.log file. But first extract this zip file deleting the doc extension.
|
|
|
12-01-2020, 07:46
|
#144
|
Registered User
Join Date: Mar 2010
Location: France
Boat: 10.50 mètres
Posts: 3,050
|
Re: World Magnetic Model Plugin
Hello Dave, Hello Nohal,
In principle, the existence of a new NOAA WMM file should lead to a new version of the WMM plugin. And since this plugin is contained in OpenCPN, this should lead to a new version of OpenCPN.
I assume you will be releasing a new version of OpenCPN soon. What timetable do you plan to follow on this subject?
Gilletarom (who also wishes you a happy new year 2020)
|
|
|
12-01-2020, 08:10
|
#145
|
Marine Service Provider
Join Date: Mar 2008
Posts: 7,576
|
Re: World Magnetic Model Plugin
Gilletarom...
We plan tentatively to start a new Beta test program within a month or 6 weeks. This will include the update to the WMM model.
Thanks
Dave
|
|
|
12-01-2020, 08:41
|
#146
|
Registered User
Join Date: Mar 2010
Location: France
Boat: 10.50 mètres
Posts: 3,050
|
Re: World Magnetic Model Plugin
Quote:
Originally Posted by bdbcat
Gilletarom...
We plan tentatively to start a new Beta test program within a month or 6 weeks. This will include the update to the WMM model.
Dave
|
Thank you Dave.
|
|
|
13-01-2020, 06:34
|
#147
|
Registered User
Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,943
|
Re: World Magnetic Model Plugin
Thank you CarCode, very thoughful.
Quote:
Originally Posted by CarCode
If someone is still using the WMM plugin, here is the actual WMM.COF file for 2020 til 2025. If you don't know where to copy the file look at your opencpn.log file. But first extract this zip file deleting the doc extension.
|
|
|
|
28-05-2021, 09:59
|
#148
|
Registered User
Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,943
|
Re: World Magnetic Model Plugin
|
|
|
28-05-2021, 10:31
|
#149
|
Registered User
Join Date: Feb 2010
Location: Tierra del Fuego
Boat: Phantom 19
Posts: 6,264
|
Re: World Magnetic Model Plugin
Updated what?
If you try to suggest we update to WMM 2020, you are bit too late, it was done a year and half ago when that model was released.
|
|
|
31-01-2023, 05:06
|
#150
|
Registered User
Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,943
|
Re: World Magnetic Model Plugin
|
|
|
|
|
Thread Tools |
Search this Thread |
|
|
Display Modes |
Rate This Thread |
Linear Mode
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
|
Advertise Here
Recent Discussions |
|
|
|
|
|
|
|
|
|
|
|
|
Vendor Spotlight |
|
|
|
|
|