How do I use NCWRITE to write an entire variable?

6 views (last 30 days)
Hello, I'm working with netcdf file. I want to write a value to a variable that it's an array.
My problem is that when I do for example:
ncwrite('myfile.nc', 'variable', 2)
Value=2 of the variable. The value 2 only goes to the first position of the array variable, and what I want is to give the value 2 in all the components of the array variable.
How can I do it?

Accepted Answer

Ashish Uthama
Ashish Uthama on 20 Feb 2013
Edited: Ashish Uthama on 20 Feb 2013
Update your third input argument to have the same size as the variable in the file that you are writing to.
For example, if your 'variable' in 'myfile.nc' is 20x30 elements, to set all the elements to the value 2 use:
ncwrite('myfile.nc','variable', 2*ones(20,30);
You can query the current size of the variable using ncinfo :
vinfo = ncinfo('t.nc','variable');
ncwrite('t.nc','variable', 2*ones(vinfo.Size));
  1 Comment
chaos4u2
chaos4u2 on 22 Feb 2013
Thank you Ashish, you're the best!!!!! You really solved my problem fast and easy!! I'm very grateful!!!

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!