[ncl-talk] passing args within ncl scripts

Rick Brownrigg brownrig at ucar.edu
Tue Jul 20 20:50:14 MDT 2021


Hi,

If I understand you correctly, you are trying to get the second script to
update the array in the first script?  If so, that would not be possible,
as the two scripts execute as independent processes, operating in
independent memory spaces. They would need some other mechanism to
communicate results between each other, perhaps something like a file-based
approach.

Perhaps explain in more detail what you are trying to do and why there are
two scripts involved, and others might be able to offer suggestions.

Rick


On Tue, Jul 20, 2021 at 8:26 PM Jayant via ncl-talk <
ncl-talk at mailman.ucar.edu> wrote:

> Hi,
> I want to call one ncl script (test_second.ncl) from within another ncl
> script (test_prime.ncl) using system command (in fact subprocess
> command). In doing so, I want to update an array (defined in
> test_prime.ncl) in the second call. I am getting zeros (unchanged!!). How
> to proceed? Is there something like global variables that can be defined?
> Below are the working example scripts:
> ;==================================================
> *test_prime.ncl*
> begin
>  ninp=10
>  inparr=new(ninp,float)
>  inparr=0.0
>
>  do i=0,ninp-1
>   command="ncl -Q test_second.ncl "+str_get_sq()+"ip="+i+str_get_sq()+"
> "+str_get_sq()+"tmparr="+inparr(i)+str_get_sq()
>   system(command)
>  end do
> print(inparr)
> end
> ;==================================================
> *test_second.ncl*
> begin
> tmparr=ip ; intend to perform some calculation and update
> end
> _______________________________________________
> ncl-talk mailing list
> ncl-talk at mailman.ucar.edu
> List instructions, subscriber options, unsubscribe:
> https://mailman.ucar.edu/mailman/listinfo/ncl-talk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.ucar.edu/pipermail/ncl-talk/attachments/20210720/f331400c/attachment-0001.html>


More information about the ncl-talk mailing list