internal:administration:idl
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| internal:administration:idl [2026/03/31 16:22] – [matrix multiplication] jan | internal:administration:idl [2026/04/28 08:26] (current) – [interpolation] jan | ||
|---|---|---|---|
| Line 609: | Line 609: | ||
| * One can use this to generate matrices with a variable increasing only in one dimension and arrays of function values: | * One can use this to generate matrices with a variable increasing only in one dimension and arrays of function values: | ||
| - | * Alternatively one may use rebin | ||
| - | x = fltarr(Nx) | ||
| - | y = fltarr(Ny) | ||
| - | xx = rebin( x, Nx, Ny ) | ||
| - | yy = rebin( y, Ny, Nx ) | ||
| ; generate Nx*Ny Matrix xx with Nx values increasing in x-direction from xa to xb | ; generate Nx*Ny Matrix xx with Nx values increasing in x-direction from xa to xb | ||
| Line 631: | Line 626: | ||
| * As matrix operations are faster than for-loops this may speed up your code a lot ... | * As matrix operations are faster than for-loops this may speed up your code a lot ... | ||
| + | * Alternatively one may use **rebin** , but note that rebin uses bilinear interpolation (sample=0) or nearest neigbor (sample=1) and accordingly might be a bit slower | ||
| + | |||
| + | x = fltarr(Nx) | ||
| + | y = fltarr(Ny) | ||
| + | xx = rebin( x, Nx, Ny, sample=1 ) | ||
| + | yy = transpose(rebin( y, Ny, Nx )) | ||
| + | |||
| + | | ||
| ==== procedure names ==== | ==== procedure names ==== | ||
| Line 3848: | Line 3851: | ||
| If you want to interpolate only over certain dimensions they must be the last ones. You may use transpose to rearrange. Lets assume you have an array depending on x, y and time, i.e. z=fltarr(Nx, | If you want to interpolate only over certain dimensions they must be the last ones. You may use transpose to rearrange. Lets assume you have an array depending on x, y and time, i.e. z=fltarr(Nx, | ||
| - | z_ipol = transpose( interpolate( transpose(z_org, | + | z_ipol = transpose( interpolate( transpose(z_org, |
| + | The /GRID flag allow to use different sizes for ix_ipol and iy_ipol and the MISSING keyword sets values of z_ipol outside the ranges of z_org to the missing value (no extrapolation). | ||
internal/administration/idl.1774974145.txt.gz · Last modified: by jan
