[ncl-talk] Convective Temp Calculation
Brandon Sullivan
btsullivan91 at gmail.com
Mon Mar 23 22:08:47 MDT 2015
Dennis, thanks! I'm 99% there.. WRAPIT worked fine and I was able to get
the soundings to run and generate.. I had to work a little bit with my
variables to line up with my sounding file.. I think I have some bad math
somewhere as all my convective temps are pretty off? Or 0.. I'm unsure
which variable r is referencing here, when looking through the code. I
assume mixing ratio? I've converted it to kg/kg also, but no avail.
Last step, I hope!
Brandon Sullivan
On Mon, Mar 23, 2015 at 9:00 PM, Dennis Shea <shea at ucar.edu> wrote:
> [1]
> The *only* delimieter pair that should be in the code is the 1st pair. As
> noted in the documentation, only the subroutines/functions called from NCL
> should have the delimeters,
>
> [2]
> I think you have 'dos' caharacters embedded in 'test.f'
> Perhaps from the editor you used.?
>
> [3]
> After removing the extra delimiters
>
> %> dos2unix test.f
>
> [4]
> %> WRAPIT test.f
>
> Actually, I'm just attaching what I dd.
>
>
>
>
>
> On Mon, Mar 23, 2015 at 3:21 PM, Brandon Sullivan <btsullivan91 at gmail.com>
> wrote:
>
>> Dennis, thanks.
>>
>> I added that.. Added the NCLFORTSTART/NCLEND to it, etc.. Then, I just
>> continued to get a ton of other functions that were undefined... So, I went
>> through and added them all one by one until finally I got no more errors..
>> I basically have the whole sstats.f file in there..
>>
>> Now, I get this error - warning:Could not find Init() in external file
>> /home/Soundings/Extra/test.so, file not loaded
>> warning:error at line 17 in file testsounding.ncl
>>
>> I do get a syntax error when running WRAPIT now, too.
>>
>> I sincerely appreciate your continued help... New test.f attached.
>>
>>
>>
>> Brandon Sullivan
>>
>> On Mon, Mar 23, 2015 at 3:34 PM, Dennis Shea <shea at ucar.edu> wrote:
>>
>>> The .so is particular to the compiler you are using. So, it is not
>>> generic.
>>>
>>> --
>>> The error message is coming from the fortran code
>>>
>>> /home/Soundings/Extra/test.so: undefined symbol: theta_wetb_
>>>
>>> ^^^^^^^^^^^
>>>
>>> If you search for 'theta_wetb' in your test code, it is used but it is
>>> not part of test,f
>>>
>>> Extract that from 'sstats.f' and include with your test.f
>>>
>>> ---
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> * function theta_wetb(thetae_K)c..c.. Eqn below was
>>> gotten from polynomial fit to data inc.. Smithsonian
>>> Meteorological Tables showing Theta-ec.. and Theta-wc..
>>> real*8 c(0:6), d(0:6) data c/-1.00922292e-10, -1.47945344e-8,
>>> -1.7303757e-6 + ,-0.00012709, 1.15849867e-6,
>>> -3.518296861e-9 + ,3.5741522e-12/ data d/0.00000000,
>>> -3.5223513e-10, -5.7250807e-8 + ,-5.83975422e-6, 4.72445163e-8,
>>> -1.13402845e-10 + ,8.729580402e-14/
>>> x=min(475.0,thetae_K) if( x .le. 335.5 ) then
>>> answer = c(0)+x*(c(1)+x*(c(2)+x*(c(3)+x*(c(4)+x*(c(5)+ +
>>> x*c(6) ))))) else answer =
>>> d(0)+x*(d(1)+x*(d(2)+x*(d(3)+x*(d(4)+x*(d(5)+ + x*d(6)
>>> ))))) endif theta_wetb = answer + 273.15 return end---*
>>> The NCL project does have python versions called: pyNGL and pyNIO
>>> *. *
>>> Likely, they will have new (significantly updated) versions out in the
>>> near future.
>>> No promises but, perhaps, mid-to-late April 2015.
>>>
>>> http://www.pyngl.ucar.edu/
>>>
>>>
>>> On Mon, Mar 23, 2015 at 11:30 AM, Brandon Sullivan <
>>> btsullivan91 at gmail.com> wrote:
>>>
>>>> I have attached my test.so file just in case it helps... Sorry I seem
>>>> so lost here, I am a python person!
>>>>
>>>> Brandon Sullivan
>>>>
>>>> On Mon, Mar 23, 2015 at 11:36 AM, Brandon Sullivan <
>>>> btsullivan91 at gmail.com> wrote:
>>>>
>>>>> Using the test.f file that Dennis provided, I was able to run wrapit
>>>>> successfully with no errors.
>>>>>
>>>>> I also went in and added this to my sounding file... With the external
>>>>> command (it was in there before, just somewhere in the middle), to the top
>>>>> with the load commands.
>>>>>
>>>>> "external CONV "./test.so"
>>>>> ctemp = 0.0 ; create a 'space' for the returned temperature
>>>>> CONV:: sndganalncl(nlevs,t,p,r,u,v,ctemp)"
>>>>>
>>>>> I still get these errors, however.
>>>>>
>>>>> warning:An error occurred loading the external file
>>>>> /home/Soundings/Extra/test.so, file not loaded
>>>>> /home/Soundings/Extra/test.so: undefined symbol: theta_wetb_
>>>>> warning:error at line 17 in file testsounding.ncl
>>>>>
>>>>> Also, now this syntax error -
>>>>>
>>>>> fatal:syntax error: line 472 in file testsounding.ncl before or near :
>>>>> CONV:
>>>>> ----^
>>>>>
>>>>> New files attached
>>>>>
>>>>> Thanks so much...
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Brandon Sullivan
>>>>>
>>>>> On Mon, Mar 23, 2015 at 11:16 AM, Dennis Shea <shea at ucar.edu> wrote:
>>>>>
>>>>>> but betHello,
>>>>>>
>>>>>> At: https://www.ncl.ucar.edu/Document/Manuals/
>>>>>>
>>>>>> Please read section 7 of the Mini-Language manual
>>>>>> ===
>>>>>> A more detailed description s at:
>>>>>>
>>>>>> https://www.ncl.ucar.edu/Document/Manuals/Ref_Manual/NclExtend.shtml
>>>>>> ===
>>>>>> Also of interest: The DKRZ has created two NCL tutorials that may be
>>>>>> of interest.
>>>>>> These are much broader.
>>>>>> ===
>>>>>>
>>>>>> That said .....
>>>>>> [1]
>>>>>> You have a f77 subroutine [ test.f ]. I do not see the required
>>>>>> delimeters
>>>>>>
>>>>>> C NCLFORTSTART
>>>>>> ...
>>>>>> C NCLEND
>>>>>>
>>>>>> These indicate to NCL's f77 parser what information is being passed
>>>>>> back-and-forth between two separate languages.
>>>>>> That is why your code gets the 'A syntax error occurred while
>>>>>> parsing:" message,
>>>>>>
>>>>>> [2]
>>>>>> To use 'external' code (f77, f90, C, C++) you must indicate that via
>>>>>>
>>>>>> external TEST "./,,,so" ; the shared object
>>>>>>
>>>>>> You did not do this.
>>>>>>
>>>>>> [3]
>>>>>> Included in your argument passing, you have
>>>>>> flminsou,frmaxsou,fbminsou,ftmaxsou
>>>>>> Are these used? NCL does not care but if they are not used, but why
>>>>>> are you passing them?
>>>>>>
>>>>>> [4]
>>>>>> You want 'conv_temp' but you are not passing it back to NCL for
>>>>>> plotting.
>>>>>> In your NCL script ....
>>>>>>
>>>>>>
>>>>>> external CONV "./test.so"
>>>>>>
>>>>>> ctemp = 0.0 ; create a 'space' for the returned temperature
>>>>>> CONV:: sndganalncl(nlevs,t,p,r,u,v,ctemp)
>>>>>>
>>>>>> [5]
>>>>>> I have done some mods for your f77 code. That should get you started.
>>>>>>
>>>>>> WRAPIT test.f
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Sun, Mar 22, 2015 at 8:43 PM, Brandon Sullivan <
>>>>>> btsullivan91 at gmail.com> wrote:
>>>>>>
>>>>>>> Hello all,
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> I am trying to use “sstats.f” that I found here -
>>>>>>> http://www.ncl.ucar.edu/Support/talk_archives/2010/att-2526/sstats.f
>>>>>>>
>>>>>>>
>>>>>>> I pulled out the code I want and made test.f (attached)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> I am trying to use the convective temperature function from there
>>>>>>> and plot it on my soundings (testsounding.ncl)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> I try to run WRAPIT and it says this
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> “root at ubuntu:/home/Soundings/Extra# WRAPIT test.f
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> WRAPIT Version: 120209
>>>>>>>
>>>>>>> A syntax error occurred while parsing:
>>>>>>>
>>>>>>> COMPILING test.f
>>>>>>>
>>>>>>> LINKING
>>>>>>>
>>>>>>> END WRAPIT”
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Then, when running my sounding script it says
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Copyright (C) 1995-2015 - All Rights Reserved
>>>>>>>
>>>>>>> University Corporation for Atmospheric Research
>>>>>>>
>>>>>>> NCAR Command Language Version 6.3.0
>>>>>>>
>>>>>>> The use of this software is governed by a License Agreement.
>>>>>>>
>>>>>>> See http://www.ncl.ucar.edu/ for more details.
>>>>>>>
>>>>>>> warning:An error occurred loading the external file
>>>>>>> /home/Soundings/Extra/test.so, file not loaded
>>>>>>>
>>>>>>> /home/Soundings/Extra/test.so: undefined symbol: theta_wetb_
>>>>>>>
>>>>>>> warning:error at line 50 in file testsounding.ncl
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Am I going about this wrong? Is there something in the code I am
>>>>>>> missing? I have also tried –m64 when running WRAPIT.. Thanks so much in
>>>>>>> advance!
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Brandon
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> ncl-talk mailing list
>>>>>>> List instructions, subscriber options, unsubscribe:
>>>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150323/045b86c1/attachment.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testsounding.ncl
Type: application/octet-stream
Size: 23068 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150323/045b86c1/attachment.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ctemp.f
Type: application/octet-stream
Size: 13446 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150323/045b86c1/attachment-0001.obj
More information about the ncl-talk
mailing list