13 subroutine ezspline_init3_r8(spline_o, n1, n2, n3, BCS1, BCS2, BCS3, ier)
15 type(EZspline3_r8) :: spline_o
16 integer,
intent(in) :: n1, n2, n3
17 integer,
intent(in) :: BCS1(2), BCS2(2), BCS3(2)
18 integer,
intent(out) :: ier
19 end subroutine ezspline_init3_r8
21 subroutine ezspline_init2_r8(spline_o, n1, n2, BCS1, BCS2, ier)
23 type(EZspline2_r8) :: spline_o
24 integer,
intent(in) :: n1, n2
25 integer,
intent(in) :: BCS1(2), BCS2(2)
26 integer,
intent(out) :: ier
27 end subroutine ezspline_init2_r8
29 subroutine ezspline_init1_r8(spline_o, n1, BCS1, ier)
31 type(EZspline1_r8) spline_o
32 integer,
intent(in) :: n1
33 integer,
intent(in) :: BCS1(2)
34 integer,
intent(out) :: ier
35 end subroutine ezspline_init1_r8
37 subroutine ezspline_init3_r4(spline_o, n1, n2, n3, BCS1, BCS2, BCS3, ier)
39 type(EZspline3_r4) spline_o
40 integer,
intent(in) :: n1, n2, n3
41 integer,
intent(in) :: BCS1(2), BCS2(2), BCS3(2)
42 integer,
intent(out) :: ier
43 end subroutine ezspline_init3_r4
45 subroutine ezspline_init2_r4(spline_o, n1, n2, BCS1, BCS2, ier)
47 type(EZspline2_r4) spline_o
48 integer,
intent(in) :: n1, n2
49 integer,
intent(in) :: BCS1(2), BCS2(2)
50 integer,
intent(out) :: ier
51 end subroutine ezspline_init2_r4
53 subroutine ezspline_init1_r4(spline_o, n1, BCS1, ier)
55 type(EZspline1_r4) spline_o
56 integer,
intent(in) :: n1
57 integer,
intent(in) :: BCS1(2)
58 integer,
intent(out) :: ier
59 end subroutine ezspline_init1_r4
72 subroutine ezlinear_init3_r8(spline_o, n1, n2, n3, ier)
74 type(EZspline3_r8) spline_o
75 integer,
intent(in) :: n1, n2, n3
76 integer,
intent(out) :: ier
77 end subroutine ezlinear_init3_r8
79 subroutine ezlinear_init2_r8(spline_o, n1, n2, ier)
81 type(EZspline2_r8) spline_o
82 integer,
intent(in) :: n1, n2
83 integer,
intent(out) :: ier
84 end subroutine ezlinear_init2_r8
86 subroutine ezlinear_init1_r8(spline_o, n1, ier)
88 type(EZspline1_r8) spline_o
89 integer,
intent(in) :: n1
90 integer,
intent(out) :: ier
91 end subroutine ezlinear_init1_r8
93 subroutine ezlinear_init3_r4(spline_o, n1, n2, n3, ier)
95 type(EZspline3_r4) spline_o
96 integer,
intent(in) :: n1, n2, n3
97 integer,
intent(out) :: ier
98 end subroutine ezlinear_init3_r4
100 subroutine ezlinear_init2_r4(spline_o, n1, n2, ier)
102 type(EZspline2_r4) spline_o
103 integer,
intent(in) :: n1, n2
104 integer,
intent(out) :: ier
105 end subroutine ezlinear_init2_r4
107 subroutine ezlinear_init1_r4(spline_o, n1, ier)
109 type(EZspline1_r4) spline_o
110 integer,
intent(in) :: n1
111 integer,
intent(out) :: ier
112 end subroutine ezlinear_init1_r4
132 subroutine ezhybrid_init3_r8(spline_o, n1, n2, n3, hspline, ier, &
135 type(EZspline3_r8) spline_o
136 integer,
intent(in) :: n1, n2, n3
137 integer,
intent(in) :: hspline(3)
138 integer,
intent(out) :: ier
139 integer,
intent(in),
OPTIONAL :: BCS1(2), BCS2(2), BCS3(2)
140 end subroutine ezhybrid_init3_r8
142 subroutine ezhybrid_init2_r8(spline_o, n1, n2, hspline, ier, &
145 type(EZspline2_r8) spline_o
146 integer,
intent(in) :: n1, n2
147 integer,
intent(in) :: hspline(2)
148 integer,
intent(out) :: ier
149 integer,
intent(in),
OPTIONAL :: BCS1(2), BCS2(2)
150 end subroutine ezhybrid_init2_r8
152 subroutine ezhybrid_init3_r4(spline_o, n1, n2, n3, hspline, ier, &
155 type(EZspline3_r4) spline_o
156 integer,
intent(in) :: n1, n2, n3
157 integer,
intent(in) :: hspline(3)
158 integer,
intent(out) :: ier
159 integer,
intent(in),
OPTIONAL :: BCS1(2), BCS2(2), BCS3(2)
160 end subroutine ezhybrid_init3_r4
162 subroutine ezhybrid_init2_r4(spline_o, n1, n2, hspline, ier, &
165 type(EZspline2_r4) spline_o
166 integer,
intent(in) :: n1, n2
167 integer,
intent(in) :: hspline(2)
168 integer,
intent(out) :: ier
169 integer,
intent(in),
OPTIONAL :: BCS1(2), BCS2(2)
170 end subroutine ezhybrid_init2_r4
179 subroutine ezspline_free3_r8(spline_o, ier)
181 type(EZspline3_r8) spline_o
182 integer,
intent(out) :: ier
183 end subroutine ezspline_free3_r8
185 subroutine ezspline_free2_r8(spline_o, ier)
187 type(EZspline2_r8) spline_o
188 integer,
intent(out) :: ier
189 end subroutine ezspline_free2_r8
191 subroutine ezspline_free1_r8(spline_o, ier)
193 type(EZspline1_r8) spline_o
194 integer,
intent(out) :: ier
195 end subroutine ezspline_free1_r8
197 subroutine ezspline_free3_r4(spline_o, ier)
199 type(EZspline3_r4) spline_o
200 integer,
intent(out) :: ier
201 end subroutine ezspline_free3_r4
203 subroutine ezspline_free2_r4(spline_o, ier)
205 type(EZspline2_r4) spline_o
206 integer,
intent(out) :: ier
207 end subroutine ezspline_free2_r4
209 subroutine ezspline_free1_r4(spline_o, ier)
211 type(EZspline1_r4) spline_o
212 integer,
intent(out) :: ier
213 end subroutine ezspline_free1_r4
228 subroutine ezspline_setup3_r8(spline_o, f, ier, exact_dim)
230 type(EZspline3_r8) spline_o
231 real(ezspline_r8),
dimension(:,:,:),
intent(in) :: f
232 integer,
intent(out) :: ier
233 logical,
intent(in),
optional :: exact_dim
234 end subroutine ezspline_setup3_r8
236 subroutine ezspline_setup2_r8(spline_o, f, ier, exact_dim)
238 type(EZspline2_r8) spline_o
239 real(ezspline_r8),
dimension(:,:),
intent(in) :: f
240 integer,
intent(out) :: ier
241 logical,
intent(in),
optional :: exact_dim
242 end subroutine ezspline_setup2_r8
244 subroutine ezspline_setup1_r8(spline_o, f, ier, exact_dim)
246 type(EZspline1_r8) spline_o
247 real(ezspline_r8),
dimension(:),
intent(in) :: f
248 integer,
intent(out) :: ier
249 logical,
intent(in),
optional :: exact_dim
250 end subroutine ezspline_setup1_r8
252 subroutine ezspline_setup3_r4(spline_o, f, ier, exact_dim)
254 type(EZspline3_r4) spline_o
255 real(ezspline_r4),
dimension(:,:,:),
intent(in) :: f
256 integer,
intent(out) :: ier
257 logical,
intent(in),
optional :: exact_dim
258 end subroutine ezspline_setup3_r4
260 subroutine ezspline_setup2_r4(spline_o, f, ier, exact_dim)
262 type(EZspline2_r4) spline_o
263 real(ezspline_r4),
dimension(:,:),
intent(in) :: f
264 integer,
intent(out) :: ier
265 logical,
intent(in),
optional :: exact_dim
266 end subroutine ezspline_setup2_r4
268 subroutine ezspline_setup1_r4(spline_o, f, ier, exact_dim)
270 type(EZspline1_r4) spline_o
271 real(ezspline_r4),
dimension(:),
intent(in) :: f
272 integer,
intent(out) :: ier
273 logical,
intent(in),
optional :: exact_dim
274 end subroutine ezspline_setup1_r4
288 subroutine ezspline_interp3_r8(spline_o, p1, p2, p3, f, ier)
291 type(EZspline3_r8) spline_o
292 real(ezspline_r8) :: p1, p2, p3
294 integer,
intent(out) :: ier
295 end subroutine ezspline_interp3_r8
297 subroutine ezspline_interp3_array_r8(spline_o, k1, k2, k3, p1, p2, p3, f, ier)
299 type(EZspline3_r8) spline_o
300 integer :: k1, k2, k3
301 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2), p3(k3)
302 real(ezspline_r8),
intent(out):: f(k1,k2,*)
303 integer,
intent(out) :: ier
304 end subroutine ezspline_interp3_array_r8
306 subroutine ezspline_interp3_cloud_r8(spline_o, k, p1, p2, p3, f, ier)
308 type(EZspline3_r8) spline_o
309 integer,
intent(in) :: k
310 real(ezspline_r8),
intent(in) :: p1(k), p2(k), p3(k)
311 real(ezspline_r8),
intent(out):: f(k)
312 integer,
intent(out) :: ier
313 end subroutine ezspline_interp3_cloud_r8
315 subroutine ezspline_interp2_r8(spline_o, p1, p2, f, ier)
317 type(EZspline2_r8) spline_o
318 real(ezspline_r8) :: p1, p2
320 integer,
intent(out) :: ier
321 end subroutine ezspline_interp2_r8
323 subroutine ezspline_interp2_array_r8(spline_o, k1, k2, p1, p2, f, ier)
325 type(EZspline2_r8) spline_o
327 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2)
328 real(ezspline_r8),
intent(out):: f(k1,*)
329 integer,
intent(out) :: ier
330 end subroutine ezspline_interp2_array_r8
332 subroutine ezspline_interp2_cloud_r8(spline_o, k, p1, p2, f, ier)
334 type(EZspline2_r8) spline_o
335 integer,
intent(in) :: k
336 real(ezspline_r8),
intent(in) :: p1(k), p2(k)
337 real(ezspline_r8),
intent(out):: f(k)
338 integer,
intent(out) :: ier
339 end subroutine ezspline_interp2_cloud_r8
341 subroutine ezspline_interp1_r8(spline_o, p1, f, ier)
343 type(EZspline1_r8) spline_o
344 real(ezspline_r8) :: p1
346 integer,
intent(out) :: ier
347 end subroutine ezspline_interp1_r8
349 subroutine ezspline_interp1_array_r8(spline_o, k1, p1, f, ier)
351 type(EZspline1_r8) spline_o
353 real(ezspline_r8),
intent(in) :: p1(k1)
354 real(ezspline_r8),
intent(out):: f(k1)
355 integer,
intent(out) :: ier
356 end subroutine ezspline_interp1_array_r8
358 subroutine ezspline_interp3_r4(spline_o, p1, p2, p3, f, ier)
361 type(EZspline3_r4) spline_o
362 real(ezspline_r4) :: p1, p2, p3
364 integer,
intent(out) :: ier
365 end subroutine ezspline_interp3_r4
367 subroutine ezspline_interp3_array_r4(spline_o, k1, k2, k3, p1, p2, p3, f, ier)
369 type(EZspline3_r4) spline_o
370 integer :: k1, k2, k3
371 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2), p3(k3)
372 real(ezspline_r4),
intent(out):: f(k1,k2,*)
373 integer,
intent(out) :: ier
374 end subroutine ezspline_interp3_array_r4
376 subroutine ezspline_interp3_cloud_r4(spline_o, k, p1, p2, p3, f, ier)
378 type(EZspline3_r4) spline_o
379 integer,
intent(in) :: k
380 real(ezspline_r4),
intent(in) :: p1(k), p2(k), p3(k)
381 real(ezspline_r4),
intent(out):: f(k)
382 integer,
intent(out) :: ier
383 end subroutine ezspline_interp3_cloud_r4
385 subroutine ezspline_interp2_r4(spline_o, p1, p2, f, ier)
387 type(EZspline2_r4) spline_o
388 real(ezspline_r4) :: p1, p2
390 integer,
intent(out) :: ier
391 end subroutine ezspline_interp2_r4
393 subroutine ezspline_interp2_array_r4(spline_o, k1, k2, p1, p2, f, ier)
395 type(EZspline2_r4) spline_o
397 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2)
398 real(ezspline_r4),
intent(out):: f(k1,*)
399 integer,
intent(out) :: ier
400 end subroutine ezspline_interp2_array_r4
402 subroutine ezspline_interp2_cloud_r4(spline_o, k, p1, p2, f, ier)
404 type(EZspline2_r4) spline_o
405 integer,
intent(in) :: k
406 real(ezspline_r4),
intent(in) :: p1(k), p2(k)
407 real(ezspline_r4),
intent(out):: f(k)
408 integer,
intent(out) :: ier
409 end subroutine ezspline_interp2_cloud_r4
411 subroutine ezspline_interp1_r4(spline_o, p1, f, ier)
413 type(EZspline1_r4) spline_o
414 real(ezspline_r4) :: p1
416 integer,
intent(out) :: ier
417 end subroutine ezspline_interp1_r4
419 subroutine ezspline_interp1_array_r4(spline_o, k1, p1, f, ier)
421 type(EZspline1_r4) spline_o
423 real(ezspline_r4),
intent(in) :: p1(k1)
424 real(ezspline_r4),
intent(out):: f(k1)
425 integer,
intent(out) :: ier
426 end subroutine ezspline_interp1_array_r4
443 subroutine ezspline_derivative3_r8(spline_o, i1, i2, i3, p1, p2, p3, f, ier)
445 type(EZspline3_r8) spline_o
446 integer,
intent(in) :: i1, i2, i3
447 real(ezspline_r8),
intent(in) :: p1, p2, p3
448 real(ezspline_r8),
intent(out) :: f
449 integer,
intent(out) :: ier
450 end subroutine ezspline_derivative3_r8
452 subroutine ezspline_derivative3_array_r8(spline_o, i1, i2, i3, &
453 & k1, k2, k3, p1, p2, p3, f, ier)
455 type(EZspline3_r8) spline_o
456 integer,
intent(in) :: i1, i2, i3, k1, k2, k3
457 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2), p3(k3)
458 real(ezspline_r8),
intent(out) :: f(k1, k2, *)
459 integer,
intent(out) :: ier
460 end subroutine ezspline_derivative3_array_r8
462 subroutine ezspline_derivative3_cloud_r8(spline_o, i1, i2, i3, &
463 & k, p1, p2, p3, f, ier)
465 type(EZspline3_r8) spline_o
466 integer,
intent(in) :: i1, i2, i3, k
467 real(ezspline_r8),
intent(in) :: p1(k), p2(k), p3(k)
468 real(ezspline_r8),
intent(out) :: f(k)
469 integer,
intent(out) :: ier
470 end subroutine ezspline_derivative3_cloud_r8
472 subroutine ezspline_derivative2_r8(spline_o, i1, i2, p1, p2, f, ier)
474 type(EZspline2_r8) spline_o
475 integer,
intent(in) :: i1, i2
476 real(ezspline_r8),
intent(in) :: p1, p2
477 real(ezspline_r8),
intent(out) :: f
478 integer,
intent(out) :: ier
479 end subroutine ezspline_derivative2_r8
481 subroutine ezspline_derivative2_array_r8(spline_o, i1, i2, k1, k2, p1, p2, f, ier)
483 type(EZspline2_r8) spline_o
484 integer,
intent(in) :: i1, i2, k1, k2
485 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2)
486 real(ezspline_r8),
intent(out) :: f(k1,k2)
487 integer,
intent(out) :: ier
488 end subroutine ezspline_derivative2_array_r8
490 subroutine ezspline_derivative2_cloud_r8(spline_o, i1, i2, k, p1, p2, f, ier)
492 type(EZspline2_r8) spline_o
493 integer,
intent(in) :: i1, i2, k
494 real(ezspline_r8),
intent(in) :: p1(k), p2(k)
495 real(ezspline_r8),
intent(out) :: f(k)
496 integer,
intent(out) :: ier
497 end subroutine ezspline_derivative2_cloud_r8
499 subroutine ezspline_derivative1_r8(spline_o, i1, p1, f, ier)
501 type(EZspline1_r8) spline_o
502 integer,
intent(in) :: i1
503 real(ezspline_r8),
intent(in) :: p1
504 real(ezspline_r8),
intent(out) :: f
505 integer,
intent(out) :: ier
506 end subroutine ezspline_derivative1_r8
508 subroutine ezspline_derivative1_array_r8(spline_o, i1, k1, p1, f, ier)
510 type(EZspline1_r8) spline_o
511 integer,
intent(in) :: i1, k1
512 real(ezspline_r8),
intent(in) :: p1(k1)
513 real(ezspline_r8),
intent(out) :: f(k1)
514 integer,
intent(out) :: ier
515 end subroutine ezspline_derivative1_array_r8
517 subroutine ezspline_derivative3_r4(spline_o, i1, i2, i3, p1, p2, p3, f, ier)
519 type(EZspline3_r4) spline_o
520 integer,
intent(in) :: i1, i2, i3
521 real(ezspline_r4),
intent(in) :: p1, p2, p3
522 real(ezspline_r4),
intent(out) :: f
523 integer,
intent(out) :: ier
524 end subroutine ezspline_derivative3_r4
526 subroutine ezspline_derivative3_array_r4(spline_o, i1, i2, i3, &
527 & k1, k2, k3, p1, p2, p3, f, ier)
529 type(EZspline3_r4) spline_o
530 integer,
intent(in) :: i1, i2, i3, k1, k2, k3
531 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2), p3(k3)
532 real(ezspline_r4),
intent(out) :: f(k1, k2, *)
533 integer,
intent(out) :: ier
534 end subroutine ezspline_derivative3_array_r4
536 subroutine ezspline_derivative3_cloud_r4(spline_o, i1, i2, i3, &
537 & k, p1, p2, p3, f, ier)
539 type(EZspline3_r4) spline_o
540 integer,
intent(in) :: i1, i2, i3, k
541 real(ezspline_r4),
intent(in) :: p1(k), p2(k), p3(k)
542 real(ezspline_r4),
intent(out) :: f(k)
543 integer,
intent(out) :: ier
544 end subroutine ezspline_derivative3_cloud_r4
546 subroutine ezspline_derivative2_r4(spline_o, i1, i2, p1, p2, f, ier)
548 type(EZspline2_r4) spline_o
549 integer,
intent(in) :: i1, i2
550 real(ezspline_r4),
intent(in) :: p1, p2
551 real(ezspline_r4),
intent(out) :: f
552 integer,
intent(out) :: ier
553 end subroutine ezspline_derivative2_r4
555 subroutine ezspline_derivative2_array_r4(spline_o, i1, i2, k1, k2, p1, p2, f, ier)
557 type(EZspline2_r4) spline_o
558 integer,
intent(in) :: i1, i2, k1, k2
559 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2)
560 real(ezspline_r4),
intent(out) :: f(k1,k2)
561 integer,
intent(out) :: ier
562 end subroutine ezspline_derivative2_array_r4
564 subroutine ezspline_derivative2_cloud_r4(spline_o, i1, i2, k, p1, p2, f, ier)
566 type(EZspline2_r4) spline_o
567 integer,
intent(in) :: i1, i2, k
568 real(ezspline_r4),
intent(in) :: p1(k), p2(k)
569 real(ezspline_r4),
intent(out) :: f(k)
570 integer,
intent(out) :: ier
571 end subroutine ezspline_derivative2_cloud_r4
573 subroutine ezspline_derivative1_r4(spline_o, i1, p1, f, ier)
575 type(EZspline1_r4) spline_o
576 integer,
intent(in) :: i1
577 real(ezspline_r4),
intent(in) :: p1
578 real(ezspline_r4),
intent(out) :: f
579 integer,
intent(out) :: ier
580 end subroutine ezspline_derivative1_r4
582 subroutine ezspline_derivative1_array_r4(spline_o, i1, k1, p1, f, ier)
584 type(EZspline1_r4) spline_o
585 integer,
intent(in) :: i1, k1
586 real(ezspline_r4),
intent(in) :: p1(k1)
587 real(ezspline_r4),
intent(out) :: f(k1)
588 integer,
intent(out) :: ier
589 end subroutine ezspline_derivative1_array_r4
601 subroutine ezspline_gradient3_r8(spline_o, p1, p2, p3, df, ier)
603 type(EZspline3_r8) spline_o
604 real(ezspline_r8),
intent(in) :: p1, p2, p3
605 real(ezspline_r8),
intent(out) :: df(3)
606 integer,
intent(out) :: ier
607 end subroutine ezspline_gradient3_r8
609 subroutine ezspline_gradient3_array_r8(spline_o, k1, k2, k3, &
610 & p1, p2, p3, df, ier)
612 type(EZspline3_r8) spline_o
613 integer,
intent(in) :: k1, k2, k3
614 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2), p3(k3)
615 real(ezspline_r8),
intent(out) :: df(k1,k2,k3,3)
616 integer,
intent(out) :: ier
617 end subroutine ezspline_gradient3_array_r8
619 subroutine ezspline_gradient3_cloud_r8(spline_o, k, &
620 & p1, p2, p3, df, ier)
622 type(EZspline3_r8) spline_o
623 integer,
intent(in) :: k
624 real(ezspline_r8),
intent(in) :: p1(k), p2(k), p3(k)
625 real(ezspline_r8),
intent(out) :: df(k,3)
626 integer,
intent(out) :: ier
627 end subroutine ezspline_gradient3_cloud_r8
629 subroutine ezspline_gradient2_r8(spline_o, p1, p2, df, ier)
631 type(EZspline2_r8) spline_o
632 real(ezspline_r8),
intent(in) :: p1, p2
633 real(ezspline_r8),
intent(out) :: df(2)
634 integer,
intent(out) :: ier
635 end subroutine ezspline_gradient2_r8
637 subroutine ezspline_gradient2_array_r8(spline_o, k1, k2, &
640 type(EZspline2_r8) spline_o
641 integer,
intent(in) :: k1, k2
642 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2)
643 real(ezspline_r8),
intent(out) :: df(k1, k2, 2)
644 integer,
intent(out) :: ier
645 end subroutine ezspline_gradient2_array_r8
647 subroutine ezspline_gradient2_cloud_r8(spline_o, k, &
650 type(EZspline2_r8) spline_o
651 integer,
intent(in) :: k
652 real(ezspline_r8),
intent(in) :: p1(k), p2(k)
653 real(ezspline_r8),
intent(out) :: df(k, 2)
654 integer,
intent(out) :: ier
655 end subroutine ezspline_gradient2_cloud_r8
657 subroutine ezspline_gradient1_r8(spline_o, p1, df, ier)
659 type(EZspline1_r8) spline_o
660 real(ezspline_r8),
intent(in) :: p1
661 real(ezspline_r8),
intent(out) :: df
662 integer,
intent(out) :: ier
663 end subroutine ezspline_gradient1_r8
665 subroutine ezspline_gradient1_array_r8(spline_o, k1, p1, df, ier)
667 type(EZspline1_r8) spline_o
668 integer,
intent(in) :: k1
669 real(ezspline_r8),
intent(in) :: p1(k1)
670 real(ezspline_r8),
intent(out) :: df(k1)
671 integer,
intent(out) :: ier
672 end subroutine ezspline_gradient1_array_r8
674 subroutine ezspline_gradient3_r4(spline_o, p1, p2, p3, df, ier)
676 type(EZspline3_r4) spline_o
677 real(ezspline_r4),
intent(in) :: p1, p2, p3
678 real(ezspline_r4),
intent(out) :: df(3)
679 integer,
intent(out) :: ier
680 end subroutine ezspline_gradient3_r4
682 subroutine ezspline_gradient3_array_r4(spline_o, k1, k2, k3, &
683 & p1, p2, p3, df, ier)
685 type(EZspline3_r4) spline_o
686 integer,
intent(in) :: k1, k2, k3
687 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2), p3(k3)
688 real(ezspline_r4),
intent(out) :: df(k1,k2,k3,3)
689 integer,
intent(out) :: ier
690 end subroutine ezspline_gradient3_array_r4
692 subroutine ezspline_gradient3_cloud_r4(spline_o, k, &
693 & p1, p2, p3, df, ier)
695 type(EZspline3_r4) spline_o
696 integer,
intent(in) :: k
697 real(ezspline_r4),
intent(in) :: p1(k), p2(k), p3(k)
698 real(ezspline_r4),
intent(out) :: df(k,3)
699 integer,
intent(out) :: ier
700 end subroutine ezspline_gradient3_cloud_r4
702 subroutine ezspline_gradient2_r4(spline_o, p1, p2, df, ier)
704 type(EZspline2_r4) spline_o
705 real(ezspline_r4),
intent(in) :: p1, p2
706 real(ezspline_r4),
intent(out) :: df(2)
707 integer,
intent(out) :: ier
708 end subroutine ezspline_gradient2_r4
710 subroutine ezspline_gradient2_array_r4(spline_o, k1, k2, &
713 type(EZspline2_r4) spline_o
714 integer,
intent(in) :: k1, k2
715 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2)
716 real(ezspline_r4),
intent(out) :: df(k1, k2, 2)
717 integer,
intent(out) :: ier
718 end subroutine ezspline_gradient2_array_r4
720 subroutine ezspline_gradient2_cloud_r4(spline_o, k, &
723 type(EZspline2_r4) spline_o
724 integer,
intent(in) :: k
725 real(ezspline_r4),
intent(in) :: p1(k), p2(k)
726 real(ezspline_r4),
intent(out) :: df(k, 2)
727 integer,
intent(out) :: ier
728 end subroutine ezspline_gradient2_cloud_r4
730 subroutine ezspline_gradient1_r4(spline_o, p1, df, ier)
732 type(EZspline1_r4) spline_o
733 real(ezspline_r4),
intent(in) :: p1
734 real(ezspline_r4),
intent(out) :: df
735 integer,
intent(out) :: ier
736 end subroutine ezspline_gradient1_r4
738 subroutine ezspline_gradient1_array_r4(spline_o, k1, p1, df, ier)
740 type(EZspline1_r4) spline_o
741 integer,
intent(in) :: k1
742 real(ezspline_r4),
intent(in) :: p1(k1)
743 real(ezspline_r4),
intent(out) :: df(k1)
744 integer,
intent(out) :: ier
745 end subroutine ezspline_gradient1_array_r4
757 subroutine ezspline_isindomain3_r8(spline_o, p1, p2, p3, ier)
759 type(EZspline3_r8) :: spline_o
760 real(ezspline_r8),
intent(in) :: p1, p2, p3
761 integer,
intent(out) :: ier
762 end subroutine ezspline_isindomain3_r8
764 subroutine ezspline_isindomain3_array_r8(spline_o, k1, k2, k3, p1, p2, p3, ier)
766 type(EZspline3_r8) :: spline_o
767 integer,
intent(in) :: k1, k2, k3
768 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2), p3(k3)
769 integer,
intent(out) :: ier
770 end subroutine ezspline_isindomain3_array_r8
772 subroutine ezspline_isindomain3_cloud_r8(spline_o, k, p1, p2, p3, ier)
774 type(EZspline3_r8) :: spline_o
775 integer,
intent(in) :: k
776 real(ezspline_r8),
intent(in) :: p1(k), p2(k), p3(k)
777 integer,
intent(out) :: ier
778 end subroutine ezspline_isindomain3_cloud_r8
780 subroutine ezspline_isindomain2_r8(spline_o, p1, p2, ier)
782 type(EZspline2_r8) :: spline_o
783 real(ezspline_r8),
intent(in) :: p1, p2
784 integer,
intent(out) :: ier
785 end subroutine ezspline_isindomain2_r8
787 subroutine ezspline_isindomain2_array_r8(spline_o, k1, k2, p1, p2, ier)
789 type(EZspline2_r8) :: spline_o
790 integer,
intent(in) :: k1, k2
791 real(ezspline_r8),
intent(in) :: p1(k1), p2(k2)
792 integer,
intent(out) :: ier
793 end subroutine ezspline_isindomain2_array_r8
795 subroutine ezspline_isindomain2_cloud_r8(spline_o, k, p1, p2, ier)
797 type(EZspline2_r8) :: spline_o
798 integer,
intent(in) :: k
799 real(ezspline_r8),
intent(in) :: p1(k), p2(k)
800 integer,
intent(out) :: ier
801 end subroutine ezspline_isindomain2_cloud_r8
803 subroutine ezspline_isindomain1_r8(spline_o, p1, ier)
805 type(EZspline1_r8) :: spline_o
806 real(ezspline_r8),
intent(in) :: p1
807 integer,
intent(out) :: ier
808 end subroutine ezspline_isindomain1_r8
810 subroutine ezspline_isindomain1_array_r8(spline_o, k1, p1, ier)
812 type(EZspline1_r8) :: spline_o
813 integer,
intent(in) :: k1
814 real(ezspline_r8),
intent(in) :: p1(k1)
815 integer,
intent(out) :: ier
816 end subroutine ezspline_isindomain1_array_r8
818 subroutine ezspline_isindomain3_r4(spline_o, p1, p2, p3, ier)
820 type(EZspline3_r4) :: spline_o
821 real(ezspline_r4),
intent(in) :: p1, p2, p3
822 integer,
intent(out) :: ier
823 end subroutine ezspline_isindomain3_r4
825 subroutine ezspline_isindomain3_array_r4(spline_o, k1, k2, k3, p1, p2, p3, ier)
827 type(EZspline3_r4) :: spline_o
828 integer,
intent(in) :: k1, k2, k3
829 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2), p3(k3)
830 integer,
intent(out) :: ier
831 end subroutine ezspline_isindomain3_array_r4
833 subroutine ezspline_isindomain3_cloud_r4(spline_o, k, p1, p2, p3, ier)
835 type(EZspline3_r4) :: spline_o
836 integer,
intent(in) :: k
837 real(ezspline_r4),
intent(in) :: p1(k), p2(k), p3(k)
838 integer,
intent(out) :: ier
839 end subroutine ezspline_isindomain3_cloud_r4
841 subroutine ezspline_isindomain2_r4(spline_o, p1, p2, ier)
843 type(EZspline2_r4) :: spline_o
844 real(ezspline_r4),
intent(in) :: p1, p2
845 integer,
intent(out) :: ier
846 end subroutine ezspline_isindomain2_r4
848 subroutine ezspline_isindomain2_array_r4(spline_o, k1, k2, p1, p2, ier)
850 type(EZspline2_r4) :: spline_o
851 integer,
intent(in) :: k1, k2
852 real(ezspline_r4),
intent(in) :: p1(k1), p2(k2)
853 integer,
intent(out) :: ier
854 end subroutine ezspline_isindomain2_array_r4
856 subroutine ezspline_isindomain2_cloud_r4(spline_o, k, p1, p2, ier)
858 type(EZspline2_r4) :: spline_o
859 integer,
intent(in) :: k
860 real(ezspline_r4),
intent(in) :: p1(k), p2(k)
861 integer,
intent(out) :: ier
862 end subroutine ezspline_isindomain2_cloud_r4
864 subroutine ezspline_isindomain1_r4(spline_o, p1, ier)
866 type(EZspline1_r4) :: spline_o
867 real(ezspline_r4),
intent(in) :: p1
868 integer,
intent(out) :: ier
869 end subroutine ezspline_isindomain1_r4
871 subroutine ezspline_isindomain1_array_r4(spline_o, k1, p1, ier)
873 type(EZspline1_r4) :: spline_o
874 integer,
intent(in) :: k1
875 real(ezspline_r4),
intent(in) :: p1(k1)
876 integer,
intent(out) :: ier
877 end subroutine ezspline_isindomain1_array_r4
889 subroutine ezspline_isgridregular3_r8(spline_o, ier)
891 type(EZspline3_r8) :: spline_o
892 integer,
intent(out) :: ier
893 end subroutine ezspline_isgridregular3_r8
895 subroutine ezspline_isgridregular2_r8(spline_o, ier)
897 type(EZspline2_r8) :: spline_o
898 integer,
intent(out) :: ier
899 end subroutine ezspline_isgridregular2_r8
901 subroutine ezspline_isgridregular1_r8(spline_o, ier)
903 type(EZspline1_r8) :: spline_o
904 integer,
intent(out) :: ier
905 end subroutine ezspline_isgridregular1_r8
907 subroutine ezspline_isgridregular3_r4(spline_o, ier)
909 type(EZspline3_r4) :: spline_o
910 integer,
intent(out) :: ier
911 end subroutine ezspline_isgridregular3_r4
913 subroutine ezspline_isgridregular2_r4(spline_o, ier)
915 type(EZspline2_r4) :: spline_o
916 integer,
intent(out) :: ier
917 end subroutine ezspline_isgridregular2_r4
919 subroutine ezspline_isgridregular1_r4(spline_o, ier)
921 type(EZspline1_r4) :: spline_o
922 integer,
intent(out) :: ier
923 end subroutine ezspline_isgridregular1_r4
946 subroutine ezspline_save3_r8(spline_o, filename, ier, &
950 type(EZspline3_r8) :: spline_o
951 character*(*) :: filename
952 integer,
intent(out) :: ier
954 character*(*),
intent(in),
optional :: spl_name
955 logical,
intent(in),
optional :: fullsave
957 end subroutine ezspline_save3_r8
959 subroutine ezspline_save2_r8(spline_o, filename, ier, &
963 type(EZspline2_r8) :: spline_o
964 character*(*) :: filename
965 integer,
intent(out) :: ier
967 character*(*),
intent(in),
optional :: spl_name
968 logical,
intent(in),
optional :: fullsave
970 end subroutine ezspline_save2_r8
972 subroutine ezspline_save1_r8(spline_o, filename, ier, &
976 type(EZspline1_r8) :: spline_o
977 character*(*) :: filename
978 integer,
intent(out) :: ier
980 character*(*),
intent(in),
optional :: spl_name
981 logical,
intent(in),
optional :: fullsave
983 end subroutine ezspline_save1_r8
985 subroutine ezspline_save3_r4(spline_o, filename, ier, &
989 type(EZspline3_r4) :: spline_o
990 character*(*) :: filename
991 integer,
intent(out) :: ier
993 character*(*),
intent(in),
optional :: spl_name
994 logical,
intent(in),
optional :: fullsave
996 end subroutine ezspline_save3_r4
998 subroutine ezspline_save2_r4(spline_o, filename, ier, &
1002 type(EZspline2_r4) :: spline_o
1003 character*(*) :: filename
1004 integer,
intent(out) :: ier
1006 character*(*),
intent(in),
optional :: spl_name
1007 logical,
intent(in),
optional :: fullsave
1009 end subroutine ezspline_save2_r4
1011 subroutine ezspline_save1_r4(spline_o, filename, ier, &
1015 type(EZspline1_r4) :: spline_o
1016 character*(*) :: filename
1017 integer,
intent(out) :: ier
1019 character*(*),
intent(in),
optional :: spl_name
1020 logical,
intent(in),
optional :: fullsave
1022 end subroutine ezspline_save1_r4
1040 subroutine ezspline_load3_r8(spline_o, filename, ier, spl_name)
1043 type(EZspline3_r8) :: spline_o
1044 character*(*) :: filename
1045 integer,
intent(out) :: ier
1047 character*(*),
intent(in),
optional :: spl_name
1048 end subroutine ezspline_load3_r8
1050 subroutine ezspline_load2_r8(spline_o, filename, ier, spl_name)
1053 type(EZspline2_r8) :: spline_o
1054 character*(*) :: filename
1055 integer,
intent(out) :: ier
1057 character*(*),
intent(in),
optional :: spl_name
1058 end subroutine ezspline_load2_r8
1060 subroutine ezspline_load1_r8(spline_o, filename, ier, spl_name)
1063 type(EZspline1_r8) :: spline_o
1064 character*(*) :: filename
1065 integer,
intent(out) :: ier
1067 character*(*),
intent(in),
optional :: spl_name
1068 end subroutine ezspline_load1_r8
1070 subroutine ezspline_load3_r4(spline_o, filename, ier, spl_name)
1073 type(EZspline3_r4) :: spline_o
1074 character*(*) :: filename
1075 integer,
intent(out) :: ier
1077 character*(*),
intent(in),
optional :: spl_name
1078 end subroutine ezspline_load3_r4
1080 subroutine ezspline_load2_r4(spline_o, filename, ier, spl_name)
1083 type(EZspline2_r4) :: spline_o
1084 character*(*) :: filename
1085 integer,
intent(out) :: ier
1087 character*(*),
intent(in),
optional :: spl_name
1088 end subroutine ezspline_load2_r4
1090 subroutine ezspline_load1_r4(spline_o, filename, ier, spl_name)
1093 type(EZspline1_r4) :: spline_o
1094 character*(*) :: filename
1095 integer,
intent(out) :: ier
1097 character*(*),
intent(in),
optional :: spl_name
1098 end subroutine ezspline_load1_r4
1110 subroutine ezspline_modulo3_r8(spline_o, p1, p2, p3, ier)
1112 type(EZspline3_r8) spline_o
1113 real(ezspline_r8) :: p1, p2, p3
1114 integer,
intent(out) :: ier
1115 end subroutine ezspline_modulo3_r8
1117 subroutine ezspline_modulo_array3_r8(spline_o, k1, k2, k3, p1, p2, p3, ier)
1119 type(EZspline3_r8) spline_o
1120 integer,
intent(in) :: k1, k2, k3
1121 real(ezspline_r8) :: p1(k1), p2(k2), p3(k3)
1122 integer,
intent(out) :: ier
1123 end subroutine ezspline_modulo_array3_r8
1125 subroutine ezspline_modulo_cloud3_r8(spline_o, k, p1, p2, p3, ier)
1127 type(EZspline3_r8) spline_o
1128 integer,
intent(in) :: k
1129 real(ezspline_r8) :: p1(k), p2(k), p3(k)
1130 integer,
intent(out) :: ier
1131 end subroutine ezspline_modulo_cloud3_r8
1133 subroutine ezspline_modulo2_r8(spline_o, p1, p2, ier)
1135 type(EZspline2_r8) spline_o
1136 real(ezspline_r8) :: p1, p2
1137 integer,
intent(out) :: ier
1138 end subroutine ezspline_modulo2_r8
1140 subroutine ezspline_modulo_array2_r8(spline_o, k1, k2, p1, p2, ier)
1142 type(EZspline2_r8) spline_o
1143 integer,
intent(in) :: k1, k2
1144 real(ezspline_r8) :: p1(k1), p2(k2)
1145 integer,
intent(out) :: ier
1146 end subroutine ezspline_modulo_array2_r8
1148 subroutine ezspline_modulo_cloud2_r8(spline_o, k, p1, p2, ier)
1150 type(EZspline2_r8) spline_o
1151 integer,
intent(in) :: k
1152 real(ezspline_r8) :: p1(k), p2(k)
1153 integer,
intent(out) :: ier
1154 end subroutine ezspline_modulo_cloud2_r8
1156 subroutine ezspline_modulo1_r8(spline_o, p1, ier)
1158 type(EZspline1_r8) spline_o
1159 real(ezspline_r8) :: p1
1160 integer,
intent(out) :: ier
1161 end subroutine ezspline_modulo1_r8
1163 subroutine ezspline_modulo_array1_r8(spline_o, k1, p1, ier)
1165 type(EZspline3_r8) spline_o
1166 integer,
intent(in) :: k1
1167 real(ezspline_r8) :: p1(k1)
1168 integer,
intent(out) :: ier
1169 end subroutine ezspline_modulo_array1_r8
1171 subroutine ezspline_modulo3_r4(spline_o, p1, p2, p3, ier)
1173 type(EZspline3_r4) spline_o
1174 real(ezspline_r4) :: p1, p2, p3
1175 integer,
intent(out) :: ier
1176 end subroutine ezspline_modulo3_r4
1178 subroutine ezspline_modulo_array3_r4(spline_o, k1, k2, k3, p1, p2, p3, ier)
1180 type(EZspline3_r4) spline_o
1181 integer,
intent(in) :: k1, k2, k3
1182 real(ezspline_r4) :: p1(k1), p2(k2), p3(k3)
1183 integer,
intent(out) :: ier
1184 end subroutine ezspline_modulo_array3_r4
1186 subroutine ezspline_modulo_cloud3_r4(spline_o, k, p1, p2, p3, ier)
1188 type(EZspline3_r4) spline_o
1189 integer,
intent(in) :: k
1190 real(ezspline_r4) :: p1(k), p2(k), p3(k)
1191 integer,
intent(out) :: ier
1192 end subroutine ezspline_modulo_cloud3_r4
1194 subroutine ezspline_modulo2_r4(spline_o, p1, p2, ier)
1196 type(EZspline2_r4) spline_o
1197 real(ezspline_r4) :: p1, p2
1198 integer,
intent(out) :: ier
1199 end subroutine ezspline_modulo2_r4
1201 subroutine ezspline_modulo_array2_r4(spline_o, k1, k2, p1, p2, ier)
1203 type(EZspline2_r4) spline_o
1204 integer,
intent(in) :: k1, k2
1205 real(ezspline_r4) :: p1(k1), p2(k2)
1206 integer,
intent(out) :: ier
1207 end subroutine ezspline_modulo_array2_r4
1209 subroutine ezspline_modulo_cloud2_r4(spline_o, k, p1, p2, ier)
1211 type(EZspline2_r4) spline_o
1212 integer,
intent(in) :: k
1213 real(ezspline_r4) :: p1(k), p2(k)
1214 integer,
intent(out) :: ier
1215 end subroutine ezspline_modulo_cloud2_r4
1217 subroutine ezspline_modulo1_r4(spline_o, p1, ier)
1219 type(EZspline1_r4) spline_o
1220 real(ezspline_r4) :: p1
1221 integer,
intent(out) :: ier
1222 end subroutine ezspline_modulo1_r4
1224 subroutine ezspline_modulo_array1_r4(spline_o, k1, p1, ier)
1226 type(EZspline3_r4) spline_o
1227 integer,
intent(in) :: k1
1228 real(ezspline_r4) :: p1(k1)
1229 integer,
intent(out) :: ier
1230 end subroutine ezspline_modulo_array1_r4
1243 subroutine ezspline_2netcdf_array3_r8(n1, n2, n3, x1, x2, x3, f, filename, ier)
1247 integer,
intent(in) :: n1, n2, n3
1248 real(ezspline_r8),
intent(in) :: x1(:), x2(:), x3(:), f(:, :, :)
1249 character*(*),
intent(in) :: filename
1250 integer,
intent(out) :: ier
1251 end subroutine ezspline_2netcdf_array3_r8
1253 subroutine ezspline_2netcdf_array2_r8(n1, n2, x1, x2, f, filename, ier)
1257 integer,
intent(in) :: n1, n2
1258 real(ezspline_r8),
intent(in) :: x1(:), x2(:), f(:,:)
1259 character*(*),
intent(in) :: filename
1260 integer,
intent(out) :: ier
1261 end subroutine ezspline_2netcdf_array2_r8
1263 subroutine ezspline_2netcdf1_r8(n1, x1, f, filename, ier)
1267 integer,
intent(in) :: n1
1268 real(ezspline_r8),
intent(in) :: x1(:), f(:)
1269 character*(*),
intent(in) :: filename
1270 integer,
intent(out) :: ier
1271 end subroutine ezspline_2netcdf1_r8
1273 subroutine ezspline_2netcdf_cloud3_r8(n, x1, x2, x3, f, filename, ier)
1277 integer,
intent(in) :: n
1278 real(ezspline_r8),
intent(in) :: x1(:), x2(:), x3(:), f(:)
1279 character*(*),
intent(in) :: filename
1280 integer,
intent(out) :: ier
1281 end subroutine ezspline_2netcdf_cloud3_r8
1283 subroutine ezspline_2netcdf_cloud2_r8(n, x1, x2, f, filename, ier)
1287 integer,
intent(in) :: n
1288 real(ezspline_r8),
intent(in) :: x1(:), x2(:), f(:)
1289 character*(*),
intent(in) :: filename
1290 integer,
intent(out) :: ier
1291 end subroutine ezspline_2netcdf_cloud2_r8
1293 subroutine ezspline_2netcdf_array3_r4(n1, n2, n3, x1, x2, x3, f, filename, ier)
1297 integer,
intent(in) :: n1, n2, n3
1298 real(ezspline_r4),
intent(in) :: x1(:), x2(:), x3(:), f(:, :, :)
1299 character*(*),
intent(in) :: filename
1300 integer,
intent(out) :: ier
1301 end subroutine ezspline_2netcdf_array3_r4
1303 subroutine ezspline_2netcdf_array2_r4(n1, n2, x1, x2, f, filename, ier)
1307 integer,
intent(in) :: n1, n2
1308 real(ezspline_r4),
intent(in) :: x1(:), x2(:), f(:,:)
1309 character*(*),
intent(in) :: filename
1310 integer,
intent(out) :: ier
1311 end subroutine ezspline_2netcdf_array2_r4
1313 subroutine ezspline_2netcdf1_r4(n1, x1, f, filename, ier)
1317 integer,
intent(in) :: n1
1318 real(ezspline_r4),
intent(in) :: x1(:), f(:)
1319 character*(*),
intent(in) :: filename
1320 integer,
intent(out) :: ier
1321 end subroutine ezspline_2netcdf1_r4
1323 subroutine ezspline_2netcdf_cloud3_r4(n, x1, x2, x3, f, filename, ier)
1327 integer,
intent(in) :: n
1328 real(ezspline_r4),
intent(in) :: x1(:), x2(:), x3(:), f(:)
1329 character*(*),
intent(in) :: filename
1330 integer,
intent(out) :: ier
1331 end subroutine ezspline_2netcdf_cloud3_r4
1333 subroutine ezspline_2netcdf_cloud2_r4(n, x1, x2, f, filename, ier)
1337 integer,
intent(in) :: n
1338 real(ezspline_r4),
intent(in) :: x1(:), x2(:), f(:)
1339 character*(*),
intent(in) :: filename
1340 integer,
intent(out) :: ier
1341 end subroutine ezspline_2netcdf_cloud2_r4
1349 subroutine ezspline_error(ier)
1355 integer,
intent(in) :: ier
1358 print*,
'**EZspline** ERROR/WARNING #', ier,
' occurred'
1362 print*,
'**EZspline** allocation error'
1364 print*,
'**EZspline** wrong BCS1 code'
1366 print*,
'**EZspline** wrong BCS2 code'
1368 print*,
'**EZspline** wrong BCS3 code'
1370 print*,
'**EZspline** Que??'
1372 print*,
'**EZspline** out of interval p1 < min(x1)'
1374 print*,
'**EZspline** out of interval p1 > max(x1)'
1376 print*,
'**EZspline** out of interval p2 < min(x2)'
1378 print*,
'**EZspline** out of interval p2 > max(x2)'
1380 print*,
'**EZspline** out of interval p3 < min(x3)'
1382 print*,
'**EZspline** out of interval p3 > max(x3)'
1384 print*,
'**EZspline** negative derivative order'
1386 print*,
'**EZspline** derivative order too high'
1388 print*,
'**EZspline** x1 grid is not strictly increasing'
1390 print*,
'**EZspline** x2 grid is not strictly increasing'
1392 print*,
'**EZspline** x3 grid is not strictly increasing'
1394 print*,
'**EZspline** could not save spline object in file '
1396 print*,
'**EZspline** memory allocation failure in coefficient setup'
1399 print*,
'**EZspline** attempt to load spline object with wrong rank.'
1401 print*,
'**EZspline** could not load spline object from file '
1403 print*,
'**EZspline** loaded spline object from file but failed at coefficient set-up'
1405 print*,
'**EZspline** failed to free spline object'
1407 print*,
'**EZspline** 2nd order derivative not supported for Akima-Hermite (isHermite=1)'
1409 print*,
'**EZspline** not supported for Akima-Hermite (isHermite=1)'
1411 print*,
'**EZspline** memory allocation error in EZspline_interp'
1413 print*,
'**EZspline** an error ocurred in genxpkg'
1415 print*,
'**EZspline** memory allocation failure in ezspline_interp'
1417 print*,
'**EZspline** memory deallocation failure in ezspline_interp'
1419 print*,
'**EZspline** memory allocation error in EZspline_gradient'
1421 print*,
'**EZspline** memory deallocation error in EZspline_gradient'
1423 print*,
'**EZspline** memory allocation error in EZspline_derivative'
1425 print*,
'**EZspline** memory deallocation error in EZspline_derivative'
1427 print*,
'**EZspline** could not open netCDF file in EZspline_2netcdf'
1429 print*,
'**EZspline** could not write into netCDF file in EZspline_2netcdf'
1431 print*,
'**EZspline** could not read from netCDF file in EZspline_2netcdf'
1433 print*,
'**EZspline** could not close netCDF file in EZspline_2netcdf'
1435 print*,
'**EZspline** could not define variable (cdfDefVar) in EZspline_2netcdf'
1437 print*,
'**EZspline** could not open netCDF file in EZspline_save'
1439 print*,
'**EZspline** could not write into netCDF file in EZspline_save'
1441 print*,
'**EZspline** could not close netCDF file in EZspline_save'
1443 print*,
'**EZspline** could not define variable (cdfDefVar) in EZspline_save'
1445 print*,
'**EZspline** could not open netCDF file in EZspline_load'
1447 print*,
'**EZspline** could not read from netCDF file in EZspline_load'
1449 print*,
'**EZspline** could not close netCDF file in EZspline_load'
1451 print*,
'**EZspline** 2nd order derivative not supported for Piecewise Linear Interpolation (isLinear=1)'
1453 print*,
'**EZspline** not supported for Piecewise Linear Interpolation (isLinear=1)'
1456 print*,
'**EZspline** ezspline_save (optional) spline name is blank.'
1458 print*,
'**EZspline** ezspline_save (optional) spline name too long (max 20 characters).'
1460 print*,
'**EZspline** ezspline_save (optional) spline name contains'
1461 print*,
' imbedded blanks or other illegal characters.'
1463 print*,
'**EZspline** attempt to write named spline object to NetCDF'
1464 print*,
' file with change of dimensionality or data type.'
1467 print*,
'**EZspline** hybrid interpolation specification not in range -1:2'
1468 print*,
' error in EZhybrid_init.'
1470 print*,
'**EZspline** hybrid interpolation cannot mix Hermite and Spline interpolation.'
1471 print*,
' hspline(i)=1 and hspline(j)=2 in EZhybrid_init.'
1473 print*,
'**EZspline** non-default boundary condition unavailable: zonal or piecewise linear dimension.'
1474 print*,
' in EZhybrid_init.'
1477 print*,
'**EZspline** dimension of "f" smaller than corresponding "fspl"'
1478 print*,
' dimension in "spline_o".'
1480 print*,
'**EZspline** dimension of "f" larger than corresponding "fspl"'
1481 print*,
' dimension in "spline_o".'
1484 print*,
'**EZspline** an error occurred after attempting to evaluate the'
1485 print*,
' Hermite polynomials'
1487 print*,
'**EZspline** an error occurred after attempting to set up the'
1488 print*,
' Hermite polynomial coefficients'
1490 print*,
'**EZspline** warning in EZspline_load. Looks like saved object '
1491 print*,
' was not properly set-up (isReady=0).'
1493 print*,
'**EZspline** warning in EZspline_save. Looks like saved object '
1494 print*,
' was not properly set-up (isReady=0).'
1496 print*,
'**EZspline** an error occurred in EZspline_interp. Did you forget'
1497 print*,
' to set up the cubic spline coefficients by calling'
1498 print*,
' call EZspline_setup(spline_o, f, ier)'
1501 print*,
'**EZspline** some error occurred in EZspline_gradient'
1503 print*,
'**EZspline** some error occurred in EZspline_derivative'
1505 print*,
'**EZspline** some error occurred in EZspline_interp apparently'
1506 print*,
' related to a PSPLINE routine. Check if argument is '
1507 print*,
' outside interpolation domain by calling'
1508 print*,.OR.
' call EZspline_isInDomain(spline_o, [[k1, k2, k3,] k,] p1, p2, p3, ier ,ier)'
1509 print*,
' call EZspline_error(ier)'
1511 print*,
'**EZspline** error occurred in EZspline_setup'
1512 print*,
' if no other explanation-- ezspline_init call never made.'
1514 print*,
'**EZspline** some error occurred in EZspline_init, EZhybrid_init, or EZlinear_init'
1516 print*,
'**EZSPLINE** EZspline_init, EZhybrid_init, or EZlinear_init -- object already allocated.'
1518 print*,
'**EZSPLINE** object was never allocated.'
1520 print*,
'**EZspline** '
1524 end subroutine ezspline_error