ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_matrixInit.F90
Go to the documentation of this file.
1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3!!!! !!!!
4!!!! ParaMonte: Parallel Monte Carlo and Machine Learning Library. !!!!
5!!!! !!!!
6!!!! Copyright (C) 2012-present, The Computational Data Science Lab !!!!
7!!!! !!!!
8!!!! This file is part of the ParaMonte library. !!!!
9!!!! !!!!
10!!!! LICENSE !!!!
11!!!! !!!!
12!!!! https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md !!!!
13!!!! !!!!
14!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
15!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
113
114!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
115
117
118 use pm_kind, only: SK, IK
119 use pm_matrixSubset, only: dia, dia_type
120 use pm_matrixSubset, only: low, low_type
121 use pm_matrixSubset, only: upp, upp_type
126
127 implicit none
128
129 character(*, SK), parameter :: MODULE_NAME = "@pm_matrixInit"
130
131!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
132
288
289 interface getMatInit
290
291 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
292 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
293 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
294
295 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
296 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
297 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
298
299 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
300
301#if SK5_ENABLED
302 PURE module function getMatInitXXD_D2XX0_SK5(shape, subset, vdia, ndia, roff, coff) result(mat)
303#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
304 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_SK5
305#endif
306 use pm_kind, only: SKG => SK5
307 character(*,SKG) , intent(in) :: vdia
308 integer(IK) , intent(in) :: shape(2)
309 integer(IK) , intent(in), optional :: ndia
310 integer(IK) , intent(in), optional :: roff, coff
311 type(dia_type) , intent(in) :: subset
312 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
313 end function
314#endif
315
316#if SK4_ENABLED
317 PURE module function getMatInitXXD_D2XX0_SK4(shape, subset, vdia, ndia, roff, coff) result(mat)
318#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
319 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_SK4
320#endif
321 use pm_kind, only: SKG => SK4
322 character(*,SKG) , intent(in) :: vdia
323 integer(IK) , intent(in) :: shape(2)
324 integer(IK) , intent(in), optional :: ndia
325 integer(IK) , intent(in), optional :: roff, coff
326 type(dia_type) , intent(in) :: subset
327 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
328 end function
329#endif
330
331#if SK3_ENABLED
332 PURE module function getMatInitXXD_D2XX0_SK3(shape, subset, vdia, ndia, roff, coff) result(mat)
333#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
334 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_SK3
335#endif
336 use pm_kind, only: SKG => SK3
337 character(*,SKG) , intent(in) :: vdia
338 integer(IK) , intent(in) :: shape(2)
339 integer(IK) , intent(in), optional :: ndia
340 integer(IK) , intent(in), optional :: roff, coff
341 type(dia_type) , intent(in) :: subset
342 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
343 end function
344#endif
345
346#if SK2_ENABLED
347 PURE module function getMatInitXXD_D2XX0_SK2(shape, subset, vdia, ndia, roff, coff) result(mat)
348#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
349 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_SK2
350#endif
351 use pm_kind, only: SKG => SK2
352 character(*,SKG) , intent(in) :: vdia
353 integer(IK) , intent(in) :: shape(2)
354 integer(IK) , intent(in), optional :: ndia
355 integer(IK) , intent(in), optional :: roff, coff
356 type(dia_type) , intent(in) :: subset
357 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
358 end function
359#endif
360
361#if SK1_ENABLED
362 PURE module function getMatInitXXD_D2XX0_SK1(shape, subset, vdia, ndia, roff, coff) result(mat)
363#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
364 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_SK1
365#endif
366 use pm_kind, only: SKG => SK1
367 character(*,SKG) , intent(in) :: vdia
368 integer(IK) , intent(in) :: shape(2)
369 integer(IK) , intent(in), optional :: ndia
370 integer(IK) , intent(in), optional :: roff, coff
371 type(dia_type) , intent(in) :: subset
372 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
373 end function
374#endif
375
376 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
377
378#if IK5_ENABLED
379 PURE module function getMatInitXXD_D2XX0_IK5(shape, subset, vdia, ndia, roff, coff) result(mat)
380#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
381 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_IK5
382#endif
383 use pm_kind, only: IKG => IK5
384 integer(IKG) , intent(in) :: vdia
385 integer(IK) , intent(in) :: shape(2)
386 integer(IK) , intent(in), optional :: ndia
387 integer(IK) , intent(in), optional :: roff, coff
388 type(dia_type) , intent(in) :: subset
389 integer(IKG) :: mat(shape(1), shape(2))
390 end function
391#endif
392
393#if IK4_ENABLED
394 PURE module function getMatInitXXD_D2XX0_IK4(shape, subset, vdia, ndia, roff, coff) result(mat)
395#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
396 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_IK4
397#endif
398 use pm_kind, only: IKG => IK4
399 integer(IKG) , intent(in) :: vdia
400 integer(IK) , intent(in) :: shape(2)
401 integer(IK) , intent(in), optional :: ndia
402 integer(IK) , intent(in), optional :: roff, coff
403 type(dia_type) , intent(in) :: subset
404 integer(IKG) :: mat(shape(1), shape(2))
405 end function
406#endif
407
408#if IK3_ENABLED
409 PURE module function getMatInitXXD_D2XX0_IK3(shape, subset, vdia, ndia, roff, coff) result(mat)
410#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
411 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_IK3
412#endif
413 use pm_kind, only: IKG => IK3
414 integer(IKG) , intent(in) :: vdia
415 integer(IK) , intent(in) :: shape(2)
416 integer(IK) , intent(in), optional :: ndia
417 integer(IK) , intent(in), optional :: roff, coff
418 type(dia_type) , intent(in) :: subset
419 integer(IKG) :: mat(shape(1), shape(2))
420 end function
421#endif
422
423#if IK2_ENABLED
424 PURE module function getMatInitXXD_D2XX0_IK2(shape, subset, vdia, ndia, roff, coff) result(mat)
425#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
426 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_IK2
427#endif
428 use pm_kind, only: IKG => IK2
429 integer(IKG) , intent(in) :: vdia
430 integer(IK) , intent(in) :: shape(2)
431 integer(IK) , intent(in), optional :: ndia
432 integer(IK) , intent(in), optional :: roff, coff
433 type(dia_type) , intent(in) :: subset
434 integer(IKG) :: mat(shape(1), shape(2))
435 end function
436#endif
437
438#if IK1_ENABLED
439 PURE module function getMatInitXXD_D2XX0_IK1(shape, subset, vdia, ndia, roff, coff) result(mat)
440#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
441 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_IK1
442#endif
443 use pm_kind, only: IKG => IK1
444 integer(IKG) , intent(in) :: vdia
445 integer(IK) , intent(in) :: shape(2)
446 integer(IK) , intent(in), optional :: ndia
447 integer(IK) , intent(in), optional :: roff, coff
448 type(dia_type) , intent(in) :: subset
449 integer(IKG) :: mat(shape(1), shape(2))
450 end function
451#endif
452
453 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
454
455#if LK5_ENABLED
456 PURE module function getMatInitXXD_D2XX0_LK5(shape, subset, vdia, ndia, roff, coff) result(mat)
457#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
458 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_LK5
459#endif
460 use pm_kind, only: LKG => LK5
461 logical(LKG) , intent(in) :: vdia
462 integer(IK) , intent(in) :: shape(2)
463 integer(IK) , intent(in), optional :: ndia
464 integer(IK) , intent(in), optional :: roff, coff
465 type(dia_type) , intent(in) :: subset
466 logical(LKG) :: mat(shape(1), shape(2))
467 end function
468#endif
469
470#if LK4_ENABLED
471 PURE module function getMatInitXXD_D2XX0_LK4(shape, subset, vdia, ndia, roff, coff) result(mat)
472#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
473 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_LK4
474#endif
475 use pm_kind, only: LKG => LK4
476 logical(LKG) , intent(in) :: vdia
477 integer(IK) , intent(in) :: shape(2)
478 integer(IK) , intent(in), optional :: ndia
479 integer(IK) , intent(in), optional :: roff, coff
480 type(dia_type) , intent(in) :: subset
481 logical(LKG) :: mat(shape(1), shape(2))
482 end function
483#endif
484
485#if LK3_ENABLED
486 PURE module function getMatInitXXD_D2XX0_LK3(shape, subset, vdia, ndia, roff, coff) result(mat)
487#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
488 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_LK3
489#endif
490 use pm_kind, only: LKG => LK3
491 logical(LKG) , intent(in) :: vdia
492 integer(IK) , intent(in) :: shape(2)
493 integer(IK) , intent(in), optional :: ndia
494 integer(IK) , intent(in), optional :: roff, coff
495 type(dia_type) , intent(in) :: subset
496 logical(LKG) :: mat(shape(1), shape(2))
497 end function
498#endif
499
500#if LK2_ENABLED
501 PURE module function getMatInitXXD_D2XX0_LK2(shape, subset, vdia, ndia, roff, coff) result(mat)
502#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
503 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_LK2
504#endif
505 use pm_kind, only: LKG => LK2
506 logical(LKG) , intent(in) :: vdia
507 integer(IK) , intent(in) :: shape(2)
508 integer(IK) , intent(in), optional :: ndia
509 integer(IK) , intent(in), optional :: roff, coff
510 type(dia_type) , intent(in) :: subset
511 logical(LKG) :: mat(shape(1), shape(2))
512 end function
513#endif
514
515#if LK1_ENABLED
516 PURE module function getMatInitXXD_D2XX0_LK1(shape, subset, vdia, ndia, roff, coff) result(mat)
517#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
518 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_LK1
519#endif
520 use pm_kind, only: LKG => LK1
521 logical(LKG) , intent(in) :: vdia
522 integer(IK) , intent(in) :: shape(2)
523 integer(IK) , intent(in), optional :: ndia
524 integer(IK) , intent(in), optional :: roff, coff
525 type(dia_type) , intent(in) :: subset
526 logical(LKG) :: mat(shape(1), shape(2))
527 end function
528#endif
529
530 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
531
532#if CK5_ENABLED
533 PURE module function getMatInitXXD_D2XX0_CK5(shape, subset, vdia, ndia, roff, coff) result(mat)
534#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
535 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_CK5
536#endif
537 use pm_kind, only: CKG => CK5
538 complex(CKG) , intent(in) :: vdia
539 integer(IK) , intent(in) :: shape(2)
540 integer(IK) , intent(in), optional :: ndia
541 integer(IK) , intent(in), optional :: roff, coff
542 type(dia_type) , intent(in) :: subset
543 complex(CKG) :: mat(shape(1), shape(2))
544 end function
545#endif
546
547#if CK4_ENABLED
548 PURE module function getMatInitXXD_D2XX0_CK4(shape, subset, vdia, ndia, roff, coff) result(mat)
549#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
550 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_CK4
551#endif
552 use pm_kind, only: CKG => CK4
553 complex(CKG) , intent(in) :: vdia
554 integer(IK) , intent(in) :: shape(2)
555 integer(IK) , intent(in), optional :: ndia
556 integer(IK) , intent(in), optional :: roff, coff
557 type(dia_type) , intent(in) :: subset
558 complex(CKG) :: mat(shape(1), shape(2))
559 end function
560#endif
561
562#if CK3_ENABLED
563 PURE module function getMatInitXXD_D2XX0_CK3(shape, subset, vdia, ndia, roff, coff) result(mat)
564#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
565 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_CK3
566#endif
567 use pm_kind, only: CKG => CK3
568 complex(CKG) , intent(in) :: vdia
569 integer(IK) , intent(in) :: shape(2)
570 integer(IK) , intent(in), optional :: ndia
571 integer(IK) , intent(in), optional :: roff, coff
572 type(dia_type) , intent(in) :: subset
573 complex(CKG) :: mat(shape(1), shape(2))
574 end function
575#endif
576
577#if CK2_ENABLED
578 PURE module function getMatInitXXD_D2XX0_CK2(shape, subset, vdia, ndia, roff, coff) result(mat)
579#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
580 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_CK2
581#endif
582 use pm_kind, only: CKG => CK2
583 complex(CKG) , intent(in) :: vdia
584 integer(IK) , intent(in) :: shape(2)
585 integer(IK) , intent(in), optional :: ndia
586 integer(IK) , intent(in), optional :: roff, coff
587 type(dia_type) , intent(in) :: subset
588 complex(CKG) :: mat(shape(1), shape(2))
589 end function
590#endif
591
592#if CK1_ENABLED
593 PURE module function getMatInitXXD_D2XX0_CK1(shape, subset, vdia, ndia, roff, coff) result(mat)
594#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
595 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_CK1
596#endif
597 use pm_kind, only: CKG => CK1
598 complex(CKG) , intent(in) :: vdia
599 integer(IK) , intent(in) :: shape(2)
600 integer(IK) , intent(in), optional :: ndia
601 integer(IK) , intent(in), optional :: roff, coff
602 type(dia_type) , intent(in) :: subset
603 complex(CKG) :: mat(shape(1), shape(2))
604 end function
605#endif
606
607 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
608
609#if RK5_ENABLED
610 PURE module function getMatInitXXD_D2XX0_RK5(shape, subset, vdia, ndia, roff, coff) result(mat)
611#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
612 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_RK5
613#endif
614 use pm_kind, only: RKG => RK5
615 real(RKG) , intent(in) :: vdia
616 integer(IK) , intent(in) :: shape(2)
617 integer(IK) , intent(in), optional :: ndia
618 integer(IK) , intent(in), optional :: roff, coff
619 type(dia_type) , intent(in) :: subset
620 real(RKG) :: mat(shape(1), shape(2))
621 end function
622#endif
623
624#if RK4_ENABLED
625 PURE module function getMatInitXXD_D2XX0_RK4(shape, subset, vdia, ndia, roff, coff) result(mat)
626#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
627 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_RK4
628#endif
629 use pm_kind, only: RKG => RK4
630 real(RKG) , intent(in) :: vdia
631 integer(IK) , intent(in) :: shape(2)
632 integer(IK) , intent(in), optional :: ndia
633 integer(IK) , intent(in), optional :: roff, coff
634 type(dia_type) , intent(in) :: subset
635 real(RKG) :: mat(shape(1), shape(2))
636 end function
637#endif
638
639#if RK3_ENABLED
640 PURE module function getMatInitXXD_D2XX0_RK3(shape, subset, vdia, ndia, roff, coff) result(mat)
641#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
642 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_RK3
643#endif
644 use pm_kind, only: RKG => RK3
645 real(RKG) , intent(in) :: vdia
646 integer(IK) , intent(in) :: shape(2)
647 integer(IK) , intent(in), optional :: ndia
648 integer(IK) , intent(in), optional :: roff, coff
649 type(dia_type) , intent(in) :: subset
650 real(RKG) :: mat(shape(1), shape(2))
651 end function
652#endif
653
654#if RK2_ENABLED
655 PURE module function getMatInitXXD_D2XX0_RK2(shape, subset, vdia, ndia, roff, coff) result(mat)
656#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
657 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_RK2
658#endif
659 use pm_kind, only: RKG => RK2
660 real(RKG) , intent(in) :: vdia
661 integer(IK) , intent(in) :: shape(2)
662 integer(IK) , intent(in), optional :: ndia
663 integer(IK) , intent(in), optional :: roff, coff
664 type(dia_type) , intent(in) :: subset
665 real(RKG) :: mat(shape(1), shape(2))
666 end function
667#endif
668
669#if RK1_ENABLED
670 PURE module function getMatInitXXD_D2XX0_RK1(shape, subset, vdia, ndia, roff, coff) result(mat)
671#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
672 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX0_RK1
673#endif
674 use pm_kind, only: RKG => RK1
675 real(RKG) , intent(in) :: vdia
676 integer(IK) , intent(in) :: shape(2)
677 integer(IK) , intent(in), optional :: ndia
678 integer(IK) , intent(in), optional :: roff, coff
679 type(dia_type) , intent(in) :: subset
680 real(RKG) :: mat(shape(1), shape(2))
681 end function
682#endif
683
684 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
685
686 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
687 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
688 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
689
690 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
691
692#if SK5_ENABLED
693 PURE module function getMatInitXXD_D2XX1_SK5(shape, subset, vdia, roff, coff) result(mat)
694#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
695 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_SK5
696#endif
697 use pm_kind, only: SKG => SK5
698 character(*,SKG) , intent(in), contiguous :: vdia(:)
699 integer(IK) , intent(in) :: shape(2)
700 integer(IK) , intent(in), optional :: roff, coff
701 type(dia_type) , intent(in) :: subset
702 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
703 end function
704#endif
705
706#if SK4_ENABLED
707 PURE module function getMatInitXXD_D2XX1_SK4(shape, subset, vdia, roff, coff) result(mat)
708#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
709 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_SK4
710#endif
711 use pm_kind, only: SKG => SK4
712 character(*,SKG) , intent(in), contiguous :: vdia(:)
713 integer(IK) , intent(in) :: shape(2)
714 integer(IK) , intent(in), optional :: roff, coff
715 type(dia_type) , intent(in) :: subset
716 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
717 end function
718#endif
719
720#if SK3_ENABLED
721 PURE module function getMatInitXXD_D2XX1_SK3(shape, subset, vdia, roff, coff) result(mat)
722#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
723 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_SK3
724#endif
725 use pm_kind, only: SKG => SK3
726 character(*,SKG) , intent(in), contiguous :: vdia(:)
727 integer(IK) , intent(in) :: shape(2)
728 integer(IK) , intent(in), optional :: roff, coff
729 type(dia_type) , intent(in) :: subset
730 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
731 end function
732#endif
733
734#if SK2_ENABLED
735 PURE module function getMatInitXXD_D2XX1_SK2(shape, subset, vdia, roff, coff) result(mat)
736#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
737 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_SK2
738#endif
739 use pm_kind, only: SKG => SK2
740 character(*,SKG) , intent(in), contiguous :: vdia(:)
741 integer(IK) , intent(in) :: shape(2)
742 integer(IK) , intent(in), optional :: roff, coff
743 type(dia_type) , intent(in) :: subset
744 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
745 end function
746#endif
747
748#if SK1_ENABLED
749 PURE module function getMatInitXXD_D2XX1_SK1(shape, subset, vdia, roff, coff) result(mat)
750#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
751 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_SK1
752#endif
753 use pm_kind, only: SKG => SK1
754 character(*,SKG) , intent(in), contiguous :: vdia(:)
755 integer(IK) , intent(in) :: shape(2)
756 integer(IK) , intent(in), optional :: roff, coff
757 type(dia_type) , intent(in) :: subset
758 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
759 end function
760#endif
761
762 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
763
764#if IK5_ENABLED
765 PURE module function getMatInitXXD_D2XX1_IK5(shape, subset, vdia, roff, coff) result(mat)
766#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
767 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_IK5
768#endif
769 use pm_kind, only: IKG => IK5
770 integer(IKG) , intent(in), contiguous :: vdia(:)
771 integer(IK) , intent(in) :: shape(2)
772 integer(IK) , intent(in), optional :: roff, coff
773 type(dia_type) , intent(in) :: subset
774 integer(IKG) :: mat(shape(1), shape(2))
775 end function
776#endif
777
778#if IK4_ENABLED
779 PURE module function getMatInitXXD_D2XX1_IK4(shape, subset, vdia, roff, coff) result(mat)
780#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
781 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_IK4
782#endif
783 use pm_kind, only: IKG => IK4
784 integer(IKG) , intent(in), contiguous :: vdia(:)
785 integer(IK) , intent(in) :: shape(2)
786 integer(IK) , intent(in), optional :: roff, coff
787 type(dia_type) , intent(in) :: subset
788 integer(IKG) :: mat(shape(1), shape(2))
789 end function
790#endif
791
792#if IK3_ENABLED
793 PURE module function getMatInitXXD_D2XX1_IK3(shape, subset, vdia, roff, coff) result(mat)
794#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
795 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_IK3
796#endif
797 use pm_kind, only: IKG => IK3
798 integer(IKG) , intent(in), contiguous :: vdia(:)
799 integer(IK) , intent(in) :: shape(2)
800 integer(IK) , intent(in), optional :: roff, coff
801 type(dia_type) , intent(in) :: subset
802 integer(IKG) :: mat(shape(1), shape(2))
803 end function
804#endif
805
806#if IK2_ENABLED
807 PURE module function getMatInitXXD_D2XX1_IK2(shape, subset, vdia, roff, coff) result(mat)
808#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
809 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_IK2
810#endif
811 use pm_kind, only: IKG => IK2
812 integer(IKG) , intent(in), contiguous :: vdia(:)
813 integer(IK) , intent(in) :: shape(2)
814 integer(IK) , intent(in), optional :: roff, coff
815 type(dia_type) , intent(in) :: subset
816 integer(IKG) :: mat(shape(1), shape(2))
817 end function
818#endif
819
820#if IK1_ENABLED
821 PURE module function getMatInitXXD_D2XX1_IK1(shape, subset, vdia, roff, coff) result(mat)
822#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
823 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_IK1
824#endif
825 use pm_kind, only: IKG => IK1
826 integer(IKG) , intent(in), contiguous :: vdia(:)
827 integer(IK) , intent(in) :: shape(2)
828 integer(IK) , intent(in), optional :: roff, coff
829 type(dia_type) , intent(in) :: subset
830 integer(IKG) :: mat(shape(1), shape(2))
831 end function
832#endif
833
834 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
835
836#if LK5_ENABLED
837 PURE module function getMatInitXXD_D2XX1_LK5(shape, subset, vdia, roff, coff) result(mat)
838#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
839 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_LK5
840#endif
841 use pm_kind, only: LKG => LK5
842 logical(LKG) , intent(in), contiguous :: vdia(:)
843 integer(IK) , intent(in) :: shape(2)
844 integer(IK) , intent(in), optional :: roff, coff
845 type(dia_type) , intent(in) :: subset
846 logical(LKG) :: mat(shape(1), shape(2))
847 end function
848#endif
849
850#if LK4_ENABLED
851 PURE module function getMatInitXXD_D2XX1_LK4(shape, subset, vdia, roff, coff) result(mat)
852#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
853 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_LK4
854#endif
855 use pm_kind, only: LKG => LK4
856 logical(LKG) , intent(in), contiguous :: vdia(:)
857 integer(IK) , intent(in) :: shape(2)
858 integer(IK) , intent(in), optional :: roff, coff
859 type(dia_type) , intent(in) :: subset
860 logical(LKG) :: mat(shape(1), shape(2))
861 end function
862#endif
863
864#if LK3_ENABLED
865 PURE module function getMatInitXXD_D2XX1_LK3(shape, subset, vdia, roff, coff) result(mat)
866#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
867 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_LK3
868#endif
869 use pm_kind, only: LKG => LK3
870 logical(LKG) , intent(in), contiguous :: vdia(:)
871 integer(IK) , intent(in) :: shape(2)
872 integer(IK) , intent(in), optional :: roff, coff
873 type(dia_type) , intent(in) :: subset
874 logical(LKG) :: mat(shape(1), shape(2))
875 end function
876#endif
877
878#if LK2_ENABLED
879 PURE module function getMatInitXXD_D2XX1_LK2(shape, subset, vdia, roff, coff) result(mat)
880#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
881 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_LK2
882#endif
883 use pm_kind, only: LKG => LK2
884 logical(LKG) , intent(in), contiguous :: vdia(:)
885 integer(IK) , intent(in) :: shape(2)
886 integer(IK) , intent(in), optional :: roff, coff
887 type(dia_type) , intent(in) :: subset
888 logical(LKG) :: mat(shape(1), shape(2))
889 end function
890#endif
891
892#if LK1_ENABLED
893 PURE module function getMatInitXXD_D2XX1_LK1(shape, subset, vdia, roff, coff) result(mat)
894#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
895 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_LK1
896#endif
897 use pm_kind, only: LKG => LK1
898 logical(LKG) , intent(in), contiguous :: vdia(:)
899 integer(IK) , intent(in) :: shape(2)
900 integer(IK) , intent(in), optional :: roff, coff
901 type(dia_type) , intent(in) :: subset
902 logical(LKG) :: mat(shape(1), shape(2))
903 end function
904#endif
905
906 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
907
908#if CK5_ENABLED
909 PURE module function getMatInitXXD_D2XX1_CK5(shape, subset, vdia, roff, coff) result(mat)
910#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
911 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_CK5
912#endif
913 use pm_kind, only: CKG => CK5
914 complex(CKG) , intent(in), contiguous :: vdia(:)
915 integer(IK) , intent(in) :: shape(2)
916 integer(IK) , intent(in), optional :: roff, coff
917 type(dia_type) , intent(in) :: subset
918 complex(CKG) :: mat(shape(1), shape(2))
919 end function
920#endif
921
922#if CK4_ENABLED
923 PURE module function getMatInitXXD_D2XX1_CK4(shape, subset, vdia, roff, coff) result(mat)
924#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
925 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_CK4
926#endif
927 use pm_kind, only: CKG => CK4
928 complex(CKG) , intent(in), contiguous :: vdia(:)
929 integer(IK) , intent(in) :: shape(2)
930 integer(IK) , intent(in), optional :: roff, coff
931 type(dia_type) , intent(in) :: subset
932 complex(CKG) :: mat(shape(1), shape(2))
933 end function
934#endif
935
936#if CK3_ENABLED
937 PURE module function getMatInitXXD_D2XX1_CK3(shape, subset, vdia, roff, coff) result(mat)
938#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
939 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_CK3
940#endif
941 use pm_kind, only: CKG => CK3
942 complex(CKG) , intent(in), contiguous :: vdia(:)
943 integer(IK) , intent(in) :: shape(2)
944 integer(IK) , intent(in), optional :: roff, coff
945 type(dia_type) , intent(in) :: subset
946 complex(CKG) :: mat(shape(1), shape(2))
947 end function
948#endif
949
950#if CK2_ENABLED
951 PURE module function getMatInitXXD_D2XX1_CK2(shape, subset, vdia, roff, coff) result(mat)
952#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
953 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_CK2
954#endif
955 use pm_kind, only: CKG => CK2
956 complex(CKG) , intent(in), contiguous :: vdia(:)
957 integer(IK) , intent(in) :: shape(2)
958 integer(IK) , intent(in), optional :: roff, coff
959 type(dia_type) , intent(in) :: subset
960 complex(CKG) :: mat(shape(1), shape(2))
961 end function
962#endif
963
964#if CK1_ENABLED
965 PURE module function getMatInitXXD_D2XX1_CK1(shape, subset, vdia, roff, coff) result(mat)
966#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
967 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_CK1
968#endif
969 use pm_kind, only: CKG => CK1
970 complex(CKG) , intent(in), contiguous :: vdia(:)
971 integer(IK) , intent(in) :: shape(2)
972 integer(IK) , intent(in), optional :: roff, coff
973 type(dia_type) , intent(in) :: subset
974 complex(CKG) :: mat(shape(1), shape(2))
975 end function
976#endif
977
978 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
979
980#if RK5_ENABLED
981 PURE module function getMatInitXXD_D2XX1_RK5(shape, subset, vdia, roff, coff) result(mat)
982#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
983 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_RK5
984#endif
985 use pm_kind, only: RKG => RK5
986 real(RKG) , intent(in), contiguous :: vdia(:)
987 integer(IK) , intent(in) :: shape(2)
988 integer(IK) , intent(in), optional :: roff, coff
989 type(dia_type) , intent(in) :: subset
990 real(RKG) :: mat(shape(1), shape(2))
991 end function
992#endif
993
994#if RK4_ENABLED
995 PURE module function getMatInitXXD_D2XX1_RK4(shape, subset, vdia, roff, coff) result(mat)
996#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
997 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_RK4
998#endif
999 use pm_kind, only: RKG => RK4
1000 real(RKG) , intent(in), contiguous :: vdia(:)
1001 integer(IK) , intent(in) :: shape(2)
1002 integer(IK) , intent(in), optional :: roff, coff
1003 type(dia_type) , intent(in) :: subset
1004 real(RKG) :: mat(shape(1), shape(2))
1005 end function
1006#endif
1007
1008#if RK3_ENABLED
1009 PURE module function getMatInitXXD_D2XX1_RK3(shape, subset, vdia, roff, coff) result(mat)
1010#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1011 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_RK3
1012#endif
1013 use pm_kind, only: RKG => RK3
1014 real(RKG) , intent(in), contiguous :: vdia(:)
1015 integer(IK) , intent(in) :: shape(2)
1016 integer(IK) , intent(in), optional :: roff, coff
1017 type(dia_type) , intent(in) :: subset
1018 real(RKG) :: mat(shape(1), shape(2))
1019 end function
1020#endif
1021
1022#if RK2_ENABLED
1023 PURE module function getMatInitXXD_D2XX1_RK2(shape, subset, vdia, roff, coff) result(mat)
1024#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1025 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_RK2
1026#endif
1027 use pm_kind, only: RKG => RK2
1028 real(RKG) , intent(in), contiguous :: vdia(:)
1029 integer(IK) , intent(in) :: shape(2)
1030 integer(IK) , intent(in), optional :: roff, coff
1031 type(dia_type) , intent(in) :: subset
1032 real(RKG) :: mat(shape(1), shape(2))
1033 end function
1034#endif
1035
1036#if RK1_ENABLED
1037 PURE module function getMatInitXXD_D2XX1_RK1(shape, subset, vdia, roff, coff) result(mat)
1038#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1039 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXXD_D2XX1_RK1
1040#endif
1041 use pm_kind, only: RKG => RK1
1042 real(RKG) , intent(in), contiguous :: vdia(:)
1043 integer(IK) , intent(in) :: shape(2)
1044 integer(IK) , intent(in), optional :: roff, coff
1045 type(dia_type) , intent(in) :: subset
1046 real(RKG) :: mat(shape(1), shape(2))
1047 end function
1048#endif
1049
1050 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1051
1052 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1053 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1054 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1055
1056 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1057 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1058 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1059
1060 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1061
1062#if SK5_ENABLED
1063 PURE module function getMatInitXLD_D2X00_SK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1064#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1065 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_SK5
1066#endif
1067 use pm_kind, only: SKG => SK5
1068 character(*,SKG) , intent(in) :: vlow
1069 character(*,SKG) , intent(in) :: vdia
1070 integer(IK) , intent(in) :: shape(2)
1071 integer(IK) , intent(in), optional :: nrow, ncol
1072 integer(IK) , intent(in), optional :: roff, coff, doff
1073 type(lowDia_type) , intent(in) :: subset
1074 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1075 end function
1076#endif
1077
1078#if SK4_ENABLED
1079 PURE module function getMatInitXLD_D2X00_SK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1080#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1081 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_SK4
1082#endif
1083 use pm_kind, only: SKG => SK4
1084 character(*,SKG) , intent(in) :: vlow
1085 character(*,SKG) , intent(in) :: vdia
1086 integer(IK) , intent(in) :: shape(2)
1087 integer(IK) , intent(in), optional :: nrow, ncol
1088 integer(IK) , intent(in), optional :: roff, coff, doff
1089 type(lowDia_type) , intent(in) :: subset
1090 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1091 end function
1092#endif
1093
1094#if SK3_ENABLED
1095 PURE module function getMatInitXLD_D2X00_SK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1096#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1097 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_SK3
1098#endif
1099 use pm_kind, only: SKG => SK3
1100 character(*,SKG) , intent(in) :: vlow
1101 character(*,SKG) , intent(in) :: vdia
1102 integer(IK) , intent(in) :: shape(2)
1103 integer(IK) , intent(in), optional :: nrow, ncol
1104 integer(IK) , intent(in), optional :: roff, coff, doff
1105 type(lowDia_type) , intent(in) :: subset
1106 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1107 end function
1108#endif
1109
1110#if SK2_ENABLED
1111 PURE module function getMatInitXLD_D2X00_SK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1112#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1113 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_SK2
1114#endif
1115 use pm_kind, only: SKG => SK2
1116 character(*,SKG) , intent(in) :: vlow
1117 character(*,SKG) , intent(in) :: vdia
1118 integer(IK) , intent(in) :: shape(2)
1119 integer(IK) , intent(in), optional :: nrow, ncol
1120 integer(IK) , intent(in), optional :: roff, coff, doff
1121 type(lowDia_type) , intent(in) :: subset
1122 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1123 end function
1124#endif
1125
1126#if SK1_ENABLED
1127 PURE module function getMatInitXLD_D2X00_SK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1128#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1129 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_SK1
1130#endif
1131 use pm_kind, only: SKG => SK1
1132 character(*,SKG) , intent(in) :: vlow
1133 character(*,SKG) , intent(in) :: vdia
1134 integer(IK) , intent(in) :: shape(2)
1135 integer(IK) , intent(in), optional :: nrow, ncol
1136 integer(IK) , intent(in), optional :: roff, coff, doff
1137 type(lowDia_type) , intent(in) :: subset
1138 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1139 end function
1140#endif
1141
1142 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1143
1144#if IK5_ENABLED
1145 PURE module function getMatInitXLD_D2X00_IK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1146#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1147 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_IK5
1148#endif
1149 use pm_kind, only: IKG => IK5
1150 integer(IKG) , intent(in) :: vlow
1151 integer(IKG) , intent(in) :: vdia
1152 integer(IK) , intent(in) :: shape(2)
1153 integer(IK) , intent(in), optional :: nrow, ncol
1154 integer(IK) , intent(in), optional :: roff, coff, doff
1155 type(lowDia_type) , intent(in) :: subset
1156 integer(IKG) :: mat(shape(1), shape(2))
1157 end function
1158#endif
1159
1160#if IK4_ENABLED
1161 PURE module function getMatInitXLD_D2X00_IK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1162#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1163 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_IK4
1164#endif
1165 use pm_kind, only: IKG => IK4
1166 integer(IKG) , intent(in) :: vlow
1167 integer(IKG) , intent(in) :: vdia
1168 integer(IK) , intent(in) :: shape(2)
1169 integer(IK) , intent(in), optional :: nrow, ncol
1170 integer(IK) , intent(in), optional :: roff, coff, doff
1171 type(lowDia_type) , intent(in) :: subset
1172 integer(IKG) :: mat(shape(1), shape(2))
1173 end function
1174#endif
1175
1176#if IK3_ENABLED
1177 PURE module function getMatInitXLD_D2X00_IK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1178#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1179 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_IK3
1180#endif
1181 use pm_kind, only: IKG => IK3
1182 integer(IKG) , intent(in) :: vlow
1183 integer(IKG) , intent(in) :: vdia
1184 integer(IK) , intent(in) :: shape(2)
1185 integer(IK) , intent(in), optional :: nrow, ncol
1186 integer(IK) , intent(in), optional :: roff, coff, doff
1187 type(lowDia_type) , intent(in) :: subset
1188 integer(IKG) :: mat(shape(1), shape(2))
1189 end function
1190#endif
1191
1192#if IK2_ENABLED
1193 PURE module function getMatInitXLD_D2X00_IK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1194#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1195 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_IK2
1196#endif
1197 use pm_kind, only: IKG => IK2
1198 integer(IKG) , intent(in) :: vlow
1199 integer(IKG) , intent(in) :: vdia
1200 integer(IK) , intent(in) :: shape(2)
1201 integer(IK) , intent(in), optional :: nrow, ncol
1202 integer(IK) , intent(in), optional :: roff, coff, doff
1203 type(lowDia_type) , intent(in) :: subset
1204 integer(IKG) :: mat(shape(1), shape(2))
1205 end function
1206#endif
1207
1208#if IK1_ENABLED
1209 PURE module function getMatInitXLD_D2X00_IK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1210#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1211 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_IK1
1212#endif
1213 use pm_kind, only: IKG => IK1
1214 integer(IKG) , intent(in) :: vlow
1215 integer(IKG) , intent(in) :: vdia
1216 integer(IK) , intent(in) :: shape(2)
1217 integer(IK) , intent(in), optional :: nrow, ncol
1218 integer(IK) , intent(in), optional :: roff, coff, doff
1219 type(lowDia_type) , intent(in) :: subset
1220 integer(IKG) :: mat(shape(1), shape(2))
1221 end function
1222#endif
1223
1224 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1225
1226#if LK5_ENABLED
1227 PURE module function getMatInitXLD_D2X00_LK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1228#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1229 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_LK5
1230#endif
1231 use pm_kind, only: LKG => LK5
1232 logical(LKG) , intent(in) :: vlow
1233 logical(LKG) , intent(in) :: vdia
1234 integer(IK) , intent(in) :: shape(2)
1235 integer(IK) , intent(in), optional :: nrow, ncol
1236 integer(IK) , intent(in), optional :: roff, coff, doff
1237 type(lowDia_type) , intent(in) :: subset
1238 logical(LKG) :: mat(shape(1), shape(2))
1239 end function
1240#endif
1241
1242#if LK4_ENABLED
1243 PURE module function getMatInitXLD_D2X00_LK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1244#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1245 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_LK4
1246#endif
1247 use pm_kind, only: LKG => LK4
1248 logical(LKG) , intent(in) :: vlow
1249 logical(LKG) , intent(in) :: vdia
1250 integer(IK) , intent(in) :: shape(2)
1251 integer(IK) , intent(in), optional :: nrow, ncol
1252 integer(IK) , intent(in), optional :: roff, coff, doff
1253 type(lowDia_type) , intent(in) :: subset
1254 logical(LKG) :: mat(shape(1), shape(2))
1255 end function
1256#endif
1257
1258#if LK3_ENABLED
1259 PURE module function getMatInitXLD_D2X00_LK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1260#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1261 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_LK3
1262#endif
1263 use pm_kind, only: LKG => LK3
1264 logical(LKG) , intent(in) :: vlow
1265 logical(LKG) , intent(in) :: vdia
1266 integer(IK) , intent(in) :: shape(2)
1267 integer(IK) , intent(in), optional :: nrow, ncol
1268 integer(IK) , intent(in), optional :: roff, coff, doff
1269 type(lowDia_type) , intent(in) :: subset
1270 logical(LKG) :: mat(shape(1), shape(2))
1271 end function
1272#endif
1273
1274#if LK2_ENABLED
1275 PURE module function getMatInitXLD_D2X00_LK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1276#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1277 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_LK2
1278#endif
1279 use pm_kind, only: LKG => LK2
1280 logical(LKG) , intent(in) :: vlow
1281 logical(LKG) , intent(in) :: vdia
1282 integer(IK) , intent(in) :: shape(2)
1283 integer(IK) , intent(in), optional :: nrow, ncol
1284 integer(IK) , intent(in), optional :: roff, coff, doff
1285 type(lowDia_type) , intent(in) :: subset
1286 logical(LKG) :: mat(shape(1), shape(2))
1287 end function
1288#endif
1289
1290#if LK1_ENABLED
1291 PURE module function getMatInitXLD_D2X00_LK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1292#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1293 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_LK1
1294#endif
1295 use pm_kind, only: LKG => LK1
1296 logical(LKG) , intent(in) :: vlow
1297 logical(LKG) , intent(in) :: vdia
1298 integer(IK) , intent(in) :: shape(2)
1299 integer(IK) , intent(in), optional :: nrow, ncol
1300 integer(IK) , intent(in), optional :: roff, coff, doff
1301 type(lowDia_type) , intent(in) :: subset
1302 logical(LKG) :: mat(shape(1), shape(2))
1303 end function
1304#endif
1305
1306 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1307
1308#if CK5_ENABLED
1309 PURE module function getMatInitXLD_D2X00_CK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1310#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1311 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_CK5
1312#endif
1313 use pm_kind, only: CKG => CK5
1314 complex(CKG) , intent(in) :: vlow
1315 complex(CKG) , intent(in) :: vdia
1316 integer(IK) , intent(in) :: shape(2)
1317 integer(IK) , intent(in), optional :: nrow, ncol
1318 integer(IK) , intent(in), optional :: roff, coff, doff
1319 type(lowDia_type) , intent(in) :: subset
1320 complex(CKG) :: mat(shape(1), shape(2))
1321 end function
1322#endif
1323
1324#if CK4_ENABLED
1325 PURE module function getMatInitXLD_D2X00_CK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1326#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1327 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_CK4
1328#endif
1329 use pm_kind, only: CKG => CK4
1330 complex(CKG) , intent(in) :: vlow
1331 complex(CKG) , intent(in) :: vdia
1332 integer(IK) , intent(in) :: shape(2)
1333 integer(IK) , intent(in), optional :: nrow, ncol
1334 integer(IK) , intent(in), optional :: roff, coff, doff
1335 type(lowDia_type) , intent(in) :: subset
1336 complex(CKG) :: mat(shape(1), shape(2))
1337 end function
1338#endif
1339
1340#if CK3_ENABLED
1341 PURE module function getMatInitXLD_D2X00_CK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1342#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1343 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_CK3
1344#endif
1345 use pm_kind, only: CKG => CK3
1346 complex(CKG) , intent(in) :: vlow
1347 complex(CKG) , intent(in) :: vdia
1348 integer(IK) , intent(in) :: shape(2)
1349 integer(IK) , intent(in), optional :: nrow, ncol
1350 integer(IK) , intent(in), optional :: roff, coff, doff
1351 type(lowDia_type) , intent(in) :: subset
1352 complex(CKG) :: mat(shape(1), shape(2))
1353 end function
1354#endif
1355
1356#if CK2_ENABLED
1357 PURE module function getMatInitXLD_D2X00_CK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1358#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1359 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_CK2
1360#endif
1361 use pm_kind, only: CKG => CK2
1362 complex(CKG) , intent(in) :: vlow
1363 complex(CKG) , intent(in) :: vdia
1364 integer(IK) , intent(in) :: shape(2)
1365 integer(IK) , intent(in), optional :: nrow, ncol
1366 integer(IK) , intent(in), optional :: roff, coff, doff
1367 type(lowDia_type) , intent(in) :: subset
1368 complex(CKG) :: mat(shape(1), shape(2))
1369 end function
1370#endif
1371
1372#if CK1_ENABLED
1373 PURE module function getMatInitXLD_D2X00_CK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1374#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1375 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_CK1
1376#endif
1377 use pm_kind, only: CKG => CK1
1378 complex(CKG) , intent(in) :: vlow
1379 complex(CKG) , intent(in) :: vdia
1380 integer(IK) , intent(in) :: shape(2)
1381 integer(IK) , intent(in), optional :: nrow, ncol
1382 integer(IK) , intent(in), optional :: roff, coff, doff
1383 type(lowDia_type) , intent(in) :: subset
1384 complex(CKG) :: mat(shape(1), shape(2))
1385 end function
1386#endif
1387
1388 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1389
1390#if RK5_ENABLED
1391 PURE module function getMatInitXLD_D2X00_RK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1392#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1393 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_RK5
1394#endif
1395 use pm_kind, only: RKG => RK5
1396 real(RKG) , intent(in) :: vlow
1397 real(RKG) , intent(in) :: vdia
1398 integer(IK) , intent(in) :: shape(2)
1399 integer(IK) , intent(in), optional :: nrow, ncol
1400 integer(IK) , intent(in), optional :: roff, coff, doff
1401 type(lowDia_type) , intent(in) :: subset
1402 real(RKG) :: mat(shape(1), shape(2))
1403 end function
1404#endif
1405
1406#if RK4_ENABLED
1407 PURE module function getMatInitXLD_D2X00_RK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1408#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1409 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_RK4
1410#endif
1411 use pm_kind, only: RKG => RK4
1412 real(RKG) , intent(in) :: vlow
1413 real(RKG) , intent(in) :: vdia
1414 integer(IK) , intent(in) :: shape(2)
1415 integer(IK) , intent(in), optional :: nrow, ncol
1416 integer(IK) , intent(in), optional :: roff, coff, doff
1417 type(lowDia_type) , intent(in) :: subset
1418 real(RKG) :: mat(shape(1), shape(2))
1419 end function
1420#endif
1421
1422#if RK3_ENABLED
1423 PURE module function getMatInitXLD_D2X00_RK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1424#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1425 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_RK3
1426#endif
1427 use pm_kind, only: RKG => RK3
1428 real(RKG) , intent(in) :: vlow
1429 real(RKG) , intent(in) :: vdia
1430 integer(IK) , intent(in) :: shape(2)
1431 integer(IK) , intent(in), optional :: nrow, ncol
1432 integer(IK) , intent(in), optional :: roff, coff, doff
1433 type(lowDia_type) , intent(in) :: subset
1434 real(RKG) :: mat(shape(1), shape(2))
1435 end function
1436#endif
1437
1438#if RK2_ENABLED
1439 PURE module function getMatInitXLD_D2X00_RK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1440#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1441 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_RK2
1442#endif
1443 use pm_kind, only: RKG => RK2
1444 real(RKG) , intent(in) :: vlow
1445 real(RKG) , intent(in) :: vdia
1446 integer(IK) , intent(in) :: shape(2)
1447 integer(IK) , intent(in), optional :: nrow, ncol
1448 integer(IK) , intent(in), optional :: roff, coff, doff
1449 type(lowDia_type) , intent(in) :: subset
1450 real(RKG) :: mat(shape(1), shape(2))
1451 end function
1452#endif
1453
1454#if RK1_ENABLED
1455 PURE module function getMatInitXLD_D2X00_RK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1456#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1457 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X00_RK1
1458#endif
1459 use pm_kind, only: RKG => RK1
1460 real(RKG) , intent(in) :: vlow
1461 real(RKG) , intent(in) :: vdia
1462 integer(IK) , intent(in) :: shape(2)
1463 integer(IK) , intent(in), optional :: nrow, ncol
1464 integer(IK) , intent(in), optional :: roff, coff, doff
1465 type(lowDia_type) , intent(in) :: subset
1466 real(RKG) :: mat(shape(1), shape(2))
1467 end function
1468#endif
1469
1470 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1471
1472 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1473 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1474 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1475
1476 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1477
1478#if SK5_ENABLED
1479 PURE module function getMatInitXLD_D2X01_SK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1480#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1481 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_SK5
1482#endif
1483 use pm_kind, only: SKG => SK5
1484 character(*,SKG) , intent(in) :: vlow
1485 character(*,SKG) , intent(in), contiguous :: vdia(:)
1486 integer(IK) , intent(in) :: shape(2)
1487 integer(IK) , intent(in), optional :: nrow, ncol
1488 integer(IK) , intent(in), optional :: roff, coff, doff
1489 type(lowDia_type) , intent(in) :: subset
1490 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1491 end function
1492#endif
1493
1494#if SK4_ENABLED
1495 PURE module function getMatInitXLD_D2X01_SK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1496#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1497 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_SK4
1498#endif
1499 use pm_kind, only: SKG => SK4
1500 character(*,SKG) , intent(in) :: vlow
1501 character(*,SKG) , intent(in), contiguous :: vdia(:)
1502 integer(IK) , intent(in) :: shape(2)
1503 integer(IK) , intent(in), optional :: nrow, ncol
1504 integer(IK) , intent(in), optional :: roff, coff, doff
1505 type(lowDia_type) , intent(in) :: subset
1506 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1507 end function
1508#endif
1509
1510#if SK3_ENABLED
1511 PURE module function getMatInitXLD_D2X01_SK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1512#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1513 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_SK3
1514#endif
1515 use pm_kind, only: SKG => SK3
1516 character(*,SKG) , intent(in) :: vlow
1517 character(*,SKG) , intent(in), contiguous :: vdia(:)
1518 integer(IK) , intent(in) :: shape(2)
1519 integer(IK) , intent(in), optional :: nrow, ncol
1520 integer(IK) , intent(in), optional :: roff, coff, doff
1521 type(lowDia_type) , intent(in) :: subset
1522 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1523 end function
1524#endif
1525
1526#if SK2_ENABLED
1527 PURE module function getMatInitXLD_D2X01_SK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1528#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1529 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_SK2
1530#endif
1531 use pm_kind, only: SKG => SK2
1532 character(*,SKG) , intent(in) :: vlow
1533 character(*,SKG) , intent(in), contiguous :: vdia(:)
1534 integer(IK) , intent(in) :: shape(2)
1535 integer(IK) , intent(in), optional :: nrow, ncol
1536 integer(IK) , intent(in), optional :: roff, coff, doff
1537 type(lowDia_type) , intent(in) :: subset
1538 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1539 end function
1540#endif
1541
1542#if SK1_ENABLED
1543 PURE module function getMatInitXLD_D2X01_SK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1544#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1545 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_SK1
1546#endif
1547 use pm_kind, only: SKG => SK1
1548 character(*,SKG) , intent(in) :: vlow
1549 character(*,SKG) , intent(in), contiguous :: vdia(:)
1550 integer(IK) , intent(in) :: shape(2)
1551 integer(IK) , intent(in), optional :: nrow, ncol
1552 integer(IK) , intent(in), optional :: roff, coff, doff
1553 type(lowDia_type) , intent(in) :: subset
1554 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1555 end function
1556#endif
1557
1558 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1559
1560#if IK5_ENABLED
1561 PURE module function getMatInitXLD_D2X01_IK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1562#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1563 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_IK5
1564#endif
1565 use pm_kind, only: IKG => IK5
1566 integer(IKG) , intent(in) :: vlow
1567 integer(IKG) , intent(in), contiguous :: vdia(:)
1568 integer(IK) , intent(in) :: shape(2)
1569 integer(IK) , intent(in), optional :: nrow, ncol
1570 integer(IK) , intent(in), optional :: roff, coff, doff
1571 type(lowDia_type) , intent(in) :: subset
1572 integer(IKG) :: mat(shape(1), shape(2))
1573 end function
1574#endif
1575
1576#if IK4_ENABLED
1577 PURE module function getMatInitXLD_D2X01_IK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1578#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1579 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_IK4
1580#endif
1581 use pm_kind, only: IKG => IK4
1582 integer(IKG) , intent(in) :: vlow
1583 integer(IKG) , intent(in), contiguous :: vdia(:)
1584 integer(IK) , intent(in) :: shape(2)
1585 integer(IK) , intent(in), optional :: nrow, ncol
1586 integer(IK) , intent(in), optional :: roff, coff, doff
1587 type(lowDia_type) , intent(in) :: subset
1588 integer(IKG) :: mat(shape(1), shape(2))
1589 end function
1590#endif
1591
1592#if IK3_ENABLED
1593 PURE module function getMatInitXLD_D2X01_IK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1594#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1595 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_IK3
1596#endif
1597 use pm_kind, only: IKG => IK3
1598 integer(IKG) , intent(in) :: vlow
1599 integer(IKG) , intent(in), contiguous :: vdia(:)
1600 integer(IK) , intent(in) :: shape(2)
1601 integer(IK) , intent(in), optional :: nrow, ncol
1602 integer(IK) , intent(in), optional :: roff, coff, doff
1603 type(lowDia_type) , intent(in) :: subset
1604 integer(IKG) :: mat(shape(1), shape(2))
1605 end function
1606#endif
1607
1608#if IK2_ENABLED
1609 PURE module function getMatInitXLD_D2X01_IK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1610#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1611 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_IK2
1612#endif
1613 use pm_kind, only: IKG => IK2
1614 integer(IKG) , intent(in) :: vlow
1615 integer(IKG) , intent(in), contiguous :: vdia(:)
1616 integer(IK) , intent(in) :: shape(2)
1617 integer(IK) , intent(in), optional :: nrow, ncol
1618 integer(IK) , intent(in), optional :: roff, coff, doff
1619 type(lowDia_type) , intent(in) :: subset
1620 integer(IKG) :: mat(shape(1), shape(2))
1621 end function
1622#endif
1623
1624#if IK1_ENABLED
1625 PURE module function getMatInitXLD_D2X01_IK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1626#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1627 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_IK1
1628#endif
1629 use pm_kind, only: IKG => IK1
1630 integer(IKG) , intent(in) :: vlow
1631 integer(IKG) , intent(in), contiguous :: vdia(:)
1632 integer(IK) , intent(in) :: shape(2)
1633 integer(IK) , intent(in), optional :: nrow, ncol
1634 integer(IK) , intent(in), optional :: roff, coff, doff
1635 type(lowDia_type) , intent(in) :: subset
1636 integer(IKG) :: mat(shape(1), shape(2))
1637 end function
1638#endif
1639
1640 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1641
1642#if LK5_ENABLED
1643 PURE module function getMatInitXLD_D2X01_LK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1644#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1645 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_LK5
1646#endif
1647 use pm_kind, only: LKG => LK5
1648 logical(LKG) , intent(in) :: vlow
1649 logical(LKG) , intent(in), contiguous :: vdia(:)
1650 integer(IK) , intent(in) :: shape(2)
1651 integer(IK) , intent(in), optional :: nrow, ncol
1652 integer(IK) , intent(in), optional :: roff, coff, doff
1653 type(lowDia_type) , intent(in) :: subset
1654 logical(LKG) :: mat(shape(1), shape(2))
1655 end function
1656#endif
1657
1658#if LK4_ENABLED
1659 PURE module function getMatInitXLD_D2X01_LK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1660#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1661 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_LK4
1662#endif
1663 use pm_kind, only: LKG => LK4
1664 logical(LKG) , intent(in) :: vlow
1665 logical(LKG) , intent(in), contiguous :: vdia(:)
1666 integer(IK) , intent(in) :: shape(2)
1667 integer(IK) , intent(in), optional :: nrow, ncol
1668 integer(IK) , intent(in), optional :: roff, coff, doff
1669 type(lowDia_type) , intent(in) :: subset
1670 logical(LKG) :: mat(shape(1), shape(2))
1671 end function
1672#endif
1673
1674#if LK3_ENABLED
1675 PURE module function getMatInitXLD_D2X01_LK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1676#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1677 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_LK3
1678#endif
1679 use pm_kind, only: LKG => LK3
1680 logical(LKG) , intent(in) :: vlow
1681 logical(LKG) , intent(in), contiguous :: vdia(:)
1682 integer(IK) , intent(in) :: shape(2)
1683 integer(IK) , intent(in), optional :: nrow, ncol
1684 integer(IK) , intent(in), optional :: roff, coff, doff
1685 type(lowDia_type) , intent(in) :: subset
1686 logical(LKG) :: mat(shape(1), shape(2))
1687 end function
1688#endif
1689
1690#if LK2_ENABLED
1691 PURE module function getMatInitXLD_D2X01_LK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1692#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1693 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_LK2
1694#endif
1695 use pm_kind, only: LKG => LK2
1696 logical(LKG) , intent(in) :: vlow
1697 logical(LKG) , intent(in), contiguous :: vdia(:)
1698 integer(IK) , intent(in) :: shape(2)
1699 integer(IK) , intent(in), optional :: nrow, ncol
1700 integer(IK) , intent(in), optional :: roff, coff, doff
1701 type(lowDia_type) , intent(in) :: subset
1702 logical(LKG) :: mat(shape(1), shape(2))
1703 end function
1704#endif
1705
1706#if LK1_ENABLED
1707 PURE module function getMatInitXLD_D2X01_LK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1708#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1709 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_LK1
1710#endif
1711 use pm_kind, only: LKG => LK1
1712 logical(LKG) , intent(in) :: vlow
1713 logical(LKG) , intent(in), contiguous :: vdia(:)
1714 integer(IK) , intent(in) :: shape(2)
1715 integer(IK) , intent(in), optional :: nrow, ncol
1716 integer(IK) , intent(in), optional :: roff, coff, doff
1717 type(lowDia_type) , intent(in) :: subset
1718 logical(LKG) :: mat(shape(1), shape(2))
1719 end function
1720#endif
1721
1722 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1723
1724#if CK5_ENABLED
1725 PURE module function getMatInitXLD_D2X01_CK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1726#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1727 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_CK5
1728#endif
1729 use pm_kind, only: CKG => CK5
1730 complex(CKG) , intent(in) :: vlow
1731 complex(CKG) , intent(in), contiguous :: vdia(:)
1732 integer(IK) , intent(in) :: shape(2)
1733 integer(IK) , intent(in), optional :: nrow, ncol
1734 integer(IK) , intent(in), optional :: roff, coff, doff
1735 type(lowDia_type) , intent(in) :: subset
1736 complex(CKG) :: mat(shape(1), shape(2))
1737 end function
1738#endif
1739
1740#if CK4_ENABLED
1741 PURE module function getMatInitXLD_D2X01_CK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1742#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1743 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_CK4
1744#endif
1745 use pm_kind, only: CKG => CK4
1746 complex(CKG) , intent(in) :: vlow
1747 complex(CKG) , intent(in), contiguous :: vdia(:)
1748 integer(IK) , intent(in) :: shape(2)
1749 integer(IK) , intent(in), optional :: nrow, ncol
1750 integer(IK) , intent(in), optional :: roff, coff, doff
1751 type(lowDia_type) , intent(in) :: subset
1752 complex(CKG) :: mat(shape(1), shape(2))
1753 end function
1754#endif
1755
1756#if CK3_ENABLED
1757 PURE module function getMatInitXLD_D2X01_CK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1758#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1759 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_CK3
1760#endif
1761 use pm_kind, only: CKG => CK3
1762 complex(CKG) , intent(in) :: vlow
1763 complex(CKG) , intent(in), contiguous :: vdia(:)
1764 integer(IK) , intent(in) :: shape(2)
1765 integer(IK) , intent(in), optional :: nrow, ncol
1766 integer(IK) , intent(in), optional :: roff, coff, doff
1767 type(lowDia_type) , intent(in) :: subset
1768 complex(CKG) :: mat(shape(1), shape(2))
1769 end function
1770#endif
1771
1772#if CK2_ENABLED
1773 PURE module function getMatInitXLD_D2X01_CK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1774#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1775 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_CK2
1776#endif
1777 use pm_kind, only: CKG => CK2
1778 complex(CKG) , intent(in) :: vlow
1779 complex(CKG) , intent(in), contiguous :: vdia(:)
1780 integer(IK) , intent(in) :: shape(2)
1781 integer(IK) , intent(in), optional :: nrow, ncol
1782 integer(IK) , intent(in), optional :: roff, coff, doff
1783 type(lowDia_type) , intent(in) :: subset
1784 complex(CKG) :: mat(shape(1), shape(2))
1785 end function
1786#endif
1787
1788#if CK1_ENABLED
1789 PURE module function getMatInitXLD_D2X01_CK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1790#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1791 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_CK1
1792#endif
1793 use pm_kind, only: CKG => CK1
1794 complex(CKG) , intent(in) :: vlow
1795 complex(CKG) , intent(in), contiguous :: vdia(:)
1796 integer(IK) , intent(in) :: shape(2)
1797 integer(IK) , intent(in), optional :: nrow, ncol
1798 integer(IK) , intent(in), optional :: roff, coff, doff
1799 type(lowDia_type) , intent(in) :: subset
1800 complex(CKG) :: mat(shape(1), shape(2))
1801 end function
1802#endif
1803
1804 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1805
1806#if RK5_ENABLED
1807 PURE module function getMatInitXLD_D2X01_RK5(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1808#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1809 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_RK5
1810#endif
1811 use pm_kind, only: RKG => RK5
1812 real(RKG) , intent(in) :: vlow
1813 real(RKG) , intent(in), contiguous :: vdia(:)
1814 integer(IK) , intent(in) :: shape(2)
1815 integer(IK) , intent(in), optional :: nrow, ncol
1816 integer(IK) , intent(in), optional :: roff, coff, doff
1817 type(lowDia_type) , intent(in) :: subset
1818 real(RKG) :: mat(shape(1), shape(2))
1819 end function
1820#endif
1821
1822#if RK4_ENABLED
1823 PURE module function getMatInitXLD_D2X01_RK4(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1824#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1825 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_RK4
1826#endif
1827 use pm_kind, only: RKG => RK4
1828 real(RKG) , intent(in) :: vlow
1829 real(RKG) , intent(in), contiguous :: vdia(:)
1830 integer(IK) , intent(in) :: shape(2)
1831 integer(IK) , intent(in), optional :: nrow, ncol
1832 integer(IK) , intent(in), optional :: roff, coff, doff
1833 type(lowDia_type) , intent(in) :: subset
1834 real(RKG) :: mat(shape(1), shape(2))
1835 end function
1836#endif
1837
1838#if RK3_ENABLED
1839 PURE module function getMatInitXLD_D2X01_RK3(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1840#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1841 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_RK3
1842#endif
1843 use pm_kind, only: RKG => RK3
1844 real(RKG) , intent(in) :: vlow
1845 real(RKG) , intent(in), contiguous :: vdia(:)
1846 integer(IK) , intent(in) :: shape(2)
1847 integer(IK) , intent(in), optional :: nrow, ncol
1848 integer(IK) , intent(in), optional :: roff, coff, doff
1849 type(lowDia_type) , intent(in) :: subset
1850 real(RKG) :: mat(shape(1), shape(2))
1851 end function
1852#endif
1853
1854#if RK2_ENABLED
1855 PURE module function getMatInitXLD_D2X01_RK2(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1856#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1857 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_RK2
1858#endif
1859 use pm_kind, only: RKG => RK2
1860 real(RKG) , intent(in) :: vlow
1861 real(RKG) , intent(in), contiguous :: vdia(:)
1862 integer(IK) , intent(in) :: shape(2)
1863 integer(IK) , intent(in), optional :: nrow, ncol
1864 integer(IK) , intent(in), optional :: roff, coff, doff
1865 type(lowDia_type) , intent(in) :: subset
1866 real(RKG) :: mat(shape(1), shape(2))
1867 end function
1868#endif
1869
1870#if RK1_ENABLED
1871 PURE module function getMatInitXLD_D2X01_RK1(shape, subset, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
1872#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1873 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitXLD_D2X01_RK1
1874#endif
1875 use pm_kind, only: RKG => RK1
1876 real(RKG) , intent(in) :: vlow
1877 real(RKG) , intent(in), contiguous :: vdia(:)
1878 integer(IK) , intent(in) :: shape(2)
1879 integer(IK) , intent(in), optional :: nrow, ncol
1880 integer(IK) , intent(in), optional :: roff, coff, doff
1881 type(lowDia_type) , intent(in) :: subset
1882 real(RKG) :: mat(shape(1), shape(2))
1883 end function
1884#endif
1885
1886 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1887
1888 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1889 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1890 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1891
1892 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1893 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1894 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1895
1896 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1897
1898#if SK5_ENABLED
1899 PURE module function getMatInitUXD_D20X0_SK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
1900#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1901 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_SK5
1902#endif
1903 use pm_kind, only: SKG => SK5
1904 character(*,SKG) , intent(in) :: vupp
1905 character(*,SKG) , intent(in) :: vdia
1906 integer(IK) , intent(in) :: shape(2)
1907 integer(IK) , intent(in), optional :: nrow, ncol
1908 integer(IK) , intent(in), optional :: roff, coff, doff
1909 type(uppDia_type) , intent(in) :: subset
1910 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1911 end function
1912#endif
1913
1914#if SK4_ENABLED
1915 PURE module function getMatInitUXD_D20X0_SK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
1916#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1917 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_SK4
1918#endif
1919 use pm_kind, only: SKG => SK4
1920 character(*,SKG) , intent(in) :: vupp
1921 character(*,SKG) , intent(in) :: vdia
1922 integer(IK) , intent(in) :: shape(2)
1923 integer(IK) , intent(in), optional :: nrow, ncol
1924 integer(IK) , intent(in), optional :: roff, coff, doff
1925 type(uppDia_type) , intent(in) :: subset
1926 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1927 end function
1928#endif
1929
1930#if SK3_ENABLED
1931 PURE module function getMatInitUXD_D20X0_SK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
1932#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1933 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_SK3
1934#endif
1935 use pm_kind, only: SKG => SK3
1936 character(*,SKG) , intent(in) :: vupp
1937 character(*,SKG) , intent(in) :: vdia
1938 integer(IK) , intent(in) :: shape(2)
1939 integer(IK) , intent(in), optional :: nrow, ncol
1940 integer(IK) , intent(in), optional :: roff, coff, doff
1941 type(uppDia_type) , intent(in) :: subset
1942 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1943 end function
1944#endif
1945
1946#if SK2_ENABLED
1947 PURE module function getMatInitUXD_D20X0_SK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
1948#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1949 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_SK2
1950#endif
1951 use pm_kind, only: SKG => SK2
1952 character(*,SKG) , intent(in) :: vupp
1953 character(*,SKG) , intent(in) :: vdia
1954 integer(IK) , intent(in) :: shape(2)
1955 integer(IK) , intent(in), optional :: nrow, ncol
1956 integer(IK) , intent(in), optional :: roff, coff, doff
1957 type(uppDia_type) , intent(in) :: subset
1958 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1959 end function
1960#endif
1961
1962#if SK1_ENABLED
1963 PURE module function getMatInitUXD_D20X0_SK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
1964#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1965 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_SK1
1966#endif
1967 use pm_kind, only: SKG => SK1
1968 character(*,SKG) , intent(in) :: vupp
1969 character(*,SKG) , intent(in) :: vdia
1970 integer(IK) , intent(in) :: shape(2)
1971 integer(IK) , intent(in), optional :: nrow, ncol
1972 integer(IK) , intent(in), optional :: roff, coff, doff
1973 type(uppDia_type) , intent(in) :: subset
1974 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
1975 end function
1976#endif
1977
1978 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1979
1980#if IK5_ENABLED
1981 PURE module function getMatInitUXD_D20X0_IK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
1982#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1983 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_IK5
1984#endif
1985 use pm_kind, only: IKG => IK5
1986 integer(IKG) , intent(in) :: vupp
1987 integer(IKG) , intent(in) :: vdia
1988 integer(IK) , intent(in) :: shape(2)
1989 integer(IK) , intent(in), optional :: nrow, ncol
1990 integer(IK) , intent(in), optional :: roff, coff, doff
1991 type(uppDia_type) , intent(in) :: subset
1992 integer(IKG) :: mat(shape(1), shape(2))
1993 end function
1994#endif
1995
1996#if IK4_ENABLED
1997 PURE module function getMatInitUXD_D20X0_IK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
1998#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1999 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_IK4
2000#endif
2001 use pm_kind, only: IKG => IK4
2002 integer(IKG) , intent(in) :: vupp
2003 integer(IKG) , intent(in) :: vdia
2004 integer(IK) , intent(in) :: shape(2)
2005 integer(IK) , intent(in), optional :: nrow, ncol
2006 integer(IK) , intent(in), optional :: roff, coff, doff
2007 type(uppDia_type) , intent(in) :: subset
2008 integer(IKG) :: mat(shape(1), shape(2))
2009 end function
2010#endif
2011
2012#if IK3_ENABLED
2013 PURE module function getMatInitUXD_D20X0_IK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2014#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2015 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_IK3
2016#endif
2017 use pm_kind, only: IKG => IK3
2018 integer(IKG) , intent(in) :: vupp
2019 integer(IKG) , intent(in) :: vdia
2020 integer(IK) , intent(in) :: shape(2)
2021 integer(IK) , intent(in), optional :: nrow, ncol
2022 integer(IK) , intent(in), optional :: roff, coff, doff
2023 type(uppDia_type) , intent(in) :: subset
2024 integer(IKG) :: mat(shape(1), shape(2))
2025 end function
2026#endif
2027
2028#if IK2_ENABLED
2029 PURE module function getMatInitUXD_D20X0_IK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2030#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2031 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_IK2
2032#endif
2033 use pm_kind, only: IKG => IK2
2034 integer(IKG) , intent(in) :: vupp
2035 integer(IKG) , intent(in) :: vdia
2036 integer(IK) , intent(in) :: shape(2)
2037 integer(IK) , intent(in), optional :: nrow, ncol
2038 integer(IK) , intent(in), optional :: roff, coff, doff
2039 type(uppDia_type) , intent(in) :: subset
2040 integer(IKG) :: mat(shape(1), shape(2))
2041 end function
2042#endif
2043
2044#if IK1_ENABLED
2045 PURE module function getMatInitUXD_D20X0_IK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2046#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2047 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_IK1
2048#endif
2049 use pm_kind, only: IKG => IK1
2050 integer(IKG) , intent(in) :: vupp
2051 integer(IKG) , intent(in) :: vdia
2052 integer(IK) , intent(in) :: shape(2)
2053 integer(IK) , intent(in), optional :: nrow, ncol
2054 integer(IK) , intent(in), optional :: roff, coff, doff
2055 type(uppDia_type) , intent(in) :: subset
2056 integer(IKG) :: mat(shape(1), shape(2))
2057 end function
2058#endif
2059
2060 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2061
2062#if LK5_ENABLED
2063 PURE module function getMatInitUXD_D20X0_LK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2064#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2065 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_LK5
2066#endif
2067 use pm_kind, only: LKG => LK5
2068 logical(LKG) , intent(in) :: vupp
2069 logical(LKG) , intent(in) :: vdia
2070 integer(IK) , intent(in) :: shape(2)
2071 integer(IK) , intent(in), optional :: nrow, ncol
2072 integer(IK) , intent(in), optional :: roff, coff, doff
2073 type(uppDia_type) , intent(in) :: subset
2074 logical(LKG) :: mat(shape(1), shape(2))
2075 end function
2076#endif
2077
2078#if LK4_ENABLED
2079 PURE module function getMatInitUXD_D20X0_LK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2080#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2081 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_LK4
2082#endif
2083 use pm_kind, only: LKG => LK4
2084 logical(LKG) , intent(in) :: vupp
2085 logical(LKG) , intent(in) :: vdia
2086 integer(IK) , intent(in) :: shape(2)
2087 integer(IK) , intent(in), optional :: nrow, ncol
2088 integer(IK) , intent(in), optional :: roff, coff, doff
2089 type(uppDia_type) , intent(in) :: subset
2090 logical(LKG) :: mat(shape(1), shape(2))
2091 end function
2092#endif
2093
2094#if LK3_ENABLED
2095 PURE module function getMatInitUXD_D20X0_LK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2096#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2097 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_LK3
2098#endif
2099 use pm_kind, only: LKG => LK3
2100 logical(LKG) , intent(in) :: vupp
2101 logical(LKG) , intent(in) :: vdia
2102 integer(IK) , intent(in) :: shape(2)
2103 integer(IK) , intent(in), optional :: nrow, ncol
2104 integer(IK) , intent(in), optional :: roff, coff, doff
2105 type(uppDia_type) , intent(in) :: subset
2106 logical(LKG) :: mat(shape(1), shape(2))
2107 end function
2108#endif
2109
2110#if LK2_ENABLED
2111 PURE module function getMatInitUXD_D20X0_LK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2112#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2113 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_LK2
2114#endif
2115 use pm_kind, only: LKG => LK2
2116 logical(LKG) , intent(in) :: vupp
2117 logical(LKG) , intent(in) :: vdia
2118 integer(IK) , intent(in) :: shape(2)
2119 integer(IK) , intent(in), optional :: nrow, ncol
2120 integer(IK) , intent(in), optional :: roff, coff, doff
2121 type(uppDia_type) , intent(in) :: subset
2122 logical(LKG) :: mat(shape(1), shape(2))
2123 end function
2124#endif
2125
2126#if LK1_ENABLED
2127 PURE module function getMatInitUXD_D20X0_LK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2128#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2129 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_LK1
2130#endif
2131 use pm_kind, only: LKG => LK1
2132 logical(LKG) , intent(in) :: vupp
2133 logical(LKG) , intent(in) :: vdia
2134 integer(IK) , intent(in) :: shape(2)
2135 integer(IK) , intent(in), optional :: nrow, ncol
2136 integer(IK) , intent(in), optional :: roff, coff, doff
2137 type(uppDia_type) , intent(in) :: subset
2138 logical(LKG) :: mat(shape(1), shape(2))
2139 end function
2140#endif
2141
2142 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2143
2144#if CK5_ENABLED
2145 PURE module function getMatInitUXD_D20X0_CK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2146#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2147 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_CK5
2148#endif
2149 use pm_kind, only: CKG => CK5
2150 complex(CKG) , intent(in) :: vupp
2151 complex(CKG) , intent(in) :: vdia
2152 integer(IK) , intent(in) :: shape(2)
2153 integer(IK) , intent(in), optional :: nrow, ncol
2154 integer(IK) , intent(in), optional :: roff, coff, doff
2155 type(uppDia_type) , intent(in) :: subset
2156 complex(CKG) :: mat(shape(1), shape(2))
2157 end function
2158#endif
2159
2160#if CK4_ENABLED
2161 PURE module function getMatInitUXD_D20X0_CK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2162#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2163 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_CK4
2164#endif
2165 use pm_kind, only: CKG => CK4
2166 complex(CKG) , intent(in) :: vupp
2167 complex(CKG) , intent(in) :: vdia
2168 integer(IK) , intent(in) :: shape(2)
2169 integer(IK) , intent(in), optional :: nrow, ncol
2170 integer(IK) , intent(in), optional :: roff, coff, doff
2171 type(uppDia_type) , intent(in) :: subset
2172 complex(CKG) :: mat(shape(1), shape(2))
2173 end function
2174#endif
2175
2176#if CK3_ENABLED
2177 PURE module function getMatInitUXD_D20X0_CK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2178#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2179 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_CK3
2180#endif
2181 use pm_kind, only: CKG => CK3
2182 complex(CKG) , intent(in) :: vupp
2183 complex(CKG) , intent(in) :: vdia
2184 integer(IK) , intent(in) :: shape(2)
2185 integer(IK) , intent(in), optional :: nrow, ncol
2186 integer(IK) , intent(in), optional :: roff, coff, doff
2187 type(uppDia_type) , intent(in) :: subset
2188 complex(CKG) :: mat(shape(1), shape(2))
2189 end function
2190#endif
2191
2192#if CK2_ENABLED
2193 PURE module function getMatInitUXD_D20X0_CK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2194#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2195 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_CK2
2196#endif
2197 use pm_kind, only: CKG => CK2
2198 complex(CKG) , intent(in) :: vupp
2199 complex(CKG) , intent(in) :: vdia
2200 integer(IK) , intent(in) :: shape(2)
2201 integer(IK) , intent(in), optional :: nrow, ncol
2202 integer(IK) , intent(in), optional :: roff, coff, doff
2203 type(uppDia_type) , intent(in) :: subset
2204 complex(CKG) :: mat(shape(1), shape(2))
2205 end function
2206#endif
2207
2208#if CK1_ENABLED
2209 PURE module function getMatInitUXD_D20X0_CK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2210#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2211 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_CK1
2212#endif
2213 use pm_kind, only: CKG => CK1
2214 complex(CKG) , intent(in) :: vupp
2215 complex(CKG) , intent(in) :: vdia
2216 integer(IK) , intent(in) :: shape(2)
2217 integer(IK) , intent(in), optional :: nrow, ncol
2218 integer(IK) , intent(in), optional :: roff, coff, doff
2219 type(uppDia_type) , intent(in) :: subset
2220 complex(CKG) :: mat(shape(1), shape(2))
2221 end function
2222#endif
2223
2224 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2225
2226#if RK5_ENABLED
2227 PURE module function getMatInitUXD_D20X0_RK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2228#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2229 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_RK5
2230#endif
2231 use pm_kind, only: RKG => RK5
2232 real(RKG) , intent(in) :: vupp
2233 real(RKG) , intent(in) :: vdia
2234 integer(IK) , intent(in) :: shape(2)
2235 integer(IK) , intent(in), optional :: nrow, ncol
2236 integer(IK) , intent(in), optional :: roff, coff, doff
2237 type(uppDia_type) , intent(in) :: subset
2238 real(RKG) :: mat(shape(1), shape(2))
2239 end function
2240#endif
2241
2242#if RK4_ENABLED
2243 PURE module function getMatInitUXD_D20X0_RK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2244#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2245 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_RK4
2246#endif
2247 use pm_kind, only: RKG => RK4
2248 real(RKG) , intent(in) :: vupp
2249 real(RKG) , intent(in) :: vdia
2250 integer(IK) , intent(in) :: shape(2)
2251 integer(IK) , intent(in), optional :: nrow, ncol
2252 integer(IK) , intent(in), optional :: roff, coff, doff
2253 type(uppDia_type) , intent(in) :: subset
2254 real(RKG) :: mat(shape(1), shape(2))
2255 end function
2256#endif
2257
2258#if RK3_ENABLED
2259 PURE module function getMatInitUXD_D20X0_RK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2260#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2261 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_RK3
2262#endif
2263 use pm_kind, only: RKG => RK3
2264 real(RKG) , intent(in) :: vupp
2265 real(RKG) , intent(in) :: vdia
2266 integer(IK) , intent(in) :: shape(2)
2267 integer(IK) , intent(in), optional :: nrow, ncol
2268 integer(IK) , intent(in), optional :: roff, coff, doff
2269 type(uppDia_type) , intent(in) :: subset
2270 real(RKG) :: mat(shape(1), shape(2))
2271 end function
2272#endif
2273
2274#if RK2_ENABLED
2275 PURE module function getMatInitUXD_D20X0_RK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2276#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2277 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_RK2
2278#endif
2279 use pm_kind, only: RKG => RK2
2280 real(RKG) , intent(in) :: vupp
2281 real(RKG) , intent(in) :: vdia
2282 integer(IK) , intent(in) :: shape(2)
2283 integer(IK) , intent(in), optional :: nrow, ncol
2284 integer(IK) , intent(in), optional :: roff, coff, doff
2285 type(uppDia_type) , intent(in) :: subset
2286 real(RKG) :: mat(shape(1), shape(2))
2287 end function
2288#endif
2289
2290#if RK1_ENABLED
2291 PURE module function getMatInitUXD_D20X0_RK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2292#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2293 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X0_RK1
2294#endif
2295 use pm_kind, only: RKG => RK1
2296 real(RKG) , intent(in) :: vupp
2297 real(RKG) , intent(in) :: vdia
2298 integer(IK) , intent(in) :: shape(2)
2299 integer(IK) , intent(in), optional :: nrow, ncol
2300 integer(IK) , intent(in), optional :: roff, coff, doff
2301 type(uppDia_type) , intent(in) :: subset
2302 real(RKG) :: mat(shape(1), shape(2))
2303 end function
2304#endif
2305
2306 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2307
2308 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2309 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2310 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2311
2312 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2313
2314#if SK5_ENABLED
2315 PURE module function getMatInitUXD_D20X1_SK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2316#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2317 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_SK5
2318#endif
2319 use pm_kind, only: SKG => SK5
2320 character(*,SKG) , intent(in) :: vupp
2321 character(*,SKG) , intent(in), contiguous :: vdia(:)
2322 integer(IK) , intent(in) :: shape(2)
2323 integer(IK) , intent(in), optional :: nrow, ncol
2324 integer(IK) , intent(in), optional :: roff, coff, doff
2325 type(uppDia_type) , intent(in) :: subset
2326 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
2327 end function
2328#endif
2329
2330#if SK4_ENABLED
2331 PURE module function getMatInitUXD_D20X1_SK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2332#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2333 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_SK4
2334#endif
2335 use pm_kind, only: SKG => SK4
2336 character(*,SKG) , intent(in) :: vupp
2337 character(*,SKG) , intent(in), contiguous :: vdia(:)
2338 integer(IK) , intent(in) :: shape(2)
2339 integer(IK) , intent(in), optional :: nrow, ncol
2340 integer(IK) , intent(in), optional :: roff, coff, doff
2341 type(uppDia_type) , intent(in) :: subset
2342 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
2343 end function
2344#endif
2345
2346#if SK3_ENABLED
2347 PURE module function getMatInitUXD_D20X1_SK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2348#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2349 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_SK3
2350#endif
2351 use pm_kind, only: SKG => SK3
2352 character(*,SKG) , intent(in) :: vupp
2353 character(*,SKG) , intent(in), contiguous :: vdia(:)
2354 integer(IK) , intent(in) :: shape(2)
2355 integer(IK) , intent(in), optional :: nrow, ncol
2356 integer(IK) , intent(in), optional :: roff, coff, doff
2357 type(uppDia_type) , intent(in) :: subset
2358 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
2359 end function
2360#endif
2361
2362#if SK2_ENABLED
2363 PURE module function getMatInitUXD_D20X1_SK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2364#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2365 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_SK2
2366#endif
2367 use pm_kind, only: SKG => SK2
2368 character(*,SKG) , intent(in) :: vupp
2369 character(*,SKG) , intent(in), contiguous :: vdia(:)
2370 integer(IK) , intent(in) :: shape(2)
2371 integer(IK) , intent(in), optional :: nrow, ncol
2372 integer(IK) , intent(in), optional :: roff, coff, doff
2373 type(uppDia_type) , intent(in) :: subset
2374 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
2375 end function
2376#endif
2377
2378#if SK1_ENABLED
2379 PURE module function getMatInitUXD_D20X1_SK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2380#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2381 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_SK1
2382#endif
2383 use pm_kind, only: SKG => SK1
2384 character(*,SKG) , intent(in) :: vupp
2385 character(*,SKG) , intent(in), contiguous :: vdia(:)
2386 integer(IK) , intent(in) :: shape(2)
2387 integer(IK) , intent(in), optional :: nrow, ncol
2388 integer(IK) , intent(in), optional :: roff, coff, doff
2389 type(uppDia_type) , intent(in) :: subset
2390 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
2391 end function
2392#endif
2393
2394 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2395
2396#if IK5_ENABLED
2397 PURE module function getMatInitUXD_D20X1_IK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2398#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2399 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_IK5
2400#endif
2401 use pm_kind, only: IKG => IK5
2402 integer(IKG) , intent(in) :: vupp
2403 integer(IKG) , intent(in), contiguous :: vdia(:)
2404 integer(IK) , intent(in) :: shape(2)
2405 integer(IK) , intent(in), optional :: nrow, ncol
2406 integer(IK) , intent(in), optional :: roff, coff, doff
2407 type(uppDia_type) , intent(in) :: subset
2408 integer(IKG) :: mat(shape(1), shape(2))
2409 end function
2410#endif
2411
2412#if IK4_ENABLED
2413 PURE module function getMatInitUXD_D20X1_IK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2414#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2415 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_IK4
2416#endif
2417 use pm_kind, only: IKG => IK4
2418 integer(IKG) , intent(in) :: vupp
2419 integer(IKG) , intent(in), contiguous :: vdia(:)
2420 integer(IK) , intent(in) :: shape(2)
2421 integer(IK) , intent(in), optional :: nrow, ncol
2422 integer(IK) , intent(in), optional :: roff, coff, doff
2423 type(uppDia_type) , intent(in) :: subset
2424 integer(IKG) :: mat(shape(1), shape(2))
2425 end function
2426#endif
2427
2428#if IK3_ENABLED
2429 PURE module function getMatInitUXD_D20X1_IK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2430#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2431 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_IK3
2432#endif
2433 use pm_kind, only: IKG => IK3
2434 integer(IKG) , intent(in) :: vupp
2435 integer(IKG) , intent(in), contiguous :: vdia(:)
2436 integer(IK) , intent(in) :: shape(2)
2437 integer(IK) , intent(in), optional :: nrow, ncol
2438 integer(IK) , intent(in), optional :: roff, coff, doff
2439 type(uppDia_type) , intent(in) :: subset
2440 integer(IKG) :: mat(shape(1), shape(2))
2441 end function
2442#endif
2443
2444#if IK2_ENABLED
2445 PURE module function getMatInitUXD_D20X1_IK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2446#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2447 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_IK2
2448#endif
2449 use pm_kind, only: IKG => IK2
2450 integer(IKG) , intent(in) :: vupp
2451 integer(IKG) , intent(in), contiguous :: vdia(:)
2452 integer(IK) , intent(in) :: shape(2)
2453 integer(IK) , intent(in), optional :: nrow, ncol
2454 integer(IK) , intent(in), optional :: roff, coff, doff
2455 type(uppDia_type) , intent(in) :: subset
2456 integer(IKG) :: mat(shape(1), shape(2))
2457 end function
2458#endif
2459
2460#if IK1_ENABLED
2461 PURE module function getMatInitUXD_D20X1_IK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2462#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2463 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_IK1
2464#endif
2465 use pm_kind, only: IKG => IK1
2466 integer(IKG) , intent(in) :: vupp
2467 integer(IKG) , intent(in), contiguous :: vdia(:)
2468 integer(IK) , intent(in) :: shape(2)
2469 integer(IK) , intent(in), optional :: nrow, ncol
2470 integer(IK) , intent(in), optional :: roff, coff, doff
2471 type(uppDia_type) , intent(in) :: subset
2472 integer(IKG) :: mat(shape(1), shape(2))
2473 end function
2474#endif
2475
2476 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2477
2478#if LK5_ENABLED
2479 PURE module function getMatInitUXD_D20X1_LK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2480#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2481 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_LK5
2482#endif
2483 use pm_kind, only: LKG => LK5
2484 logical(LKG) , intent(in) :: vupp
2485 logical(LKG) , intent(in), contiguous :: vdia(:)
2486 integer(IK) , intent(in) :: shape(2)
2487 integer(IK) , intent(in), optional :: nrow, ncol
2488 integer(IK) , intent(in), optional :: roff, coff, doff
2489 type(uppDia_type) , intent(in) :: subset
2490 logical(LKG) :: mat(shape(1), shape(2))
2491 end function
2492#endif
2493
2494#if LK4_ENABLED
2495 PURE module function getMatInitUXD_D20X1_LK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2496#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2497 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_LK4
2498#endif
2499 use pm_kind, only: LKG => LK4
2500 logical(LKG) , intent(in) :: vupp
2501 logical(LKG) , intent(in), contiguous :: vdia(:)
2502 integer(IK) , intent(in) :: shape(2)
2503 integer(IK) , intent(in), optional :: nrow, ncol
2504 integer(IK) , intent(in), optional :: roff, coff, doff
2505 type(uppDia_type) , intent(in) :: subset
2506 logical(LKG) :: mat(shape(1), shape(2))
2507 end function
2508#endif
2509
2510#if LK3_ENABLED
2511 PURE module function getMatInitUXD_D20X1_LK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2512#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2513 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_LK3
2514#endif
2515 use pm_kind, only: LKG => LK3
2516 logical(LKG) , intent(in) :: vupp
2517 logical(LKG) , intent(in), contiguous :: vdia(:)
2518 integer(IK) , intent(in) :: shape(2)
2519 integer(IK) , intent(in), optional :: nrow, ncol
2520 integer(IK) , intent(in), optional :: roff, coff, doff
2521 type(uppDia_type) , intent(in) :: subset
2522 logical(LKG) :: mat(shape(1), shape(2))
2523 end function
2524#endif
2525
2526#if LK2_ENABLED
2527 PURE module function getMatInitUXD_D20X1_LK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2528#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2529 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_LK2
2530#endif
2531 use pm_kind, only: LKG => LK2
2532 logical(LKG) , intent(in) :: vupp
2533 logical(LKG) , intent(in), contiguous :: vdia(:)
2534 integer(IK) , intent(in) :: shape(2)
2535 integer(IK) , intent(in), optional :: nrow, ncol
2536 integer(IK) , intent(in), optional :: roff, coff, doff
2537 type(uppDia_type) , intent(in) :: subset
2538 logical(LKG) :: mat(shape(1), shape(2))
2539 end function
2540#endif
2541
2542#if LK1_ENABLED
2543 PURE module function getMatInitUXD_D20X1_LK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2544#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2545 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_LK1
2546#endif
2547 use pm_kind, only: LKG => LK1
2548 logical(LKG) , intent(in) :: vupp
2549 logical(LKG) , intent(in), contiguous :: vdia(:)
2550 integer(IK) , intent(in) :: shape(2)
2551 integer(IK) , intent(in), optional :: nrow, ncol
2552 integer(IK) , intent(in), optional :: roff, coff, doff
2553 type(uppDia_type) , intent(in) :: subset
2554 logical(LKG) :: mat(shape(1), shape(2))
2555 end function
2556#endif
2557
2558 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2559
2560#if CK5_ENABLED
2561 PURE module function getMatInitUXD_D20X1_CK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2562#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2563 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_CK5
2564#endif
2565 use pm_kind, only: CKG => CK5
2566 complex(CKG) , intent(in) :: vupp
2567 complex(CKG) , intent(in), contiguous :: vdia(:)
2568 integer(IK) , intent(in) :: shape(2)
2569 integer(IK) , intent(in), optional :: nrow, ncol
2570 integer(IK) , intent(in), optional :: roff, coff, doff
2571 type(uppDia_type) , intent(in) :: subset
2572 complex(CKG) :: mat(shape(1), shape(2))
2573 end function
2574#endif
2575
2576#if CK4_ENABLED
2577 PURE module function getMatInitUXD_D20X1_CK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2578#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2579 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_CK4
2580#endif
2581 use pm_kind, only: CKG => CK4
2582 complex(CKG) , intent(in) :: vupp
2583 complex(CKG) , intent(in), contiguous :: vdia(:)
2584 integer(IK) , intent(in) :: shape(2)
2585 integer(IK) , intent(in), optional :: nrow, ncol
2586 integer(IK) , intent(in), optional :: roff, coff, doff
2587 type(uppDia_type) , intent(in) :: subset
2588 complex(CKG) :: mat(shape(1), shape(2))
2589 end function
2590#endif
2591
2592#if CK3_ENABLED
2593 PURE module function getMatInitUXD_D20X1_CK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2594#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2595 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_CK3
2596#endif
2597 use pm_kind, only: CKG => CK3
2598 complex(CKG) , intent(in) :: vupp
2599 complex(CKG) , intent(in), contiguous :: vdia(:)
2600 integer(IK) , intent(in) :: shape(2)
2601 integer(IK) , intent(in), optional :: nrow, ncol
2602 integer(IK) , intent(in), optional :: roff, coff, doff
2603 type(uppDia_type) , intent(in) :: subset
2604 complex(CKG) :: mat(shape(1), shape(2))
2605 end function
2606#endif
2607
2608#if CK2_ENABLED
2609 PURE module function getMatInitUXD_D20X1_CK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2610#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2611 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_CK2
2612#endif
2613 use pm_kind, only: CKG => CK2
2614 complex(CKG) , intent(in) :: vupp
2615 complex(CKG) , intent(in), contiguous :: vdia(:)
2616 integer(IK) , intent(in) :: shape(2)
2617 integer(IK) , intent(in), optional :: nrow, ncol
2618 integer(IK) , intent(in), optional :: roff, coff, doff
2619 type(uppDia_type) , intent(in) :: subset
2620 complex(CKG) :: mat(shape(1), shape(2))
2621 end function
2622#endif
2623
2624#if CK1_ENABLED
2625 PURE module function getMatInitUXD_D20X1_CK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2626#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2627 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_CK1
2628#endif
2629 use pm_kind, only: CKG => CK1
2630 complex(CKG) , intent(in) :: vupp
2631 complex(CKG) , intent(in), contiguous :: vdia(:)
2632 integer(IK) , intent(in) :: shape(2)
2633 integer(IK) , intent(in), optional :: nrow, ncol
2634 integer(IK) , intent(in), optional :: roff, coff, doff
2635 type(uppDia_type) , intent(in) :: subset
2636 complex(CKG) :: mat(shape(1), shape(2))
2637 end function
2638#endif
2639
2640 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2641
2642#if RK5_ENABLED
2643 PURE module function getMatInitUXD_D20X1_RK5(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2644#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2645 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_RK5
2646#endif
2647 use pm_kind, only: RKG => RK5
2648 real(RKG) , intent(in) :: vupp
2649 real(RKG) , intent(in), contiguous :: vdia(:)
2650 integer(IK) , intent(in) :: shape(2)
2651 integer(IK) , intent(in), optional :: nrow, ncol
2652 integer(IK) , intent(in), optional :: roff, coff, doff
2653 type(uppDia_type) , intent(in) :: subset
2654 real(RKG) :: mat(shape(1), shape(2))
2655 end function
2656#endif
2657
2658#if RK4_ENABLED
2659 PURE module function getMatInitUXD_D20X1_RK4(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2660#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2661 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_RK4
2662#endif
2663 use pm_kind, only: RKG => RK4
2664 real(RKG) , intent(in) :: vupp
2665 real(RKG) , intent(in), contiguous :: vdia(:)
2666 integer(IK) , intent(in) :: shape(2)
2667 integer(IK) , intent(in), optional :: nrow, ncol
2668 integer(IK) , intent(in), optional :: roff, coff, doff
2669 type(uppDia_type) , intent(in) :: subset
2670 real(RKG) :: mat(shape(1), shape(2))
2671 end function
2672#endif
2673
2674#if RK3_ENABLED
2675 PURE module function getMatInitUXD_D20X1_RK3(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2676#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2677 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_RK3
2678#endif
2679 use pm_kind, only: RKG => RK3
2680 real(RKG) , intent(in) :: vupp
2681 real(RKG) , intent(in), contiguous :: vdia(:)
2682 integer(IK) , intent(in) :: shape(2)
2683 integer(IK) , intent(in), optional :: nrow, ncol
2684 integer(IK) , intent(in), optional :: roff, coff, doff
2685 type(uppDia_type) , intent(in) :: subset
2686 real(RKG) :: mat(shape(1), shape(2))
2687 end function
2688#endif
2689
2690#if RK2_ENABLED
2691 PURE module function getMatInitUXD_D20X1_RK2(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2692#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2693 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_RK2
2694#endif
2695 use pm_kind, only: RKG => RK2
2696 real(RKG) , intent(in) :: vupp
2697 real(RKG) , intent(in), contiguous :: vdia(:)
2698 integer(IK) , intent(in) :: shape(2)
2699 integer(IK) , intent(in), optional :: nrow, ncol
2700 integer(IK) , intent(in), optional :: roff, coff, doff
2701 type(uppDia_type) , intent(in) :: subset
2702 real(RKG) :: mat(shape(1), shape(2))
2703 end function
2704#endif
2705
2706#if RK1_ENABLED
2707 PURE module function getMatInitUXD_D20X1_RK1(shape, subset, vupp, vdia, nrow, ncol, roff, coff, doff) result(mat)
2708#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2709 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitUXD_D20X1_RK1
2710#endif
2711 use pm_kind, only: RKG => RK1
2712 real(RKG) , intent(in) :: vupp
2713 real(RKG) , intent(in), contiguous :: vdia(:)
2714 integer(IK) , intent(in) :: shape(2)
2715 integer(IK) , intent(in), optional :: nrow, ncol
2716 integer(IK) , intent(in), optional :: roff, coff, doff
2717 type(uppDia_type) , intent(in) :: subset
2718 real(RKG) :: mat(shape(1), shape(2))
2719 end function
2720#endif
2721
2722 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2723
2724 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2725 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2726 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2727
2728 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2729 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2730 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2731
2732 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2733
2734#if SK5_ENABLED
2735 PURE module function getMatInitULX_D200X_SK5(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2736#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2737 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_SK5
2738#endif
2739 use pm_kind, only: SKG => SK5
2740 character(*,SKG) , intent(in) :: vupp, vlow
2741 integer(IK) , intent(in) :: shape(2)
2742 integer(IK) , intent(in), optional :: nrow, ncol
2743 integer(IK) , intent(in), optional :: roff, coff, doff
2744 type(uppLow_type) , intent(in) :: subset
2745 character(len(vupp,IK),SKG) :: mat(shape(1), shape(2))
2746 end function
2747#endif
2748
2749#if SK4_ENABLED
2750 PURE module function getMatInitULX_D200X_SK4(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2751#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2752 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_SK4
2753#endif
2754 use pm_kind, only: SKG => SK4
2755 character(*,SKG) , intent(in) :: vupp, vlow
2756 integer(IK) , intent(in) :: shape(2)
2757 integer(IK) , intent(in), optional :: nrow, ncol
2758 integer(IK) , intent(in), optional :: roff, coff, doff
2759 type(uppLow_type) , intent(in) :: subset
2760 character(len(vupp,IK),SKG) :: mat(shape(1), shape(2))
2761 end function
2762#endif
2763
2764#if SK3_ENABLED
2765 PURE module function getMatInitULX_D200X_SK3(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2766#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2767 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_SK3
2768#endif
2769 use pm_kind, only: SKG => SK3
2770 character(*,SKG) , intent(in) :: vupp, vlow
2771 integer(IK) , intent(in) :: shape(2)
2772 integer(IK) , intent(in), optional :: nrow, ncol
2773 integer(IK) , intent(in), optional :: roff, coff, doff
2774 type(uppLow_type) , intent(in) :: subset
2775 character(len(vupp,IK),SKG) :: mat(shape(1), shape(2))
2776 end function
2777#endif
2778
2779#if SK2_ENABLED
2780 PURE module function getMatInitULX_D200X_SK2(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2781#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2782 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_SK2
2783#endif
2784 use pm_kind, only: SKG => SK2
2785 character(*,SKG) , intent(in) :: vupp, vlow
2786 integer(IK) , intent(in) :: shape(2)
2787 integer(IK) , intent(in), optional :: nrow, ncol
2788 integer(IK) , intent(in), optional :: roff, coff, doff
2789 type(uppLow_type) , intent(in) :: subset
2790 character(len(vupp,IK),SKG) :: mat(shape(1), shape(2))
2791 end function
2792#endif
2793
2794#if SK1_ENABLED
2795 PURE module function getMatInitULX_D200X_SK1(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2796#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2797 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_SK1
2798#endif
2799 use pm_kind, only: SKG => SK1
2800 character(*,SKG) , intent(in) :: vupp, vlow
2801 integer(IK) , intent(in) :: shape(2)
2802 integer(IK) , intent(in), optional :: nrow, ncol
2803 integer(IK) , intent(in), optional :: roff, coff, doff
2804 type(uppLow_type) , intent(in) :: subset
2805 character(len(vupp,IK),SKG) :: mat(shape(1), shape(2))
2806 end function
2807#endif
2808
2809 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2810
2811#if IK5_ENABLED
2812 PURE module function getMatInitULX_D200X_IK5(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2813#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2814 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_IK5
2815#endif
2816 use pm_kind, only: IKG => IK5
2817 integer(IKG) , intent(in) :: vupp, vlow
2818 integer(IK) , intent(in) :: shape(2)
2819 integer(IK) , intent(in), optional :: nrow, ncol
2820 integer(IK) , intent(in), optional :: roff, coff, doff
2821 type(uppLow_type) , intent(in) :: subset
2822 integer(IKG) :: mat(shape(1), shape(2))
2823 end function
2824#endif
2825
2826#if IK4_ENABLED
2827 PURE module function getMatInitULX_D200X_IK4(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2828#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2829 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_IK4
2830#endif
2831 use pm_kind, only: IKG => IK4
2832 integer(IKG) , intent(in) :: vupp, vlow
2833 integer(IK) , intent(in) :: shape(2)
2834 integer(IK) , intent(in), optional :: nrow, ncol
2835 integer(IK) , intent(in), optional :: roff, coff, doff
2836 type(uppLow_type) , intent(in) :: subset
2837 integer(IKG) :: mat(shape(1), shape(2))
2838 end function
2839#endif
2840
2841#if IK3_ENABLED
2842 PURE module function getMatInitULX_D200X_IK3(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2843#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2844 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_IK3
2845#endif
2846 use pm_kind, only: IKG => IK3
2847 integer(IKG) , intent(in) :: vupp, vlow
2848 integer(IK) , intent(in) :: shape(2)
2849 integer(IK) , intent(in), optional :: nrow, ncol
2850 integer(IK) , intent(in), optional :: roff, coff, doff
2851 type(uppLow_type) , intent(in) :: subset
2852 integer(IKG) :: mat(shape(1), shape(2))
2853 end function
2854#endif
2855
2856#if IK2_ENABLED
2857 PURE module function getMatInitULX_D200X_IK2(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2858#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2859 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_IK2
2860#endif
2861 use pm_kind, only: IKG => IK2
2862 integer(IKG) , intent(in) :: vupp, vlow
2863 integer(IK) , intent(in) :: shape(2)
2864 integer(IK) , intent(in), optional :: nrow, ncol
2865 integer(IK) , intent(in), optional :: roff, coff, doff
2866 type(uppLow_type) , intent(in) :: subset
2867 integer(IKG) :: mat(shape(1), shape(2))
2868 end function
2869#endif
2870
2871#if IK1_ENABLED
2872 PURE module function getMatInitULX_D200X_IK1(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2873#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2874 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_IK1
2875#endif
2876 use pm_kind, only: IKG => IK1
2877 integer(IKG) , intent(in) :: vupp, vlow
2878 integer(IK) , intent(in) :: shape(2)
2879 integer(IK) , intent(in), optional :: nrow, ncol
2880 integer(IK) , intent(in), optional :: roff, coff, doff
2881 type(uppLow_type) , intent(in) :: subset
2882 integer(IKG) :: mat(shape(1), shape(2))
2883 end function
2884#endif
2885
2886 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2887
2888#if LK5_ENABLED
2889 PURE module function getMatInitULX_D200X_LK5(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2890#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2891 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_LK5
2892#endif
2893 use pm_kind, only: LKG => LK5
2894 logical(LKG) , intent(in) :: vupp, vlow
2895 integer(IK) , intent(in) :: shape(2)
2896 integer(IK) , intent(in), optional :: nrow, ncol
2897 integer(IK) , intent(in), optional :: roff, coff, doff
2898 type(uppLow_type) , intent(in) :: subset
2899 logical(LKG) :: mat(shape(1), shape(2))
2900 end function
2901#endif
2902
2903#if LK4_ENABLED
2904 PURE module function getMatInitULX_D200X_LK4(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2905#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2906 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_LK4
2907#endif
2908 use pm_kind, only: LKG => LK4
2909 logical(LKG) , intent(in) :: vupp, vlow
2910 integer(IK) , intent(in) :: shape(2)
2911 integer(IK) , intent(in), optional :: nrow, ncol
2912 integer(IK) , intent(in), optional :: roff, coff, doff
2913 type(uppLow_type) , intent(in) :: subset
2914 logical(LKG) :: mat(shape(1), shape(2))
2915 end function
2916#endif
2917
2918#if LK3_ENABLED
2919 PURE module function getMatInitULX_D200X_LK3(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2920#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2921 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_LK3
2922#endif
2923 use pm_kind, only: LKG => LK3
2924 logical(LKG) , intent(in) :: vupp, vlow
2925 integer(IK) , intent(in) :: shape(2)
2926 integer(IK) , intent(in), optional :: nrow, ncol
2927 integer(IK) , intent(in), optional :: roff, coff, doff
2928 type(uppLow_type) , intent(in) :: subset
2929 logical(LKG) :: mat(shape(1), shape(2))
2930 end function
2931#endif
2932
2933#if LK2_ENABLED
2934 PURE module function getMatInitULX_D200X_LK2(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2935#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2936 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_LK2
2937#endif
2938 use pm_kind, only: LKG => LK2
2939 logical(LKG) , intent(in) :: vupp, vlow
2940 integer(IK) , intent(in) :: shape(2)
2941 integer(IK) , intent(in), optional :: nrow, ncol
2942 integer(IK) , intent(in), optional :: roff, coff, doff
2943 type(uppLow_type) , intent(in) :: subset
2944 logical(LKG) :: mat(shape(1), shape(2))
2945 end function
2946#endif
2947
2948#if LK1_ENABLED
2949 PURE module function getMatInitULX_D200X_LK1(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2950#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2951 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_LK1
2952#endif
2953 use pm_kind, only: LKG => LK1
2954 logical(LKG) , intent(in) :: vupp, vlow
2955 integer(IK) , intent(in) :: shape(2)
2956 integer(IK) , intent(in), optional :: nrow, ncol
2957 integer(IK) , intent(in), optional :: roff, coff, doff
2958 type(uppLow_type) , intent(in) :: subset
2959 logical(LKG) :: mat(shape(1), shape(2))
2960 end function
2961#endif
2962
2963 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2964
2965#if CK5_ENABLED
2966 PURE module function getMatInitULX_D200X_CK5(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2967#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2968 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_CK5
2969#endif
2970 use pm_kind, only: CKG => CK5
2971 complex(CKG) , intent(in) :: vupp, vlow
2972 integer(IK) , intent(in) :: shape(2)
2973 integer(IK) , intent(in), optional :: nrow, ncol
2974 integer(IK) , intent(in), optional :: roff, coff, doff
2975 type(uppLow_type) , intent(in) :: subset
2976 complex(CKG) :: mat(shape(1), shape(2))
2977 end function
2978#endif
2979
2980#if CK4_ENABLED
2981 PURE module function getMatInitULX_D200X_CK4(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2982#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2983 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_CK4
2984#endif
2985 use pm_kind, only: CKG => CK4
2986 complex(CKG) , intent(in) :: vupp, vlow
2987 integer(IK) , intent(in) :: shape(2)
2988 integer(IK) , intent(in), optional :: nrow, ncol
2989 integer(IK) , intent(in), optional :: roff, coff, doff
2990 type(uppLow_type) , intent(in) :: subset
2991 complex(CKG) :: mat(shape(1), shape(2))
2992 end function
2993#endif
2994
2995#if CK3_ENABLED
2996 PURE module function getMatInitULX_D200X_CK3(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
2997#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2998 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_CK3
2999#endif
3000 use pm_kind, only: CKG => CK3
3001 complex(CKG) , intent(in) :: vupp, vlow
3002 integer(IK) , intent(in) :: shape(2)
3003 integer(IK) , intent(in), optional :: nrow, ncol
3004 integer(IK) , intent(in), optional :: roff, coff, doff
3005 type(uppLow_type) , intent(in) :: subset
3006 complex(CKG) :: mat(shape(1), shape(2))
3007 end function
3008#endif
3009
3010#if CK2_ENABLED
3011 PURE module function getMatInitULX_D200X_CK2(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
3012#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3013 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_CK2
3014#endif
3015 use pm_kind, only: CKG => CK2
3016 complex(CKG) , intent(in) :: vupp, vlow
3017 integer(IK) , intent(in) :: shape(2)
3018 integer(IK) , intent(in), optional :: nrow, ncol
3019 integer(IK) , intent(in), optional :: roff, coff, doff
3020 type(uppLow_type) , intent(in) :: subset
3021 complex(CKG) :: mat(shape(1), shape(2))
3022 end function
3023#endif
3024
3025#if CK1_ENABLED
3026 PURE module function getMatInitULX_D200X_CK1(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
3027#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3028 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_CK1
3029#endif
3030 use pm_kind, only: CKG => CK1
3031 complex(CKG) , intent(in) :: vupp, vlow
3032 integer(IK) , intent(in) :: shape(2)
3033 integer(IK) , intent(in), optional :: nrow, ncol
3034 integer(IK) , intent(in), optional :: roff, coff, doff
3035 type(uppLow_type) , intent(in) :: subset
3036 complex(CKG) :: mat(shape(1), shape(2))
3037 end function
3038#endif
3039
3040 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3041
3042#if RK5_ENABLED
3043 PURE module function getMatInitULX_D200X_RK5(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
3044#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3045 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_RK5
3046#endif
3047 use pm_kind, only: RKG => RK5
3048 real(RKG) , intent(in) :: vupp, vlow
3049 integer(IK) , intent(in) :: shape(2)
3050 integer(IK) , intent(in), optional :: nrow, ncol
3051 integer(IK) , intent(in), optional :: roff, coff, doff
3052 type(uppLow_type) , intent(in) :: subset
3053 real(RKG) :: mat(shape(1), shape(2))
3054 end function
3055#endif
3056
3057#if RK4_ENABLED
3058 PURE module function getMatInitULX_D200X_RK4(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
3059#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3060 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_RK4
3061#endif
3062 use pm_kind, only: RKG => RK4
3063 real(RKG) , intent(in) :: vupp, vlow
3064 integer(IK) , intent(in) :: shape(2)
3065 integer(IK) , intent(in), optional :: nrow, ncol
3066 integer(IK) , intent(in), optional :: roff, coff, doff
3067 type(uppLow_type) , intent(in) :: subset
3068 real(RKG) :: mat(shape(1), shape(2))
3069 end function
3070#endif
3071
3072#if RK3_ENABLED
3073 PURE module function getMatInitULX_D200X_RK3(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
3074#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3075 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_RK3
3076#endif
3077 use pm_kind, only: RKG => RK3
3078 real(RKG) , intent(in) :: vupp, vlow
3079 integer(IK) , intent(in) :: shape(2)
3080 integer(IK) , intent(in), optional :: nrow, ncol
3081 integer(IK) , intent(in), optional :: roff, coff, doff
3082 type(uppLow_type) , intent(in) :: subset
3083 real(RKG) :: mat(shape(1), shape(2))
3084 end function
3085#endif
3086
3087#if RK2_ENABLED
3088 PURE module function getMatInitULX_D200X_RK2(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
3089#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3090 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_RK2
3091#endif
3092 use pm_kind, only: RKG => RK2
3093 real(RKG) , intent(in) :: vupp, vlow
3094 integer(IK) , intent(in) :: shape(2)
3095 integer(IK) , intent(in), optional :: nrow, ncol
3096 integer(IK) , intent(in), optional :: roff, coff, doff
3097 type(uppLow_type) , intent(in) :: subset
3098 real(RKG) :: mat(shape(1), shape(2))
3099 end function
3100#endif
3101
3102#if RK1_ENABLED
3103 PURE module function getMatInitULX_D200X_RK1(shape, subset, vupp, vlow, nrow, ncol, roff, coff, doff) result(mat)
3104#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3105 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULX_D200X_RK1
3106#endif
3107 use pm_kind, only: RKG => RK1
3108 real(RKG) , intent(in) :: vupp, vlow
3109 integer(IK) , intent(in) :: shape(2)
3110 integer(IK) , intent(in), optional :: nrow, ncol
3111 integer(IK) , intent(in), optional :: roff, coff, doff
3112 type(uppLow_type) , intent(in) :: subset
3113 real(RKG) :: mat(shape(1), shape(2))
3114 end function
3115#endif
3116
3117 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3118
3119 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3120 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3121 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3122
3123 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3124 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3125 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3126
3127 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3128
3129#if SK5_ENABLED
3130 PURE module function getMatInitULD_D2000_SK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3131#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3132 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_SK5
3133#endif
3134 use pm_kind, only: SKG => SK5
3135 character(*,SKG) , intent(in) :: vupp, vlow
3136 character(*,SKG) , intent(in) :: vdia
3137 integer(IK) , intent(in) :: shape(2)
3138 integer(IK) , intent(in), optional :: nrow, ncol
3139 integer(IK) , intent(in), optional :: roff, coff, doff
3140 type(uppLowDia_type) , intent(in) :: subset
3141 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3142 end function
3143#endif
3144
3145#if SK4_ENABLED
3146 PURE module function getMatInitULD_D2000_SK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3147#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3148 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_SK4
3149#endif
3150 use pm_kind, only: SKG => SK4
3151 character(*,SKG) , intent(in) :: vupp, vlow
3152 character(*,SKG) , intent(in) :: vdia
3153 integer(IK) , intent(in) :: shape(2)
3154 integer(IK) , intent(in), optional :: nrow, ncol
3155 integer(IK) , intent(in), optional :: roff, coff, doff
3156 type(uppLowDia_type) , intent(in) :: subset
3157 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3158 end function
3159#endif
3160
3161#if SK3_ENABLED
3162 PURE module function getMatInitULD_D2000_SK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3163#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3164 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_SK3
3165#endif
3166 use pm_kind, only: SKG => SK3
3167 character(*,SKG) , intent(in) :: vupp, vlow
3168 character(*,SKG) , intent(in) :: vdia
3169 integer(IK) , intent(in) :: shape(2)
3170 integer(IK) , intent(in), optional :: nrow, ncol
3171 integer(IK) , intent(in), optional :: roff, coff, doff
3172 type(uppLowDia_type) , intent(in) :: subset
3173 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3174 end function
3175#endif
3176
3177#if SK2_ENABLED
3178 PURE module function getMatInitULD_D2000_SK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3179#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3180 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_SK2
3181#endif
3182 use pm_kind, only: SKG => SK2
3183 character(*,SKG) , intent(in) :: vupp, vlow
3184 character(*,SKG) , intent(in) :: vdia
3185 integer(IK) , intent(in) :: shape(2)
3186 integer(IK) , intent(in), optional :: nrow, ncol
3187 integer(IK) , intent(in), optional :: roff, coff, doff
3188 type(uppLowDia_type) , intent(in) :: subset
3189 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3190 end function
3191#endif
3192
3193#if SK1_ENABLED
3194 PURE module function getMatInitULD_D2000_SK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3195#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3196 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_SK1
3197#endif
3198 use pm_kind, only: SKG => SK1
3199 character(*,SKG) , intent(in) :: vupp, vlow
3200 character(*,SKG) , intent(in) :: vdia
3201 integer(IK) , intent(in) :: shape(2)
3202 integer(IK) , intent(in), optional :: nrow, ncol
3203 integer(IK) , intent(in), optional :: roff, coff, doff
3204 type(uppLowDia_type) , intent(in) :: subset
3205 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3206 end function
3207#endif
3208
3209 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3210
3211#if IK5_ENABLED
3212 PURE module function getMatInitULD_D2000_IK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3213#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3214 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_IK5
3215#endif
3216 use pm_kind, only: IKG => IK5
3217 integer(IKG) , intent(in) :: vupp, vlow
3218 integer(IKG) , intent(in) :: vdia
3219 integer(IK) , intent(in) :: shape(2)
3220 integer(IK) , intent(in), optional :: nrow, ncol
3221 integer(IK) , intent(in), optional :: roff, coff, doff
3222 type(uppLowDia_type) , intent(in) :: subset
3223 integer(IKG) :: mat(shape(1), shape(2))
3224 end function
3225#endif
3226
3227#if IK4_ENABLED
3228 PURE module function getMatInitULD_D2000_IK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3229#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3230 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_IK4
3231#endif
3232 use pm_kind, only: IKG => IK4
3233 integer(IKG) , intent(in) :: vupp, vlow
3234 integer(IKG) , intent(in) :: vdia
3235 integer(IK) , intent(in) :: shape(2)
3236 integer(IK) , intent(in), optional :: nrow, ncol
3237 integer(IK) , intent(in), optional :: roff, coff, doff
3238 type(uppLowDia_type) , intent(in) :: subset
3239 integer(IKG) :: mat(shape(1), shape(2))
3240 end function
3241#endif
3242
3243#if IK3_ENABLED
3244 PURE module function getMatInitULD_D2000_IK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3245#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3246 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_IK3
3247#endif
3248 use pm_kind, only: IKG => IK3
3249 integer(IKG) , intent(in) :: vupp, vlow
3250 integer(IKG) , intent(in) :: vdia
3251 integer(IK) , intent(in) :: shape(2)
3252 integer(IK) , intent(in), optional :: nrow, ncol
3253 integer(IK) , intent(in), optional :: roff, coff, doff
3254 type(uppLowDia_type) , intent(in) :: subset
3255 integer(IKG) :: mat(shape(1), shape(2))
3256 end function
3257#endif
3258
3259#if IK2_ENABLED
3260 PURE module function getMatInitULD_D2000_IK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3261#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3262 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_IK2
3263#endif
3264 use pm_kind, only: IKG => IK2
3265 integer(IKG) , intent(in) :: vupp, vlow
3266 integer(IKG) , intent(in) :: vdia
3267 integer(IK) , intent(in) :: shape(2)
3268 integer(IK) , intent(in), optional :: nrow, ncol
3269 integer(IK) , intent(in), optional :: roff, coff, doff
3270 type(uppLowDia_type) , intent(in) :: subset
3271 integer(IKG) :: mat(shape(1), shape(2))
3272 end function
3273#endif
3274
3275#if IK1_ENABLED
3276 PURE module function getMatInitULD_D2000_IK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3277#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3278 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_IK1
3279#endif
3280 use pm_kind, only: IKG => IK1
3281 integer(IKG) , intent(in) :: vupp, vlow
3282 integer(IKG) , intent(in) :: vdia
3283 integer(IK) , intent(in) :: shape(2)
3284 integer(IK) , intent(in), optional :: nrow, ncol
3285 integer(IK) , intent(in), optional :: roff, coff, doff
3286 type(uppLowDia_type) , intent(in) :: subset
3287 integer(IKG) :: mat(shape(1), shape(2))
3288 end function
3289#endif
3290
3291 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3292
3293#if LK5_ENABLED
3294 PURE module function getMatInitULD_D2000_LK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3295#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3296 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_LK5
3297#endif
3298 use pm_kind, only: LKG => LK5
3299 logical(LKG) , intent(in) :: vupp, vlow
3300 logical(LKG) , intent(in) :: vdia
3301 integer(IK) , intent(in) :: shape(2)
3302 integer(IK) , intent(in), optional :: nrow, ncol
3303 integer(IK) , intent(in), optional :: roff, coff, doff
3304 type(uppLowDia_type) , intent(in) :: subset
3305 logical(LKG) :: mat(shape(1), shape(2))
3306 end function
3307#endif
3308
3309#if LK4_ENABLED
3310 PURE module function getMatInitULD_D2000_LK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3311#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3312 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_LK4
3313#endif
3314 use pm_kind, only: LKG => LK4
3315 logical(LKG) , intent(in) :: vupp, vlow
3316 logical(LKG) , intent(in) :: vdia
3317 integer(IK) , intent(in) :: shape(2)
3318 integer(IK) , intent(in), optional :: nrow, ncol
3319 integer(IK) , intent(in), optional :: roff, coff, doff
3320 type(uppLowDia_type) , intent(in) :: subset
3321 logical(LKG) :: mat(shape(1), shape(2))
3322 end function
3323#endif
3324
3325#if LK3_ENABLED
3326 PURE module function getMatInitULD_D2000_LK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3327#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3328 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_LK3
3329#endif
3330 use pm_kind, only: LKG => LK3
3331 logical(LKG) , intent(in) :: vupp, vlow
3332 logical(LKG) , intent(in) :: vdia
3333 integer(IK) , intent(in) :: shape(2)
3334 integer(IK) , intent(in), optional :: nrow, ncol
3335 integer(IK) , intent(in), optional :: roff, coff, doff
3336 type(uppLowDia_type) , intent(in) :: subset
3337 logical(LKG) :: mat(shape(1), shape(2))
3338 end function
3339#endif
3340
3341#if LK2_ENABLED
3342 PURE module function getMatInitULD_D2000_LK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3343#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3344 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_LK2
3345#endif
3346 use pm_kind, only: LKG => LK2
3347 logical(LKG) , intent(in) :: vupp, vlow
3348 logical(LKG) , intent(in) :: vdia
3349 integer(IK) , intent(in) :: shape(2)
3350 integer(IK) , intent(in), optional :: nrow, ncol
3351 integer(IK) , intent(in), optional :: roff, coff, doff
3352 type(uppLowDia_type) , intent(in) :: subset
3353 logical(LKG) :: mat(shape(1), shape(2))
3354 end function
3355#endif
3356
3357#if LK1_ENABLED
3358 PURE module function getMatInitULD_D2000_LK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3359#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3360 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_LK1
3361#endif
3362 use pm_kind, only: LKG => LK1
3363 logical(LKG) , intent(in) :: vupp, vlow
3364 logical(LKG) , intent(in) :: vdia
3365 integer(IK) , intent(in) :: shape(2)
3366 integer(IK) , intent(in), optional :: nrow, ncol
3367 integer(IK) , intent(in), optional :: roff, coff, doff
3368 type(uppLowDia_type) , intent(in) :: subset
3369 logical(LKG) :: mat(shape(1), shape(2))
3370 end function
3371#endif
3372
3373 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3374
3375#if CK5_ENABLED
3376 PURE module function getMatInitULD_D2000_CK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3377#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3378 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_CK5
3379#endif
3380 use pm_kind, only: CKG => CK5
3381 complex(CKG) , intent(in) :: vupp, vlow
3382 complex(CKG) , intent(in) :: vdia
3383 integer(IK) , intent(in) :: shape(2)
3384 integer(IK) , intent(in), optional :: nrow, ncol
3385 integer(IK) , intent(in), optional :: roff, coff, doff
3386 type(uppLowDia_type) , intent(in) :: subset
3387 complex(CKG) :: mat(shape(1), shape(2))
3388 end function
3389#endif
3390
3391#if CK4_ENABLED
3392 PURE module function getMatInitULD_D2000_CK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3393#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3394 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_CK4
3395#endif
3396 use pm_kind, only: CKG => CK4
3397 complex(CKG) , intent(in) :: vupp, vlow
3398 complex(CKG) , intent(in) :: vdia
3399 integer(IK) , intent(in) :: shape(2)
3400 integer(IK) , intent(in), optional :: nrow, ncol
3401 integer(IK) , intent(in), optional :: roff, coff, doff
3402 type(uppLowDia_type) , intent(in) :: subset
3403 complex(CKG) :: mat(shape(1), shape(2))
3404 end function
3405#endif
3406
3407#if CK3_ENABLED
3408 PURE module function getMatInitULD_D2000_CK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3409#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3410 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_CK3
3411#endif
3412 use pm_kind, only: CKG => CK3
3413 complex(CKG) , intent(in) :: vupp, vlow
3414 complex(CKG) , intent(in) :: vdia
3415 integer(IK) , intent(in) :: shape(2)
3416 integer(IK) , intent(in), optional :: nrow, ncol
3417 integer(IK) , intent(in), optional :: roff, coff, doff
3418 type(uppLowDia_type) , intent(in) :: subset
3419 complex(CKG) :: mat(shape(1), shape(2))
3420 end function
3421#endif
3422
3423#if CK2_ENABLED
3424 PURE module function getMatInitULD_D2000_CK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3425#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3426 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_CK2
3427#endif
3428 use pm_kind, only: CKG => CK2
3429 complex(CKG) , intent(in) :: vupp, vlow
3430 complex(CKG) , intent(in) :: vdia
3431 integer(IK) , intent(in) :: shape(2)
3432 integer(IK) , intent(in), optional :: nrow, ncol
3433 integer(IK) , intent(in), optional :: roff, coff, doff
3434 type(uppLowDia_type) , intent(in) :: subset
3435 complex(CKG) :: mat(shape(1), shape(2))
3436 end function
3437#endif
3438
3439#if CK1_ENABLED
3440 PURE module function getMatInitULD_D2000_CK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3441#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3442 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_CK1
3443#endif
3444 use pm_kind, only: CKG => CK1
3445 complex(CKG) , intent(in) :: vupp, vlow
3446 complex(CKG) , intent(in) :: vdia
3447 integer(IK) , intent(in) :: shape(2)
3448 integer(IK) , intent(in), optional :: nrow, ncol
3449 integer(IK) , intent(in), optional :: roff, coff, doff
3450 type(uppLowDia_type) , intent(in) :: subset
3451 complex(CKG) :: mat(shape(1), shape(2))
3452 end function
3453#endif
3454
3455 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3456
3457#if RK5_ENABLED
3458 PURE module function getMatInitULD_D2000_RK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3459#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3460 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_RK5
3461#endif
3462 use pm_kind, only: RKG => RK5
3463 real(RKG) , intent(in) :: vupp, vlow
3464 real(RKG) , intent(in) :: vdia
3465 integer(IK) , intent(in) :: shape(2)
3466 integer(IK) , intent(in), optional :: nrow, ncol
3467 integer(IK) , intent(in), optional :: roff, coff, doff
3468 type(uppLowDia_type) , intent(in) :: subset
3469 real(RKG) :: mat(shape(1), shape(2))
3470 end function
3471#endif
3472
3473#if RK4_ENABLED
3474 PURE module function getMatInitULD_D2000_RK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3475#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3476 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_RK4
3477#endif
3478 use pm_kind, only: RKG => RK4
3479 real(RKG) , intent(in) :: vupp, vlow
3480 real(RKG) , intent(in) :: vdia
3481 integer(IK) , intent(in) :: shape(2)
3482 integer(IK) , intent(in), optional :: nrow, ncol
3483 integer(IK) , intent(in), optional :: roff, coff, doff
3484 type(uppLowDia_type) , intent(in) :: subset
3485 real(RKG) :: mat(shape(1), shape(2))
3486 end function
3487#endif
3488
3489#if RK3_ENABLED
3490 PURE module function getMatInitULD_D2000_RK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3491#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3492 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_RK3
3493#endif
3494 use pm_kind, only: RKG => RK3
3495 real(RKG) , intent(in) :: vupp, vlow
3496 real(RKG) , intent(in) :: vdia
3497 integer(IK) , intent(in) :: shape(2)
3498 integer(IK) , intent(in), optional :: nrow, ncol
3499 integer(IK) , intent(in), optional :: roff, coff, doff
3500 type(uppLowDia_type) , intent(in) :: subset
3501 real(RKG) :: mat(shape(1), shape(2))
3502 end function
3503#endif
3504
3505#if RK2_ENABLED
3506 PURE module function getMatInitULD_D2000_RK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3507#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3508 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_RK2
3509#endif
3510 use pm_kind, only: RKG => RK2
3511 real(RKG) , intent(in) :: vupp, vlow
3512 real(RKG) , intent(in) :: vdia
3513 integer(IK) , intent(in) :: shape(2)
3514 integer(IK) , intent(in), optional :: nrow, ncol
3515 integer(IK) , intent(in), optional :: roff, coff, doff
3516 type(uppLowDia_type) , intent(in) :: subset
3517 real(RKG) :: mat(shape(1), shape(2))
3518 end function
3519#endif
3520
3521#if RK1_ENABLED
3522 PURE module function getMatInitULD_D2000_RK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3523#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3524 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2000_RK1
3525#endif
3526 use pm_kind, only: RKG => RK1
3527 real(RKG) , intent(in) :: vupp, vlow
3528 real(RKG) , intent(in) :: vdia
3529 integer(IK) , intent(in) :: shape(2)
3530 integer(IK) , intent(in), optional :: nrow, ncol
3531 integer(IK) , intent(in), optional :: roff, coff, doff
3532 type(uppLowDia_type) , intent(in) :: subset
3533 real(RKG) :: mat(shape(1), shape(2))
3534 end function
3535#endif
3536
3537 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3538
3539 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3540 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3541 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3542
3543 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3544
3545#if SK5_ENABLED
3546 PURE module function getMatInitULD_D2001_SK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3547#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3548 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_SK5
3549#endif
3550 use pm_kind, only: SKG => SK5
3551 character(*,SKG) , intent(in) :: vupp, vlow
3552 character(*,SKG) , intent(in), contiguous :: vdia(:)
3553 integer(IK) , intent(in) :: shape(2)
3554 integer(IK) , intent(in), optional :: nrow, ncol
3555 integer(IK) , intent(in), optional :: roff, coff, doff
3556 type(uppLowDia_type) , intent(in) :: subset
3557 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3558 end function
3559#endif
3560
3561#if SK4_ENABLED
3562 PURE module function getMatInitULD_D2001_SK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3563#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3564 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_SK4
3565#endif
3566 use pm_kind, only: SKG => SK4
3567 character(*,SKG) , intent(in) :: vupp, vlow
3568 character(*,SKG) , intent(in), contiguous :: vdia(:)
3569 integer(IK) , intent(in) :: shape(2)
3570 integer(IK) , intent(in), optional :: nrow, ncol
3571 integer(IK) , intent(in), optional :: roff, coff, doff
3572 type(uppLowDia_type) , intent(in) :: subset
3573 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3574 end function
3575#endif
3576
3577#if SK3_ENABLED
3578 PURE module function getMatInitULD_D2001_SK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3579#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3580 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_SK3
3581#endif
3582 use pm_kind, only: SKG => SK3
3583 character(*,SKG) , intent(in) :: vupp, vlow
3584 character(*,SKG) , intent(in), contiguous :: vdia(:)
3585 integer(IK) , intent(in) :: shape(2)
3586 integer(IK) , intent(in), optional :: nrow, ncol
3587 integer(IK) , intent(in), optional :: roff, coff, doff
3588 type(uppLowDia_type) , intent(in) :: subset
3589 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3590 end function
3591#endif
3592
3593#if SK2_ENABLED
3594 PURE module function getMatInitULD_D2001_SK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3595#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3596 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_SK2
3597#endif
3598 use pm_kind, only: SKG => SK2
3599 character(*,SKG) , intent(in) :: vupp, vlow
3600 character(*,SKG) , intent(in), contiguous :: vdia(:)
3601 integer(IK) , intent(in) :: shape(2)
3602 integer(IK) , intent(in), optional :: nrow, ncol
3603 integer(IK) , intent(in), optional :: roff, coff, doff
3604 type(uppLowDia_type) , intent(in) :: subset
3605 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3606 end function
3607#endif
3608
3609#if SK1_ENABLED
3610 PURE module function getMatInitULD_D2001_SK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3611#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3612 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_SK1
3613#endif
3614 use pm_kind, only: SKG => SK1
3615 character(*,SKG) , intent(in) :: vupp, vlow
3616 character(*,SKG) , intent(in), contiguous :: vdia(:)
3617 integer(IK) , intent(in) :: shape(2)
3618 integer(IK) , intent(in), optional :: nrow, ncol
3619 integer(IK) , intent(in), optional :: roff, coff, doff
3620 type(uppLowDia_type) , intent(in) :: subset
3621 character(len(vdia,IK),SKG) :: mat(shape(1), shape(2))
3622 end function
3623#endif
3624
3625 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3626
3627#if IK5_ENABLED
3628 PURE module function getMatInitULD_D2001_IK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3629#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3630 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_IK5
3631#endif
3632 use pm_kind, only: IKG => IK5
3633 integer(IKG) , intent(in) :: vupp, vlow
3634 integer(IKG) , intent(in), contiguous :: vdia(:)
3635 integer(IK) , intent(in) :: shape(2)
3636 integer(IK) , intent(in), optional :: nrow, ncol
3637 integer(IK) , intent(in), optional :: roff, coff, doff
3638 type(uppLowDia_type) , intent(in) :: subset
3639 integer(IKG) :: mat(shape(1), shape(2))
3640 end function
3641#endif
3642
3643#if IK4_ENABLED
3644 PURE module function getMatInitULD_D2001_IK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3645#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3646 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_IK4
3647#endif
3648 use pm_kind, only: IKG => IK4
3649 integer(IKG) , intent(in) :: vupp, vlow
3650 integer(IKG) , intent(in), contiguous :: vdia(:)
3651 integer(IK) , intent(in) :: shape(2)
3652 integer(IK) , intent(in), optional :: nrow, ncol
3653 integer(IK) , intent(in), optional :: roff, coff, doff
3654 type(uppLowDia_type) , intent(in) :: subset
3655 integer(IKG) :: mat(shape(1), shape(2))
3656 end function
3657#endif
3658
3659#if IK3_ENABLED
3660 PURE module function getMatInitULD_D2001_IK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3661#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3662 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_IK3
3663#endif
3664 use pm_kind, only: IKG => IK3
3665 integer(IKG) , intent(in) :: vupp, vlow
3666 integer(IKG) , intent(in), contiguous :: vdia(:)
3667 integer(IK) , intent(in) :: shape(2)
3668 integer(IK) , intent(in), optional :: nrow, ncol
3669 integer(IK) , intent(in), optional :: roff, coff, doff
3670 type(uppLowDia_type) , intent(in) :: subset
3671 integer(IKG) :: mat(shape(1), shape(2))
3672 end function
3673#endif
3674
3675#if IK2_ENABLED
3676 PURE module function getMatInitULD_D2001_IK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3677#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3678 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_IK2
3679#endif
3680 use pm_kind, only: IKG => IK2
3681 integer(IKG) , intent(in) :: vupp, vlow
3682 integer(IKG) , intent(in), contiguous :: vdia(:)
3683 integer(IK) , intent(in) :: shape(2)
3684 integer(IK) , intent(in), optional :: nrow, ncol
3685 integer(IK) , intent(in), optional :: roff, coff, doff
3686 type(uppLowDia_type) , intent(in) :: subset
3687 integer(IKG) :: mat(shape(1), shape(2))
3688 end function
3689#endif
3690
3691#if IK1_ENABLED
3692 PURE module function getMatInitULD_D2001_IK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3693#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3694 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_IK1
3695#endif
3696 use pm_kind, only: IKG => IK1
3697 integer(IKG) , intent(in) :: vupp, vlow
3698 integer(IKG) , intent(in), contiguous :: vdia(:)
3699 integer(IK) , intent(in) :: shape(2)
3700 integer(IK) , intent(in), optional :: nrow, ncol
3701 integer(IK) , intent(in), optional :: roff, coff, doff
3702 type(uppLowDia_type) , intent(in) :: subset
3703 integer(IKG) :: mat(shape(1), shape(2))
3704 end function
3705#endif
3706
3707 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3708
3709#if LK5_ENABLED
3710 PURE module function getMatInitULD_D2001_LK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3711#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3712 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_LK5
3713#endif
3714 use pm_kind, only: LKG => LK5
3715 logical(LKG) , intent(in) :: vupp, vlow
3716 logical(LKG) , intent(in), contiguous :: vdia(:)
3717 integer(IK) , intent(in) :: shape(2)
3718 integer(IK) , intent(in), optional :: nrow, ncol
3719 integer(IK) , intent(in), optional :: roff, coff, doff
3720 type(uppLowDia_type) , intent(in) :: subset
3721 logical(LKG) :: mat(shape(1), shape(2))
3722 end function
3723#endif
3724
3725#if LK4_ENABLED
3726 PURE module function getMatInitULD_D2001_LK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3727#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3728 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_LK4
3729#endif
3730 use pm_kind, only: LKG => LK4
3731 logical(LKG) , intent(in) :: vupp, vlow
3732 logical(LKG) , intent(in), contiguous :: vdia(:)
3733 integer(IK) , intent(in) :: shape(2)
3734 integer(IK) , intent(in), optional :: nrow, ncol
3735 integer(IK) , intent(in), optional :: roff, coff, doff
3736 type(uppLowDia_type) , intent(in) :: subset
3737 logical(LKG) :: mat(shape(1), shape(2))
3738 end function
3739#endif
3740
3741#if LK3_ENABLED
3742 PURE module function getMatInitULD_D2001_LK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3743#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3744 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_LK3
3745#endif
3746 use pm_kind, only: LKG => LK3
3747 logical(LKG) , intent(in) :: vupp, vlow
3748 logical(LKG) , intent(in), contiguous :: vdia(:)
3749 integer(IK) , intent(in) :: shape(2)
3750 integer(IK) , intent(in), optional :: nrow, ncol
3751 integer(IK) , intent(in), optional :: roff, coff, doff
3752 type(uppLowDia_type) , intent(in) :: subset
3753 logical(LKG) :: mat(shape(1), shape(2))
3754 end function
3755#endif
3756
3757#if LK2_ENABLED
3758 PURE module function getMatInitULD_D2001_LK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3759#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3760 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_LK2
3761#endif
3762 use pm_kind, only: LKG => LK2
3763 logical(LKG) , intent(in) :: vupp, vlow
3764 logical(LKG) , intent(in), contiguous :: vdia(:)
3765 integer(IK) , intent(in) :: shape(2)
3766 integer(IK) , intent(in), optional :: nrow, ncol
3767 integer(IK) , intent(in), optional :: roff, coff, doff
3768 type(uppLowDia_type) , intent(in) :: subset
3769 logical(LKG) :: mat(shape(1), shape(2))
3770 end function
3771#endif
3772
3773#if LK1_ENABLED
3774 PURE module function getMatInitULD_D2001_LK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3775#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3776 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_LK1
3777#endif
3778 use pm_kind, only: LKG => LK1
3779 logical(LKG) , intent(in) :: vupp, vlow
3780 logical(LKG) , intent(in), contiguous :: vdia(:)
3781 integer(IK) , intent(in) :: shape(2)
3782 integer(IK) , intent(in), optional :: nrow, ncol
3783 integer(IK) , intent(in), optional :: roff, coff, doff
3784 type(uppLowDia_type) , intent(in) :: subset
3785 logical(LKG) :: mat(shape(1), shape(2))
3786 end function
3787#endif
3788
3789 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3790
3791#if CK5_ENABLED
3792 PURE module function getMatInitULD_D2001_CK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3793#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3794 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_CK5
3795#endif
3796 use pm_kind, only: CKG => CK5
3797 complex(CKG) , intent(in) :: vupp, vlow
3798 complex(CKG) , intent(in), contiguous :: vdia(:)
3799 integer(IK) , intent(in) :: shape(2)
3800 integer(IK) , intent(in), optional :: nrow, ncol
3801 integer(IK) , intent(in), optional :: roff, coff, doff
3802 type(uppLowDia_type) , intent(in) :: subset
3803 complex(CKG) :: mat(shape(1), shape(2))
3804 end function
3805#endif
3806
3807#if CK4_ENABLED
3808 PURE module function getMatInitULD_D2001_CK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3809#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3810 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_CK4
3811#endif
3812 use pm_kind, only: CKG => CK4
3813 complex(CKG) , intent(in) :: vupp, vlow
3814 complex(CKG) , intent(in), contiguous :: vdia(:)
3815 integer(IK) , intent(in) :: shape(2)
3816 integer(IK) , intent(in), optional :: nrow, ncol
3817 integer(IK) , intent(in), optional :: roff, coff, doff
3818 type(uppLowDia_type) , intent(in) :: subset
3819 complex(CKG) :: mat(shape(1), shape(2))
3820 end function
3821#endif
3822
3823#if CK3_ENABLED
3824 PURE module function getMatInitULD_D2001_CK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3825#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3826 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_CK3
3827#endif
3828 use pm_kind, only: CKG => CK3
3829 complex(CKG) , intent(in) :: vupp, vlow
3830 complex(CKG) , intent(in), contiguous :: vdia(:)
3831 integer(IK) , intent(in) :: shape(2)
3832 integer(IK) , intent(in), optional :: nrow, ncol
3833 integer(IK) , intent(in), optional :: roff, coff, doff
3834 type(uppLowDia_type) , intent(in) :: subset
3835 complex(CKG) :: mat(shape(1), shape(2))
3836 end function
3837#endif
3838
3839#if CK2_ENABLED
3840 PURE module function getMatInitULD_D2001_CK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3841#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3842 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_CK2
3843#endif
3844 use pm_kind, only: CKG => CK2
3845 complex(CKG) , intent(in) :: vupp, vlow
3846 complex(CKG) , intent(in), contiguous :: vdia(:)
3847 integer(IK) , intent(in) :: shape(2)
3848 integer(IK) , intent(in), optional :: nrow, ncol
3849 integer(IK) , intent(in), optional :: roff, coff, doff
3850 type(uppLowDia_type) , intent(in) :: subset
3851 complex(CKG) :: mat(shape(1), shape(2))
3852 end function
3853#endif
3854
3855#if CK1_ENABLED
3856 PURE module function getMatInitULD_D2001_CK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3857#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3858 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_CK1
3859#endif
3860 use pm_kind, only: CKG => CK1
3861 complex(CKG) , intent(in) :: vupp, vlow
3862 complex(CKG) , intent(in), contiguous :: vdia(:)
3863 integer(IK) , intent(in) :: shape(2)
3864 integer(IK) , intent(in), optional :: nrow, ncol
3865 integer(IK) , intent(in), optional :: roff, coff, doff
3866 type(uppLowDia_type) , intent(in) :: subset
3867 complex(CKG) :: mat(shape(1), shape(2))
3868 end function
3869#endif
3870
3871 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3872
3873#if RK5_ENABLED
3874 PURE module function getMatInitULD_D2001_RK5(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3875#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3876 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_RK5
3877#endif
3878 use pm_kind, only: RKG => RK5
3879 real(RKG) , intent(in) :: vupp, vlow
3880 real(RKG) , intent(in), contiguous :: vdia(:)
3881 integer(IK) , intent(in) :: shape(2)
3882 integer(IK) , intent(in), optional :: nrow, ncol
3883 integer(IK) , intent(in), optional :: roff, coff, doff
3884 type(uppLowDia_type) , intent(in) :: subset
3885 real(RKG) :: mat(shape(1), shape(2))
3886 end function
3887#endif
3888
3889#if RK4_ENABLED
3890 PURE module function getMatInitULD_D2001_RK4(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3891#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3892 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_RK4
3893#endif
3894 use pm_kind, only: RKG => RK4
3895 real(RKG) , intent(in) :: vupp, vlow
3896 real(RKG) , intent(in), contiguous :: vdia(:)
3897 integer(IK) , intent(in) :: shape(2)
3898 integer(IK) , intent(in), optional :: nrow, ncol
3899 integer(IK) , intent(in), optional :: roff, coff, doff
3900 type(uppLowDia_type) , intent(in) :: subset
3901 real(RKG) :: mat(shape(1), shape(2))
3902 end function
3903#endif
3904
3905#if RK3_ENABLED
3906 PURE module function getMatInitULD_D2001_RK3(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3907#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3908 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_RK3
3909#endif
3910 use pm_kind, only: RKG => RK3
3911 real(RKG) , intent(in) :: vupp, vlow
3912 real(RKG) , intent(in), contiguous :: vdia(:)
3913 integer(IK) , intent(in) :: shape(2)
3914 integer(IK) , intent(in), optional :: nrow, ncol
3915 integer(IK) , intent(in), optional :: roff, coff, doff
3916 type(uppLowDia_type) , intent(in) :: subset
3917 real(RKG) :: mat(shape(1), shape(2))
3918 end function
3919#endif
3920
3921#if RK2_ENABLED
3922 PURE module function getMatInitULD_D2001_RK2(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3923#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3924 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_RK2
3925#endif
3926 use pm_kind, only: RKG => RK2
3927 real(RKG) , intent(in) :: vupp, vlow
3928 real(RKG) , intent(in), contiguous :: vdia(:)
3929 integer(IK) , intent(in) :: shape(2)
3930 integer(IK) , intent(in), optional :: nrow, ncol
3931 integer(IK) , intent(in), optional :: roff, coff, doff
3932 type(uppLowDia_type) , intent(in) :: subset
3933 real(RKG) :: mat(shape(1), shape(2))
3934 end function
3935#endif
3936
3937#if RK1_ENABLED
3938 PURE module function getMatInitULD_D2001_RK1(shape, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff) result(mat)
3939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3940 !DEC$ ATTRIBUTES DLLEXPORT :: getMatInitULD_D2001_RK1
3941#endif
3942 use pm_kind, only: RKG => RK1
3943 real(RKG) , intent(in) :: vupp, vlow
3944 real(RKG) , intent(in), contiguous :: vdia(:)
3945 integer(IK) , intent(in) :: shape(2)
3946 integer(IK) , intent(in), optional :: nrow, ncol
3947 integer(IK) , intent(in), optional :: roff, coff, doff
3948 type(uppLowDia_type) , intent(in) :: subset
3949 real(RKG) :: mat(shape(1), shape(2))
3950 end function
3951#endif
3952
3953 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3954
3955 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3956 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3957 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3958
3959 end interface
3960
3961!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3962
4136
4137 ! EXP_XLX
4138
4139 interface setMatInit
4140
4141 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4142 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4143 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4144
4145 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4146
4147#if SK5_ENABLED
4148 PURE module subroutine setMatInit_EXP_XLX_D2X0X_SK5(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4149#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4150 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_SK5
4151#endif
4152 use pm_kind, only: SKG => SK5
4153 integer(IK) , intent(in) , optional :: doff
4154 integer(IK) , intent(in) :: nrow, ncol
4155 integer(IK) , intent(in) :: roff, coff
4156 type(low_type) , intent(in) :: subset
4157 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4158 character(*,SKG) , intent(in) :: vlow
4159 end subroutine
4160#endif
4161
4162#if SK4_ENABLED
4163 PURE module subroutine setMatInit_EXP_XLX_D2X0X_SK4(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4164#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4165 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_SK4
4166#endif
4167 use pm_kind, only: SKG => SK4
4168 integer(IK) , intent(in) , optional :: doff
4169 integer(IK) , intent(in) :: nrow, ncol
4170 integer(IK) , intent(in) :: roff, coff
4171 type(low_type) , intent(in) :: subset
4172 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4173 character(*,SKG) , intent(in) :: vlow
4174 end subroutine
4175#endif
4176
4177#if SK3_ENABLED
4178 PURE module subroutine setMatInit_EXP_XLX_D2X0X_SK3(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4179#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4180 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_SK3
4181#endif
4182 use pm_kind, only: SKG => SK3
4183 integer(IK) , intent(in) , optional :: doff
4184 integer(IK) , intent(in) :: nrow, ncol
4185 integer(IK) , intent(in) :: roff, coff
4186 type(low_type) , intent(in) :: subset
4187 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4188 character(*,SKG) , intent(in) :: vlow
4189 end subroutine
4190#endif
4191
4192#if SK2_ENABLED
4193 PURE module subroutine setMatInit_EXP_XLX_D2X0X_SK2(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4194#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4195 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_SK2
4196#endif
4197 use pm_kind, only: SKG => SK2
4198 integer(IK) , intent(in) , optional :: doff
4199 integer(IK) , intent(in) :: nrow, ncol
4200 integer(IK) , intent(in) :: roff, coff
4201 type(low_type) , intent(in) :: subset
4202 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4203 character(*,SKG) , intent(in) :: vlow
4204 end subroutine
4205#endif
4206
4207#if SK1_ENABLED
4208 PURE module subroutine setMatInit_EXP_XLX_D2X0X_SK1(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4209#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4210 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_SK1
4211#endif
4212 use pm_kind, only: SKG => SK1
4213 integer(IK) , intent(in) , optional :: doff
4214 integer(IK) , intent(in) :: nrow, ncol
4215 integer(IK) , intent(in) :: roff, coff
4216 type(low_type) , intent(in) :: subset
4217 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4218 character(*,SKG) , intent(in) :: vlow
4219 end subroutine
4220#endif
4221
4222 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4223
4224#if IK5_ENABLED
4225 PURE module subroutine setMatInit_EXP_XLX_D2X0X_IK5(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4226#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4227 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_IK5
4228#endif
4229 use pm_kind, only: IKG => IK5
4230 integer(IK) , intent(in) , optional :: doff
4231 integer(IK) , intent(in) :: nrow, ncol
4232 integer(IK) , intent(in) :: roff, coff
4233 type(low_type) , intent(in) :: subset
4234 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4235 integer(IKG) , intent(in) :: vlow
4236 end subroutine
4237#endif
4238
4239#if IK4_ENABLED
4240 PURE module subroutine setMatInit_EXP_XLX_D2X0X_IK4(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4241#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4242 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_IK4
4243#endif
4244 use pm_kind, only: IKG => IK4
4245 integer(IK) , intent(in) , optional :: doff
4246 integer(IK) , intent(in) :: nrow, ncol
4247 integer(IK) , intent(in) :: roff, coff
4248 type(low_type) , intent(in) :: subset
4249 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4250 integer(IKG) , intent(in) :: vlow
4251 end subroutine
4252#endif
4253
4254#if IK3_ENABLED
4255 PURE module subroutine setMatInit_EXP_XLX_D2X0X_IK3(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4256#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4257 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_IK3
4258#endif
4259 use pm_kind, only: IKG => IK3
4260 integer(IK) , intent(in) , optional :: doff
4261 integer(IK) , intent(in) :: nrow, ncol
4262 integer(IK) , intent(in) :: roff, coff
4263 type(low_type) , intent(in) :: subset
4264 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4265 integer(IKG) , intent(in) :: vlow
4266 end subroutine
4267#endif
4268
4269#if IK2_ENABLED
4270 PURE module subroutine setMatInit_EXP_XLX_D2X0X_IK2(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4271#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4272 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_IK2
4273#endif
4274 use pm_kind, only: IKG => IK2
4275 integer(IK) , intent(in) , optional :: doff
4276 integer(IK) , intent(in) :: nrow, ncol
4277 integer(IK) , intent(in) :: roff, coff
4278 type(low_type) , intent(in) :: subset
4279 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4280 integer(IKG) , intent(in) :: vlow
4281 end subroutine
4282#endif
4283
4284#if IK1_ENABLED
4285 PURE module subroutine setMatInit_EXP_XLX_D2X0X_IK1(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4286#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4287 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_IK1
4288#endif
4289 use pm_kind, only: IKG => IK1
4290 integer(IK) , intent(in) , optional :: doff
4291 integer(IK) , intent(in) :: nrow, ncol
4292 integer(IK) , intent(in) :: roff, coff
4293 type(low_type) , intent(in) :: subset
4294 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4295 integer(IKG) , intent(in) :: vlow
4296 end subroutine
4297#endif
4298
4299 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4300
4301#if LK5_ENABLED
4302 PURE module subroutine setMatInit_EXP_XLX_D2X0X_LK5(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4303#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4304 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_LK5
4305#endif
4306 use pm_kind, only: LKG => LK5
4307 integer(IK) , intent(in) , optional :: doff
4308 integer(IK) , intent(in) :: nrow, ncol
4309 integer(IK) , intent(in) :: roff, coff
4310 type(low_type) , intent(in) :: subset
4311 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4312 logical(LKG) , intent(in) :: vlow
4313 end subroutine
4314#endif
4315
4316#if LK4_ENABLED
4317 PURE module subroutine setMatInit_EXP_XLX_D2X0X_LK4(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4318#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4319 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_LK4
4320#endif
4321 use pm_kind, only: LKG => LK4
4322 integer(IK) , intent(in) , optional :: doff
4323 integer(IK) , intent(in) :: nrow, ncol
4324 integer(IK) , intent(in) :: roff, coff
4325 type(low_type) , intent(in) :: subset
4326 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4327 logical(LKG) , intent(in) :: vlow
4328 end subroutine
4329#endif
4330
4331#if LK3_ENABLED
4332 PURE module subroutine setMatInit_EXP_XLX_D2X0X_LK3(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4333#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4334 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_LK3
4335#endif
4336 use pm_kind, only: LKG => LK3
4337 integer(IK) , intent(in) , optional :: doff
4338 integer(IK) , intent(in) :: nrow, ncol
4339 integer(IK) , intent(in) :: roff, coff
4340 type(low_type) , intent(in) :: subset
4341 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4342 logical(LKG) , intent(in) :: vlow
4343 end subroutine
4344#endif
4345
4346#if LK2_ENABLED
4347 PURE module subroutine setMatInit_EXP_XLX_D2X0X_LK2(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4348#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4349 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_LK2
4350#endif
4351 use pm_kind, only: LKG => LK2
4352 integer(IK) , intent(in) , optional :: doff
4353 integer(IK) , intent(in) :: nrow, ncol
4354 integer(IK) , intent(in) :: roff, coff
4355 type(low_type) , intent(in) :: subset
4356 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4357 logical(LKG) , intent(in) :: vlow
4358 end subroutine
4359#endif
4360
4361#if LK1_ENABLED
4362 PURE module subroutine setMatInit_EXP_XLX_D2X0X_LK1(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4363#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4364 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_LK1
4365#endif
4366 use pm_kind, only: LKG => LK1
4367 integer(IK) , intent(in) , optional :: doff
4368 integer(IK) , intent(in) :: nrow, ncol
4369 integer(IK) , intent(in) :: roff, coff
4370 type(low_type) , intent(in) :: subset
4371 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4372 logical(LKG) , intent(in) :: vlow
4373 end subroutine
4374#endif
4375
4376 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4377
4378#if CK5_ENABLED
4379 PURE module subroutine setMatInit_EXP_XLX_D2X0X_CK5(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4380#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4381 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_CK5
4382#endif
4383 use pm_kind, only: CKG => CK5
4384 integer(IK) , intent(in) , optional :: doff
4385 integer(IK) , intent(in) :: nrow, ncol
4386 integer(IK) , intent(in) :: roff, coff
4387 type(low_type) , intent(in) :: subset
4388 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4389 complex(CKG) , intent(in) :: vlow
4390 end subroutine
4391#endif
4392
4393#if CK4_ENABLED
4394 PURE module subroutine setMatInit_EXP_XLX_D2X0X_CK4(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4395#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4396 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_CK4
4397#endif
4398 use pm_kind, only: CKG => CK4
4399 integer(IK) , intent(in) , optional :: doff
4400 integer(IK) , intent(in) :: nrow, ncol
4401 integer(IK) , intent(in) :: roff, coff
4402 type(low_type) , intent(in) :: subset
4403 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4404 complex(CKG) , intent(in) :: vlow
4405 end subroutine
4406#endif
4407
4408#if CK3_ENABLED
4409 PURE module subroutine setMatInit_EXP_XLX_D2X0X_CK3(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4410#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4411 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_CK3
4412#endif
4413 use pm_kind, only: CKG => CK3
4414 integer(IK) , intent(in) , optional :: doff
4415 integer(IK) , intent(in) :: nrow, ncol
4416 integer(IK) , intent(in) :: roff, coff
4417 type(low_type) , intent(in) :: subset
4418 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4419 complex(CKG) , intent(in) :: vlow
4420 end subroutine
4421#endif
4422
4423#if CK2_ENABLED
4424 PURE module subroutine setMatInit_EXP_XLX_D2X0X_CK2(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4425#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4426 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_CK2
4427#endif
4428 use pm_kind, only: CKG => CK2
4429 integer(IK) , intent(in) , optional :: doff
4430 integer(IK) , intent(in) :: nrow, ncol
4431 integer(IK) , intent(in) :: roff, coff
4432 type(low_type) , intent(in) :: subset
4433 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4434 complex(CKG) , intent(in) :: vlow
4435 end subroutine
4436#endif
4437
4438#if CK1_ENABLED
4439 PURE module subroutine setMatInit_EXP_XLX_D2X0X_CK1(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4440#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4441 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_CK1
4442#endif
4443 use pm_kind, only: CKG => CK1
4444 integer(IK) , intent(in) , optional :: doff
4445 integer(IK) , intent(in) :: nrow, ncol
4446 integer(IK) , intent(in) :: roff, coff
4447 type(low_type) , intent(in) :: subset
4448 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4449 complex(CKG) , intent(in) :: vlow
4450 end subroutine
4451#endif
4452
4453 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4454
4455#if RK5_ENABLED
4456 PURE module subroutine setMatInit_EXP_XLX_D2X0X_RK5(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4457#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4458 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_RK5
4459#endif
4460 use pm_kind, only: RKG => RK5
4461 integer(IK) , intent(in) , optional :: doff
4462 integer(IK) , intent(in) :: nrow, ncol
4463 integer(IK) , intent(in) :: roff, coff
4464 type(low_type) , intent(in) :: subset
4465 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4466 real(RKG) , intent(in) :: vlow
4467 end subroutine
4468#endif
4469
4470#if RK4_ENABLED
4471 PURE module subroutine setMatInit_EXP_XLX_D2X0X_RK4(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4472#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4473 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_RK4
4474#endif
4475 use pm_kind, only: RKG => RK4
4476 integer(IK) , intent(in) , optional :: doff
4477 integer(IK) , intent(in) :: nrow, ncol
4478 integer(IK) , intent(in) :: roff, coff
4479 type(low_type) , intent(in) :: subset
4480 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4481 real(RKG) , intent(in) :: vlow
4482 end subroutine
4483#endif
4484
4485#if RK3_ENABLED
4486 PURE module subroutine setMatInit_EXP_XLX_D2X0X_RK3(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4487#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4488 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_RK3
4489#endif
4490 use pm_kind, only: RKG => RK3
4491 integer(IK) , intent(in) , optional :: doff
4492 integer(IK) , intent(in) :: nrow, ncol
4493 integer(IK) , intent(in) :: roff, coff
4494 type(low_type) , intent(in) :: subset
4495 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4496 real(RKG) , intent(in) :: vlow
4497 end subroutine
4498#endif
4499
4500#if RK2_ENABLED
4501 PURE module subroutine setMatInit_EXP_XLX_D2X0X_RK2(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4502#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4503 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_RK2
4504#endif
4505 use pm_kind, only: RKG => RK2
4506 integer(IK) , intent(in) , optional :: doff
4507 integer(IK) , intent(in) :: nrow, ncol
4508 integer(IK) , intent(in) :: roff, coff
4509 type(low_type) , intent(in) :: subset
4510 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4511 real(RKG) , intent(in) :: vlow
4512 end subroutine
4513#endif
4514
4515#if RK1_ENABLED
4516 PURE module subroutine setMatInit_EXP_XLX_D2X0X_RK1(mat, subset, vlow, nrow, ncol, roff, coff, doff)
4517#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4518 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLX_D2X0X_RK1
4519#endif
4520 use pm_kind, only: RKG => RK1
4521 integer(IK) , intent(in) , optional :: doff
4522 integer(IK) , intent(in) :: nrow, ncol
4523 integer(IK) , intent(in) :: roff, coff
4524 type(low_type) , intent(in) :: subset
4525 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4526 real(RKG) , intent(in) :: vlow
4527 end subroutine
4528#endif
4529
4530 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4531
4532 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4533 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4534 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4535
4536 end interface
4537
4538 ! EXP_UXX
4539
4540 interface setMatInit
4541
4542 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4543 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4544 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4545
4546 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4547
4548#if SK5_ENABLED
4549 PURE module subroutine setMatInit_EXP_UXX_D20XX_SK5(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4550#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4551 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_SK5
4552#endif
4553 use pm_kind, only: SKG => SK5
4554 integer(IK) , intent(in) , optional :: doff
4555 integer(IK) , intent(in) :: nrow, ncol
4556 integer(IK) , intent(in) :: roff, coff
4557 type(upp_type) , intent(in) :: subset
4558 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4559 character(*,SKG) , intent(in) :: vupp
4560 end subroutine
4561#endif
4562
4563#if SK4_ENABLED
4564 PURE module subroutine setMatInit_EXP_UXX_D20XX_SK4(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4565#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4566 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_SK4
4567#endif
4568 use pm_kind, only: SKG => SK4
4569 integer(IK) , intent(in) , optional :: doff
4570 integer(IK) , intent(in) :: nrow, ncol
4571 integer(IK) , intent(in) :: roff, coff
4572 type(upp_type) , intent(in) :: subset
4573 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4574 character(*,SKG) , intent(in) :: vupp
4575 end subroutine
4576#endif
4577
4578#if SK3_ENABLED
4579 PURE module subroutine setMatInit_EXP_UXX_D20XX_SK3(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4580#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4581 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_SK3
4582#endif
4583 use pm_kind, only: SKG => SK3
4584 integer(IK) , intent(in) , optional :: doff
4585 integer(IK) , intent(in) :: nrow, ncol
4586 integer(IK) , intent(in) :: roff, coff
4587 type(upp_type) , intent(in) :: subset
4588 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4589 character(*,SKG) , intent(in) :: vupp
4590 end subroutine
4591#endif
4592
4593#if SK2_ENABLED
4594 PURE module subroutine setMatInit_EXP_UXX_D20XX_SK2(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4595#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4596 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_SK2
4597#endif
4598 use pm_kind, only: SKG => SK2
4599 integer(IK) , intent(in) , optional :: doff
4600 integer(IK) , intent(in) :: nrow, ncol
4601 integer(IK) , intent(in) :: roff, coff
4602 type(upp_type) , intent(in) :: subset
4603 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4604 character(*,SKG) , intent(in) :: vupp
4605 end subroutine
4606#endif
4607
4608#if SK1_ENABLED
4609 PURE module subroutine setMatInit_EXP_UXX_D20XX_SK1(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4610#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4611 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_SK1
4612#endif
4613 use pm_kind, only: SKG => SK1
4614 integer(IK) , intent(in) , optional :: doff
4615 integer(IK) , intent(in) :: nrow, ncol
4616 integer(IK) , intent(in) :: roff, coff
4617 type(upp_type) , intent(in) :: subset
4618 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4619 character(*,SKG) , intent(in) :: vupp
4620 end subroutine
4621#endif
4622
4623 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4624
4625#if IK5_ENABLED
4626 PURE module subroutine setMatInit_EXP_UXX_D20XX_IK5(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4627#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4628 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_IK5
4629#endif
4630 use pm_kind, only: IKG => IK5
4631 integer(IK) , intent(in) , optional :: doff
4632 integer(IK) , intent(in) :: nrow, ncol
4633 integer(IK) , intent(in) :: roff, coff
4634 type(upp_type) , intent(in) :: subset
4635 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4636 integer(IKG) , intent(in) :: vupp
4637 end subroutine
4638#endif
4639
4640#if IK4_ENABLED
4641 PURE module subroutine setMatInit_EXP_UXX_D20XX_IK4(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4642#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4643 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_IK4
4644#endif
4645 use pm_kind, only: IKG => IK4
4646 integer(IK) , intent(in) , optional :: doff
4647 integer(IK) , intent(in) :: nrow, ncol
4648 integer(IK) , intent(in) :: roff, coff
4649 type(upp_type) , intent(in) :: subset
4650 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4651 integer(IKG) , intent(in) :: vupp
4652 end subroutine
4653#endif
4654
4655#if IK3_ENABLED
4656 PURE module subroutine setMatInit_EXP_UXX_D20XX_IK3(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4657#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4658 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_IK3
4659#endif
4660 use pm_kind, only: IKG => IK3
4661 integer(IK) , intent(in) , optional :: doff
4662 integer(IK) , intent(in) :: nrow, ncol
4663 integer(IK) , intent(in) :: roff, coff
4664 type(upp_type) , intent(in) :: subset
4665 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4666 integer(IKG) , intent(in) :: vupp
4667 end subroutine
4668#endif
4669
4670#if IK2_ENABLED
4671 PURE module subroutine setMatInit_EXP_UXX_D20XX_IK2(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4672#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4673 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_IK2
4674#endif
4675 use pm_kind, only: IKG => IK2
4676 integer(IK) , intent(in) , optional :: doff
4677 integer(IK) , intent(in) :: nrow, ncol
4678 integer(IK) , intent(in) :: roff, coff
4679 type(upp_type) , intent(in) :: subset
4680 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4681 integer(IKG) , intent(in) :: vupp
4682 end subroutine
4683#endif
4684
4685#if IK1_ENABLED
4686 PURE module subroutine setMatInit_EXP_UXX_D20XX_IK1(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4687#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4688 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_IK1
4689#endif
4690 use pm_kind, only: IKG => IK1
4691 integer(IK) , intent(in) , optional :: doff
4692 integer(IK) , intent(in) :: nrow, ncol
4693 integer(IK) , intent(in) :: roff, coff
4694 type(upp_type) , intent(in) :: subset
4695 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4696 integer(IKG) , intent(in) :: vupp
4697 end subroutine
4698#endif
4699
4700 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4701
4702#if LK5_ENABLED
4703 PURE module subroutine setMatInit_EXP_UXX_D20XX_LK5(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4705 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_LK5
4706#endif
4707 use pm_kind, only: LKG => LK5
4708 integer(IK) , intent(in) , optional :: doff
4709 integer(IK) , intent(in) :: nrow, ncol
4710 integer(IK) , intent(in) :: roff, coff
4711 type(upp_type) , intent(in) :: subset
4712 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4713 logical(LKG) , intent(in) :: vupp
4714 end subroutine
4715#endif
4716
4717#if LK4_ENABLED
4718 PURE module subroutine setMatInit_EXP_UXX_D20XX_LK4(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4719#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4720 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_LK4
4721#endif
4722 use pm_kind, only: LKG => LK4
4723 integer(IK) , intent(in) , optional :: doff
4724 integer(IK) , intent(in) :: nrow, ncol
4725 integer(IK) , intent(in) :: roff, coff
4726 type(upp_type) , intent(in) :: subset
4727 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4728 logical(LKG) , intent(in) :: vupp
4729 end subroutine
4730#endif
4731
4732#if LK3_ENABLED
4733 PURE module subroutine setMatInit_EXP_UXX_D20XX_LK3(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4734#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4735 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_LK3
4736#endif
4737 use pm_kind, only: LKG => LK3
4738 integer(IK) , intent(in) , optional :: doff
4739 integer(IK) , intent(in) :: nrow, ncol
4740 integer(IK) , intent(in) :: roff, coff
4741 type(upp_type) , intent(in) :: subset
4742 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4743 logical(LKG) , intent(in) :: vupp
4744 end subroutine
4745#endif
4746
4747#if LK2_ENABLED
4748 PURE module subroutine setMatInit_EXP_UXX_D20XX_LK2(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4749#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4750 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_LK2
4751#endif
4752 use pm_kind, only: LKG => LK2
4753 integer(IK) , intent(in) , optional :: doff
4754 integer(IK) , intent(in) :: nrow, ncol
4755 integer(IK) , intent(in) :: roff, coff
4756 type(upp_type) , intent(in) :: subset
4757 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4758 logical(LKG) , intent(in) :: vupp
4759 end subroutine
4760#endif
4761
4762#if LK1_ENABLED
4763 PURE module subroutine setMatInit_EXP_UXX_D20XX_LK1(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4764#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4765 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_LK1
4766#endif
4767 use pm_kind, only: LKG => LK1
4768 integer(IK) , intent(in) , optional :: doff
4769 integer(IK) , intent(in) :: nrow, ncol
4770 integer(IK) , intent(in) :: roff, coff
4771 type(upp_type) , intent(in) :: subset
4772 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4773 logical(LKG) , intent(in) :: vupp
4774 end subroutine
4775#endif
4776
4777 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4778
4779#if CK5_ENABLED
4780 PURE module subroutine setMatInit_EXP_UXX_D20XX_CK5(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4781#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4782 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_CK5
4783#endif
4784 use pm_kind, only: CKG => CK5
4785 integer(IK) , intent(in) , optional :: doff
4786 integer(IK) , intent(in) :: nrow, ncol
4787 integer(IK) , intent(in) :: roff, coff
4788 type(upp_type) , intent(in) :: subset
4789 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4790 complex(CKG) , intent(in) :: vupp
4791 end subroutine
4792#endif
4793
4794#if CK4_ENABLED
4795 PURE module subroutine setMatInit_EXP_UXX_D20XX_CK4(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4796#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4797 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_CK4
4798#endif
4799 use pm_kind, only: CKG => CK4
4800 integer(IK) , intent(in) , optional :: doff
4801 integer(IK) , intent(in) :: nrow, ncol
4802 integer(IK) , intent(in) :: roff, coff
4803 type(upp_type) , intent(in) :: subset
4804 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4805 complex(CKG) , intent(in) :: vupp
4806 end subroutine
4807#endif
4808
4809#if CK3_ENABLED
4810 PURE module subroutine setMatInit_EXP_UXX_D20XX_CK3(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4811#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4812 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_CK3
4813#endif
4814 use pm_kind, only: CKG => CK3
4815 integer(IK) , intent(in) , optional :: doff
4816 integer(IK) , intent(in) :: nrow, ncol
4817 integer(IK) , intent(in) :: roff, coff
4818 type(upp_type) , intent(in) :: subset
4819 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4820 complex(CKG) , intent(in) :: vupp
4821 end subroutine
4822#endif
4823
4824#if CK2_ENABLED
4825 PURE module subroutine setMatInit_EXP_UXX_D20XX_CK2(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4826#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4827 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_CK2
4828#endif
4829 use pm_kind, only: CKG => CK2
4830 integer(IK) , intent(in) , optional :: doff
4831 integer(IK) , intent(in) :: nrow, ncol
4832 integer(IK) , intent(in) :: roff, coff
4833 type(upp_type) , intent(in) :: subset
4834 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4835 complex(CKG) , intent(in) :: vupp
4836 end subroutine
4837#endif
4838
4839#if CK1_ENABLED
4840 PURE module subroutine setMatInit_EXP_UXX_D20XX_CK1(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4841#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4842 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_CK1
4843#endif
4844 use pm_kind, only: CKG => CK1
4845 integer(IK) , intent(in) , optional :: doff
4846 integer(IK) , intent(in) :: nrow, ncol
4847 integer(IK) , intent(in) :: roff, coff
4848 type(upp_type) , intent(in) :: subset
4849 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4850 complex(CKG) , intent(in) :: vupp
4851 end subroutine
4852#endif
4853
4854 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4855
4856#if RK5_ENABLED
4857 PURE module subroutine setMatInit_EXP_UXX_D20XX_RK5(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4858#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4859 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_RK5
4860#endif
4861 use pm_kind, only: RKG => RK5
4862 integer(IK) , intent(in) , optional :: doff
4863 integer(IK) , intent(in) :: nrow, ncol
4864 integer(IK) , intent(in) :: roff, coff
4865 type(upp_type) , intent(in) :: subset
4866 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4867 real(RKG) , intent(in) :: vupp
4868 end subroutine
4869#endif
4870
4871#if RK4_ENABLED
4872 PURE module subroutine setMatInit_EXP_UXX_D20XX_RK4(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4873#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4874 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_RK4
4875#endif
4876 use pm_kind, only: RKG => RK4
4877 integer(IK) , intent(in) , optional :: doff
4878 integer(IK) , intent(in) :: nrow, ncol
4879 integer(IK) , intent(in) :: roff, coff
4880 type(upp_type) , intent(in) :: subset
4881 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4882 real(RKG) , intent(in) :: vupp
4883 end subroutine
4884#endif
4885
4886#if RK3_ENABLED
4887 PURE module subroutine setMatInit_EXP_UXX_D20XX_RK3(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4888#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4889 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_RK3
4890#endif
4891 use pm_kind, only: RKG => RK3
4892 integer(IK) , intent(in) , optional :: doff
4893 integer(IK) , intent(in) :: nrow, ncol
4894 integer(IK) , intent(in) :: roff, coff
4895 type(upp_type) , intent(in) :: subset
4896 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4897 real(RKG) , intent(in) :: vupp
4898 end subroutine
4899#endif
4900
4901#if RK2_ENABLED
4902 PURE module subroutine setMatInit_EXP_UXX_D20XX_RK2(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4903#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4904 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_RK2
4905#endif
4906 use pm_kind, only: RKG => RK2
4907 integer(IK) , intent(in) , optional :: doff
4908 integer(IK) , intent(in) :: nrow, ncol
4909 integer(IK) , intent(in) :: roff, coff
4910 type(upp_type) , intent(in) :: subset
4911 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4912 real(RKG) , intent(in) :: vupp
4913 end subroutine
4914#endif
4915
4916#if RK1_ENABLED
4917 PURE module subroutine setMatInit_EXP_UXX_D20XX_RK1(mat, subset, vupp, nrow, ncol, roff, coff, doff)
4918#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4919 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXX_D20XX_RK1
4920#endif
4921 use pm_kind, only: RKG => RK1
4922 integer(IK) , intent(in) , optional :: doff
4923 integer(IK) , intent(in) :: nrow, ncol
4924 integer(IK) , intent(in) :: roff, coff
4925 type(upp_type) , intent(in) :: subset
4926 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
4927 real(RKG) , intent(in) :: vupp
4928 end subroutine
4929#endif
4930
4931 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4932
4933 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4934 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4935 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4936
4937 end interface
4938
4939 ! EXP_XXD
4940
4941 interface setMatInit
4942
4943 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4944 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4945 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4946
4947 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4948
4949#if SK5_ENABLED
4950 PURE module subroutine setMatInit_EXP_XXD_D2XXF_SK5(mat, subset, vdia, roff, coff)
4951#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4952 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_SK5
4953#endif
4954 use pm_kind, only: SKG => SK5
4955 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
4956 character(*,SKG) , intent(in) :: vdia
4957 integer(IK) , intent(in) :: roff, coff
4958 type(dia_type) , intent(in) :: subset
4959 end subroutine
4960#endif
4961
4962#if SK4_ENABLED
4963 PURE module subroutine setMatInit_EXP_XXD_D2XXF_SK4(mat, subset, vdia, roff, coff)
4964#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4965 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_SK4
4966#endif
4967 use pm_kind, only: SKG => SK4
4968 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
4969 character(*,SKG) , intent(in) :: vdia
4970 integer(IK) , intent(in) :: roff, coff
4971 type(dia_type) , intent(in) :: subset
4972 end subroutine
4973#endif
4974
4975#if SK3_ENABLED
4976 PURE module subroutine setMatInit_EXP_XXD_D2XXF_SK3(mat, subset, vdia, roff, coff)
4977#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4978 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_SK3
4979#endif
4980 use pm_kind, only: SKG => SK3
4981 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
4982 character(*,SKG) , intent(in) :: vdia
4983 integer(IK) , intent(in) :: roff, coff
4984 type(dia_type) , intent(in) :: subset
4985 end subroutine
4986#endif
4987
4988#if SK2_ENABLED
4989 PURE module subroutine setMatInit_EXP_XXD_D2XXF_SK2(mat, subset, vdia, roff, coff)
4990#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4991 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_SK2
4992#endif
4993 use pm_kind, only: SKG => SK2
4994 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
4995 character(*,SKG) , intent(in) :: vdia
4996 integer(IK) , intent(in) :: roff, coff
4997 type(dia_type) , intent(in) :: subset
4998 end subroutine
4999#endif
5000
5001#if SK1_ENABLED
5002 PURE module subroutine setMatInit_EXP_XXD_D2XXF_SK1(mat, subset, vdia, roff, coff)
5003#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5004 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_SK1
5005#endif
5006 use pm_kind, only: SKG => SK1
5007 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5008 character(*,SKG) , intent(in) :: vdia
5009 integer(IK) , intent(in) :: roff, coff
5010 type(dia_type) , intent(in) :: subset
5011 end subroutine
5012#endif
5013
5014 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5015
5016#if IK5_ENABLED
5017 PURE module subroutine setMatInit_EXP_XXD_D2XXF_IK5(mat, subset, vdia, roff, coff)
5018#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5019 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_IK5
5020#endif
5021 use pm_kind, only: IKG => IK5
5022 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5023 integer(IKG) , intent(in) :: vdia
5024 integer(IK) , intent(in) :: roff, coff
5025 type(dia_type) , intent(in) :: subset
5026 end subroutine
5027#endif
5028
5029#if IK4_ENABLED
5030 PURE module subroutine setMatInit_EXP_XXD_D2XXF_IK4(mat, subset, vdia, roff, coff)
5031#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5032 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_IK4
5033#endif
5034 use pm_kind, only: IKG => IK4
5035 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5036 integer(IKG) , intent(in) :: vdia
5037 integer(IK) , intent(in) :: roff, coff
5038 type(dia_type) , intent(in) :: subset
5039 end subroutine
5040#endif
5041
5042#if IK3_ENABLED
5043 PURE module subroutine setMatInit_EXP_XXD_D2XXF_IK3(mat, subset, vdia, roff, coff)
5044#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5045 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_IK3
5046#endif
5047 use pm_kind, only: IKG => IK3
5048 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5049 integer(IKG) , intent(in) :: vdia
5050 integer(IK) , intent(in) :: roff, coff
5051 type(dia_type) , intent(in) :: subset
5052 end subroutine
5053#endif
5054
5055#if IK2_ENABLED
5056 PURE module subroutine setMatInit_EXP_XXD_D2XXF_IK2(mat, subset, vdia, roff, coff)
5057#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5058 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_IK2
5059#endif
5060 use pm_kind, only: IKG => IK2
5061 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5062 integer(IKG) , intent(in) :: vdia
5063 integer(IK) , intent(in) :: roff, coff
5064 type(dia_type) , intent(in) :: subset
5065 end subroutine
5066#endif
5067
5068#if IK1_ENABLED
5069 PURE module subroutine setMatInit_EXP_XXD_D2XXF_IK1(mat, subset, vdia, roff, coff)
5070#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5071 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_IK1
5072#endif
5073 use pm_kind, only: IKG => IK1
5074 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5075 integer(IKG) , intent(in) :: vdia
5076 integer(IK) , intent(in) :: roff, coff
5077 type(dia_type) , intent(in) :: subset
5078 end subroutine
5079#endif
5080
5081 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5082
5083#if LK5_ENABLED
5084 PURE module subroutine setMatInit_EXP_XXD_D2XXF_LK5(mat, subset, vdia, roff, coff)
5085#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5086 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_LK5
5087#endif
5088 use pm_kind, only: LKG => LK5
5089 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5090 logical(LKG) , intent(in) :: vdia
5091 integer(IK) , intent(in) :: roff, coff
5092 type(dia_type) , intent(in) :: subset
5093 end subroutine
5094#endif
5095
5096#if LK4_ENABLED
5097 PURE module subroutine setMatInit_EXP_XXD_D2XXF_LK4(mat, subset, vdia, roff, coff)
5098#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5099 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_LK4
5100#endif
5101 use pm_kind, only: LKG => LK4
5102 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5103 logical(LKG) , intent(in) :: vdia
5104 integer(IK) , intent(in) :: roff, coff
5105 type(dia_type) , intent(in) :: subset
5106 end subroutine
5107#endif
5108
5109#if LK3_ENABLED
5110 PURE module subroutine setMatInit_EXP_XXD_D2XXF_LK3(mat, subset, vdia, roff, coff)
5111#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5112 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_LK3
5113#endif
5114 use pm_kind, only: LKG => LK3
5115 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5116 logical(LKG) , intent(in) :: vdia
5117 integer(IK) , intent(in) :: roff, coff
5118 type(dia_type) , intent(in) :: subset
5119 end subroutine
5120#endif
5121
5122#if LK2_ENABLED
5123 PURE module subroutine setMatInit_EXP_XXD_D2XXF_LK2(mat, subset, vdia, roff, coff)
5124#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5125 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_LK2
5126#endif
5127 use pm_kind, only: LKG => LK2
5128 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5129 logical(LKG) , intent(in) :: vdia
5130 integer(IK) , intent(in) :: roff, coff
5131 type(dia_type) , intent(in) :: subset
5132 end subroutine
5133#endif
5134
5135#if LK1_ENABLED
5136 PURE module subroutine setMatInit_EXP_XXD_D2XXF_LK1(mat, subset, vdia, roff, coff)
5137#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5138 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_LK1
5139#endif
5140 use pm_kind, only: LKG => LK1
5141 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5142 logical(LKG) , intent(in) :: vdia
5143 integer(IK) , intent(in) :: roff, coff
5144 type(dia_type) , intent(in) :: subset
5145 end subroutine
5146#endif
5147
5148 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5149
5150#if CK5_ENABLED
5151 PURE module subroutine setMatInit_EXP_XXD_D2XXF_CK5(mat, subset, vdia, roff, coff)
5152#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5153 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_CK5
5154#endif
5155 use pm_kind, only: CKG => CK5
5156 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5157 complex(CKG) , intent(in) :: vdia
5158 integer(IK) , intent(in) :: roff, coff
5159 type(dia_type) , intent(in) :: subset
5160 end subroutine
5161#endif
5162
5163#if CK4_ENABLED
5164 PURE module subroutine setMatInit_EXP_XXD_D2XXF_CK4(mat, subset, vdia, roff, coff)
5165#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5166 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_CK4
5167#endif
5168 use pm_kind, only: CKG => CK4
5169 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5170 complex(CKG) , intent(in) :: vdia
5171 integer(IK) , intent(in) :: roff, coff
5172 type(dia_type) , intent(in) :: subset
5173 end subroutine
5174#endif
5175
5176#if CK3_ENABLED
5177 PURE module subroutine setMatInit_EXP_XXD_D2XXF_CK3(mat, subset, vdia, roff, coff)
5178#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5179 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_CK3
5180#endif
5181 use pm_kind, only: CKG => CK3
5182 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5183 complex(CKG) , intent(in) :: vdia
5184 integer(IK) , intent(in) :: roff, coff
5185 type(dia_type) , intent(in) :: subset
5186 end subroutine
5187#endif
5188
5189#if CK2_ENABLED
5190 PURE module subroutine setMatInit_EXP_XXD_D2XXF_CK2(mat, subset, vdia, roff, coff)
5191#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5192 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_CK2
5193#endif
5194 use pm_kind, only: CKG => CK2
5195 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5196 complex(CKG) , intent(in) :: vdia
5197 integer(IK) , intent(in) :: roff, coff
5198 type(dia_type) , intent(in) :: subset
5199 end subroutine
5200#endif
5201
5202#if CK1_ENABLED
5203 PURE module subroutine setMatInit_EXP_XXD_D2XXF_CK1(mat, subset, vdia, roff, coff)
5204#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5205 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_CK1
5206#endif
5207 use pm_kind, only: CKG => CK1
5208 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5209 complex(CKG) , intent(in) :: vdia
5210 integer(IK) , intent(in) :: roff, coff
5211 type(dia_type) , intent(in) :: subset
5212 end subroutine
5213#endif
5214
5215 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5216
5217#if RK5_ENABLED
5218 PURE module subroutine setMatInit_EXP_XXD_D2XXF_RK5(mat, subset, vdia, roff, coff)
5219#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5220 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_RK5
5221#endif
5222 use pm_kind, only: RKG => RK5
5223 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5224 real(RKG) , intent(in) :: vdia
5225 integer(IK) , intent(in) :: roff, coff
5226 type(dia_type) , intent(in) :: subset
5227 end subroutine
5228#endif
5229
5230#if RK4_ENABLED
5231 PURE module subroutine setMatInit_EXP_XXD_D2XXF_RK4(mat, subset, vdia, roff, coff)
5232#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5233 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_RK4
5234#endif
5235 use pm_kind, only: RKG => RK4
5236 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5237 real(RKG) , intent(in) :: vdia
5238 integer(IK) , intent(in) :: roff, coff
5239 type(dia_type) , intent(in) :: subset
5240 end subroutine
5241#endif
5242
5243#if RK3_ENABLED
5244 PURE module subroutine setMatInit_EXP_XXD_D2XXF_RK3(mat, subset, vdia, roff, coff)
5245#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5246 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_RK3
5247#endif
5248 use pm_kind, only: RKG => RK3
5249 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5250 real(RKG) , intent(in) :: vdia
5251 integer(IK) , intent(in) :: roff, coff
5252 type(dia_type) , intent(in) :: subset
5253 end subroutine
5254#endif
5255
5256#if RK2_ENABLED
5257 PURE module subroutine setMatInit_EXP_XXD_D2XXF_RK2(mat, subset, vdia, roff, coff)
5258#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5259 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_RK2
5260#endif
5261 use pm_kind, only: RKG => RK2
5262 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5263 real(RKG) , intent(in) :: vdia
5264 integer(IK) , intent(in) :: roff, coff
5265 type(dia_type) , intent(in) :: subset
5266 end subroutine
5267#endif
5268
5269#if RK1_ENABLED
5270 PURE module subroutine setMatInit_EXP_XXD_D2XXF_RK1(mat, subset, vdia, roff, coff)
5271#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5272 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XXF_RK1
5273#endif
5274 use pm_kind, only: RKG => RK1
5275 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5276 real(RKG) , intent(in) :: vdia
5277 integer(IK) , intent(in) :: roff, coff
5278 type(dia_type) , intent(in) :: subset
5279 end subroutine
5280#endif
5281
5282 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5283
5284 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5285 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5286 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5287
5288 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5289
5290#if SK5_ENABLED
5291 PURE module subroutine setMatInit_EXP_XXD_D2XX0_SK5(mat, subset, vdia, ndia, roff, coff)
5292#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5293 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_SK5
5294#endif
5295 use pm_kind, only: SKG => SK5
5296 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5297 character(*,SKG) , intent(in) :: vdia
5298 integer(IK) , intent(in) :: ndia
5299 integer(IK) , intent(in) :: roff, coff
5300 type(dia_type) , intent(in) :: subset
5301 end subroutine
5302#endif
5303
5304#if SK4_ENABLED
5305 PURE module subroutine setMatInit_EXP_XXD_D2XX0_SK4(mat, subset, vdia, ndia, roff, coff)
5306#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5307 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_SK4
5308#endif
5309 use pm_kind, only: SKG => SK4
5310 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5311 character(*,SKG) , intent(in) :: vdia
5312 integer(IK) , intent(in) :: ndia
5313 integer(IK) , intent(in) :: roff, coff
5314 type(dia_type) , intent(in) :: subset
5315 end subroutine
5316#endif
5317
5318#if SK3_ENABLED
5319 PURE module subroutine setMatInit_EXP_XXD_D2XX0_SK3(mat, subset, vdia, ndia, roff, coff)
5320#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5321 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_SK3
5322#endif
5323 use pm_kind, only: SKG => SK3
5324 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5325 character(*,SKG) , intent(in) :: vdia
5326 integer(IK) , intent(in) :: ndia
5327 integer(IK) , intent(in) :: roff, coff
5328 type(dia_type) , intent(in) :: subset
5329 end subroutine
5330#endif
5331
5332#if SK2_ENABLED
5333 PURE module subroutine setMatInit_EXP_XXD_D2XX0_SK2(mat, subset, vdia, ndia, roff, coff)
5334#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5335 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_SK2
5336#endif
5337 use pm_kind, only: SKG => SK2
5338 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5339 character(*,SKG) , intent(in) :: vdia
5340 integer(IK) , intent(in) :: ndia
5341 integer(IK) , intent(in) :: roff, coff
5342 type(dia_type) , intent(in) :: subset
5343 end subroutine
5344#endif
5345
5346#if SK1_ENABLED
5347 PURE module subroutine setMatInit_EXP_XXD_D2XX0_SK1(mat, subset, vdia, ndia, roff, coff)
5348#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5349 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_SK1
5350#endif
5351 use pm_kind, only: SKG => SK1
5352 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5353 character(*,SKG) , intent(in) :: vdia
5354 integer(IK) , intent(in) :: ndia
5355 integer(IK) , intent(in) :: roff, coff
5356 type(dia_type) , intent(in) :: subset
5357 end subroutine
5358#endif
5359
5360 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5361
5362#if IK5_ENABLED
5363 PURE module subroutine setMatInit_EXP_XXD_D2XX0_IK5(mat, subset, vdia, ndia, roff, coff)
5364#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5365 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_IK5
5366#endif
5367 use pm_kind, only: IKG => IK5
5368 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5369 integer(IKG) , intent(in) :: vdia
5370 integer(IK) , intent(in) :: ndia
5371 integer(IK) , intent(in) :: roff, coff
5372 type(dia_type) , intent(in) :: subset
5373 end subroutine
5374#endif
5375
5376#if IK4_ENABLED
5377 PURE module subroutine setMatInit_EXP_XXD_D2XX0_IK4(mat, subset, vdia, ndia, roff, coff)
5378#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5379 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_IK4
5380#endif
5381 use pm_kind, only: IKG => IK4
5382 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5383 integer(IKG) , intent(in) :: vdia
5384 integer(IK) , intent(in) :: ndia
5385 integer(IK) , intent(in) :: roff, coff
5386 type(dia_type) , intent(in) :: subset
5387 end subroutine
5388#endif
5389
5390#if IK3_ENABLED
5391 PURE module subroutine setMatInit_EXP_XXD_D2XX0_IK3(mat, subset, vdia, ndia, roff, coff)
5392#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5393 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_IK3
5394#endif
5395 use pm_kind, only: IKG => IK3
5396 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5397 integer(IKG) , intent(in) :: vdia
5398 integer(IK) , intent(in) :: ndia
5399 integer(IK) , intent(in) :: roff, coff
5400 type(dia_type) , intent(in) :: subset
5401 end subroutine
5402#endif
5403
5404#if IK2_ENABLED
5405 PURE module subroutine setMatInit_EXP_XXD_D2XX0_IK2(mat, subset, vdia, ndia, roff, coff)
5406#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5407 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_IK2
5408#endif
5409 use pm_kind, only: IKG => IK2
5410 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5411 integer(IKG) , intent(in) :: vdia
5412 integer(IK) , intent(in) :: ndia
5413 integer(IK) , intent(in) :: roff, coff
5414 type(dia_type) , intent(in) :: subset
5415 end subroutine
5416#endif
5417
5418#if IK1_ENABLED
5419 PURE module subroutine setMatInit_EXP_XXD_D2XX0_IK1(mat, subset, vdia, ndia, roff, coff)
5420#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5421 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_IK1
5422#endif
5423 use pm_kind, only: IKG => IK1
5424 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5425 integer(IKG) , intent(in) :: vdia
5426 integer(IK) , intent(in) :: ndia
5427 integer(IK) , intent(in) :: roff, coff
5428 type(dia_type) , intent(in) :: subset
5429 end subroutine
5430#endif
5431
5432 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5433
5434#if LK5_ENABLED
5435 PURE module subroutine setMatInit_EXP_XXD_D2XX0_LK5(mat, subset, vdia, ndia, roff, coff)
5436#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5437 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_LK5
5438#endif
5439 use pm_kind, only: LKG => LK5
5440 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5441 logical(LKG) , intent(in) :: vdia
5442 integer(IK) , intent(in) :: ndia
5443 integer(IK) , intent(in) :: roff, coff
5444 type(dia_type) , intent(in) :: subset
5445 end subroutine
5446#endif
5447
5448#if LK4_ENABLED
5449 PURE module subroutine setMatInit_EXP_XXD_D2XX0_LK4(mat, subset, vdia, ndia, roff, coff)
5450#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5451 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_LK4
5452#endif
5453 use pm_kind, only: LKG => LK4
5454 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5455 logical(LKG) , intent(in) :: vdia
5456 integer(IK) , intent(in) :: ndia
5457 integer(IK) , intent(in) :: roff, coff
5458 type(dia_type) , intent(in) :: subset
5459 end subroutine
5460#endif
5461
5462#if LK3_ENABLED
5463 PURE module subroutine setMatInit_EXP_XXD_D2XX0_LK3(mat, subset, vdia, ndia, roff, coff)
5464#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5465 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_LK3
5466#endif
5467 use pm_kind, only: LKG => LK3
5468 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5469 logical(LKG) , intent(in) :: vdia
5470 integer(IK) , intent(in) :: ndia
5471 integer(IK) , intent(in) :: roff, coff
5472 type(dia_type) , intent(in) :: subset
5473 end subroutine
5474#endif
5475
5476#if LK2_ENABLED
5477 PURE module subroutine setMatInit_EXP_XXD_D2XX0_LK2(mat, subset, vdia, ndia, roff, coff)
5478#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5479 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_LK2
5480#endif
5481 use pm_kind, only: LKG => LK2
5482 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5483 logical(LKG) , intent(in) :: vdia
5484 integer(IK) , intent(in) :: ndia
5485 integer(IK) , intent(in) :: roff, coff
5486 type(dia_type) , intent(in) :: subset
5487 end subroutine
5488#endif
5489
5490#if LK1_ENABLED
5491 PURE module subroutine setMatInit_EXP_XXD_D2XX0_LK1(mat, subset, vdia, ndia, roff, coff)
5492#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5493 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_LK1
5494#endif
5495 use pm_kind, only: LKG => LK1
5496 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5497 logical(LKG) , intent(in) :: vdia
5498 integer(IK) , intent(in) :: ndia
5499 integer(IK) , intent(in) :: roff, coff
5500 type(dia_type) , intent(in) :: subset
5501 end subroutine
5502#endif
5503
5504 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5505
5506#if CK5_ENABLED
5507 PURE module subroutine setMatInit_EXP_XXD_D2XX0_CK5(mat, subset, vdia, ndia, roff, coff)
5508#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5509 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_CK5
5510#endif
5511 use pm_kind, only: CKG => CK5
5512 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5513 complex(CKG) , intent(in) :: vdia
5514 integer(IK) , intent(in) :: ndia
5515 integer(IK) , intent(in) :: roff, coff
5516 type(dia_type) , intent(in) :: subset
5517 end subroutine
5518#endif
5519
5520#if CK4_ENABLED
5521 PURE module subroutine setMatInit_EXP_XXD_D2XX0_CK4(mat, subset, vdia, ndia, roff, coff)
5522#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5523 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_CK4
5524#endif
5525 use pm_kind, only: CKG => CK4
5526 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5527 complex(CKG) , intent(in) :: vdia
5528 integer(IK) , intent(in) :: ndia
5529 integer(IK) , intent(in) :: roff, coff
5530 type(dia_type) , intent(in) :: subset
5531 end subroutine
5532#endif
5533
5534#if CK3_ENABLED
5535 PURE module subroutine setMatInit_EXP_XXD_D2XX0_CK3(mat, subset, vdia, ndia, roff, coff)
5536#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5537 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_CK3
5538#endif
5539 use pm_kind, only: CKG => CK3
5540 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5541 complex(CKG) , intent(in) :: vdia
5542 integer(IK) , intent(in) :: ndia
5543 integer(IK) , intent(in) :: roff, coff
5544 type(dia_type) , intent(in) :: subset
5545 end subroutine
5546#endif
5547
5548#if CK2_ENABLED
5549 PURE module subroutine setMatInit_EXP_XXD_D2XX0_CK2(mat, subset, vdia, ndia, roff, coff)
5550#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5551 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_CK2
5552#endif
5553 use pm_kind, only: CKG => CK2
5554 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5555 complex(CKG) , intent(in) :: vdia
5556 integer(IK) , intent(in) :: ndia
5557 integer(IK) , intent(in) :: roff, coff
5558 type(dia_type) , intent(in) :: subset
5559 end subroutine
5560#endif
5561
5562#if CK1_ENABLED
5563 PURE module subroutine setMatInit_EXP_XXD_D2XX0_CK1(mat, subset, vdia, ndia, roff, coff)
5564#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5565 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_CK1
5566#endif
5567 use pm_kind, only: CKG => CK1
5568 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5569 complex(CKG) , intent(in) :: vdia
5570 integer(IK) , intent(in) :: ndia
5571 integer(IK) , intent(in) :: roff, coff
5572 type(dia_type) , intent(in) :: subset
5573 end subroutine
5574#endif
5575
5576 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5577
5578#if RK5_ENABLED
5579 PURE module subroutine setMatInit_EXP_XXD_D2XX0_RK5(mat, subset, vdia, ndia, roff, coff)
5580#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5581 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_RK5
5582#endif
5583 use pm_kind, only: RKG => RK5
5584 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5585 real(RKG) , intent(in) :: vdia
5586 integer(IK) , intent(in) :: ndia
5587 integer(IK) , intent(in) :: roff, coff
5588 type(dia_type) , intent(in) :: subset
5589 end subroutine
5590#endif
5591
5592#if RK4_ENABLED
5593 PURE module subroutine setMatInit_EXP_XXD_D2XX0_RK4(mat, subset, vdia, ndia, roff, coff)
5594#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5595 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_RK4
5596#endif
5597 use pm_kind, only: RKG => RK4
5598 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5599 real(RKG) , intent(in) :: vdia
5600 integer(IK) , intent(in) :: ndia
5601 integer(IK) , intent(in) :: roff, coff
5602 type(dia_type) , intent(in) :: subset
5603 end subroutine
5604#endif
5605
5606#if RK3_ENABLED
5607 PURE module subroutine setMatInit_EXP_XXD_D2XX0_RK3(mat, subset, vdia, ndia, roff, coff)
5608#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5609 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_RK3
5610#endif
5611 use pm_kind, only: RKG => RK3
5612 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5613 real(RKG) , intent(in) :: vdia
5614 integer(IK) , intent(in) :: ndia
5615 integer(IK) , intent(in) :: roff, coff
5616 type(dia_type) , intent(in) :: subset
5617 end subroutine
5618#endif
5619
5620#if RK2_ENABLED
5621 PURE module subroutine setMatInit_EXP_XXD_D2XX0_RK2(mat, subset, vdia, ndia, roff, coff)
5622#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5623 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_RK2
5624#endif
5625 use pm_kind, only: RKG => RK2
5626 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5627 real(RKG) , intent(in) :: vdia
5628 integer(IK) , intent(in) :: ndia
5629 integer(IK) , intent(in) :: roff, coff
5630 type(dia_type) , intent(in) :: subset
5631 end subroutine
5632#endif
5633
5634#if RK1_ENABLED
5635 PURE module subroutine setMatInit_EXP_XXD_D2XX0_RK1(mat, subset, vdia, ndia, roff, coff)
5636#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5637 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX0_RK1
5638#endif
5639 use pm_kind, only: RKG => RK1
5640 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5641 real(RKG) , intent(in) :: vdia
5642 integer(IK) , intent(in) :: ndia
5643 integer(IK) , intent(in) :: roff, coff
5644 type(dia_type) , intent(in) :: subset
5645 end subroutine
5646#endif
5647
5648 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5649
5650 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5651 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5652 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5653
5654 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5655
5656#if SK5_ENABLED
5657 PURE module subroutine setMatInit_EXP_XXD_D2XX1_SK5(mat, subset, vdia, roff, coff)
5658#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5659 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_SK5
5660#endif
5661 use pm_kind, only: SKG => SK5
5662 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5663 character(*,SKG) , intent(in) , contiguous :: vdia(:)
5664 integer(IK) , intent(in) :: roff, coff
5665 type(dia_type) , intent(in) :: subset
5666 end subroutine
5667#endif
5668
5669#if SK4_ENABLED
5670 PURE module subroutine setMatInit_EXP_XXD_D2XX1_SK4(mat, subset, vdia, roff, coff)
5671#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5672 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_SK4
5673#endif
5674 use pm_kind, only: SKG => SK4
5675 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5676 character(*,SKG) , intent(in) , contiguous :: vdia(:)
5677 integer(IK) , intent(in) :: roff, coff
5678 type(dia_type) , intent(in) :: subset
5679 end subroutine
5680#endif
5681
5682#if SK3_ENABLED
5683 PURE module subroutine setMatInit_EXP_XXD_D2XX1_SK3(mat, subset, vdia, roff, coff)
5684#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5685 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_SK3
5686#endif
5687 use pm_kind, only: SKG => SK3
5688 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5689 character(*,SKG) , intent(in) , contiguous :: vdia(:)
5690 integer(IK) , intent(in) :: roff, coff
5691 type(dia_type) , intent(in) :: subset
5692 end subroutine
5693#endif
5694
5695#if SK2_ENABLED
5696 PURE module subroutine setMatInit_EXP_XXD_D2XX1_SK2(mat, subset, vdia, roff, coff)
5697#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5698 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_SK2
5699#endif
5700 use pm_kind, only: SKG => SK2
5701 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5702 character(*,SKG) , intent(in) , contiguous :: vdia(:)
5703 integer(IK) , intent(in) :: roff, coff
5704 type(dia_type) , intent(in) :: subset
5705 end subroutine
5706#endif
5707
5708#if SK1_ENABLED
5709 PURE module subroutine setMatInit_EXP_XXD_D2XX1_SK1(mat, subset, vdia, roff, coff)
5710#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5711 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_SK1
5712#endif
5713 use pm_kind, only: SKG => SK1
5714 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
5715 character(*,SKG) , intent(in) , contiguous :: vdia(:)
5716 integer(IK) , intent(in) :: roff, coff
5717 type(dia_type) , intent(in) :: subset
5718 end subroutine
5719#endif
5720
5721 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5722
5723#if IK5_ENABLED
5724 PURE module subroutine setMatInit_EXP_XXD_D2XX1_IK5(mat, subset, vdia, roff, coff)
5725#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5726 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_IK5
5727#endif
5728 use pm_kind, only: IKG => IK5
5729 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5730 integer(IKG) , intent(in) , contiguous :: vdia(:)
5731 integer(IK) , intent(in) :: roff, coff
5732 type(dia_type) , intent(in) :: subset
5733 end subroutine
5734#endif
5735
5736#if IK4_ENABLED
5737 PURE module subroutine setMatInit_EXP_XXD_D2XX1_IK4(mat, subset, vdia, roff, coff)
5738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5739 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_IK4
5740#endif
5741 use pm_kind, only: IKG => IK4
5742 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5743 integer(IKG) , intent(in) , contiguous :: vdia(:)
5744 integer(IK) , intent(in) :: roff, coff
5745 type(dia_type) , intent(in) :: subset
5746 end subroutine
5747#endif
5748
5749#if IK3_ENABLED
5750 PURE module subroutine setMatInit_EXP_XXD_D2XX1_IK3(mat, subset, vdia, roff, coff)
5751#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5752 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_IK3
5753#endif
5754 use pm_kind, only: IKG => IK3
5755 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5756 integer(IKG) , intent(in) , contiguous :: vdia(:)
5757 integer(IK) , intent(in) :: roff, coff
5758 type(dia_type) , intent(in) :: subset
5759 end subroutine
5760#endif
5761
5762#if IK2_ENABLED
5763 PURE module subroutine setMatInit_EXP_XXD_D2XX1_IK2(mat, subset, vdia, roff, coff)
5764#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5765 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_IK2
5766#endif
5767 use pm_kind, only: IKG => IK2
5768 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5769 integer(IKG) , intent(in) , contiguous :: vdia(:)
5770 integer(IK) , intent(in) :: roff, coff
5771 type(dia_type) , intent(in) :: subset
5772 end subroutine
5773#endif
5774
5775#if IK1_ENABLED
5776 PURE module subroutine setMatInit_EXP_XXD_D2XX1_IK1(mat, subset, vdia, roff, coff)
5777#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5778 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_IK1
5779#endif
5780 use pm_kind, only: IKG => IK1
5781 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
5782 integer(IKG) , intent(in) , contiguous :: vdia(:)
5783 integer(IK) , intent(in) :: roff, coff
5784 type(dia_type) , intent(in) :: subset
5785 end subroutine
5786#endif
5787
5788 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5789
5790#if LK5_ENABLED
5791 PURE module subroutine setMatInit_EXP_XXD_D2XX1_LK5(mat, subset, vdia, roff, coff)
5792#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5793 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_LK5
5794#endif
5795 use pm_kind, only: LKG => LK5
5796 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5797 logical(LKG) , intent(in) , contiguous :: vdia(:)
5798 integer(IK) , intent(in) :: roff, coff
5799 type(dia_type) , intent(in) :: subset
5800 end subroutine
5801#endif
5802
5803#if LK4_ENABLED
5804 PURE module subroutine setMatInit_EXP_XXD_D2XX1_LK4(mat, subset, vdia, roff, coff)
5805#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5806 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_LK4
5807#endif
5808 use pm_kind, only: LKG => LK4
5809 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5810 logical(LKG) , intent(in) , contiguous :: vdia(:)
5811 integer(IK) , intent(in) :: roff, coff
5812 type(dia_type) , intent(in) :: subset
5813 end subroutine
5814#endif
5815
5816#if LK3_ENABLED
5817 PURE module subroutine setMatInit_EXP_XXD_D2XX1_LK3(mat, subset, vdia, roff, coff)
5818#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5819 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_LK3
5820#endif
5821 use pm_kind, only: LKG => LK3
5822 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5823 logical(LKG) , intent(in) , contiguous :: vdia(:)
5824 integer(IK) , intent(in) :: roff, coff
5825 type(dia_type) , intent(in) :: subset
5826 end subroutine
5827#endif
5828
5829#if LK2_ENABLED
5830 PURE module subroutine setMatInit_EXP_XXD_D2XX1_LK2(mat, subset, vdia, roff, coff)
5831#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5832 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_LK2
5833#endif
5834 use pm_kind, only: LKG => LK2
5835 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5836 logical(LKG) , intent(in) , contiguous :: vdia(:)
5837 integer(IK) , intent(in) :: roff, coff
5838 type(dia_type) , intent(in) :: subset
5839 end subroutine
5840#endif
5841
5842#if LK1_ENABLED
5843 PURE module subroutine setMatInit_EXP_XXD_D2XX1_LK1(mat, subset, vdia, roff, coff)
5844#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5845 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_LK1
5846#endif
5847 use pm_kind, only: LKG => LK1
5848 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
5849 logical(LKG) , intent(in) , contiguous :: vdia(:)
5850 integer(IK) , intent(in) :: roff, coff
5851 type(dia_type) , intent(in) :: subset
5852 end subroutine
5853#endif
5854
5855 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5856
5857#if CK5_ENABLED
5858 PURE module subroutine setMatInit_EXP_XXD_D2XX1_CK5(mat, subset, vdia, roff, coff)
5859#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5860 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_CK5
5861#endif
5862 use pm_kind, only: CKG => CK5
5863 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5864 complex(CKG) , intent(in) , contiguous :: vdia(:)
5865 integer(IK) , intent(in) :: roff, coff
5866 type(dia_type) , intent(in) :: subset
5867 end subroutine
5868#endif
5869
5870#if CK4_ENABLED
5871 PURE module subroutine setMatInit_EXP_XXD_D2XX1_CK4(mat, subset, vdia, roff, coff)
5872#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5873 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_CK4
5874#endif
5875 use pm_kind, only: CKG => CK4
5876 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5877 complex(CKG) , intent(in) , contiguous :: vdia(:)
5878 integer(IK) , intent(in) :: roff, coff
5879 type(dia_type) , intent(in) :: subset
5880 end subroutine
5881#endif
5882
5883#if CK3_ENABLED
5884 PURE module subroutine setMatInit_EXP_XXD_D2XX1_CK3(mat, subset, vdia, roff, coff)
5885#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5886 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_CK3
5887#endif
5888 use pm_kind, only: CKG => CK3
5889 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5890 complex(CKG) , intent(in) , contiguous :: vdia(:)
5891 integer(IK) , intent(in) :: roff, coff
5892 type(dia_type) , intent(in) :: subset
5893 end subroutine
5894#endif
5895
5896#if CK2_ENABLED
5897 PURE module subroutine setMatInit_EXP_XXD_D2XX1_CK2(mat, subset, vdia, roff, coff)
5898#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5899 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_CK2
5900#endif
5901 use pm_kind, only: CKG => CK2
5902 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5903 complex(CKG) , intent(in) , contiguous :: vdia(:)
5904 integer(IK) , intent(in) :: roff, coff
5905 type(dia_type) , intent(in) :: subset
5906 end subroutine
5907#endif
5908
5909#if CK1_ENABLED
5910 PURE module subroutine setMatInit_EXP_XXD_D2XX1_CK1(mat, subset, vdia, roff, coff)
5911#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5912 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_CK1
5913#endif
5914 use pm_kind, only: CKG => CK1
5915 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
5916 complex(CKG) , intent(in) , contiguous :: vdia(:)
5917 integer(IK) , intent(in) :: roff, coff
5918 type(dia_type) , intent(in) :: subset
5919 end subroutine
5920#endif
5921
5922 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5923
5924#if RK5_ENABLED
5925 PURE module subroutine setMatInit_EXP_XXD_D2XX1_RK5(mat, subset, vdia, roff, coff)
5926#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5927 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_RK5
5928#endif
5929 use pm_kind, only: RKG => RK5
5930 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5931 real(RKG) , intent(in) , contiguous :: vdia(:)
5932 integer(IK) , intent(in) :: roff, coff
5933 type(dia_type) , intent(in) :: subset
5934 end subroutine
5935#endif
5936
5937#if RK4_ENABLED
5938 PURE module subroutine setMatInit_EXP_XXD_D2XX1_RK4(mat, subset, vdia, roff, coff)
5939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5940 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_RK4
5941#endif
5942 use pm_kind, only: RKG => RK4
5943 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5944 real(RKG) , intent(in) , contiguous :: vdia(:)
5945 integer(IK) , intent(in) :: roff, coff
5946 type(dia_type) , intent(in) :: subset
5947 end subroutine
5948#endif
5949
5950#if RK3_ENABLED
5951 PURE module subroutine setMatInit_EXP_XXD_D2XX1_RK3(mat, subset, vdia, roff, coff)
5952#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5953 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_RK3
5954#endif
5955 use pm_kind, only: RKG => RK3
5956 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5957 real(RKG) , intent(in) , contiguous :: vdia(:)
5958 integer(IK) , intent(in) :: roff, coff
5959 type(dia_type) , intent(in) :: subset
5960 end subroutine
5961#endif
5962
5963#if RK2_ENABLED
5964 PURE module subroutine setMatInit_EXP_XXD_D2XX1_RK2(mat, subset, vdia, roff, coff)
5965#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5966 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_RK2
5967#endif
5968 use pm_kind, only: RKG => RK2
5969 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5970 real(RKG) , intent(in) , contiguous :: vdia(:)
5971 integer(IK) , intent(in) :: roff, coff
5972 type(dia_type) , intent(in) :: subset
5973 end subroutine
5974#endif
5975
5976#if RK1_ENABLED
5977 PURE module subroutine setMatInit_EXP_XXD_D2XX1_RK1(mat, subset, vdia, roff, coff)
5978#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5979 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XXD_D2XX1_RK1
5980#endif
5981 use pm_kind, only: RKG => RK1
5982 real(RKG) , intent(inout) , contiguous :: mat(:,:)
5983 real(RKG) , intent(in) , contiguous :: vdia(:)
5984 integer(IK) , intent(in) :: roff, coff
5985 type(dia_type) , intent(in) :: subset
5986 end subroutine
5987#endif
5988
5989 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5990
5991 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5992 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5993 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5994
5995 end interface
5996
5997 ! EXP_XLD
5998
5999 interface setMatInit
6000
6001 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6002 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6003 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6004
6005 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6006
6007#if SK5_ENABLED
6008 PURE module subroutine setMatInit_EXP_XLD_D2X00_SK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6009#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6010 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_SK5
6011#endif
6012 use pm_kind, only: SKG => SK5
6013 integer(IK) , intent(in) , optional :: doff
6014 integer(IK) , intent(in) :: nrow, ncol
6015 integer(IK) , intent(in) :: roff, coff
6016 type(lowDia_type) , intent(in) :: subset
6017 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6018 character(*,SKG) , intent(in) :: vlow
6019 character(*,SKG) , intent(in) :: vdia
6020 end subroutine
6021#endif
6022
6023#if SK4_ENABLED
6024 PURE module subroutine setMatInit_EXP_XLD_D2X00_SK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6025#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6026 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_SK4
6027#endif
6028 use pm_kind, only: SKG => SK4
6029 integer(IK) , intent(in) , optional :: doff
6030 integer(IK) , intent(in) :: nrow, ncol
6031 integer(IK) , intent(in) :: roff, coff
6032 type(lowDia_type) , intent(in) :: subset
6033 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6034 character(*,SKG) , intent(in) :: vlow
6035 character(*,SKG) , intent(in) :: vdia
6036 end subroutine
6037#endif
6038
6039#if SK3_ENABLED
6040 PURE module subroutine setMatInit_EXP_XLD_D2X00_SK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6041#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6042 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_SK3
6043#endif
6044 use pm_kind, only: SKG => SK3
6045 integer(IK) , intent(in) , optional :: doff
6046 integer(IK) , intent(in) :: nrow, ncol
6047 integer(IK) , intent(in) :: roff, coff
6048 type(lowDia_type) , intent(in) :: subset
6049 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6050 character(*,SKG) , intent(in) :: vlow
6051 character(*,SKG) , intent(in) :: vdia
6052 end subroutine
6053#endif
6054
6055#if SK2_ENABLED
6056 PURE module subroutine setMatInit_EXP_XLD_D2X00_SK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6057#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6058 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_SK2
6059#endif
6060 use pm_kind, only: SKG => SK2
6061 integer(IK) , intent(in) , optional :: doff
6062 integer(IK) , intent(in) :: nrow, ncol
6063 integer(IK) , intent(in) :: roff, coff
6064 type(lowDia_type) , intent(in) :: subset
6065 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6066 character(*,SKG) , intent(in) :: vlow
6067 character(*,SKG) , intent(in) :: vdia
6068 end subroutine
6069#endif
6070
6071#if SK1_ENABLED
6072 PURE module subroutine setMatInit_EXP_XLD_D2X00_SK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6073#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6074 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_SK1
6075#endif
6076 use pm_kind, only: SKG => SK1
6077 integer(IK) , intent(in) , optional :: doff
6078 integer(IK) , intent(in) :: nrow, ncol
6079 integer(IK) , intent(in) :: roff, coff
6080 type(lowDia_type) , intent(in) :: subset
6081 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6082 character(*,SKG) , intent(in) :: vlow
6083 character(*,SKG) , intent(in) :: vdia
6084 end subroutine
6085#endif
6086
6087 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6088
6089#if IK5_ENABLED
6090 PURE module subroutine setMatInit_EXP_XLD_D2X00_IK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6091#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6092 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_IK5
6093#endif
6094 use pm_kind, only: IKG => IK5
6095 integer(IK) , intent(in) , optional :: doff
6096 integer(IK) , intent(in) :: nrow, ncol
6097 integer(IK) , intent(in) :: roff, coff
6098 type(lowDia_type) , intent(in) :: subset
6099 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6100 integer(IKG) , intent(in) :: vlow
6101 integer(IKG) , intent(in) :: vdia
6102 end subroutine
6103#endif
6104
6105#if IK4_ENABLED
6106 PURE module subroutine setMatInit_EXP_XLD_D2X00_IK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6107#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6108 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_IK4
6109#endif
6110 use pm_kind, only: IKG => IK4
6111 integer(IK) , intent(in) , optional :: doff
6112 integer(IK) , intent(in) :: nrow, ncol
6113 integer(IK) , intent(in) :: roff, coff
6114 type(lowDia_type) , intent(in) :: subset
6115 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6116 integer(IKG) , intent(in) :: vlow
6117 integer(IKG) , intent(in) :: vdia
6118 end subroutine
6119#endif
6120
6121#if IK3_ENABLED
6122 PURE module subroutine setMatInit_EXP_XLD_D2X00_IK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6123#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6124 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_IK3
6125#endif
6126 use pm_kind, only: IKG => IK3
6127 integer(IK) , intent(in) , optional :: doff
6128 integer(IK) , intent(in) :: nrow, ncol
6129 integer(IK) , intent(in) :: roff, coff
6130 type(lowDia_type) , intent(in) :: subset
6131 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6132 integer(IKG) , intent(in) :: vlow
6133 integer(IKG) , intent(in) :: vdia
6134 end subroutine
6135#endif
6136
6137#if IK2_ENABLED
6138 PURE module subroutine setMatInit_EXP_XLD_D2X00_IK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6139#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6140 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_IK2
6141#endif
6142 use pm_kind, only: IKG => IK2
6143 integer(IK) , intent(in) , optional :: doff
6144 integer(IK) , intent(in) :: nrow, ncol
6145 integer(IK) , intent(in) :: roff, coff
6146 type(lowDia_type) , intent(in) :: subset
6147 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6148 integer(IKG) , intent(in) :: vlow
6149 integer(IKG) , intent(in) :: vdia
6150 end subroutine
6151#endif
6152
6153#if IK1_ENABLED
6154 PURE module subroutine setMatInit_EXP_XLD_D2X00_IK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6155#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6156 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_IK1
6157#endif
6158 use pm_kind, only: IKG => IK1
6159 integer(IK) , intent(in) , optional :: doff
6160 integer(IK) , intent(in) :: nrow, ncol
6161 integer(IK) , intent(in) :: roff, coff
6162 type(lowDia_type) , intent(in) :: subset
6163 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6164 integer(IKG) , intent(in) :: vlow
6165 integer(IKG) , intent(in) :: vdia
6166 end subroutine
6167#endif
6168
6169 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6170
6171#if LK5_ENABLED
6172 PURE module subroutine setMatInit_EXP_XLD_D2X00_LK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6173#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6174 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_LK5
6175#endif
6176 use pm_kind, only: LKG => LK5
6177 integer(IK) , intent(in) , optional :: doff
6178 integer(IK) , intent(in) :: nrow, ncol
6179 integer(IK) , intent(in) :: roff, coff
6180 type(lowDia_type) , intent(in) :: subset
6181 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6182 logical(LKG) , intent(in) :: vlow
6183 logical(LKG) , intent(in) :: vdia
6184 end subroutine
6185#endif
6186
6187#if LK4_ENABLED
6188 PURE module subroutine setMatInit_EXP_XLD_D2X00_LK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6189#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6190 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_LK4
6191#endif
6192 use pm_kind, only: LKG => LK4
6193 integer(IK) , intent(in) , optional :: doff
6194 integer(IK) , intent(in) :: nrow, ncol
6195 integer(IK) , intent(in) :: roff, coff
6196 type(lowDia_type) , intent(in) :: subset
6197 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6198 logical(LKG) , intent(in) :: vlow
6199 logical(LKG) , intent(in) :: vdia
6200 end subroutine
6201#endif
6202
6203#if LK3_ENABLED
6204 PURE module subroutine setMatInit_EXP_XLD_D2X00_LK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6205#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6206 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_LK3
6207#endif
6208 use pm_kind, only: LKG => LK3
6209 integer(IK) , intent(in) , optional :: doff
6210 integer(IK) , intent(in) :: nrow, ncol
6211 integer(IK) , intent(in) :: roff, coff
6212 type(lowDia_type) , intent(in) :: subset
6213 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6214 logical(LKG) , intent(in) :: vlow
6215 logical(LKG) , intent(in) :: vdia
6216 end subroutine
6217#endif
6218
6219#if LK2_ENABLED
6220 PURE module subroutine setMatInit_EXP_XLD_D2X00_LK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6221#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6222 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_LK2
6223#endif
6224 use pm_kind, only: LKG => LK2
6225 integer(IK) , intent(in) , optional :: doff
6226 integer(IK) , intent(in) :: nrow, ncol
6227 integer(IK) , intent(in) :: roff, coff
6228 type(lowDia_type) , intent(in) :: subset
6229 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6230 logical(LKG) , intent(in) :: vlow
6231 logical(LKG) , intent(in) :: vdia
6232 end subroutine
6233#endif
6234
6235#if LK1_ENABLED
6236 PURE module subroutine setMatInit_EXP_XLD_D2X00_LK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6237#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6238 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_LK1
6239#endif
6240 use pm_kind, only: LKG => LK1
6241 integer(IK) , intent(in) , optional :: doff
6242 integer(IK) , intent(in) :: nrow, ncol
6243 integer(IK) , intent(in) :: roff, coff
6244 type(lowDia_type) , intent(in) :: subset
6245 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6246 logical(LKG) , intent(in) :: vlow
6247 logical(LKG) , intent(in) :: vdia
6248 end subroutine
6249#endif
6250
6251 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6252
6253#if CK5_ENABLED
6254 PURE module subroutine setMatInit_EXP_XLD_D2X00_CK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6255#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6256 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_CK5
6257#endif
6258 use pm_kind, only: CKG => CK5
6259 integer(IK) , intent(in) , optional :: doff
6260 integer(IK) , intent(in) :: nrow, ncol
6261 integer(IK) , intent(in) :: roff, coff
6262 type(lowDia_type) , intent(in) :: subset
6263 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6264 complex(CKG) , intent(in) :: vlow
6265 complex(CKG) , intent(in) :: vdia
6266 end subroutine
6267#endif
6268
6269#if CK4_ENABLED
6270 PURE module subroutine setMatInit_EXP_XLD_D2X00_CK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6271#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6272 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_CK4
6273#endif
6274 use pm_kind, only: CKG => CK4
6275 integer(IK) , intent(in) , optional :: doff
6276 integer(IK) , intent(in) :: nrow, ncol
6277 integer(IK) , intent(in) :: roff, coff
6278 type(lowDia_type) , intent(in) :: subset
6279 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6280 complex(CKG) , intent(in) :: vlow
6281 complex(CKG) , intent(in) :: vdia
6282 end subroutine
6283#endif
6284
6285#if CK3_ENABLED
6286 PURE module subroutine setMatInit_EXP_XLD_D2X00_CK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6287#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6288 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_CK3
6289#endif
6290 use pm_kind, only: CKG => CK3
6291 integer(IK) , intent(in) , optional :: doff
6292 integer(IK) , intent(in) :: nrow, ncol
6293 integer(IK) , intent(in) :: roff, coff
6294 type(lowDia_type) , intent(in) :: subset
6295 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6296 complex(CKG) , intent(in) :: vlow
6297 complex(CKG) , intent(in) :: vdia
6298 end subroutine
6299#endif
6300
6301#if CK2_ENABLED
6302 PURE module subroutine setMatInit_EXP_XLD_D2X00_CK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6303#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6304 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_CK2
6305#endif
6306 use pm_kind, only: CKG => CK2
6307 integer(IK) , intent(in) , optional :: doff
6308 integer(IK) , intent(in) :: nrow, ncol
6309 integer(IK) , intent(in) :: roff, coff
6310 type(lowDia_type) , intent(in) :: subset
6311 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6312 complex(CKG) , intent(in) :: vlow
6313 complex(CKG) , intent(in) :: vdia
6314 end subroutine
6315#endif
6316
6317#if CK1_ENABLED
6318 PURE module subroutine setMatInit_EXP_XLD_D2X00_CK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6319#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6320 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_CK1
6321#endif
6322 use pm_kind, only: CKG => CK1
6323 integer(IK) , intent(in) , optional :: doff
6324 integer(IK) , intent(in) :: nrow, ncol
6325 integer(IK) , intent(in) :: roff, coff
6326 type(lowDia_type) , intent(in) :: subset
6327 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6328 complex(CKG) , intent(in) :: vlow
6329 complex(CKG) , intent(in) :: vdia
6330 end subroutine
6331#endif
6332
6333 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6334
6335#if RK5_ENABLED
6336 PURE module subroutine setMatInit_EXP_XLD_D2X00_RK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6337#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6338 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_RK5
6339#endif
6340 use pm_kind, only: RKG => RK5
6341 integer(IK) , intent(in) , optional :: doff
6342 integer(IK) , intent(in) :: nrow, ncol
6343 integer(IK) , intent(in) :: roff, coff
6344 type(lowDia_type) , intent(in) :: subset
6345 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6346 real(RKG) , intent(in) :: vlow
6347 real(RKG) , intent(in) :: vdia
6348 end subroutine
6349#endif
6350
6351#if RK4_ENABLED
6352 PURE module subroutine setMatInit_EXP_XLD_D2X00_RK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6353#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6354 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_RK4
6355#endif
6356 use pm_kind, only: RKG => RK4
6357 integer(IK) , intent(in) , optional :: doff
6358 integer(IK) , intent(in) :: nrow, ncol
6359 integer(IK) , intent(in) :: roff, coff
6360 type(lowDia_type) , intent(in) :: subset
6361 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6362 real(RKG) , intent(in) :: vlow
6363 real(RKG) , intent(in) :: vdia
6364 end subroutine
6365#endif
6366
6367#if RK3_ENABLED
6368 PURE module subroutine setMatInit_EXP_XLD_D2X00_RK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6369#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6370 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_RK3
6371#endif
6372 use pm_kind, only: RKG => RK3
6373 integer(IK) , intent(in) , optional :: doff
6374 integer(IK) , intent(in) :: nrow, ncol
6375 integer(IK) , intent(in) :: roff, coff
6376 type(lowDia_type) , intent(in) :: subset
6377 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6378 real(RKG) , intent(in) :: vlow
6379 real(RKG) , intent(in) :: vdia
6380 end subroutine
6381#endif
6382
6383#if RK2_ENABLED
6384 PURE module subroutine setMatInit_EXP_XLD_D2X00_RK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6385#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6386 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_RK2
6387#endif
6388 use pm_kind, only: RKG => RK2
6389 integer(IK) , intent(in) , optional :: doff
6390 integer(IK) , intent(in) :: nrow, ncol
6391 integer(IK) , intent(in) :: roff, coff
6392 type(lowDia_type) , intent(in) :: subset
6393 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6394 real(RKG) , intent(in) :: vlow
6395 real(RKG) , intent(in) :: vdia
6396 end subroutine
6397#endif
6398
6399#if RK1_ENABLED
6400 PURE module subroutine setMatInit_EXP_XLD_D2X00_RK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6401#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6402 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X00_RK1
6403#endif
6404 use pm_kind, only: RKG => RK1
6405 integer(IK) , intent(in) , optional :: doff
6406 integer(IK) , intent(in) :: nrow, ncol
6407 integer(IK) , intent(in) :: roff, coff
6408 type(lowDia_type) , intent(in) :: subset
6409 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6410 real(RKG) , intent(in) :: vlow
6411 real(RKG) , intent(in) :: vdia
6412 end subroutine
6413#endif
6414
6415 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6416
6417 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6418 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6419 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6420
6421 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6422
6423#if SK5_ENABLED
6424 PURE module subroutine setMatInit_EXP_XLD_D2X01_SK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6425#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6426 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_SK5
6427#endif
6428 use pm_kind, only: SKG => SK5
6429 integer(IK) , intent(in) , optional :: doff
6430 integer(IK) , intent(in) :: nrow, ncol
6431 integer(IK) , intent(in) :: roff, coff
6432 type(lowDia_type) , intent(in) :: subset
6433 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6434 character(*,SKG) , intent(in) , contiguous :: vdia(:)
6435 character(*,SKG) , intent(in) :: vlow
6436 end subroutine
6437#endif
6438
6439#if SK4_ENABLED
6440 PURE module subroutine setMatInit_EXP_XLD_D2X01_SK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6441#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6442 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_SK4
6443#endif
6444 use pm_kind, only: SKG => SK4
6445 integer(IK) , intent(in) , optional :: doff
6446 integer(IK) , intent(in) :: nrow, ncol
6447 integer(IK) , intent(in) :: roff, coff
6448 type(lowDia_type) , intent(in) :: subset
6449 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6450 character(*,SKG) , intent(in) , contiguous :: vdia(:)
6451 character(*,SKG) , intent(in) :: vlow
6452 end subroutine
6453#endif
6454
6455#if SK3_ENABLED
6456 PURE module subroutine setMatInit_EXP_XLD_D2X01_SK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6457#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6458 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_SK3
6459#endif
6460 use pm_kind, only: SKG => SK3
6461 integer(IK) , intent(in) , optional :: doff
6462 integer(IK) , intent(in) :: nrow, ncol
6463 integer(IK) , intent(in) :: roff, coff
6464 type(lowDia_type) , intent(in) :: subset
6465 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6466 character(*,SKG) , intent(in) , contiguous :: vdia(:)
6467 character(*,SKG) , intent(in) :: vlow
6468 end subroutine
6469#endif
6470
6471#if SK2_ENABLED
6472 PURE module subroutine setMatInit_EXP_XLD_D2X01_SK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6473#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6474 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_SK2
6475#endif
6476 use pm_kind, only: SKG => SK2
6477 integer(IK) , intent(in) , optional :: doff
6478 integer(IK) , intent(in) :: nrow, ncol
6479 integer(IK) , intent(in) :: roff, coff
6480 type(lowDia_type) , intent(in) :: subset
6481 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6482 character(*,SKG) , intent(in) , contiguous :: vdia(:)
6483 character(*,SKG) , intent(in) :: vlow
6484 end subroutine
6485#endif
6486
6487#if SK1_ENABLED
6488 PURE module subroutine setMatInit_EXP_XLD_D2X01_SK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6489#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6490 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_SK1
6491#endif
6492 use pm_kind, only: SKG => SK1
6493 integer(IK) , intent(in) , optional :: doff
6494 integer(IK) , intent(in) :: nrow, ncol
6495 integer(IK) , intent(in) :: roff, coff
6496 type(lowDia_type) , intent(in) :: subset
6497 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6498 character(*,SKG) , intent(in) , contiguous :: vdia(:)
6499 character(*,SKG) , intent(in) :: vlow
6500 end subroutine
6501#endif
6502
6503 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6504
6505#if IK5_ENABLED
6506 PURE module subroutine setMatInit_EXP_XLD_D2X01_IK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6507#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6508 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_IK5
6509#endif
6510 use pm_kind, only: IKG => IK5
6511 integer(IK) , intent(in) , optional :: doff
6512 integer(IK) , intent(in) :: nrow, ncol
6513 integer(IK) , intent(in) :: roff, coff
6514 type(lowDia_type) , intent(in) :: subset
6515 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6516 integer(IKG) , intent(in) , contiguous :: vdia(:)
6517 integer(IKG) , intent(in) :: vlow
6518 end subroutine
6519#endif
6520
6521#if IK4_ENABLED
6522 PURE module subroutine setMatInit_EXP_XLD_D2X01_IK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6523#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6524 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_IK4
6525#endif
6526 use pm_kind, only: IKG => IK4
6527 integer(IK) , intent(in) , optional :: doff
6528 integer(IK) , intent(in) :: nrow, ncol
6529 integer(IK) , intent(in) :: roff, coff
6530 type(lowDia_type) , intent(in) :: subset
6531 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6532 integer(IKG) , intent(in) , contiguous :: vdia(:)
6533 integer(IKG) , intent(in) :: vlow
6534 end subroutine
6535#endif
6536
6537#if IK3_ENABLED
6538 PURE module subroutine setMatInit_EXP_XLD_D2X01_IK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6539#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6540 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_IK3
6541#endif
6542 use pm_kind, only: IKG => IK3
6543 integer(IK) , intent(in) , optional :: doff
6544 integer(IK) , intent(in) :: nrow, ncol
6545 integer(IK) , intent(in) :: roff, coff
6546 type(lowDia_type) , intent(in) :: subset
6547 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6548 integer(IKG) , intent(in) , contiguous :: vdia(:)
6549 integer(IKG) , intent(in) :: vlow
6550 end subroutine
6551#endif
6552
6553#if IK2_ENABLED
6554 PURE module subroutine setMatInit_EXP_XLD_D2X01_IK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6555#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6556 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_IK2
6557#endif
6558 use pm_kind, only: IKG => IK2
6559 integer(IK) , intent(in) , optional :: doff
6560 integer(IK) , intent(in) :: nrow, ncol
6561 integer(IK) , intent(in) :: roff, coff
6562 type(lowDia_type) , intent(in) :: subset
6563 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6564 integer(IKG) , intent(in) , contiguous :: vdia(:)
6565 integer(IKG) , intent(in) :: vlow
6566 end subroutine
6567#endif
6568
6569#if IK1_ENABLED
6570 PURE module subroutine setMatInit_EXP_XLD_D2X01_IK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6571#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6572 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_IK1
6573#endif
6574 use pm_kind, only: IKG => IK1
6575 integer(IK) , intent(in) , optional :: doff
6576 integer(IK) , intent(in) :: nrow, ncol
6577 integer(IK) , intent(in) :: roff, coff
6578 type(lowDia_type) , intent(in) :: subset
6579 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6580 integer(IKG) , intent(in) , contiguous :: vdia(:)
6581 integer(IKG) , intent(in) :: vlow
6582 end subroutine
6583#endif
6584
6585 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6586
6587#if LK5_ENABLED
6588 PURE module subroutine setMatInit_EXP_XLD_D2X01_LK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6589#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6590 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_LK5
6591#endif
6592 use pm_kind, only: LKG => LK5
6593 integer(IK) , intent(in) , optional :: doff
6594 integer(IK) , intent(in) :: nrow, ncol
6595 integer(IK) , intent(in) :: roff, coff
6596 type(lowDia_type) , intent(in) :: subset
6597 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6598 logical(LKG) , intent(in) , contiguous :: vdia(:)
6599 logical(LKG) , intent(in) :: vlow
6600 end subroutine
6601#endif
6602
6603#if LK4_ENABLED
6604 PURE module subroutine setMatInit_EXP_XLD_D2X01_LK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6605#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6606 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_LK4
6607#endif
6608 use pm_kind, only: LKG => LK4
6609 integer(IK) , intent(in) , optional :: doff
6610 integer(IK) , intent(in) :: nrow, ncol
6611 integer(IK) , intent(in) :: roff, coff
6612 type(lowDia_type) , intent(in) :: subset
6613 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6614 logical(LKG) , intent(in) , contiguous :: vdia(:)
6615 logical(LKG) , intent(in) :: vlow
6616 end subroutine
6617#endif
6618
6619#if LK3_ENABLED
6620 PURE module subroutine setMatInit_EXP_XLD_D2X01_LK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6621#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6622 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_LK3
6623#endif
6624 use pm_kind, only: LKG => LK3
6625 integer(IK) , intent(in) , optional :: doff
6626 integer(IK) , intent(in) :: nrow, ncol
6627 integer(IK) , intent(in) :: roff, coff
6628 type(lowDia_type) , intent(in) :: subset
6629 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6630 logical(LKG) , intent(in) , contiguous :: vdia(:)
6631 logical(LKG) , intent(in) :: vlow
6632 end subroutine
6633#endif
6634
6635#if LK2_ENABLED
6636 PURE module subroutine setMatInit_EXP_XLD_D2X01_LK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6637#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6638 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_LK2
6639#endif
6640 use pm_kind, only: LKG => LK2
6641 integer(IK) , intent(in) , optional :: doff
6642 integer(IK) , intent(in) :: nrow, ncol
6643 integer(IK) , intent(in) :: roff, coff
6644 type(lowDia_type) , intent(in) :: subset
6645 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6646 logical(LKG) , intent(in) , contiguous :: vdia(:)
6647 logical(LKG) , intent(in) :: vlow
6648 end subroutine
6649#endif
6650
6651#if LK1_ENABLED
6652 PURE module subroutine setMatInit_EXP_XLD_D2X01_LK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6653#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6654 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_LK1
6655#endif
6656 use pm_kind, only: LKG => LK1
6657 integer(IK) , intent(in) , optional :: doff
6658 integer(IK) , intent(in) :: nrow, ncol
6659 integer(IK) , intent(in) :: roff, coff
6660 type(lowDia_type) , intent(in) :: subset
6661 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6662 logical(LKG) , intent(in) , contiguous :: vdia(:)
6663 logical(LKG) , intent(in) :: vlow
6664 end subroutine
6665#endif
6666
6667 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6668
6669#if CK5_ENABLED
6670 PURE module subroutine setMatInit_EXP_XLD_D2X01_CK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6671#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6672 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_CK5
6673#endif
6674 use pm_kind, only: CKG => CK5
6675 integer(IK) , intent(in) , optional :: doff
6676 integer(IK) , intent(in) :: nrow, ncol
6677 integer(IK) , intent(in) :: roff, coff
6678 type(lowDia_type) , intent(in) :: subset
6679 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6680 complex(CKG) , intent(in) , contiguous :: vdia(:)
6681 complex(CKG) , intent(in) :: vlow
6682 end subroutine
6683#endif
6684
6685#if CK4_ENABLED
6686 PURE module subroutine setMatInit_EXP_XLD_D2X01_CK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6687#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6688 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_CK4
6689#endif
6690 use pm_kind, only: CKG => CK4
6691 integer(IK) , intent(in) , optional :: doff
6692 integer(IK) , intent(in) :: nrow, ncol
6693 integer(IK) , intent(in) :: roff, coff
6694 type(lowDia_type) , intent(in) :: subset
6695 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6696 complex(CKG) , intent(in) , contiguous :: vdia(:)
6697 complex(CKG) , intent(in) :: vlow
6698 end subroutine
6699#endif
6700
6701#if CK3_ENABLED
6702 PURE module subroutine setMatInit_EXP_XLD_D2X01_CK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6703#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6704 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_CK3
6705#endif
6706 use pm_kind, only: CKG => CK3
6707 integer(IK) , intent(in) , optional :: doff
6708 integer(IK) , intent(in) :: nrow, ncol
6709 integer(IK) , intent(in) :: roff, coff
6710 type(lowDia_type) , intent(in) :: subset
6711 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6712 complex(CKG) , intent(in) , contiguous :: vdia(:)
6713 complex(CKG) , intent(in) :: vlow
6714 end subroutine
6715#endif
6716
6717#if CK2_ENABLED
6718 PURE module subroutine setMatInit_EXP_XLD_D2X01_CK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6719#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6720 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_CK2
6721#endif
6722 use pm_kind, only: CKG => CK2
6723 integer(IK) , intent(in) , optional :: doff
6724 integer(IK) , intent(in) :: nrow, ncol
6725 integer(IK) , intent(in) :: roff, coff
6726 type(lowDia_type) , intent(in) :: subset
6727 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6728 complex(CKG) , intent(in) , contiguous :: vdia(:)
6729 complex(CKG) , intent(in) :: vlow
6730 end subroutine
6731#endif
6732
6733#if CK1_ENABLED
6734 PURE module subroutine setMatInit_EXP_XLD_D2X01_CK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6735#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6736 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_CK1
6737#endif
6738 use pm_kind, only: CKG => CK1
6739 integer(IK) , intent(in) , optional :: doff
6740 integer(IK) , intent(in) :: nrow, ncol
6741 integer(IK) , intent(in) :: roff, coff
6742 type(lowDia_type) , intent(in) :: subset
6743 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6744 complex(CKG) , intent(in) , contiguous :: vdia(:)
6745 complex(CKG) , intent(in) :: vlow
6746 end subroutine
6747#endif
6748
6749 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6750
6751#if RK5_ENABLED
6752 PURE module subroutine setMatInit_EXP_XLD_D2X01_RK5(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6753#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6754 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_RK5
6755#endif
6756 use pm_kind, only: RKG => RK5
6757 integer(IK) , intent(in) , optional :: doff
6758 integer(IK) , intent(in) :: nrow, ncol
6759 integer(IK) , intent(in) :: roff, coff
6760 type(lowDia_type) , intent(in) :: subset
6761 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6762 real(RKG) , intent(in) , contiguous :: vdia(:)
6763 real(RKG) , intent(in) :: vlow
6764 end subroutine
6765#endif
6766
6767#if RK4_ENABLED
6768 PURE module subroutine setMatInit_EXP_XLD_D2X01_RK4(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6769#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6770 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_RK4
6771#endif
6772 use pm_kind, only: RKG => RK4
6773 integer(IK) , intent(in) , optional :: doff
6774 integer(IK) , intent(in) :: nrow, ncol
6775 integer(IK) , intent(in) :: roff, coff
6776 type(lowDia_type) , intent(in) :: subset
6777 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6778 real(RKG) , intent(in) , contiguous :: vdia(:)
6779 real(RKG) , intent(in) :: vlow
6780 end subroutine
6781#endif
6782
6783#if RK3_ENABLED
6784 PURE module subroutine setMatInit_EXP_XLD_D2X01_RK3(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6785#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6786 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_RK3
6787#endif
6788 use pm_kind, only: RKG => RK3
6789 integer(IK) , intent(in) , optional :: doff
6790 integer(IK) , intent(in) :: nrow, ncol
6791 integer(IK) , intent(in) :: roff, coff
6792 type(lowDia_type) , intent(in) :: subset
6793 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6794 real(RKG) , intent(in) , contiguous :: vdia(:)
6795 real(RKG) , intent(in) :: vlow
6796 end subroutine
6797#endif
6798
6799#if RK2_ENABLED
6800 PURE module subroutine setMatInit_EXP_XLD_D2X01_RK2(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6801#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6802 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_RK2
6803#endif
6804 use pm_kind, only: RKG => RK2
6805 integer(IK) , intent(in) , optional :: doff
6806 integer(IK) , intent(in) :: nrow, ncol
6807 integer(IK) , intent(in) :: roff, coff
6808 type(lowDia_type) , intent(in) :: subset
6809 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6810 real(RKG) , intent(in) , contiguous :: vdia(:)
6811 real(RKG) , intent(in) :: vlow
6812 end subroutine
6813#endif
6814
6815#if RK1_ENABLED
6816 PURE module subroutine setMatInit_EXP_XLD_D2X01_RK1(mat, subset, vlow, vdia, nrow, ncol, roff, coff, doff)
6817#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6818 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_XLD_D2X01_RK1
6819#endif
6820 use pm_kind, only: RKG => RK1
6821 integer(IK) , intent(in) , optional :: doff
6822 integer(IK) , intent(in) :: nrow, ncol
6823 integer(IK) , intent(in) :: roff, coff
6824 type(lowDia_type) , intent(in) :: subset
6825 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6826 real(RKG) , intent(in) , contiguous :: vdia(:)
6827 real(RKG) , intent(in) :: vlow
6828 end subroutine
6829#endif
6830
6831 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6832
6833 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6834 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6835 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6836
6837 end interface
6838
6839 ! EXP_UXD
6840
6841 interface setMatInit
6842
6843 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6844 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6845 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6846
6847 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6848
6849#if SK5_ENABLED
6850 PURE module subroutine setMatInit_EXP_UXD_D20X0_SK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6851#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6852 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_SK5
6853#endif
6854 use pm_kind, only: SKG => SK5
6855 integer(IK) , intent(in) , optional :: doff
6856 integer(IK) , intent(in) :: nrow, ncol
6857 integer(IK) , intent(in) :: roff, coff
6858 type(uppDia_type) , intent(in) :: subset
6859 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6860 character(*,SKG) , intent(in) :: vupp
6861 character(*,SKG) , intent(in) :: vdia
6862 end subroutine
6863#endif
6864
6865#if SK4_ENABLED
6866 PURE module subroutine setMatInit_EXP_UXD_D20X0_SK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6867#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6868 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_SK4
6869#endif
6870 use pm_kind, only: SKG => SK4
6871 integer(IK) , intent(in) , optional :: doff
6872 integer(IK) , intent(in) :: nrow, ncol
6873 integer(IK) , intent(in) :: roff, coff
6874 type(uppDia_type) , intent(in) :: subset
6875 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6876 character(*,SKG) , intent(in) :: vupp
6877 character(*,SKG) , intent(in) :: vdia
6878 end subroutine
6879#endif
6880
6881#if SK3_ENABLED
6882 PURE module subroutine setMatInit_EXP_UXD_D20X0_SK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6883#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6884 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_SK3
6885#endif
6886 use pm_kind, only: SKG => SK3
6887 integer(IK) , intent(in) , optional :: doff
6888 integer(IK) , intent(in) :: nrow, ncol
6889 integer(IK) , intent(in) :: roff, coff
6890 type(uppDia_type) , intent(in) :: subset
6891 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6892 character(*,SKG) , intent(in) :: vupp
6893 character(*,SKG) , intent(in) :: vdia
6894 end subroutine
6895#endif
6896
6897#if SK2_ENABLED
6898 PURE module subroutine setMatInit_EXP_UXD_D20X0_SK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6899#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6900 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_SK2
6901#endif
6902 use pm_kind, only: SKG => SK2
6903 integer(IK) , intent(in) , optional :: doff
6904 integer(IK) , intent(in) :: nrow, ncol
6905 integer(IK) , intent(in) :: roff, coff
6906 type(uppDia_type) , intent(in) :: subset
6907 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6908 character(*,SKG) , intent(in) :: vupp
6909 character(*,SKG) , intent(in) :: vdia
6910 end subroutine
6911#endif
6912
6913#if SK1_ENABLED
6914 PURE module subroutine setMatInit_EXP_UXD_D20X0_SK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6915#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6916 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_SK1
6917#endif
6918 use pm_kind, only: SKG => SK1
6919 integer(IK) , intent(in) , optional :: doff
6920 integer(IK) , intent(in) :: nrow, ncol
6921 integer(IK) , intent(in) :: roff, coff
6922 type(uppDia_type) , intent(in) :: subset
6923 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6924 character(*,SKG) , intent(in) :: vupp
6925 character(*,SKG) , intent(in) :: vdia
6926 end subroutine
6927#endif
6928
6929 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6930
6931#if IK5_ENABLED
6932 PURE module subroutine setMatInit_EXP_UXD_D20X0_IK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6933#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6934 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_IK5
6935#endif
6936 use pm_kind, only: IKG => IK5
6937 integer(IK) , intent(in) , optional :: doff
6938 integer(IK) , intent(in) :: nrow, ncol
6939 integer(IK) , intent(in) :: roff, coff
6940 type(uppDia_type) , intent(in) :: subset
6941 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6942 integer(IKG) , intent(in) :: vupp
6943 integer(IKG) , intent(in) :: vdia
6944 end subroutine
6945#endif
6946
6947#if IK4_ENABLED
6948 PURE module subroutine setMatInit_EXP_UXD_D20X0_IK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6949#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6950 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_IK4
6951#endif
6952 use pm_kind, only: IKG => IK4
6953 integer(IK) , intent(in) , optional :: doff
6954 integer(IK) , intent(in) :: nrow, ncol
6955 integer(IK) , intent(in) :: roff, coff
6956 type(uppDia_type) , intent(in) :: subset
6957 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6958 integer(IKG) , intent(in) :: vupp
6959 integer(IKG) , intent(in) :: vdia
6960 end subroutine
6961#endif
6962
6963#if IK3_ENABLED
6964 PURE module subroutine setMatInit_EXP_UXD_D20X0_IK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6965#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6966 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_IK3
6967#endif
6968 use pm_kind, only: IKG => IK3
6969 integer(IK) , intent(in) , optional :: doff
6970 integer(IK) , intent(in) :: nrow, ncol
6971 integer(IK) , intent(in) :: roff, coff
6972 type(uppDia_type) , intent(in) :: subset
6973 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6974 integer(IKG) , intent(in) :: vupp
6975 integer(IKG) , intent(in) :: vdia
6976 end subroutine
6977#endif
6978
6979#if IK2_ENABLED
6980 PURE module subroutine setMatInit_EXP_UXD_D20X0_IK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6981#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6982 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_IK2
6983#endif
6984 use pm_kind, only: IKG => IK2
6985 integer(IK) , intent(in) , optional :: doff
6986 integer(IK) , intent(in) :: nrow, ncol
6987 integer(IK) , intent(in) :: roff, coff
6988 type(uppDia_type) , intent(in) :: subset
6989 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
6990 integer(IKG) , intent(in) :: vupp
6991 integer(IKG) , intent(in) :: vdia
6992 end subroutine
6993#endif
6994
6995#if IK1_ENABLED
6996 PURE module subroutine setMatInit_EXP_UXD_D20X0_IK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
6997#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6998 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_IK1
6999#endif
7000 use pm_kind, only: IKG => IK1
7001 integer(IK) , intent(in) , optional :: doff
7002 integer(IK) , intent(in) :: nrow, ncol
7003 integer(IK) , intent(in) :: roff, coff
7004 type(uppDia_type) , intent(in) :: subset
7005 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7006 integer(IKG) , intent(in) :: vupp
7007 integer(IKG) , intent(in) :: vdia
7008 end subroutine
7009#endif
7010
7011 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7012
7013#if LK5_ENABLED
7014 PURE module subroutine setMatInit_EXP_UXD_D20X0_LK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7015#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7016 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_LK5
7017#endif
7018 use pm_kind, only: LKG => LK5
7019 integer(IK) , intent(in) , optional :: doff
7020 integer(IK) , intent(in) :: nrow, ncol
7021 integer(IK) , intent(in) :: roff, coff
7022 type(uppDia_type) , intent(in) :: subset
7023 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7024 logical(LKG) , intent(in) :: vupp
7025 logical(LKG) , intent(in) :: vdia
7026 end subroutine
7027#endif
7028
7029#if LK4_ENABLED
7030 PURE module subroutine setMatInit_EXP_UXD_D20X0_LK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7031#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7032 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_LK4
7033#endif
7034 use pm_kind, only: LKG => LK4
7035 integer(IK) , intent(in) , optional :: doff
7036 integer(IK) , intent(in) :: nrow, ncol
7037 integer(IK) , intent(in) :: roff, coff
7038 type(uppDia_type) , intent(in) :: subset
7039 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7040 logical(LKG) , intent(in) :: vupp
7041 logical(LKG) , intent(in) :: vdia
7042 end subroutine
7043#endif
7044
7045#if LK3_ENABLED
7046 PURE module subroutine setMatInit_EXP_UXD_D20X0_LK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7047#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7048 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_LK3
7049#endif
7050 use pm_kind, only: LKG => LK3
7051 integer(IK) , intent(in) , optional :: doff
7052 integer(IK) , intent(in) :: nrow, ncol
7053 integer(IK) , intent(in) :: roff, coff
7054 type(uppDia_type) , intent(in) :: subset
7055 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7056 logical(LKG) , intent(in) :: vupp
7057 logical(LKG) , intent(in) :: vdia
7058 end subroutine
7059#endif
7060
7061#if LK2_ENABLED
7062 PURE module subroutine setMatInit_EXP_UXD_D20X0_LK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7063#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7064 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_LK2
7065#endif
7066 use pm_kind, only: LKG => LK2
7067 integer(IK) , intent(in) , optional :: doff
7068 integer(IK) , intent(in) :: nrow, ncol
7069 integer(IK) , intent(in) :: roff, coff
7070 type(uppDia_type) , intent(in) :: subset
7071 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7072 logical(LKG) , intent(in) :: vupp
7073 logical(LKG) , intent(in) :: vdia
7074 end subroutine
7075#endif
7076
7077#if LK1_ENABLED
7078 PURE module subroutine setMatInit_EXP_UXD_D20X0_LK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7079#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7080 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_LK1
7081#endif
7082 use pm_kind, only: LKG => LK1
7083 integer(IK) , intent(in) , optional :: doff
7084 integer(IK) , intent(in) :: nrow, ncol
7085 integer(IK) , intent(in) :: roff, coff
7086 type(uppDia_type) , intent(in) :: subset
7087 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7088 logical(LKG) , intent(in) :: vupp
7089 logical(LKG) , intent(in) :: vdia
7090 end subroutine
7091#endif
7092
7093 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7094
7095#if CK5_ENABLED
7096 PURE module subroutine setMatInit_EXP_UXD_D20X0_CK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7097#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7098 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_CK5
7099#endif
7100 use pm_kind, only: CKG => CK5
7101 integer(IK) , intent(in) , optional :: doff
7102 integer(IK) , intent(in) :: nrow, ncol
7103 integer(IK) , intent(in) :: roff, coff
7104 type(uppDia_type) , intent(in) :: subset
7105 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7106 complex(CKG) , intent(in) :: vupp
7107 complex(CKG) , intent(in) :: vdia
7108 end subroutine
7109#endif
7110
7111#if CK4_ENABLED
7112 PURE module subroutine setMatInit_EXP_UXD_D20X0_CK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7113#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7114 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_CK4
7115#endif
7116 use pm_kind, only: CKG => CK4
7117 integer(IK) , intent(in) , optional :: doff
7118 integer(IK) , intent(in) :: nrow, ncol
7119 integer(IK) , intent(in) :: roff, coff
7120 type(uppDia_type) , intent(in) :: subset
7121 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7122 complex(CKG) , intent(in) :: vupp
7123 complex(CKG) , intent(in) :: vdia
7124 end subroutine
7125#endif
7126
7127#if CK3_ENABLED
7128 PURE module subroutine setMatInit_EXP_UXD_D20X0_CK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7129#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7130 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_CK3
7131#endif
7132 use pm_kind, only: CKG => CK3
7133 integer(IK) , intent(in) , optional :: doff
7134 integer(IK) , intent(in) :: nrow, ncol
7135 integer(IK) , intent(in) :: roff, coff
7136 type(uppDia_type) , intent(in) :: subset
7137 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7138 complex(CKG) , intent(in) :: vupp
7139 complex(CKG) , intent(in) :: vdia
7140 end subroutine
7141#endif
7142
7143#if CK2_ENABLED
7144 PURE module subroutine setMatInit_EXP_UXD_D20X0_CK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7145#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7146 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_CK2
7147#endif
7148 use pm_kind, only: CKG => CK2
7149 integer(IK) , intent(in) , optional :: doff
7150 integer(IK) , intent(in) :: nrow, ncol
7151 integer(IK) , intent(in) :: roff, coff
7152 type(uppDia_type) , intent(in) :: subset
7153 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7154 complex(CKG) , intent(in) :: vupp
7155 complex(CKG) , intent(in) :: vdia
7156 end subroutine
7157#endif
7158
7159#if CK1_ENABLED
7160 PURE module subroutine setMatInit_EXP_UXD_D20X0_CK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7161#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7162 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_CK1
7163#endif
7164 use pm_kind, only: CKG => CK1
7165 integer(IK) , intent(in) , optional :: doff
7166 integer(IK) , intent(in) :: nrow, ncol
7167 integer(IK) , intent(in) :: roff, coff
7168 type(uppDia_type) , intent(in) :: subset
7169 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7170 complex(CKG) , intent(in) :: vupp
7171 complex(CKG) , intent(in) :: vdia
7172 end subroutine
7173#endif
7174
7175 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7176
7177#if RK5_ENABLED
7178 PURE module subroutine setMatInit_EXP_UXD_D20X0_RK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7179#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7180 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_RK5
7181#endif
7182 use pm_kind, only: RKG => RK5
7183 integer(IK) , intent(in) , optional :: doff
7184 integer(IK) , intent(in) :: nrow, ncol
7185 integer(IK) , intent(in) :: roff, coff
7186 type(uppDia_type) , intent(in) :: subset
7187 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7188 real(RKG) , intent(in) :: vupp
7189 real(RKG) , intent(in) :: vdia
7190 end subroutine
7191#endif
7192
7193#if RK4_ENABLED
7194 PURE module subroutine setMatInit_EXP_UXD_D20X0_RK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7195#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7196 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_RK4
7197#endif
7198 use pm_kind, only: RKG => RK4
7199 integer(IK) , intent(in) , optional :: doff
7200 integer(IK) , intent(in) :: nrow, ncol
7201 integer(IK) , intent(in) :: roff, coff
7202 type(uppDia_type) , intent(in) :: subset
7203 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7204 real(RKG) , intent(in) :: vupp
7205 real(RKG) , intent(in) :: vdia
7206 end subroutine
7207#endif
7208
7209#if RK3_ENABLED
7210 PURE module subroutine setMatInit_EXP_UXD_D20X0_RK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7211#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7212 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_RK3
7213#endif
7214 use pm_kind, only: RKG => RK3
7215 integer(IK) , intent(in) , optional :: doff
7216 integer(IK) , intent(in) :: nrow, ncol
7217 integer(IK) , intent(in) :: roff, coff
7218 type(uppDia_type) , intent(in) :: subset
7219 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7220 real(RKG) , intent(in) :: vupp
7221 real(RKG) , intent(in) :: vdia
7222 end subroutine
7223#endif
7224
7225#if RK2_ENABLED
7226 PURE module subroutine setMatInit_EXP_UXD_D20X0_RK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7227#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7228 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_RK2
7229#endif
7230 use pm_kind, only: RKG => RK2
7231 integer(IK) , intent(in) , optional :: doff
7232 integer(IK) , intent(in) :: nrow, ncol
7233 integer(IK) , intent(in) :: roff, coff
7234 type(uppDia_type) , intent(in) :: subset
7235 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7236 real(RKG) , intent(in) :: vupp
7237 real(RKG) , intent(in) :: vdia
7238 end subroutine
7239#endif
7240
7241#if RK1_ENABLED
7242 PURE module subroutine setMatInit_EXP_UXD_D20X0_RK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7243#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7244 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X0_RK1
7245#endif
7246 use pm_kind, only: RKG => RK1
7247 integer(IK) , intent(in) , optional :: doff
7248 integer(IK) , intent(in) :: nrow, ncol
7249 integer(IK) , intent(in) :: roff, coff
7250 type(uppDia_type) , intent(in) :: subset
7251 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7252 real(RKG) , intent(in) :: vupp
7253 real(RKG) , intent(in) :: vdia
7254 end subroutine
7255#endif
7256
7257 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7258
7259 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7260 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7261 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7262
7263 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7264
7265#if SK5_ENABLED
7266 PURE module subroutine setMatInit_EXP_UXD_D20X1_SK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7267#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7268 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_SK5
7269#endif
7270 use pm_kind, only: SKG => SK5
7271 integer(IK) , intent(in) , optional :: doff
7272 integer(IK) , intent(in) :: nrow, ncol
7273 integer(IK) , intent(in) :: roff, coff
7274 type(uppDia_type) , intent(in) :: subset
7275 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7276 character(*,SKG) , intent(in) , contiguous :: vdia(:)
7277 character(*,SKG) , intent(in) :: vupp
7278 end subroutine
7279#endif
7280
7281#if SK4_ENABLED
7282 PURE module subroutine setMatInit_EXP_UXD_D20X1_SK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7283#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7284 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_SK4
7285#endif
7286 use pm_kind, only: SKG => SK4
7287 integer(IK) , intent(in) , optional :: doff
7288 integer(IK) , intent(in) :: nrow, ncol
7289 integer(IK) , intent(in) :: roff, coff
7290 type(uppDia_type) , intent(in) :: subset
7291 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7292 character(*,SKG) , intent(in) , contiguous :: vdia(:)
7293 character(*,SKG) , intent(in) :: vupp
7294 end subroutine
7295#endif
7296
7297#if SK3_ENABLED
7298 PURE module subroutine setMatInit_EXP_UXD_D20X1_SK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7299#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7300 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_SK3
7301#endif
7302 use pm_kind, only: SKG => SK3
7303 integer(IK) , intent(in) , optional :: doff
7304 integer(IK) , intent(in) :: nrow, ncol
7305 integer(IK) , intent(in) :: roff, coff
7306 type(uppDia_type) , intent(in) :: subset
7307 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7308 character(*,SKG) , intent(in) , contiguous :: vdia(:)
7309 character(*,SKG) , intent(in) :: vupp
7310 end subroutine
7311#endif
7312
7313#if SK2_ENABLED
7314 PURE module subroutine setMatInit_EXP_UXD_D20X1_SK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7315#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7316 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_SK2
7317#endif
7318 use pm_kind, only: SKG => SK2
7319 integer(IK) , intent(in) , optional :: doff
7320 integer(IK) , intent(in) :: nrow, ncol
7321 integer(IK) , intent(in) :: roff, coff
7322 type(uppDia_type) , intent(in) :: subset
7323 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7324 character(*,SKG) , intent(in) , contiguous :: vdia(:)
7325 character(*,SKG) , intent(in) :: vupp
7326 end subroutine
7327#endif
7328
7329#if SK1_ENABLED
7330 PURE module subroutine setMatInit_EXP_UXD_D20X1_SK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7331#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7332 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_SK1
7333#endif
7334 use pm_kind, only: SKG => SK1
7335 integer(IK) , intent(in) , optional :: doff
7336 integer(IK) , intent(in) :: nrow, ncol
7337 integer(IK) , intent(in) :: roff, coff
7338 type(uppDia_type) , intent(in) :: subset
7339 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7340 character(*,SKG) , intent(in) , contiguous :: vdia(:)
7341 character(*,SKG) , intent(in) :: vupp
7342 end subroutine
7343#endif
7344
7345 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7346
7347#if IK5_ENABLED
7348 PURE module subroutine setMatInit_EXP_UXD_D20X1_IK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7349#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7350 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_IK5
7351#endif
7352 use pm_kind, only: IKG => IK5
7353 integer(IK) , intent(in) , optional :: doff
7354 integer(IK) , intent(in) :: nrow, ncol
7355 integer(IK) , intent(in) :: roff, coff
7356 type(uppDia_type) , intent(in) :: subset
7357 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7358 integer(IKG) , intent(in) , contiguous :: vdia(:)
7359 integer(IKG) , intent(in) :: vupp
7360 end subroutine
7361#endif
7362
7363#if IK4_ENABLED
7364 PURE module subroutine setMatInit_EXP_UXD_D20X1_IK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7365#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7366 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_IK4
7367#endif
7368 use pm_kind, only: IKG => IK4
7369 integer(IK) , intent(in) , optional :: doff
7370 integer(IK) , intent(in) :: nrow, ncol
7371 integer(IK) , intent(in) :: roff, coff
7372 type(uppDia_type) , intent(in) :: subset
7373 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7374 integer(IKG) , intent(in) , contiguous :: vdia(:)
7375 integer(IKG) , intent(in) :: vupp
7376 end subroutine
7377#endif
7378
7379#if IK3_ENABLED
7380 PURE module subroutine setMatInit_EXP_UXD_D20X1_IK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7381#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7382 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_IK3
7383#endif
7384 use pm_kind, only: IKG => IK3
7385 integer(IK) , intent(in) , optional :: doff
7386 integer(IK) , intent(in) :: nrow, ncol
7387 integer(IK) , intent(in) :: roff, coff
7388 type(uppDia_type) , intent(in) :: subset
7389 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7390 integer(IKG) , intent(in) , contiguous :: vdia(:)
7391 integer(IKG) , intent(in) :: vupp
7392 end subroutine
7393#endif
7394
7395#if IK2_ENABLED
7396 PURE module subroutine setMatInit_EXP_UXD_D20X1_IK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7397#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7398 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_IK2
7399#endif
7400 use pm_kind, only: IKG => IK2
7401 integer(IK) , intent(in) , optional :: doff
7402 integer(IK) , intent(in) :: nrow, ncol
7403 integer(IK) , intent(in) :: roff, coff
7404 type(uppDia_type) , intent(in) :: subset
7405 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7406 integer(IKG) , intent(in) , contiguous :: vdia(:)
7407 integer(IKG) , intent(in) :: vupp
7408 end subroutine
7409#endif
7410
7411#if IK1_ENABLED
7412 PURE module subroutine setMatInit_EXP_UXD_D20X1_IK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7413#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7414 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_IK1
7415#endif
7416 use pm_kind, only: IKG => IK1
7417 integer(IK) , intent(in) , optional :: doff
7418 integer(IK) , intent(in) :: nrow, ncol
7419 integer(IK) , intent(in) :: roff, coff
7420 type(uppDia_type) , intent(in) :: subset
7421 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7422 integer(IKG) , intent(in) , contiguous :: vdia(:)
7423 integer(IKG) , intent(in) :: vupp
7424 end subroutine
7425#endif
7426
7427 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7428
7429#if LK5_ENABLED
7430 PURE module subroutine setMatInit_EXP_UXD_D20X1_LK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7431#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7432 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_LK5
7433#endif
7434 use pm_kind, only: LKG => LK5
7435 integer(IK) , intent(in) , optional :: doff
7436 integer(IK) , intent(in) :: nrow, ncol
7437 integer(IK) , intent(in) :: roff, coff
7438 type(uppDia_type) , intent(in) :: subset
7439 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7440 logical(LKG) , intent(in) , contiguous :: vdia(:)
7441 logical(LKG) , intent(in) :: vupp
7442 end subroutine
7443#endif
7444
7445#if LK4_ENABLED
7446 PURE module subroutine setMatInit_EXP_UXD_D20X1_LK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7447#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7448 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_LK4
7449#endif
7450 use pm_kind, only: LKG => LK4
7451 integer(IK) , intent(in) , optional :: doff
7452 integer(IK) , intent(in) :: nrow, ncol
7453 integer(IK) , intent(in) :: roff, coff
7454 type(uppDia_type) , intent(in) :: subset
7455 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7456 logical(LKG) , intent(in) , contiguous :: vdia(:)
7457 logical(LKG) , intent(in) :: vupp
7458 end subroutine
7459#endif
7460
7461#if LK3_ENABLED
7462 PURE module subroutine setMatInit_EXP_UXD_D20X1_LK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7463#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7464 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_LK3
7465#endif
7466 use pm_kind, only: LKG => LK3
7467 integer(IK) , intent(in) , optional :: doff
7468 integer(IK) , intent(in) :: nrow, ncol
7469 integer(IK) , intent(in) :: roff, coff
7470 type(uppDia_type) , intent(in) :: subset
7471 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7472 logical(LKG) , intent(in) , contiguous :: vdia(:)
7473 logical(LKG) , intent(in) :: vupp
7474 end subroutine
7475#endif
7476
7477#if LK2_ENABLED
7478 PURE module subroutine setMatInit_EXP_UXD_D20X1_LK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7479#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7480 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_LK2
7481#endif
7482 use pm_kind, only: LKG => LK2
7483 integer(IK) , intent(in) , optional :: doff
7484 integer(IK) , intent(in) :: nrow, ncol
7485 integer(IK) , intent(in) :: roff, coff
7486 type(uppDia_type) , intent(in) :: subset
7487 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7488 logical(LKG) , intent(in) , contiguous :: vdia(:)
7489 logical(LKG) , intent(in) :: vupp
7490 end subroutine
7491#endif
7492
7493#if LK1_ENABLED
7494 PURE module subroutine setMatInit_EXP_UXD_D20X1_LK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7495#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7496 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_LK1
7497#endif
7498 use pm_kind, only: LKG => LK1
7499 integer(IK) , intent(in) , optional :: doff
7500 integer(IK) , intent(in) :: nrow, ncol
7501 integer(IK) , intent(in) :: roff, coff
7502 type(uppDia_type) , intent(in) :: subset
7503 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7504 logical(LKG) , intent(in) , contiguous :: vdia(:)
7505 logical(LKG) , intent(in) :: vupp
7506 end subroutine
7507#endif
7508
7509 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7510
7511#if CK5_ENABLED
7512 PURE module subroutine setMatInit_EXP_UXD_D20X1_CK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7513#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7514 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_CK5
7515#endif
7516 use pm_kind, only: CKG => CK5
7517 integer(IK) , intent(in) , optional :: doff
7518 integer(IK) , intent(in) :: nrow, ncol
7519 integer(IK) , intent(in) :: roff, coff
7520 type(uppDia_type) , intent(in) :: subset
7521 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7522 complex(CKG) , intent(in) , contiguous :: vdia(:)
7523 complex(CKG) , intent(in) :: vupp
7524 end subroutine
7525#endif
7526
7527#if CK4_ENABLED
7528 PURE module subroutine setMatInit_EXP_UXD_D20X1_CK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7529#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7530 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_CK4
7531#endif
7532 use pm_kind, only: CKG => CK4
7533 integer(IK) , intent(in) , optional :: doff
7534 integer(IK) , intent(in) :: nrow, ncol
7535 integer(IK) , intent(in) :: roff, coff
7536 type(uppDia_type) , intent(in) :: subset
7537 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7538 complex(CKG) , intent(in) , contiguous :: vdia(:)
7539 complex(CKG) , intent(in) :: vupp
7540 end subroutine
7541#endif
7542
7543#if CK3_ENABLED
7544 PURE module subroutine setMatInit_EXP_UXD_D20X1_CK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7545#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7546 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_CK3
7547#endif
7548 use pm_kind, only: CKG => CK3
7549 integer(IK) , intent(in) , optional :: doff
7550 integer(IK) , intent(in) :: nrow, ncol
7551 integer(IK) , intent(in) :: roff, coff
7552 type(uppDia_type) , intent(in) :: subset
7553 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7554 complex(CKG) , intent(in) , contiguous :: vdia(:)
7555 complex(CKG) , intent(in) :: vupp
7556 end subroutine
7557#endif
7558
7559#if CK2_ENABLED
7560 PURE module subroutine setMatInit_EXP_UXD_D20X1_CK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7561#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7562 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_CK2
7563#endif
7564 use pm_kind, only: CKG => CK2
7565 integer(IK) , intent(in) , optional :: doff
7566 integer(IK) , intent(in) :: nrow, ncol
7567 integer(IK) , intent(in) :: roff, coff
7568 type(uppDia_type) , intent(in) :: subset
7569 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7570 complex(CKG) , intent(in) , contiguous :: vdia(:)
7571 complex(CKG) , intent(in) :: vupp
7572 end subroutine
7573#endif
7574
7575#if CK1_ENABLED
7576 PURE module subroutine setMatInit_EXP_UXD_D20X1_CK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7577#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7578 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_CK1
7579#endif
7580 use pm_kind, only: CKG => CK1
7581 integer(IK) , intent(in) , optional :: doff
7582 integer(IK) , intent(in) :: nrow, ncol
7583 integer(IK) , intent(in) :: roff, coff
7584 type(uppDia_type) , intent(in) :: subset
7585 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7586 complex(CKG) , intent(in) , contiguous :: vdia(:)
7587 complex(CKG) , intent(in) :: vupp
7588 end subroutine
7589#endif
7590
7591 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7592
7593#if RK5_ENABLED
7594 PURE module subroutine setMatInit_EXP_UXD_D20X1_RK5(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7595#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7596 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_RK5
7597#endif
7598 use pm_kind, only: RKG => RK5
7599 integer(IK) , intent(in) , optional :: doff
7600 integer(IK) , intent(in) :: nrow, ncol
7601 integer(IK) , intent(in) :: roff, coff
7602 type(uppDia_type) , intent(in) :: subset
7603 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7604 real(RKG) , intent(in) , contiguous :: vdia(:)
7605 real(RKG) , intent(in) :: vupp
7606 end subroutine
7607#endif
7608
7609#if RK4_ENABLED
7610 PURE module subroutine setMatInit_EXP_UXD_D20X1_RK4(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7611#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7612 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_RK4
7613#endif
7614 use pm_kind, only: RKG => RK4
7615 integer(IK) , intent(in) , optional :: doff
7616 integer(IK) , intent(in) :: nrow, ncol
7617 integer(IK) , intent(in) :: roff, coff
7618 type(uppDia_type) , intent(in) :: subset
7619 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7620 real(RKG) , intent(in) , contiguous :: vdia(:)
7621 real(RKG) , intent(in) :: vupp
7622 end subroutine
7623#endif
7624
7625#if RK3_ENABLED
7626 PURE module subroutine setMatInit_EXP_UXD_D20X1_RK3(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7627#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7628 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_RK3
7629#endif
7630 use pm_kind, only: RKG => RK3
7631 integer(IK) , intent(in) , optional :: doff
7632 integer(IK) , intent(in) :: nrow, ncol
7633 integer(IK) , intent(in) :: roff, coff
7634 type(uppDia_type) , intent(in) :: subset
7635 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7636 real(RKG) , intent(in) , contiguous :: vdia(:)
7637 real(RKG) , intent(in) :: vupp
7638 end subroutine
7639#endif
7640
7641#if RK2_ENABLED
7642 PURE module subroutine setMatInit_EXP_UXD_D20X1_RK2(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7643#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7644 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_RK2
7645#endif
7646 use pm_kind, only: RKG => RK2
7647 integer(IK) , intent(in) , optional :: doff
7648 integer(IK) , intent(in) :: nrow, ncol
7649 integer(IK) , intent(in) :: roff, coff
7650 type(uppDia_type) , intent(in) :: subset
7651 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7652 real(RKG) , intent(in) , contiguous :: vdia(:)
7653 real(RKG) , intent(in) :: vupp
7654 end subroutine
7655#endif
7656
7657#if RK1_ENABLED
7658 PURE module subroutine setMatInit_EXP_UXD_D20X1_RK1(mat, subset, vupp, vdia, nrow, ncol, roff, coff, doff)
7659#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7660 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_UXD_D20X1_RK1
7661#endif
7662 use pm_kind, only: RKG => RK1
7663 integer(IK) , intent(in) , optional :: doff
7664 integer(IK) , intent(in) :: nrow, ncol
7665 integer(IK) , intent(in) :: roff, coff
7666 type(uppDia_type) , intent(in) :: subset
7667 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7668 real(RKG) , intent(in) , contiguous :: vdia(:)
7669 real(RKG) , intent(in) :: vupp
7670 end subroutine
7671#endif
7672
7673 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7674
7675 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7676 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7677 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7678
7679 end interface
7680
7681 ! EXP_ULX
7682
7683 interface setMatInit
7684
7685 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7686 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7687 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7688
7689 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7690
7691#if SK5_ENABLED
7692 PURE module subroutine setMatInit_EXP_ULX_D200X_SK5(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7693#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7694 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_SK5
7695#endif
7696 use pm_kind, only: SKG => SK5
7697 integer(IK) , intent(in) , optional :: doff
7698 integer(IK) , intent(in) :: nrow, ncol
7699 integer(IK) , intent(in) :: roff, coff
7700 type(uppLow_type) , intent(in) :: subset
7701 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7702 character(*,SKG) , intent(in) :: vupp, vlow
7703 end subroutine
7704#endif
7705
7706#if SK4_ENABLED
7707 PURE module subroutine setMatInit_EXP_ULX_D200X_SK4(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7708#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7709 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_SK4
7710#endif
7711 use pm_kind, only: SKG => SK4
7712 integer(IK) , intent(in) , optional :: doff
7713 integer(IK) , intent(in) :: nrow, ncol
7714 integer(IK) , intent(in) :: roff, coff
7715 type(uppLow_type) , intent(in) :: subset
7716 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7717 character(*,SKG) , intent(in) :: vupp, vlow
7718 end subroutine
7719#endif
7720
7721#if SK3_ENABLED
7722 PURE module subroutine setMatInit_EXP_ULX_D200X_SK3(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7723#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7724 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_SK3
7725#endif
7726 use pm_kind, only: SKG => SK3
7727 integer(IK) , intent(in) , optional :: doff
7728 integer(IK) , intent(in) :: nrow, ncol
7729 integer(IK) , intent(in) :: roff, coff
7730 type(uppLow_type) , intent(in) :: subset
7731 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7732 character(*,SKG) , intent(in) :: vupp, vlow
7733 end subroutine
7734#endif
7735
7736#if SK2_ENABLED
7737 PURE module subroutine setMatInit_EXP_ULX_D200X_SK2(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7739 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_SK2
7740#endif
7741 use pm_kind, only: SKG => SK2
7742 integer(IK) , intent(in) , optional :: doff
7743 integer(IK) , intent(in) :: nrow, ncol
7744 integer(IK) , intent(in) :: roff, coff
7745 type(uppLow_type) , intent(in) :: subset
7746 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7747 character(*,SKG) , intent(in) :: vupp, vlow
7748 end subroutine
7749#endif
7750
7751#if SK1_ENABLED
7752 PURE module subroutine setMatInit_EXP_ULX_D200X_SK1(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7753#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7754 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_SK1
7755#endif
7756 use pm_kind, only: SKG => SK1
7757 integer(IK) , intent(in) , optional :: doff
7758 integer(IK) , intent(in) :: nrow, ncol
7759 integer(IK) , intent(in) :: roff, coff
7760 type(uppLow_type) , intent(in) :: subset
7761 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7762 character(*,SKG) , intent(in) :: vupp, vlow
7763 end subroutine
7764#endif
7765
7766 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7767
7768#if IK5_ENABLED
7769 PURE module subroutine setMatInit_EXP_ULX_D200X_IK5(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7770#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7771 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_IK5
7772#endif
7773 use pm_kind, only: IKG => IK5
7774 integer(IK) , intent(in) , optional :: doff
7775 integer(IK) , intent(in) :: nrow, ncol
7776 integer(IK) , intent(in) :: roff, coff
7777 type(uppLow_type) , intent(in) :: subset
7778 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7779 integer(IKG) , intent(in) :: vupp, vlow
7780 end subroutine
7781#endif
7782
7783#if IK4_ENABLED
7784 PURE module subroutine setMatInit_EXP_ULX_D200X_IK4(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7785#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7786 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_IK4
7787#endif
7788 use pm_kind, only: IKG => IK4
7789 integer(IK) , intent(in) , optional :: doff
7790 integer(IK) , intent(in) :: nrow, ncol
7791 integer(IK) , intent(in) :: roff, coff
7792 type(uppLow_type) , intent(in) :: subset
7793 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7794 integer(IKG) , intent(in) :: vupp, vlow
7795 end subroutine
7796#endif
7797
7798#if IK3_ENABLED
7799 PURE module subroutine setMatInit_EXP_ULX_D200X_IK3(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7800#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7801 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_IK3
7802#endif
7803 use pm_kind, only: IKG => IK3
7804 integer(IK) , intent(in) , optional :: doff
7805 integer(IK) , intent(in) :: nrow, ncol
7806 integer(IK) , intent(in) :: roff, coff
7807 type(uppLow_type) , intent(in) :: subset
7808 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7809 integer(IKG) , intent(in) :: vupp, vlow
7810 end subroutine
7811#endif
7812
7813#if IK2_ENABLED
7814 PURE module subroutine setMatInit_EXP_ULX_D200X_IK2(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7815#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7816 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_IK2
7817#endif
7818 use pm_kind, only: IKG => IK2
7819 integer(IK) , intent(in) , optional :: doff
7820 integer(IK) , intent(in) :: nrow, ncol
7821 integer(IK) , intent(in) :: roff, coff
7822 type(uppLow_type) , intent(in) :: subset
7823 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7824 integer(IKG) , intent(in) :: vupp, vlow
7825 end subroutine
7826#endif
7827
7828#if IK1_ENABLED
7829 PURE module subroutine setMatInit_EXP_ULX_D200X_IK1(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7830#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7831 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_IK1
7832#endif
7833 use pm_kind, only: IKG => IK1
7834 integer(IK) , intent(in) , optional :: doff
7835 integer(IK) , intent(in) :: nrow, ncol
7836 integer(IK) , intent(in) :: roff, coff
7837 type(uppLow_type) , intent(in) :: subset
7838 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7839 integer(IKG) , intent(in) :: vupp, vlow
7840 end subroutine
7841#endif
7842
7843 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7844
7845#if LK5_ENABLED
7846 PURE module subroutine setMatInit_EXP_ULX_D200X_LK5(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7847#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7848 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_LK5
7849#endif
7850 use pm_kind, only: LKG => LK5
7851 integer(IK) , intent(in) , optional :: doff
7852 integer(IK) , intent(in) :: nrow, ncol
7853 integer(IK) , intent(in) :: roff, coff
7854 type(uppLow_type) , intent(in) :: subset
7855 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7856 logical(LKG) , intent(in) :: vupp, vlow
7857 end subroutine
7858#endif
7859
7860#if LK4_ENABLED
7861 PURE module subroutine setMatInit_EXP_ULX_D200X_LK4(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7862#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7863 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_LK4
7864#endif
7865 use pm_kind, only: LKG => LK4
7866 integer(IK) , intent(in) , optional :: doff
7867 integer(IK) , intent(in) :: nrow, ncol
7868 integer(IK) , intent(in) :: roff, coff
7869 type(uppLow_type) , intent(in) :: subset
7870 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7871 logical(LKG) , intent(in) :: vupp, vlow
7872 end subroutine
7873#endif
7874
7875#if LK3_ENABLED
7876 PURE module subroutine setMatInit_EXP_ULX_D200X_LK3(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7877#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7878 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_LK3
7879#endif
7880 use pm_kind, only: LKG => LK3
7881 integer(IK) , intent(in) , optional :: doff
7882 integer(IK) , intent(in) :: nrow, ncol
7883 integer(IK) , intent(in) :: roff, coff
7884 type(uppLow_type) , intent(in) :: subset
7885 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7886 logical(LKG) , intent(in) :: vupp, vlow
7887 end subroutine
7888#endif
7889
7890#if LK2_ENABLED
7891 PURE module subroutine setMatInit_EXP_ULX_D200X_LK2(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7892#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7893 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_LK2
7894#endif
7895 use pm_kind, only: LKG => LK2
7896 integer(IK) , intent(in) , optional :: doff
7897 integer(IK) , intent(in) :: nrow, ncol
7898 integer(IK) , intent(in) :: roff, coff
7899 type(uppLow_type) , intent(in) :: subset
7900 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7901 logical(LKG) , intent(in) :: vupp, vlow
7902 end subroutine
7903#endif
7904
7905#if LK1_ENABLED
7906 PURE module subroutine setMatInit_EXP_ULX_D200X_LK1(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7907#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7908 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_LK1
7909#endif
7910 use pm_kind, only: LKG => LK1
7911 integer(IK) , intent(in) , optional :: doff
7912 integer(IK) , intent(in) :: nrow, ncol
7913 integer(IK) , intent(in) :: roff, coff
7914 type(uppLow_type) , intent(in) :: subset
7915 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7916 logical(LKG) , intent(in) :: vupp, vlow
7917 end subroutine
7918#endif
7919
7920 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7921
7922#if CK5_ENABLED
7923 PURE module subroutine setMatInit_EXP_ULX_D200X_CK5(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7924#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7925 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_CK5
7926#endif
7927 use pm_kind, only: CKG => CK5
7928 integer(IK) , intent(in) , optional :: doff
7929 integer(IK) , intent(in) :: nrow, ncol
7930 integer(IK) , intent(in) :: roff, coff
7931 type(uppLow_type) , intent(in) :: subset
7932 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7933 complex(CKG) , intent(in) :: vupp, vlow
7934 end subroutine
7935#endif
7936
7937#if CK4_ENABLED
7938 PURE module subroutine setMatInit_EXP_ULX_D200X_CK4(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7940 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_CK4
7941#endif
7942 use pm_kind, only: CKG => CK4
7943 integer(IK) , intent(in) , optional :: doff
7944 integer(IK) , intent(in) :: nrow, ncol
7945 integer(IK) , intent(in) :: roff, coff
7946 type(uppLow_type) , intent(in) :: subset
7947 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7948 complex(CKG) , intent(in) :: vupp, vlow
7949 end subroutine
7950#endif
7951
7952#if CK3_ENABLED
7953 PURE module subroutine setMatInit_EXP_ULX_D200X_CK3(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7954#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7955 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_CK3
7956#endif
7957 use pm_kind, only: CKG => CK3
7958 integer(IK) , intent(in) , optional :: doff
7959 integer(IK) , intent(in) :: nrow, ncol
7960 integer(IK) , intent(in) :: roff, coff
7961 type(uppLow_type) , intent(in) :: subset
7962 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7963 complex(CKG) , intent(in) :: vupp, vlow
7964 end subroutine
7965#endif
7966
7967#if CK2_ENABLED
7968 PURE module subroutine setMatInit_EXP_ULX_D200X_CK2(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7969#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7970 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_CK2
7971#endif
7972 use pm_kind, only: CKG => CK2
7973 integer(IK) , intent(in) , optional :: doff
7974 integer(IK) , intent(in) :: nrow, ncol
7975 integer(IK) , intent(in) :: roff, coff
7976 type(uppLow_type) , intent(in) :: subset
7977 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7978 complex(CKG) , intent(in) :: vupp, vlow
7979 end subroutine
7980#endif
7981
7982#if CK1_ENABLED
7983 PURE module subroutine setMatInit_EXP_ULX_D200X_CK1(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
7984#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7985 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_CK1
7986#endif
7987 use pm_kind, only: CKG => CK1
7988 integer(IK) , intent(in) , optional :: doff
7989 integer(IK) , intent(in) :: nrow, ncol
7990 integer(IK) , intent(in) :: roff, coff
7991 type(uppLow_type) , intent(in) :: subset
7992 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
7993 complex(CKG) , intent(in) :: vupp, vlow
7994 end subroutine
7995#endif
7996
7997 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7998
7999#if RK5_ENABLED
8000 PURE module subroutine setMatInit_EXP_ULX_D200X_RK5(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
8001#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8002 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_RK5
8003#endif
8004 use pm_kind, only: RKG => RK5
8005 integer(IK) , intent(in) , optional :: doff
8006 integer(IK) , intent(in) :: nrow, ncol
8007 integer(IK) , intent(in) :: roff, coff
8008 type(uppLow_type) , intent(in) :: subset
8009 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8010 real(RKG) , intent(in) :: vupp, vlow
8011 end subroutine
8012#endif
8013
8014#if RK4_ENABLED
8015 PURE module subroutine setMatInit_EXP_ULX_D200X_RK4(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
8016#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8017 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_RK4
8018#endif
8019 use pm_kind, only: RKG => RK4
8020 integer(IK) , intent(in) , optional :: doff
8021 integer(IK) , intent(in) :: nrow, ncol
8022 integer(IK) , intent(in) :: roff, coff
8023 type(uppLow_type) , intent(in) :: subset
8024 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8025 real(RKG) , intent(in) :: vupp, vlow
8026 end subroutine
8027#endif
8028
8029#if RK3_ENABLED
8030 PURE module subroutine setMatInit_EXP_ULX_D200X_RK3(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
8031#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8032 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_RK3
8033#endif
8034 use pm_kind, only: RKG => RK3
8035 integer(IK) , intent(in) , optional :: doff
8036 integer(IK) , intent(in) :: nrow, ncol
8037 integer(IK) , intent(in) :: roff, coff
8038 type(uppLow_type) , intent(in) :: subset
8039 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8040 real(RKG) , intent(in) :: vupp, vlow
8041 end subroutine
8042#endif
8043
8044#if RK2_ENABLED
8045 PURE module subroutine setMatInit_EXP_ULX_D200X_RK2(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
8046#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8047 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_RK2
8048#endif
8049 use pm_kind, only: RKG => RK2
8050 integer(IK) , intent(in) , optional :: doff
8051 integer(IK) , intent(in) :: nrow, ncol
8052 integer(IK) , intent(in) :: roff, coff
8053 type(uppLow_type) , intent(in) :: subset
8054 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8055 real(RKG) , intent(in) :: vupp, vlow
8056 end subroutine
8057#endif
8058
8059#if RK1_ENABLED
8060 PURE module subroutine setMatInit_EXP_ULX_D200X_RK1(mat, subset, vupp, vlow, nrow, ncol, roff, coff, doff)
8061#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8062 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULX_D200X_RK1
8063#endif
8064 use pm_kind, only: RKG => RK1
8065 integer(IK) , intent(in) , optional :: doff
8066 integer(IK) , intent(in) :: nrow, ncol
8067 integer(IK) , intent(in) :: roff, coff
8068 type(uppLow_type) , intent(in) :: subset
8069 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8070 real(RKG) , intent(in) :: vupp, vlow
8071 end subroutine
8072#endif
8073
8074 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8075
8076 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8077 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8078 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8079
8080 end interface
8081
8082 ! EXP_ULD
8083
8084 interface setMatInit
8085
8086 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8087 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8088 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8089
8090 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8091
8092#if SK5_ENABLED
8093 PURE module subroutine setMatInit_EXP_ULD_D2000_SK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8094#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8095 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_SK5
8096#endif
8097 use pm_kind, only: SKG => SK5
8098 type(uppLowDia_type) , intent(in) :: subset
8099 integer(IK) , intent(in) , optional :: doff
8100 integer(IK) , intent(in) :: nrow, ncol
8101 integer(IK) , intent(in) :: roff, coff
8102 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8103 character(*,SKG) , intent(in) :: vupp, vlow
8104 character(*,SKG) , intent(in) :: vdia
8105 end subroutine
8106#endif
8107
8108#if SK4_ENABLED
8109 PURE module subroutine setMatInit_EXP_ULD_D2000_SK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8110#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8111 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_SK4
8112#endif
8113 use pm_kind, only: SKG => SK4
8114 type(uppLowDia_type) , intent(in) :: subset
8115 integer(IK) , intent(in) , optional :: doff
8116 integer(IK) , intent(in) :: nrow, ncol
8117 integer(IK) , intent(in) :: roff, coff
8118 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8119 character(*,SKG) , intent(in) :: vupp, vlow
8120 character(*,SKG) , intent(in) :: vdia
8121 end subroutine
8122#endif
8123
8124#if SK3_ENABLED
8125 PURE module subroutine setMatInit_EXP_ULD_D2000_SK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8126#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8127 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_SK3
8128#endif
8129 use pm_kind, only: SKG => SK3
8130 type(uppLowDia_type) , intent(in) :: subset
8131 integer(IK) , intent(in) , optional :: doff
8132 integer(IK) , intent(in) :: nrow, ncol
8133 integer(IK) , intent(in) :: roff, coff
8134 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8135 character(*,SKG) , intent(in) :: vupp, vlow
8136 character(*,SKG) , intent(in) :: vdia
8137 end subroutine
8138#endif
8139
8140#if SK2_ENABLED
8141 PURE module subroutine setMatInit_EXP_ULD_D2000_SK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8142#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8143 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_SK2
8144#endif
8145 use pm_kind, only: SKG => SK2
8146 type(uppLowDia_type) , intent(in) :: subset
8147 integer(IK) , intent(in) , optional :: doff
8148 integer(IK) , intent(in) :: nrow, ncol
8149 integer(IK) , intent(in) :: roff, coff
8150 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8151 character(*,SKG) , intent(in) :: vupp, vlow
8152 character(*,SKG) , intent(in) :: vdia
8153 end subroutine
8154#endif
8155
8156#if SK1_ENABLED
8157 PURE module subroutine setMatInit_EXP_ULD_D2000_SK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8158#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8159 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_SK1
8160#endif
8161 use pm_kind, only: SKG => SK1
8162 type(uppLowDia_type) , intent(in) :: subset
8163 integer(IK) , intent(in) , optional :: doff
8164 integer(IK) , intent(in) :: nrow, ncol
8165 integer(IK) , intent(in) :: roff, coff
8166 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8167 character(*,SKG) , intent(in) :: vupp, vlow
8168 character(*,SKG) , intent(in) :: vdia
8169 end subroutine
8170#endif
8171
8172 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8173
8174#if IK5_ENABLED
8175 PURE module subroutine setMatInit_EXP_ULD_D2000_IK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8176#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8177 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_IK5
8178#endif
8179 use pm_kind, only: IKG => IK5
8180 type(uppLowDia_type) , intent(in) :: subset
8181 integer(IK) , intent(in) , optional :: doff
8182 integer(IK) , intent(in) :: nrow, ncol
8183 integer(IK) , intent(in) :: roff, coff
8184 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8185 integer(IKG) , intent(in) :: vupp, vlow
8186 integer(IKG) , intent(in) :: vdia
8187 end subroutine
8188#endif
8189
8190#if IK4_ENABLED
8191 PURE module subroutine setMatInit_EXP_ULD_D2000_IK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8192#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8193 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_IK4
8194#endif
8195 use pm_kind, only: IKG => IK4
8196 type(uppLowDia_type) , intent(in) :: subset
8197 integer(IK) , intent(in) , optional :: doff
8198 integer(IK) , intent(in) :: nrow, ncol
8199 integer(IK) , intent(in) :: roff, coff
8200 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8201 integer(IKG) , intent(in) :: vupp, vlow
8202 integer(IKG) , intent(in) :: vdia
8203 end subroutine
8204#endif
8205
8206#if IK3_ENABLED
8207 PURE module subroutine setMatInit_EXP_ULD_D2000_IK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8208#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8209 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_IK3
8210#endif
8211 use pm_kind, only: IKG => IK3
8212 type(uppLowDia_type) , intent(in) :: subset
8213 integer(IK) , intent(in) , optional :: doff
8214 integer(IK) , intent(in) :: nrow, ncol
8215 integer(IK) , intent(in) :: roff, coff
8216 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8217 integer(IKG) , intent(in) :: vupp, vlow
8218 integer(IKG) , intent(in) :: vdia
8219 end subroutine
8220#endif
8221
8222#if IK2_ENABLED
8223 PURE module subroutine setMatInit_EXP_ULD_D2000_IK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8224#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8225 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_IK2
8226#endif
8227 use pm_kind, only: IKG => IK2
8228 type(uppLowDia_type) , intent(in) :: subset
8229 integer(IK) , intent(in) , optional :: doff
8230 integer(IK) , intent(in) :: nrow, ncol
8231 integer(IK) , intent(in) :: roff, coff
8232 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8233 integer(IKG) , intent(in) :: vupp, vlow
8234 integer(IKG) , intent(in) :: vdia
8235 end subroutine
8236#endif
8237
8238#if IK1_ENABLED
8239 PURE module subroutine setMatInit_EXP_ULD_D2000_IK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8240#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8241 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_IK1
8242#endif
8243 use pm_kind, only: IKG => IK1
8244 type(uppLowDia_type) , intent(in) :: subset
8245 integer(IK) , intent(in) , optional :: doff
8246 integer(IK) , intent(in) :: nrow, ncol
8247 integer(IK) , intent(in) :: roff, coff
8248 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8249 integer(IKG) , intent(in) :: vupp, vlow
8250 integer(IKG) , intent(in) :: vdia
8251 end subroutine
8252#endif
8253
8254 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8255
8256#if LK5_ENABLED
8257 PURE module subroutine setMatInit_EXP_ULD_D2000_LK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8258#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8259 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_LK5
8260#endif
8261 use pm_kind, only: LKG => LK5
8262 type(uppLowDia_type) , intent(in) :: subset
8263 integer(IK) , intent(in) , optional :: doff
8264 integer(IK) , intent(in) :: nrow, ncol
8265 integer(IK) , intent(in) :: roff, coff
8266 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8267 logical(LKG) , intent(in) :: vupp, vlow
8268 logical(LKG) , intent(in) :: vdia
8269 end subroutine
8270#endif
8271
8272#if LK4_ENABLED
8273 PURE module subroutine setMatInit_EXP_ULD_D2000_LK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8274#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8275 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_LK4
8276#endif
8277 use pm_kind, only: LKG => LK4
8278 type(uppLowDia_type) , intent(in) :: subset
8279 integer(IK) , intent(in) , optional :: doff
8280 integer(IK) , intent(in) :: nrow, ncol
8281 integer(IK) , intent(in) :: roff, coff
8282 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8283 logical(LKG) , intent(in) :: vupp, vlow
8284 logical(LKG) , intent(in) :: vdia
8285 end subroutine
8286#endif
8287
8288#if LK3_ENABLED
8289 PURE module subroutine setMatInit_EXP_ULD_D2000_LK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8290#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8291 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_LK3
8292#endif
8293 use pm_kind, only: LKG => LK3
8294 type(uppLowDia_type) , intent(in) :: subset
8295 integer(IK) , intent(in) , optional :: doff
8296 integer(IK) , intent(in) :: nrow, ncol
8297 integer(IK) , intent(in) :: roff, coff
8298 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8299 logical(LKG) , intent(in) :: vupp, vlow
8300 logical(LKG) , intent(in) :: vdia
8301 end subroutine
8302#endif
8303
8304#if LK2_ENABLED
8305 PURE module subroutine setMatInit_EXP_ULD_D2000_LK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8306#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8307 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_LK2
8308#endif
8309 use pm_kind, only: LKG => LK2
8310 type(uppLowDia_type) , intent(in) :: subset
8311 integer(IK) , intent(in) , optional :: doff
8312 integer(IK) , intent(in) :: nrow, ncol
8313 integer(IK) , intent(in) :: roff, coff
8314 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8315 logical(LKG) , intent(in) :: vupp, vlow
8316 logical(LKG) , intent(in) :: vdia
8317 end subroutine
8318#endif
8319
8320#if LK1_ENABLED
8321 PURE module subroutine setMatInit_EXP_ULD_D2000_LK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8322#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8323 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_LK1
8324#endif
8325 use pm_kind, only: LKG => LK1
8326 type(uppLowDia_type) , intent(in) :: subset
8327 integer(IK) , intent(in) , optional :: doff
8328 integer(IK) , intent(in) :: nrow, ncol
8329 integer(IK) , intent(in) :: roff, coff
8330 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8331 logical(LKG) , intent(in) :: vupp, vlow
8332 logical(LKG) , intent(in) :: vdia
8333 end subroutine
8334#endif
8335
8336 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8337
8338#if CK5_ENABLED
8339 PURE module subroutine setMatInit_EXP_ULD_D2000_CK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8340#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8341 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_CK5
8342#endif
8343 use pm_kind, only: CKG => CK5
8344 type(uppLowDia_type) , intent(in) :: subset
8345 integer(IK) , intent(in) , optional :: doff
8346 integer(IK) , intent(in) :: nrow, ncol
8347 integer(IK) , intent(in) :: roff, coff
8348 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8349 complex(CKG) , intent(in) :: vupp, vlow
8350 complex(CKG) , intent(in) :: vdia
8351 end subroutine
8352#endif
8353
8354#if CK4_ENABLED
8355 PURE module subroutine setMatInit_EXP_ULD_D2000_CK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8356#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8357 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_CK4
8358#endif
8359 use pm_kind, only: CKG => CK4
8360 type(uppLowDia_type) , intent(in) :: subset
8361 integer(IK) , intent(in) , optional :: doff
8362 integer(IK) , intent(in) :: nrow, ncol
8363 integer(IK) , intent(in) :: roff, coff
8364 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8365 complex(CKG) , intent(in) :: vupp, vlow
8366 complex(CKG) , intent(in) :: vdia
8367 end subroutine
8368#endif
8369
8370#if CK3_ENABLED
8371 PURE module subroutine setMatInit_EXP_ULD_D2000_CK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8372#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8373 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_CK3
8374#endif
8375 use pm_kind, only: CKG => CK3
8376 type(uppLowDia_type) , intent(in) :: subset
8377 integer(IK) , intent(in) , optional :: doff
8378 integer(IK) , intent(in) :: nrow, ncol
8379 integer(IK) , intent(in) :: roff, coff
8380 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8381 complex(CKG) , intent(in) :: vupp, vlow
8382 complex(CKG) , intent(in) :: vdia
8383 end subroutine
8384#endif
8385
8386#if CK2_ENABLED
8387 PURE module subroutine setMatInit_EXP_ULD_D2000_CK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8388#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8389 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_CK2
8390#endif
8391 use pm_kind, only: CKG => CK2
8392 type(uppLowDia_type) , intent(in) :: subset
8393 integer(IK) , intent(in) , optional :: doff
8394 integer(IK) , intent(in) :: nrow, ncol
8395 integer(IK) , intent(in) :: roff, coff
8396 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8397 complex(CKG) , intent(in) :: vupp, vlow
8398 complex(CKG) , intent(in) :: vdia
8399 end subroutine
8400#endif
8401
8402#if CK1_ENABLED
8403 PURE module subroutine setMatInit_EXP_ULD_D2000_CK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8404#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8405 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_CK1
8406#endif
8407 use pm_kind, only: CKG => CK1
8408 type(uppLowDia_type) , intent(in) :: subset
8409 integer(IK) , intent(in) , optional :: doff
8410 integer(IK) , intent(in) :: nrow, ncol
8411 integer(IK) , intent(in) :: roff, coff
8412 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8413 complex(CKG) , intent(in) :: vupp, vlow
8414 complex(CKG) , intent(in) :: vdia
8415 end subroutine
8416#endif
8417
8418 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8419
8420#if RK5_ENABLED
8421 PURE module subroutine setMatInit_EXP_ULD_D2000_RK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8422#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8423 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_RK5
8424#endif
8425 use pm_kind, only: RKG => RK5
8426 type(uppLowDia_type) , intent(in) :: subset
8427 integer(IK) , intent(in) , optional :: doff
8428 integer(IK) , intent(in) :: nrow, ncol
8429 integer(IK) , intent(in) :: roff, coff
8430 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8431 real(RKG) , intent(in) :: vupp, vlow
8432 real(RKG) , intent(in) :: vdia
8433 end subroutine
8434#endif
8435
8436#if RK4_ENABLED
8437 PURE module subroutine setMatInit_EXP_ULD_D2000_RK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8438#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8439 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_RK4
8440#endif
8441 use pm_kind, only: RKG => RK4
8442 type(uppLowDia_type) , intent(in) :: subset
8443 integer(IK) , intent(in) , optional :: doff
8444 integer(IK) , intent(in) :: nrow, ncol
8445 integer(IK) , intent(in) :: roff, coff
8446 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8447 real(RKG) , intent(in) :: vupp, vlow
8448 real(RKG) , intent(in) :: vdia
8449 end subroutine
8450#endif
8451
8452#if RK3_ENABLED
8453 PURE module subroutine setMatInit_EXP_ULD_D2000_RK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8454#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8455 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_RK3
8456#endif
8457 use pm_kind, only: RKG => RK3
8458 type(uppLowDia_type) , intent(in) :: subset
8459 integer(IK) , intent(in) , optional :: doff
8460 integer(IK) , intent(in) :: nrow, ncol
8461 integer(IK) , intent(in) :: roff, coff
8462 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8463 real(RKG) , intent(in) :: vupp, vlow
8464 real(RKG) , intent(in) :: vdia
8465 end subroutine
8466#endif
8467
8468#if RK2_ENABLED
8469 PURE module subroutine setMatInit_EXP_ULD_D2000_RK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8470#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8471 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_RK2
8472#endif
8473 use pm_kind, only: RKG => RK2
8474 type(uppLowDia_type) , intent(in) :: subset
8475 integer(IK) , intent(in) , optional :: doff
8476 integer(IK) , intent(in) :: nrow, ncol
8477 integer(IK) , intent(in) :: roff, coff
8478 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8479 real(RKG) , intent(in) :: vupp, vlow
8480 real(RKG) , intent(in) :: vdia
8481 end subroutine
8482#endif
8483
8484#if RK1_ENABLED
8485 PURE module subroutine setMatInit_EXP_ULD_D2000_RK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8486#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8487 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2000_RK1
8488#endif
8489 use pm_kind, only: RKG => RK1
8490 type(uppLowDia_type) , intent(in) :: subset
8491 integer(IK) , intent(in) , optional :: doff
8492 integer(IK) , intent(in) :: nrow, ncol
8493 integer(IK) , intent(in) :: roff, coff
8494 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8495 real(RKG) , intent(in) :: vupp, vlow
8496 real(RKG) , intent(in) :: vdia
8497 end subroutine
8498#endif
8499
8500 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8501
8502 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8503 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8504 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8505
8506 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8507
8508#if SK5_ENABLED
8509 PURE module subroutine setMatInit_EXP_ULD_D2001_SK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8510#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8511 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_SK5
8512#endif
8513 use pm_kind, only: SKG => SK5
8514 type(uppLowDia_type) , intent(in) :: subset
8515 integer(IK) , intent(in) , optional :: doff
8516 integer(IK) , intent(in) :: nrow, ncol
8517 integer(IK) , intent(in) :: roff, coff
8518 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8519 character(*,SKG) , intent(in) , contiguous :: vdia(:)
8520 character(*,SKG) , intent(in) :: vupp, vlow
8521 end subroutine
8522#endif
8523
8524#if SK4_ENABLED
8525 PURE module subroutine setMatInit_EXP_ULD_D2001_SK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8526#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8527 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_SK4
8528#endif
8529 use pm_kind, only: SKG => SK4
8530 type(uppLowDia_type) , intent(in) :: subset
8531 integer(IK) , intent(in) , optional :: doff
8532 integer(IK) , intent(in) :: nrow, ncol
8533 integer(IK) , intent(in) :: roff, coff
8534 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8535 character(*,SKG) , intent(in) , contiguous :: vdia(:)
8536 character(*,SKG) , intent(in) :: vupp, vlow
8537 end subroutine
8538#endif
8539
8540#if SK3_ENABLED
8541 PURE module subroutine setMatInit_EXP_ULD_D2001_SK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8542#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8543 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_SK3
8544#endif
8545 use pm_kind, only: SKG => SK3
8546 type(uppLowDia_type) , intent(in) :: subset
8547 integer(IK) , intent(in) , optional :: doff
8548 integer(IK) , intent(in) :: nrow, ncol
8549 integer(IK) , intent(in) :: roff, coff
8550 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8551 character(*,SKG) , intent(in) , contiguous :: vdia(:)
8552 character(*,SKG) , intent(in) :: vupp, vlow
8553 end subroutine
8554#endif
8555
8556#if SK2_ENABLED
8557 PURE module subroutine setMatInit_EXP_ULD_D2001_SK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8558#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8559 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_SK2
8560#endif
8561 use pm_kind, only: SKG => SK2
8562 type(uppLowDia_type) , intent(in) :: subset
8563 integer(IK) , intent(in) , optional :: doff
8564 integer(IK) , intent(in) :: nrow, ncol
8565 integer(IK) , intent(in) :: roff, coff
8566 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8567 character(*,SKG) , intent(in) , contiguous :: vdia(:)
8568 character(*,SKG) , intent(in) :: vupp, vlow
8569 end subroutine
8570#endif
8571
8572#if SK1_ENABLED
8573 PURE module subroutine setMatInit_EXP_ULD_D2001_SK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8574#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8575 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_SK1
8576#endif
8577 use pm_kind, only: SKG => SK1
8578 type(uppLowDia_type) , intent(in) :: subset
8579 integer(IK) , intent(in) , optional :: doff
8580 integer(IK) , intent(in) :: nrow, ncol
8581 integer(IK) , intent(in) :: roff, coff
8582 character(*,SKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8583 character(*,SKG) , intent(in) , contiguous :: vdia(:)
8584 character(*,SKG) , intent(in) :: vupp, vlow
8585 end subroutine
8586#endif
8587
8588 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8589
8590#if IK5_ENABLED
8591 PURE module subroutine setMatInit_EXP_ULD_D2001_IK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8592#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8593 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_IK5
8594#endif
8595 use pm_kind, only: IKG => IK5
8596 type(uppLowDia_type) , intent(in) :: subset
8597 integer(IK) , intent(in) , optional :: doff
8598 integer(IK) , intent(in) :: nrow, ncol
8599 integer(IK) , intent(in) :: roff, coff
8600 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8601 integer(IKG) , intent(in) , contiguous :: vdia(:)
8602 integer(IKG) , intent(in) :: vupp, vlow
8603 end subroutine
8604#endif
8605
8606#if IK4_ENABLED
8607 PURE module subroutine setMatInit_EXP_ULD_D2001_IK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8608#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8609 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_IK4
8610#endif
8611 use pm_kind, only: IKG => IK4
8612 type(uppLowDia_type) , intent(in) :: subset
8613 integer(IK) , intent(in) , optional :: doff
8614 integer(IK) , intent(in) :: nrow, ncol
8615 integer(IK) , intent(in) :: roff, coff
8616 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8617 integer(IKG) , intent(in) , contiguous :: vdia(:)
8618 integer(IKG) , intent(in) :: vupp, vlow
8619 end subroutine
8620#endif
8621
8622#if IK3_ENABLED
8623 PURE module subroutine setMatInit_EXP_ULD_D2001_IK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8624#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8625 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_IK3
8626#endif
8627 use pm_kind, only: IKG => IK3
8628 type(uppLowDia_type) , intent(in) :: subset
8629 integer(IK) , intent(in) , optional :: doff
8630 integer(IK) , intent(in) :: nrow, ncol
8631 integer(IK) , intent(in) :: roff, coff
8632 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8633 integer(IKG) , intent(in) , contiguous :: vdia(:)
8634 integer(IKG) , intent(in) :: vupp, vlow
8635 end subroutine
8636#endif
8637
8638#if IK2_ENABLED
8639 PURE module subroutine setMatInit_EXP_ULD_D2001_IK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8640#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8641 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_IK2
8642#endif
8643 use pm_kind, only: IKG => IK2
8644 type(uppLowDia_type) , intent(in) :: subset
8645 integer(IK) , intent(in) , optional :: doff
8646 integer(IK) , intent(in) :: nrow, ncol
8647 integer(IK) , intent(in) :: roff, coff
8648 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8649 integer(IKG) , intent(in) , contiguous :: vdia(:)
8650 integer(IKG) , intent(in) :: vupp, vlow
8651 end subroutine
8652#endif
8653
8654#if IK1_ENABLED
8655 PURE module subroutine setMatInit_EXP_ULD_D2001_IK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8656#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8657 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_IK1
8658#endif
8659 use pm_kind, only: IKG => IK1
8660 type(uppLowDia_type) , intent(in) :: subset
8661 integer(IK) , intent(in) , optional :: doff
8662 integer(IK) , intent(in) :: nrow, ncol
8663 integer(IK) , intent(in) :: roff, coff
8664 integer(IKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8665 integer(IKG) , intent(in) , contiguous :: vdia(:)
8666 integer(IKG) , intent(in) :: vupp, vlow
8667 end subroutine
8668#endif
8669
8670 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8671
8672#if LK5_ENABLED
8673 PURE module subroutine setMatInit_EXP_ULD_D2001_LK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8674#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8675 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_LK5
8676#endif
8677 use pm_kind, only: LKG => LK5
8678 type(uppLowDia_type) , intent(in) :: subset
8679 integer(IK) , intent(in) , optional :: doff
8680 integer(IK) , intent(in) :: nrow, ncol
8681 integer(IK) , intent(in) :: roff, coff
8682 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8683 logical(LKG) , intent(in) , contiguous :: vdia(:)
8684 logical(LKG) , intent(in) :: vupp, vlow
8685 end subroutine
8686#endif
8687
8688#if LK4_ENABLED
8689 PURE module subroutine setMatInit_EXP_ULD_D2001_LK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8690#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8691 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_LK4
8692#endif
8693 use pm_kind, only: LKG => LK4
8694 type(uppLowDia_type) , intent(in) :: subset
8695 integer(IK) , intent(in) , optional :: doff
8696 integer(IK) , intent(in) :: nrow, ncol
8697 integer(IK) , intent(in) :: roff, coff
8698 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8699 logical(LKG) , intent(in) , contiguous :: vdia(:)
8700 logical(LKG) , intent(in) :: vupp, vlow
8701 end subroutine
8702#endif
8703
8704#if LK3_ENABLED
8705 PURE module subroutine setMatInit_EXP_ULD_D2001_LK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8706#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8707 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_LK3
8708#endif
8709 use pm_kind, only: LKG => LK3
8710 type(uppLowDia_type) , intent(in) :: subset
8711 integer(IK) , intent(in) , optional :: doff
8712 integer(IK) , intent(in) :: nrow, ncol
8713 integer(IK) , intent(in) :: roff, coff
8714 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8715 logical(LKG) , intent(in) , contiguous :: vdia(:)
8716 logical(LKG) , intent(in) :: vupp, vlow
8717 end subroutine
8718#endif
8719
8720#if LK2_ENABLED
8721 PURE module subroutine setMatInit_EXP_ULD_D2001_LK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8722#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8723 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_LK2
8724#endif
8725 use pm_kind, only: LKG => LK2
8726 type(uppLowDia_type) , intent(in) :: subset
8727 integer(IK) , intent(in) , optional :: doff
8728 integer(IK) , intent(in) :: nrow, ncol
8729 integer(IK) , intent(in) :: roff, coff
8730 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8731 logical(LKG) , intent(in) , contiguous :: vdia(:)
8732 logical(LKG) , intent(in) :: vupp, vlow
8733 end subroutine
8734#endif
8735
8736#if LK1_ENABLED
8737 PURE module subroutine setMatInit_EXP_ULD_D2001_LK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8739 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_LK1
8740#endif
8741 use pm_kind, only: LKG => LK1
8742 type(uppLowDia_type) , intent(in) :: subset
8743 integer(IK) , intent(in) , optional :: doff
8744 integer(IK) , intent(in) :: nrow, ncol
8745 integer(IK) , intent(in) :: roff, coff
8746 logical(LKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8747 logical(LKG) , intent(in) , contiguous :: vdia(:)
8748 logical(LKG) , intent(in) :: vupp, vlow
8749 end subroutine
8750#endif
8751
8752 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8753
8754#if CK5_ENABLED
8755 PURE module subroutine setMatInit_EXP_ULD_D2001_CK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8756#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8757 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_CK5
8758#endif
8759 use pm_kind, only: CKG => CK5
8760 type(uppLowDia_type) , intent(in) :: subset
8761 integer(IK) , intent(in) , optional :: doff
8762 integer(IK) , intent(in) :: nrow, ncol
8763 integer(IK) , intent(in) :: roff, coff
8764 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8765 complex(CKG) , intent(in) , contiguous :: vdia(:)
8766 complex(CKG) , intent(in) :: vupp, vlow
8767 end subroutine
8768#endif
8769
8770#if CK4_ENABLED
8771 PURE module subroutine setMatInit_EXP_ULD_D2001_CK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8772#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8773 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_CK4
8774#endif
8775 use pm_kind, only: CKG => CK4
8776 type(uppLowDia_type) , intent(in) :: subset
8777 integer(IK) , intent(in) , optional :: doff
8778 integer(IK) , intent(in) :: nrow, ncol
8779 integer(IK) , intent(in) :: roff, coff
8780 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8781 complex(CKG) , intent(in) , contiguous :: vdia(:)
8782 complex(CKG) , intent(in) :: vupp, vlow
8783 end subroutine
8784#endif
8785
8786#if CK3_ENABLED
8787 PURE module subroutine setMatInit_EXP_ULD_D2001_CK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8788#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8789 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_CK3
8790#endif
8791 use pm_kind, only: CKG => CK3
8792 type(uppLowDia_type) , intent(in) :: subset
8793 integer(IK) , intent(in) , optional :: doff
8794 integer(IK) , intent(in) :: nrow, ncol
8795 integer(IK) , intent(in) :: roff, coff
8796 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8797 complex(CKG) , intent(in) , contiguous :: vdia(:)
8798 complex(CKG) , intent(in) :: vupp, vlow
8799 end subroutine
8800#endif
8801
8802#if CK2_ENABLED
8803 PURE module subroutine setMatInit_EXP_ULD_D2001_CK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8804#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8805 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_CK2
8806#endif
8807 use pm_kind, only: CKG => CK2
8808 type(uppLowDia_type) , intent(in) :: subset
8809 integer(IK) , intent(in) , optional :: doff
8810 integer(IK) , intent(in) :: nrow, ncol
8811 integer(IK) , intent(in) :: roff, coff
8812 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8813 complex(CKG) , intent(in) , contiguous :: vdia(:)
8814 complex(CKG) , intent(in) :: vupp, vlow
8815 end subroutine
8816#endif
8817
8818#if CK1_ENABLED
8819 PURE module subroutine setMatInit_EXP_ULD_D2001_CK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8820#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8821 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_CK1
8822#endif
8823 use pm_kind, only: CKG => CK1
8824 type(uppLowDia_type) , intent(in) :: subset
8825 integer(IK) , intent(in) , optional :: doff
8826 integer(IK) , intent(in) :: nrow, ncol
8827 integer(IK) , intent(in) :: roff, coff
8828 complex(CKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8829 complex(CKG) , intent(in) , contiguous :: vdia(:)
8830 complex(CKG) , intent(in) :: vupp, vlow
8831 end subroutine
8832#endif
8833
8834 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8835
8836#if RK5_ENABLED
8837 PURE module subroutine setMatInit_EXP_ULD_D2001_RK5(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8838#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8839 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_RK5
8840#endif
8841 use pm_kind, only: RKG => RK5
8842 type(uppLowDia_type) , intent(in) :: subset
8843 integer(IK) , intent(in) , optional :: doff
8844 integer(IK) , intent(in) :: nrow, ncol
8845 integer(IK) , intent(in) :: roff, coff
8846 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8847 real(RKG) , intent(in) , contiguous :: vdia(:)
8848 real(RKG) , intent(in) :: vupp, vlow
8849 end subroutine
8850#endif
8851
8852#if RK4_ENABLED
8853 PURE module subroutine setMatInit_EXP_ULD_D2001_RK4(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8854#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8855 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_RK4
8856#endif
8857 use pm_kind, only: RKG => RK4
8858 type(uppLowDia_type) , intent(in) :: subset
8859 integer(IK) , intent(in) , optional :: doff
8860 integer(IK) , intent(in) :: nrow, ncol
8861 integer(IK) , intent(in) :: roff, coff
8862 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8863 real(RKG) , intent(in) , contiguous :: vdia(:)
8864 real(RKG) , intent(in) :: vupp, vlow
8865 end subroutine
8866#endif
8867
8868#if RK3_ENABLED
8869 PURE module subroutine setMatInit_EXP_ULD_D2001_RK3(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8870#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8871 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_RK3
8872#endif
8873 use pm_kind, only: RKG => RK3
8874 type(uppLowDia_type) , intent(in) :: subset
8875 integer(IK) , intent(in) , optional :: doff
8876 integer(IK) , intent(in) :: nrow, ncol
8877 integer(IK) , intent(in) :: roff, coff
8878 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8879 real(RKG) , intent(in) , contiguous :: vdia(:)
8880 real(RKG) , intent(in) :: vupp, vlow
8881 end subroutine
8882#endif
8883
8884#if RK2_ENABLED
8885 PURE module subroutine setMatInit_EXP_ULD_D2001_RK2(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8886#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8887 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_RK2
8888#endif
8889 use pm_kind, only: RKG => RK2
8890 type(uppLowDia_type) , intent(in) :: subset
8891 integer(IK) , intent(in) , optional :: doff
8892 integer(IK) , intent(in) :: nrow, ncol
8893 integer(IK) , intent(in) :: roff, coff
8894 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8895 real(RKG) , intent(in) , contiguous :: vdia(:)
8896 real(RKG) , intent(in) :: vupp, vlow
8897 end subroutine
8898#endif
8899
8900#if RK1_ENABLED
8901 PURE module subroutine setMatInit_EXP_ULD_D2001_RK1(mat, subset, vupp, vlow, vdia, nrow, ncol, roff, coff, doff)
8902#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8903 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_EXP_ULD_D2001_RK1
8904#endif
8905 use pm_kind, only: RKG => RK1
8906 type(uppLowDia_type) , intent(in) :: subset
8907 integer(IK) , intent(in) , optional :: doff
8908 integer(IK) , intent(in) :: nrow, ncol
8909 integer(IK) , intent(in) :: roff, coff
8910 real(RKG) , intent(inout) , contiguous :: mat(1 - roff :, 1 - coff :)
8911 real(RKG) , intent(in) , contiguous :: vdia(:)
8912 real(RKG) , intent(in) :: vupp, vlow
8913 end subroutine
8914#endif
8915
8916 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8917
8918 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8919 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8920 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8921
8922 end interface
8923
8924 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8925
8926 ! IMP_XLX
8927
8928 interface setMatInit
8929
8930 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8931 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8932 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8933
8934 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8935
8936#if SK5_ENABLED
8937 PURE module subroutine setMatInit_IMP_XLX_D2X0X_SK5(mat, subset, vlow, doff)
8938#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8939 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_SK5
8940#endif
8941 use pm_kind, only: SKG => SK5
8942 integer(IK) , intent(in) , optional :: doff
8943 type(low_type) , intent(in) :: subset
8944 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
8945 character(*,SKG) , intent(in) :: vlow
8946 end subroutine
8947#endif
8948
8949#if SK4_ENABLED
8950 PURE module subroutine setMatInit_IMP_XLX_D2X0X_SK4(mat, subset, vlow, doff)
8951#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8952 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_SK4
8953#endif
8954 use pm_kind, only: SKG => SK4
8955 integer(IK) , intent(in) , optional :: doff
8956 type(low_type) , intent(in) :: subset
8957 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
8958 character(*,SKG) , intent(in) :: vlow
8959 end subroutine
8960#endif
8961
8962#if SK3_ENABLED
8963 PURE module subroutine setMatInit_IMP_XLX_D2X0X_SK3(mat, subset, vlow, doff)
8964#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8965 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_SK3
8966#endif
8967 use pm_kind, only: SKG => SK3
8968 integer(IK) , intent(in) , optional :: doff
8969 type(low_type) , intent(in) :: subset
8970 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
8971 character(*,SKG) , intent(in) :: vlow
8972 end subroutine
8973#endif
8974
8975#if SK2_ENABLED
8976 PURE module subroutine setMatInit_IMP_XLX_D2X0X_SK2(mat, subset, vlow, doff)
8977#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8978 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_SK2
8979#endif
8980 use pm_kind, only: SKG => SK2
8981 integer(IK) , intent(in) , optional :: doff
8982 type(low_type) , intent(in) :: subset
8983 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
8984 character(*,SKG) , intent(in) :: vlow
8985 end subroutine
8986#endif
8987
8988#if SK1_ENABLED
8989 PURE module subroutine setMatInit_IMP_XLX_D2X0X_SK1(mat, subset, vlow, doff)
8990#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8991 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_SK1
8992#endif
8993 use pm_kind, only: SKG => SK1
8994 integer(IK) , intent(in) , optional :: doff
8995 type(low_type) , intent(in) :: subset
8996 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
8997 character(*,SKG) , intent(in) :: vlow
8998 end subroutine
8999#endif
9000
9001 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9002
9003#if IK5_ENABLED
9004 PURE module subroutine setMatInit_IMP_XLX_D2X0X_IK5(mat, subset, vlow, doff)
9005#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9006 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_IK5
9007#endif
9008 use pm_kind, only: IKG => IK5
9009 integer(IK) , intent(in) , optional :: doff
9010 type(low_type) , intent(in) :: subset
9011 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9012 integer(IKG) , intent(in) :: vlow
9013 end subroutine
9014#endif
9015
9016#if IK4_ENABLED
9017 PURE module subroutine setMatInit_IMP_XLX_D2X0X_IK4(mat, subset, vlow, doff)
9018#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9019 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_IK4
9020#endif
9021 use pm_kind, only: IKG => IK4
9022 integer(IK) , intent(in) , optional :: doff
9023 type(low_type) , intent(in) :: subset
9024 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9025 integer(IKG) , intent(in) :: vlow
9026 end subroutine
9027#endif
9028
9029#if IK3_ENABLED
9030 PURE module subroutine setMatInit_IMP_XLX_D2X0X_IK3(mat, subset, vlow, doff)
9031#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9032 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_IK3
9033#endif
9034 use pm_kind, only: IKG => IK3
9035 integer(IK) , intent(in) , optional :: doff
9036 type(low_type) , intent(in) :: subset
9037 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9038 integer(IKG) , intent(in) :: vlow
9039 end subroutine
9040#endif
9041
9042#if IK2_ENABLED
9043 PURE module subroutine setMatInit_IMP_XLX_D2X0X_IK2(mat, subset, vlow, doff)
9044#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9045 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_IK2
9046#endif
9047 use pm_kind, only: IKG => IK2
9048 integer(IK) , intent(in) , optional :: doff
9049 type(low_type) , intent(in) :: subset
9050 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9051 integer(IKG) , intent(in) :: vlow
9052 end subroutine
9053#endif
9054
9055#if IK1_ENABLED
9056 PURE module subroutine setMatInit_IMP_XLX_D2X0X_IK1(mat, subset, vlow, doff)
9057#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9058 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_IK1
9059#endif
9060 use pm_kind, only: IKG => IK1
9061 integer(IK) , intent(in) , optional :: doff
9062 type(low_type) , intent(in) :: subset
9063 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9064 integer(IKG) , intent(in) :: vlow
9065 end subroutine
9066#endif
9067
9068 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9069
9070#if LK5_ENABLED
9071 PURE module subroutine setMatInit_IMP_XLX_D2X0X_LK5(mat, subset, vlow, doff)
9072#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9073 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_LK5
9074#endif
9075 use pm_kind, only: LKG => LK5
9076 integer(IK) , intent(in) , optional :: doff
9077 type(low_type) , intent(in) :: subset
9078 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9079 logical(LKG) , intent(in) :: vlow
9080 end subroutine
9081#endif
9082
9083#if LK4_ENABLED
9084 PURE module subroutine setMatInit_IMP_XLX_D2X0X_LK4(mat, subset, vlow, doff)
9085#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9086 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_LK4
9087#endif
9088 use pm_kind, only: LKG => LK4
9089 integer(IK) , intent(in) , optional :: doff
9090 type(low_type) , intent(in) :: subset
9091 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9092 logical(LKG) , intent(in) :: vlow
9093 end subroutine
9094#endif
9095
9096#if LK3_ENABLED
9097 PURE module subroutine setMatInit_IMP_XLX_D2X0X_LK3(mat, subset, vlow, doff)
9098#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9099 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_LK3
9100#endif
9101 use pm_kind, only: LKG => LK3
9102 integer(IK) , intent(in) , optional :: doff
9103 type(low_type) , intent(in) :: subset
9104 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9105 logical(LKG) , intent(in) :: vlow
9106 end subroutine
9107#endif
9108
9109#if LK2_ENABLED
9110 PURE module subroutine setMatInit_IMP_XLX_D2X0X_LK2(mat, subset, vlow, doff)
9111#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9112 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_LK2
9113#endif
9114 use pm_kind, only: LKG => LK2
9115 integer(IK) , intent(in) , optional :: doff
9116 type(low_type) , intent(in) :: subset
9117 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9118 logical(LKG) , intent(in) :: vlow
9119 end subroutine
9120#endif
9121
9122#if LK1_ENABLED
9123 PURE module subroutine setMatInit_IMP_XLX_D2X0X_LK1(mat, subset, vlow, doff)
9124#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9125 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_LK1
9126#endif
9127 use pm_kind, only: LKG => LK1
9128 integer(IK) , intent(in) , optional :: doff
9129 type(low_type) , intent(in) :: subset
9130 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9131 logical(LKG) , intent(in) :: vlow
9132 end subroutine
9133#endif
9134
9135 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9136
9137#if CK5_ENABLED
9138 PURE module subroutine setMatInit_IMP_XLX_D2X0X_CK5(mat, subset, vlow, doff)
9139#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9140 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_CK5
9141#endif
9142 use pm_kind, only: CKG => CK5
9143 integer(IK) , intent(in) , optional :: doff
9144 type(low_type) , intent(in) :: subset
9145 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9146 complex(CKG) , intent(in) :: vlow
9147 end subroutine
9148#endif
9149
9150#if CK4_ENABLED
9151 PURE module subroutine setMatInit_IMP_XLX_D2X0X_CK4(mat, subset, vlow, doff)
9152#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9153 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_CK4
9154#endif
9155 use pm_kind, only: CKG => CK4
9156 integer(IK) , intent(in) , optional :: doff
9157 type(low_type) , intent(in) :: subset
9158 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9159 complex(CKG) , intent(in) :: vlow
9160 end subroutine
9161#endif
9162
9163#if CK3_ENABLED
9164 PURE module subroutine setMatInit_IMP_XLX_D2X0X_CK3(mat, subset, vlow, doff)
9165#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9166 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_CK3
9167#endif
9168 use pm_kind, only: CKG => CK3
9169 integer(IK) , intent(in) , optional :: doff
9170 type(low_type) , intent(in) :: subset
9171 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9172 complex(CKG) , intent(in) :: vlow
9173 end subroutine
9174#endif
9175
9176#if CK2_ENABLED
9177 PURE module subroutine setMatInit_IMP_XLX_D2X0X_CK2(mat, subset, vlow, doff)
9178#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9179 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_CK2
9180#endif
9181 use pm_kind, only: CKG => CK2
9182 integer(IK) , intent(in) , optional :: doff
9183 type(low_type) , intent(in) :: subset
9184 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9185 complex(CKG) , intent(in) :: vlow
9186 end subroutine
9187#endif
9188
9189#if CK1_ENABLED
9190 PURE module subroutine setMatInit_IMP_XLX_D2X0X_CK1(mat, subset, vlow, doff)
9191#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9192 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_CK1
9193#endif
9194 use pm_kind, only: CKG => CK1
9195 integer(IK) , intent(in) , optional :: doff
9196 type(low_type) , intent(in) :: subset
9197 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9198 complex(CKG) , intent(in) :: vlow
9199 end subroutine
9200#endif
9201
9202 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9203
9204#if RK5_ENABLED
9205 PURE module subroutine setMatInit_IMP_XLX_D2X0X_RK5(mat, subset, vlow, doff)
9206#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9207 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_RK5
9208#endif
9209 use pm_kind, only: RKG => RK5
9210 integer(IK) , intent(in) , optional :: doff
9211 type(low_type) , intent(in) :: subset
9212 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9213 real(RKG) , intent(in) :: vlow
9214 end subroutine
9215#endif
9216
9217#if RK4_ENABLED
9218 PURE module subroutine setMatInit_IMP_XLX_D2X0X_RK4(mat, subset, vlow, doff)
9219#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9220 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_RK4
9221#endif
9222 use pm_kind, only: RKG => RK4
9223 integer(IK) , intent(in) , optional :: doff
9224 type(low_type) , intent(in) :: subset
9225 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9226 real(RKG) , intent(in) :: vlow
9227 end subroutine
9228#endif
9229
9230#if RK3_ENABLED
9231 PURE module subroutine setMatInit_IMP_XLX_D2X0X_RK3(mat, subset, vlow, doff)
9232#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9233 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_RK3
9234#endif
9235 use pm_kind, only: RKG => RK3
9236 integer(IK) , intent(in) , optional :: doff
9237 type(low_type) , intent(in) :: subset
9238 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9239 real(RKG) , intent(in) :: vlow
9240 end subroutine
9241#endif
9242
9243#if RK2_ENABLED
9244 PURE module subroutine setMatInit_IMP_XLX_D2X0X_RK2(mat, subset, vlow, doff)
9245#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9246 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_RK2
9247#endif
9248 use pm_kind, only: RKG => RK2
9249 integer(IK) , intent(in) , optional :: doff
9250 type(low_type) , intent(in) :: subset
9251 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9252 real(RKG) , intent(in) :: vlow
9253 end subroutine
9254#endif
9255
9256#if RK1_ENABLED
9257 PURE module subroutine setMatInit_IMP_XLX_D2X0X_RK1(mat, subset, vlow, doff)
9258#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9259 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLX_D2X0X_RK1
9260#endif
9261 use pm_kind, only: RKG => RK1
9262 integer(IK) , intent(in) , optional :: doff
9263 type(low_type) , intent(in) :: subset
9264 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9265 real(RKG) , intent(in) :: vlow
9266 end subroutine
9267#endif
9268
9269 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9270
9271 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9272 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9273 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9274
9275 end interface
9276
9277 ! IMP_UXX
9278
9279 interface setMatInit
9280
9281 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9282 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9283 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9284
9285 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9286
9287#if SK5_ENABLED
9288 PURE module subroutine setMatInit_IMP_UXX_D20XX_SK5(mat, subset, vupp, doff)
9289#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9290 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_SK5
9291#endif
9292 use pm_kind, only: SKG => SK5
9293 integer(IK) , intent(in) , optional :: doff
9294 type(upp_type) , intent(in) :: subset
9295 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9296 character(*,SKG) , intent(in) :: vupp
9297 end subroutine
9298#endif
9299
9300#if SK4_ENABLED
9301 PURE module subroutine setMatInit_IMP_UXX_D20XX_SK4(mat, subset, vupp, doff)
9302#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9303 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_SK4
9304#endif
9305 use pm_kind, only: SKG => SK4
9306 integer(IK) , intent(in) , optional :: doff
9307 type(upp_type) , intent(in) :: subset
9308 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9309 character(*,SKG) , intent(in) :: vupp
9310 end subroutine
9311#endif
9312
9313#if SK3_ENABLED
9314 PURE module subroutine setMatInit_IMP_UXX_D20XX_SK3(mat, subset, vupp, doff)
9315#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9316 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_SK3
9317#endif
9318 use pm_kind, only: SKG => SK3
9319 integer(IK) , intent(in) , optional :: doff
9320 type(upp_type) , intent(in) :: subset
9321 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9322 character(*,SKG) , intent(in) :: vupp
9323 end subroutine
9324#endif
9325
9326#if SK2_ENABLED
9327 PURE module subroutine setMatInit_IMP_UXX_D20XX_SK2(mat, subset, vupp, doff)
9328#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9329 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_SK2
9330#endif
9331 use pm_kind, only: SKG => SK2
9332 integer(IK) , intent(in) , optional :: doff
9333 type(upp_type) , intent(in) :: subset
9334 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9335 character(*,SKG) , intent(in) :: vupp
9336 end subroutine
9337#endif
9338
9339#if SK1_ENABLED
9340 PURE module subroutine setMatInit_IMP_UXX_D20XX_SK1(mat, subset, vupp, doff)
9341#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9342 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_SK1
9343#endif
9344 use pm_kind, only: SKG => SK1
9345 integer(IK) , intent(in) , optional :: doff
9346 type(upp_type) , intent(in) :: subset
9347 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9348 character(*,SKG) , intent(in) :: vupp
9349 end subroutine
9350#endif
9351
9352 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9353
9354#if IK5_ENABLED
9355 PURE module subroutine setMatInit_IMP_UXX_D20XX_IK5(mat, subset, vupp, doff)
9356#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9357 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_IK5
9358#endif
9359 use pm_kind, only: IKG => IK5
9360 integer(IK) , intent(in) , optional :: doff
9361 type(upp_type) , intent(in) :: subset
9362 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9363 integer(IKG) , intent(in) :: vupp
9364 end subroutine
9365#endif
9366
9367#if IK4_ENABLED
9368 PURE module subroutine setMatInit_IMP_UXX_D20XX_IK4(mat, subset, vupp, doff)
9369#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9370 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_IK4
9371#endif
9372 use pm_kind, only: IKG => IK4
9373 integer(IK) , intent(in) , optional :: doff
9374 type(upp_type) , intent(in) :: subset
9375 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9376 integer(IKG) , intent(in) :: vupp
9377 end subroutine
9378#endif
9379
9380#if IK3_ENABLED
9381 PURE module subroutine setMatInit_IMP_UXX_D20XX_IK3(mat, subset, vupp, doff)
9382#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9383 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_IK3
9384#endif
9385 use pm_kind, only: IKG => IK3
9386 integer(IK) , intent(in) , optional :: doff
9387 type(upp_type) , intent(in) :: subset
9388 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9389 integer(IKG) , intent(in) :: vupp
9390 end subroutine
9391#endif
9392
9393#if IK2_ENABLED
9394 PURE module subroutine setMatInit_IMP_UXX_D20XX_IK2(mat, subset, vupp, doff)
9395#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9396 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_IK2
9397#endif
9398 use pm_kind, only: IKG => IK2
9399 integer(IK) , intent(in) , optional :: doff
9400 type(upp_type) , intent(in) :: subset
9401 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9402 integer(IKG) , intent(in) :: vupp
9403 end subroutine
9404#endif
9405
9406#if IK1_ENABLED
9407 PURE module subroutine setMatInit_IMP_UXX_D20XX_IK1(mat, subset, vupp, doff)
9408#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9409 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_IK1
9410#endif
9411 use pm_kind, only: IKG => IK1
9412 integer(IK) , intent(in) , optional :: doff
9413 type(upp_type) , intent(in) :: subset
9414 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9415 integer(IKG) , intent(in) :: vupp
9416 end subroutine
9417#endif
9418
9419 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9420
9421#if LK5_ENABLED
9422 PURE module subroutine setMatInit_IMP_UXX_D20XX_LK5(mat, subset, vupp, doff)
9423#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9424 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_LK5
9425#endif
9426 use pm_kind, only: LKG => LK5
9427 integer(IK) , intent(in) , optional :: doff
9428 type(upp_type) , intent(in) :: subset
9429 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9430 logical(LKG) , intent(in) :: vupp
9431 end subroutine
9432#endif
9433
9434#if LK4_ENABLED
9435 PURE module subroutine setMatInit_IMP_UXX_D20XX_LK4(mat, subset, vupp, doff)
9436#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9437 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_LK4
9438#endif
9439 use pm_kind, only: LKG => LK4
9440 integer(IK) , intent(in) , optional :: doff
9441 type(upp_type) , intent(in) :: subset
9442 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9443 logical(LKG) , intent(in) :: vupp
9444 end subroutine
9445#endif
9446
9447#if LK3_ENABLED
9448 PURE module subroutine setMatInit_IMP_UXX_D20XX_LK3(mat, subset, vupp, doff)
9449#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9450 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_LK3
9451#endif
9452 use pm_kind, only: LKG => LK3
9453 integer(IK) , intent(in) , optional :: doff
9454 type(upp_type) , intent(in) :: subset
9455 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9456 logical(LKG) , intent(in) :: vupp
9457 end subroutine
9458#endif
9459
9460#if LK2_ENABLED
9461 PURE module subroutine setMatInit_IMP_UXX_D20XX_LK2(mat, subset, vupp, doff)
9462#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9463 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_LK2
9464#endif
9465 use pm_kind, only: LKG => LK2
9466 integer(IK) , intent(in) , optional :: doff
9467 type(upp_type) , intent(in) :: subset
9468 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9469 logical(LKG) , intent(in) :: vupp
9470 end subroutine
9471#endif
9472
9473#if LK1_ENABLED
9474 PURE module subroutine setMatInit_IMP_UXX_D20XX_LK1(mat, subset, vupp, doff)
9475#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9476 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_LK1
9477#endif
9478 use pm_kind, only: LKG => LK1
9479 integer(IK) , intent(in) , optional :: doff
9480 type(upp_type) , intent(in) :: subset
9481 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9482 logical(LKG) , intent(in) :: vupp
9483 end subroutine
9484#endif
9485
9486 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9487
9488#if CK5_ENABLED
9489 PURE module subroutine setMatInit_IMP_UXX_D20XX_CK5(mat, subset, vupp, doff)
9490#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9491 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_CK5
9492#endif
9493 use pm_kind, only: CKG => CK5
9494 integer(IK) , intent(in) , optional :: doff
9495 type(upp_type) , intent(in) :: subset
9496 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9497 complex(CKG) , intent(in) :: vupp
9498 end subroutine
9499#endif
9500
9501#if CK4_ENABLED
9502 PURE module subroutine setMatInit_IMP_UXX_D20XX_CK4(mat, subset, vupp, doff)
9503#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9504 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_CK4
9505#endif
9506 use pm_kind, only: CKG => CK4
9507 integer(IK) , intent(in) , optional :: doff
9508 type(upp_type) , intent(in) :: subset
9509 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9510 complex(CKG) , intent(in) :: vupp
9511 end subroutine
9512#endif
9513
9514#if CK3_ENABLED
9515 PURE module subroutine setMatInit_IMP_UXX_D20XX_CK3(mat, subset, vupp, doff)
9516#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9517 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_CK3
9518#endif
9519 use pm_kind, only: CKG => CK3
9520 integer(IK) , intent(in) , optional :: doff
9521 type(upp_type) , intent(in) :: subset
9522 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9523 complex(CKG) , intent(in) :: vupp
9524 end subroutine
9525#endif
9526
9527#if CK2_ENABLED
9528 PURE module subroutine setMatInit_IMP_UXX_D20XX_CK2(mat, subset, vupp, doff)
9529#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9530 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_CK2
9531#endif
9532 use pm_kind, only: CKG => CK2
9533 integer(IK) , intent(in) , optional :: doff
9534 type(upp_type) , intent(in) :: subset
9535 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9536 complex(CKG) , intent(in) :: vupp
9537 end subroutine
9538#endif
9539
9540#if CK1_ENABLED
9541 PURE module subroutine setMatInit_IMP_UXX_D20XX_CK1(mat, subset, vupp, doff)
9542#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9543 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_CK1
9544#endif
9545 use pm_kind, only: CKG => CK1
9546 integer(IK) , intent(in) , optional :: doff
9547 type(upp_type) , intent(in) :: subset
9548 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9549 complex(CKG) , intent(in) :: vupp
9550 end subroutine
9551#endif
9552
9553 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9554
9555#if RK5_ENABLED
9556 PURE module subroutine setMatInit_IMP_UXX_D20XX_RK5(mat, subset, vupp, doff)
9557#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9558 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_RK5
9559#endif
9560 use pm_kind, only: RKG => RK5
9561 integer(IK) , intent(in) , optional :: doff
9562 type(upp_type) , intent(in) :: subset
9563 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9564 real(RKG) , intent(in) :: vupp
9565 end subroutine
9566#endif
9567
9568#if RK4_ENABLED
9569 PURE module subroutine setMatInit_IMP_UXX_D20XX_RK4(mat, subset, vupp, doff)
9570#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9571 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_RK4
9572#endif
9573 use pm_kind, only: RKG => RK4
9574 integer(IK) , intent(in) , optional :: doff
9575 type(upp_type) , intent(in) :: subset
9576 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9577 real(RKG) , intent(in) :: vupp
9578 end subroutine
9579#endif
9580
9581#if RK3_ENABLED
9582 PURE module subroutine setMatInit_IMP_UXX_D20XX_RK3(mat, subset, vupp, doff)
9583#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9584 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_RK3
9585#endif
9586 use pm_kind, only: RKG => RK3
9587 integer(IK) , intent(in) , optional :: doff
9588 type(upp_type) , intent(in) :: subset
9589 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9590 real(RKG) , intent(in) :: vupp
9591 end subroutine
9592#endif
9593
9594#if RK2_ENABLED
9595 PURE module subroutine setMatInit_IMP_UXX_D20XX_RK2(mat, subset, vupp, doff)
9596#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9597 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_RK2
9598#endif
9599 use pm_kind, only: RKG => RK2
9600 integer(IK) , intent(in) , optional :: doff
9601 type(upp_type) , intent(in) :: subset
9602 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9603 real(RKG) , intent(in) :: vupp
9604 end subroutine
9605#endif
9606
9607#if RK1_ENABLED
9608 PURE module subroutine setMatInit_IMP_UXX_D20XX_RK1(mat, subset, vupp, doff)
9609#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9610 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXX_D20XX_RK1
9611#endif
9612 use pm_kind, only: RKG => RK1
9613 integer(IK) , intent(in) , optional :: doff
9614 type(upp_type) , intent(in) :: subset
9615 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9616 real(RKG) , intent(in) :: vupp
9617 end subroutine
9618#endif
9619
9620 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9621
9622 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9623 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9624 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9625
9626 end interface
9627
9628 ! IMP_XXD
9629
9630 interface setMatInit
9631
9632 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9633 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9634 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9635
9636 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9637
9638#if SK5_ENABLED
9639 PURE module subroutine setMatInit_IMP_XXD_D2XXF_SK5(mat, subset, vdia)
9640#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9641 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_SK5
9642#endif
9643 use pm_kind, only: SKG => SK5
9644 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9645 character(*,SKG) , intent(in) :: vdia
9646 type(dia_type) , intent(in) :: subset
9647 end subroutine
9648#endif
9649
9650#if SK4_ENABLED
9651 PURE module subroutine setMatInit_IMP_XXD_D2XXF_SK4(mat, subset, vdia)
9652#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9653 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_SK4
9654#endif
9655 use pm_kind, only: SKG => SK4
9656 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9657 character(*,SKG) , intent(in) :: vdia
9658 type(dia_type) , intent(in) :: subset
9659 end subroutine
9660#endif
9661
9662#if SK3_ENABLED
9663 PURE module subroutine setMatInit_IMP_XXD_D2XXF_SK3(mat, subset, vdia)
9664#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9665 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_SK3
9666#endif
9667 use pm_kind, only: SKG => SK3
9668 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9669 character(*,SKG) , intent(in) :: vdia
9670 type(dia_type) , intent(in) :: subset
9671 end subroutine
9672#endif
9673
9674#if SK2_ENABLED
9675 PURE module subroutine setMatInit_IMP_XXD_D2XXF_SK2(mat, subset, vdia)
9676#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9677 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_SK2
9678#endif
9679 use pm_kind, only: SKG => SK2
9680 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9681 character(*,SKG) , intent(in) :: vdia
9682 type(dia_type) , intent(in) :: subset
9683 end subroutine
9684#endif
9685
9686#if SK1_ENABLED
9687 PURE module subroutine setMatInit_IMP_XXD_D2XXF_SK1(mat, subset, vdia)
9688#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9689 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_SK1
9690#endif
9691 use pm_kind, only: SKG => SK1
9692 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9693 character(*,SKG) , intent(in) :: vdia
9694 type(dia_type) , intent(in) :: subset
9695 end subroutine
9696#endif
9697
9698 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9699
9700#if IK5_ENABLED
9701 PURE module subroutine setMatInit_IMP_XXD_D2XXF_IK5(mat, subset, vdia)
9702#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9703 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_IK5
9704#endif
9705 use pm_kind, only: IKG => IK5
9706 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9707 integer(IKG) , intent(in) :: vdia
9708 type(dia_type) , intent(in) :: subset
9709 end subroutine
9710#endif
9711
9712#if IK4_ENABLED
9713 PURE module subroutine setMatInit_IMP_XXD_D2XXF_IK4(mat, subset, vdia)
9714#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9715 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_IK4
9716#endif
9717 use pm_kind, only: IKG => IK4
9718 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9719 integer(IKG) , intent(in) :: vdia
9720 type(dia_type) , intent(in) :: subset
9721 end subroutine
9722#endif
9723
9724#if IK3_ENABLED
9725 PURE module subroutine setMatInit_IMP_XXD_D2XXF_IK3(mat, subset, vdia)
9726#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9727 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_IK3
9728#endif
9729 use pm_kind, only: IKG => IK3
9730 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9731 integer(IKG) , intent(in) :: vdia
9732 type(dia_type) , intent(in) :: subset
9733 end subroutine
9734#endif
9735
9736#if IK2_ENABLED
9737 PURE module subroutine setMatInit_IMP_XXD_D2XXF_IK2(mat, subset, vdia)
9738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9739 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_IK2
9740#endif
9741 use pm_kind, only: IKG => IK2
9742 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9743 integer(IKG) , intent(in) :: vdia
9744 type(dia_type) , intent(in) :: subset
9745 end subroutine
9746#endif
9747
9748#if IK1_ENABLED
9749 PURE module subroutine setMatInit_IMP_XXD_D2XXF_IK1(mat, subset, vdia)
9750#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9751 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_IK1
9752#endif
9753 use pm_kind, only: IKG => IK1
9754 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
9755 integer(IKG) , intent(in) :: vdia
9756 type(dia_type) , intent(in) :: subset
9757 end subroutine
9758#endif
9759
9760 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9761
9762#if LK5_ENABLED
9763 PURE module subroutine setMatInit_IMP_XXD_D2XXF_LK5(mat, subset, vdia)
9764#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9765 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_LK5
9766#endif
9767 use pm_kind, only: LKG => LK5
9768 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9769 logical(LKG) , intent(in) :: vdia
9770 type(dia_type) , intent(in) :: subset
9771 end subroutine
9772#endif
9773
9774#if LK4_ENABLED
9775 PURE module subroutine setMatInit_IMP_XXD_D2XXF_LK4(mat, subset, vdia)
9776#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9777 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_LK4
9778#endif
9779 use pm_kind, only: LKG => LK4
9780 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9781 logical(LKG) , intent(in) :: vdia
9782 type(dia_type) , intent(in) :: subset
9783 end subroutine
9784#endif
9785
9786#if LK3_ENABLED
9787 PURE module subroutine setMatInit_IMP_XXD_D2XXF_LK3(mat, subset, vdia)
9788#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9789 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_LK3
9790#endif
9791 use pm_kind, only: LKG => LK3
9792 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9793 logical(LKG) , intent(in) :: vdia
9794 type(dia_type) , intent(in) :: subset
9795 end subroutine
9796#endif
9797
9798#if LK2_ENABLED
9799 PURE module subroutine setMatInit_IMP_XXD_D2XXF_LK2(mat, subset, vdia)
9800#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9801 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_LK2
9802#endif
9803 use pm_kind, only: LKG => LK2
9804 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9805 logical(LKG) , intent(in) :: vdia
9806 type(dia_type) , intent(in) :: subset
9807 end subroutine
9808#endif
9809
9810#if LK1_ENABLED
9811 PURE module subroutine setMatInit_IMP_XXD_D2XXF_LK1(mat, subset, vdia)
9812#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9813 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_LK1
9814#endif
9815 use pm_kind, only: LKG => LK1
9816 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
9817 logical(LKG) , intent(in) :: vdia
9818 type(dia_type) , intent(in) :: subset
9819 end subroutine
9820#endif
9821
9822 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9823
9824#if CK5_ENABLED
9825 PURE module subroutine setMatInit_IMP_XXD_D2XXF_CK5(mat, subset, vdia)
9826#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9827 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_CK5
9828#endif
9829 use pm_kind, only: CKG => CK5
9830 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9831 complex(CKG) , intent(in) :: vdia
9832 type(dia_type) , intent(in) :: subset
9833 end subroutine
9834#endif
9835
9836#if CK4_ENABLED
9837 PURE module subroutine setMatInit_IMP_XXD_D2XXF_CK4(mat, subset, vdia)
9838#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9839 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_CK4
9840#endif
9841 use pm_kind, only: CKG => CK4
9842 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9843 complex(CKG) , intent(in) :: vdia
9844 type(dia_type) , intent(in) :: subset
9845 end subroutine
9846#endif
9847
9848#if CK3_ENABLED
9849 PURE module subroutine setMatInit_IMP_XXD_D2XXF_CK3(mat, subset, vdia)
9850#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9851 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_CK3
9852#endif
9853 use pm_kind, only: CKG => CK3
9854 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9855 complex(CKG) , intent(in) :: vdia
9856 type(dia_type) , intent(in) :: subset
9857 end subroutine
9858#endif
9859
9860#if CK2_ENABLED
9861 PURE module subroutine setMatInit_IMP_XXD_D2XXF_CK2(mat, subset, vdia)
9862#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9863 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_CK2
9864#endif
9865 use pm_kind, only: CKG => CK2
9866 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9867 complex(CKG) , intent(in) :: vdia
9868 type(dia_type) , intent(in) :: subset
9869 end subroutine
9870#endif
9871
9872#if CK1_ENABLED
9873 PURE module subroutine setMatInit_IMP_XXD_D2XXF_CK1(mat, subset, vdia)
9874#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9875 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_CK1
9876#endif
9877 use pm_kind, only: CKG => CK1
9878 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
9879 complex(CKG) , intent(in) :: vdia
9880 type(dia_type) , intent(in) :: subset
9881 end subroutine
9882#endif
9883
9884 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9885
9886#if RK5_ENABLED
9887 PURE module subroutine setMatInit_IMP_XXD_D2XXF_RK5(mat, subset, vdia)
9888#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9889 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_RK5
9890#endif
9891 use pm_kind, only: RKG => RK5
9892 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9893 real(RKG) , intent(in) :: vdia
9894 type(dia_type) , intent(in) :: subset
9895 end subroutine
9896#endif
9897
9898#if RK4_ENABLED
9899 PURE module subroutine setMatInit_IMP_XXD_D2XXF_RK4(mat, subset, vdia)
9900#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9901 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_RK4
9902#endif
9903 use pm_kind, only: RKG => RK4
9904 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9905 real(RKG) , intent(in) :: vdia
9906 type(dia_type) , intent(in) :: subset
9907 end subroutine
9908#endif
9909
9910#if RK3_ENABLED
9911 PURE module subroutine setMatInit_IMP_XXD_D2XXF_RK3(mat, subset, vdia)
9912#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9913 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_RK3
9914#endif
9915 use pm_kind, only: RKG => RK3
9916 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9917 real(RKG) , intent(in) :: vdia
9918 type(dia_type) , intent(in) :: subset
9919 end subroutine
9920#endif
9921
9922#if RK2_ENABLED
9923 PURE module subroutine setMatInit_IMP_XXD_D2XXF_RK2(mat, subset, vdia)
9924#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9925 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_RK2
9926#endif
9927 use pm_kind, only: RKG => RK2
9928 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9929 real(RKG) , intent(in) :: vdia
9930 type(dia_type) , intent(in) :: subset
9931 end subroutine
9932#endif
9933
9934#if RK1_ENABLED
9935 PURE module subroutine setMatInit_IMP_XXD_D2XXF_RK1(mat, subset, vdia)
9936#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9937 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XXF_RK1
9938#endif
9939 use pm_kind, only: RKG => RK1
9940 real(RKG) , intent(inout) , contiguous :: mat(:,:)
9941 real(RKG) , intent(in) :: vdia
9942 type(dia_type) , intent(in) :: subset
9943 end subroutine
9944#endif
9945
9946 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9947
9948 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9949 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9950 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9951
9952 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9953
9954#if SK5_ENABLED
9955 PURE module subroutine setMatInit_IMP_XXD_D2XX0_SK5(mat, subset, vdia, ndia)
9956#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9957 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_SK5
9958#endif
9959 use pm_kind, only: SKG => SK5
9960 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9961 character(*,SKG) , intent(in) :: vdia
9962 integer(IK) , intent(in) :: ndia
9963 type(dia_type) , intent(in) :: subset
9964 end subroutine
9965#endif
9966
9967#if SK4_ENABLED
9968 PURE module subroutine setMatInit_IMP_XXD_D2XX0_SK4(mat, subset, vdia, ndia)
9969#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9970 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_SK4
9971#endif
9972 use pm_kind, only: SKG => SK4
9973 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9974 character(*,SKG) , intent(in) :: vdia
9975 integer(IK) , intent(in) :: ndia
9976 type(dia_type) , intent(in) :: subset
9977 end subroutine
9978#endif
9979
9980#if SK3_ENABLED
9981 PURE module subroutine setMatInit_IMP_XXD_D2XX0_SK3(mat, subset, vdia, ndia)
9982#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9983 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_SK3
9984#endif
9985 use pm_kind, only: SKG => SK3
9986 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
9987 character(*,SKG) , intent(in) :: vdia
9988 integer(IK) , intent(in) :: ndia
9989 type(dia_type) , intent(in) :: subset
9990 end subroutine
9991#endif
9992
9993#if SK2_ENABLED
9994 PURE module subroutine setMatInit_IMP_XXD_D2XX0_SK2(mat, subset, vdia, ndia)
9995#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9996 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_SK2
9997#endif
9998 use pm_kind, only: SKG => SK2
9999 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10000 character(*,SKG) , intent(in) :: vdia
10001 integer(IK) , intent(in) :: ndia
10002 type(dia_type) , intent(in) :: subset
10003 end subroutine
10004#endif
10005
10006#if SK1_ENABLED
10007 PURE module subroutine setMatInit_IMP_XXD_D2XX0_SK1(mat, subset, vdia, ndia)
10008#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10009 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_SK1
10010#endif
10011 use pm_kind, only: SKG => SK1
10012 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10013 character(*,SKG) , intent(in) :: vdia
10014 integer(IK) , intent(in) :: ndia
10015 type(dia_type) , intent(in) :: subset
10016 end subroutine
10017#endif
10018
10019 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10020
10021#if IK5_ENABLED
10022 PURE module subroutine setMatInit_IMP_XXD_D2XX0_IK5(mat, subset, vdia, ndia)
10023#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10024 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_IK5
10025#endif
10026 use pm_kind, only: IKG => IK5
10027 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10028 integer(IKG) , intent(in) :: vdia
10029 integer(IK) , intent(in) :: ndia
10030 type(dia_type) , intent(in) :: subset
10031 end subroutine
10032#endif
10033
10034#if IK4_ENABLED
10035 PURE module subroutine setMatInit_IMP_XXD_D2XX0_IK4(mat, subset, vdia, ndia)
10036#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10037 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_IK4
10038#endif
10039 use pm_kind, only: IKG => IK4
10040 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10041 integer(IKG) , intent(in) :: vdia
10042 integer(IK) , intent(in) :: ndia
10043 type(dia_type) , intent(in) :: subset
10044 end subroutine
10045#endif
10046
10047#if IK3_ENABLED
10048 PURE module subroutine setMatInit_IMP_XXD_D2XX0_IK3(mat, subset, vdia, ndia)
10049#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10050 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_IK3
10051#endif
10052 use pm_kind, only: IKG => IK3
10053 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10054 integer(IKG) , intent(in) :: vdia
10055 integer(IK) , intent(in) :: ndia
10056 type(dia_type) , intent(in) :: subset
10057 end subroutine
10058#endif
10059
10060#if IK2_ENABLED
10061 PURE module subroutine setMatInit_IMP_XXD_D2XX0_IK2(mat, subset, vdia, ndia)
10062#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10063 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_IK2
10064#endif
10065 use pm_kind, only: IKG => IK2
10066 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10067 integer(IKG) , intent(in) :: vdia
10068 integer(IK) , intent(in) :: ndia
10069 type(dia_type) , intent(in) :: subset
10070 end subroutine
10071#endif
10072
10073#if IK1_ENABLED
10074 PURE module subroutine setMatInit_IMP_XXD_D2XX0_IK1(mat, subset, vdia, ndia)
10075#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10076 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_IK1
10077#endif
10078 use pm_kind, only: IKG => IK1
10079 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10080 integer(IKG) , intent(in) :: vdia
10081 integer(IK) , intent(in) :: ndia
10082 type(dia_type) , intent(in) :: subset
10083 end subroutine
10084#endif
10085
10086 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10087
10088#if LK5_ENABLED
10089 PURE module subroutine setMatInit_IMP_XXD_D2XX0_LK5(mat, subset, vdia, ndia)
10090#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10091 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_LK5
10092#endif
10093 use pm_kind, only: LKG => LK5
10094 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10095 logical(LKG) , intent(in) :: vdia
10096 integer(IK) , intent(in) :: ndia
10097 type(dia_type) , intent(in) :: subset
10098 end subroutine
10099#endif
10100
10101#if LK4_ENABLED
10102 PURE module subroutine setMatInit_IMP_XXD_D2XX0_LK4(mat, subset, vdia, ndia)
10103#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10104 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_LK4
10105#endif
10106 use pm_kind, only: LKG => LK4
10107 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10108 logical(LKG) , intent(in) :: vdia
10109 integer(IK) , intent(in) :: ndia
10110 type(dia_type) , intent(in) :: subset
10111 end subroutine
10112#endif
10113
10114#if LK3_ENABLED
10115 PURE module subroutine setMatInit_IMP_XXD_D2XX0_LK3(mat, subset, vdia, ndia)
10116#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10117 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_LK3
10118#endif
10119 use pm_kind, only: LKG => LK3
10120 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10121 logical(LKG) , intent(in) :: vdia
10122 integer(IK) , intent(in) :: ndia
10123 type(dia_type) , intent(in) :: subset
10124 end subroutine
10125#endif
10126
10127#if LK2_ENABLED
10128 PURE module subroutine setMatInit_IMP_XXD_D2XX0_LK2(mat, subset, vdia, ndia)
10129#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10130 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_LK2
10131#endif
10132 use pm_kind, only: LKG => LK2
10133 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10134 logical(LKG) , intent(in) :: vdia
10135 integer(IK) , intent(in) :: ndia
10136 type(dia_type) , intent(in) :: subset
10137 end subroutine
10138#endif
10139
10140#if LK1_ENABLED
10141 PURE module subroutine setMatInit_IMP_XXD_D2XX0_LK1(mat, subset, vdia, ndia)
10142#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10143 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_LK1
10144#endif
10145 use pm_kind, only: LKG => LK1
10146 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10147 logical(LKG) , intent(in) :: vdia
10148 integer(IK) , intent(in) :: ndia
10149 type(dia_type) , intent(in) :: subset
10150 end subroutine
10151#endif
10152
10153 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10154
10155#if CK5_ENABLED
10156 PURE module subroutine setMatInit_IMP_XXD_D2XX0_CK5(mat, subset, vdia, ndia)
10157#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10158 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_CK5
10159#endif
10160 use pm_kind, only: CKG => CK5
10161 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10162 complex(CKG) , intent(in) :: vdia
10163 integer(IK) , intent(in) :: ndia
10164 type(dia_type) , intent(in) :: subset
10165 end subroutine
10166#endif
10167
10168#if CK4_ENABLED
10169 PURE module subroutine setMatInit_IMP_XXD_D2XX0_CK4(mat, subset, vdia, ndia)
10170#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10171 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_CK4
10172#endif
10173 use pm_kind, only: CKG => CK4
10174 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10175 complex(CKG) , intent(in) :: vdia
10176 integer(IK) , intent(in) :: ndia
10177 type(dia_type) , intent(in) :: subset
10178 end subroutine
10179#endif
10180
10181#if CK3_ENABLED
10182 PURE module subroutine setMatInit_IMP_XXD_D2XX0_CK3(mat, subset, vdia, ndia)
10183#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10184 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_CK3
10185#endif
10186 use pm_kind, only: CKG => CK3
10187 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10188 complex(CKG) , intent(in) :: vdia
10189 integer(IK) , intent(in) :: ndia
10190 type(dia_type) , intent(in) :: subset
10191 end subroutine
10192#endif
10193
10194#if CK2_ENABLED
10195 PURE module subroutine setMatInit_IMP_XXD_D2XX0_CK2(mat, subset, vdia, ndia)
10196#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10197 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_CK2
10198#endif
10199 use pm_kind, only: CKG => CK2
10200 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10201 complex(CKG) , intent(in) :: vdia
10202 integer(IK) , intent(in) :: ndia
10203 type(dia_type) , intent(in) :: subset
10204 end subroutine
10205#endif
10206
10207#if CK1_ENABLED
10208 PURE module subroutine setMatInit_IMP_XXD_D2XX0_CK1(mat, subset, vdia, ndia)
10209#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10210 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_CK1
10211#endif
10212 use pm_kind, only: CKG => CK1
10213 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10214 complex(CKG) , intent(in) :: vdia
10215 integer(IK) , intent(in) :: ndia
10216 type(dia_type) , intent(in) :: subset
10217 end subroutine
10218#endif
10219
10220 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10221
10222#if RK5_ENABLED
10223 PURE module subroutine setMatInit_IMP_XXD_D2XX0_RK5(mat, subset, vdia, ndia)
10224#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10225 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_RK5
10226#endif
10227 use pm_kind, only: RKG => RK5
10228 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10229 real(RKG) , intent(in) :: vdia
10230 integer(IK) , intent(in) :: ndia
10231 type(dia_type) , intent(in) :: subset
10232 end subroutine
10233#endif
10234
10235#if RK4_ENABLED
10236 PURE module subroutine setMatInit_IMP_XXD_D2XX0_RK4(mat, subset, vdia, ndia)
10237#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10238 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_RK4
10239#endif
10240 use pm_kind, only: RKG => RK4
10241 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10242 real(RKG) , intent(in) :: vdia
10243 integer(IK) , intent(in) :: ndia
10244 type(dia_type) , intent(in) :: subset
10245 end subroutine
10246#endif
10247
10248#if RK3_ENABLED
10249 PURE module subroutine setMatInit_IMP_XXD_D2XX0_RK3(mat, subset, vdia, ndia)
10250#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10251 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_RK3
10252#endif
10253 use pm_kind, only: RKG => RK3
10254 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10255 real(RKG) , intent(in) :: vdia
10256 integer(IK) , intent(in) :: ndia
10257 type(dia_type) , intent(in) :: subset
10258 end subroutine
10259#endif
10260
10261#if RK2_ENABLED
10262 PURE module subroutine setMatInit_IMP_XXD_D2XX0_RK2(mat, subset, vdia, ndia)
10263#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10264 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_RK2
10265#endif
10266 use pm_kind, only: RKG => RK2
10267 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10268 real(RKG) , intent(in) :: vdia
10269 integer(IK) , intent(in) :: ndia
10270 type(dia_type) , intent(in) :: subset
10271 end subroutine
10272#endif
10273
10274#if RK1_ENABLED
10275 PURE module subroutine setMatInit_IMP_XXD_D2XX0_RK1(mat, subset, vdia, ndia)
10276#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10277 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX0_RK1
10278#endif
10279 use pm_kind, only: RKG => RK1
10280 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10281 real(RKG) , intent(in) :: vdia
10282 integer(IK) , intent(in) :: ndia
10283 type(dia_type) , intent(in) :: subset
10284 end subroutine
10285#endif
10286
10287 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10288
10289 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10290 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10291 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10292
10293 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10294
10295#if SK5_ENABLED
10296 PURE module subroutine setMatInit_IMP_XXD_D2XX1_SK5(mat, subset, vdia)
10297#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10298 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_SK5
10299#endif
10300 use pm_kind, only: SKG => SK5
10301 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10302 character(*,SKG) , intent(in) , contiguous :: vdia(:)
10303 type(dia_type) , intent(in) :: subset
10304 end subroutine
10305#endif
10306
10307#if SK4_ENABLED
10308 PURE module subroutine setMatInit_IMP_XXD_D2XX1_SK4(mat, subset, vdia)
10309#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10310 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_SK4
10311#endif
10312 use pm_kind, only: SKG => SK4
10313 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10314 character(*,SKG) , intent(in) , contiguous :: vdia(:)
10315 type(dia_type) , intent(in) :: subset
10316 end subroutine
10317#endif
10318
10319#if SK3_ENABLED
10320 PURE module subroutine setMatInit_IMP_XXD_D2XX1_SK3(mat, subset, vdia)
10321#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10322 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_SK3
10323#endif
10324 use pm_kind, only: SKG => SK3
10325 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10326 character(*,SKG) , intent(in) , contiguous :: vdia(:)
10327 type(dia_type) , intent(in) :: subset
10328 end subroutine
10329#endif
10330
10331#if SK2_ENABLED
10332 PURE module subroutine setMatInit_IMP_XXD_D2XX1_SK2(mat, subset, vdia)
10333#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10334 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_SK2
10335#endif
10336 use pm_kind, only: SKG => SK2
10337 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10338 character(*,SKG) , intent(in) , contiguous :: vdia(:)
10339 type(dia_type) , intent(in) :: subset
10340 end subroutine
10341#endif
10342
10343#if SK1_ENABLED
10344 PURE module subroutine setMatInit_IMP_XXD_D2XX1_SK1(mat, subset, vdia)
10345#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10346 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_SK1
10347#endif
10348 use pm_kind, only: SKG => SK1
10349 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10350 character(*,SKG) , intent(in) , contiguous :: vdia(:)
10351 type(dia_type) , intent(in) :: subset
10352 end subroutine
10353#endif
10354
10355 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10356
10357#if IK5_ENABLED
10358 PURE module subroutine setMatInit_IMP_XXD_D2XX1_IK5(mat, subset, vdia)
10359#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10360 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_IK5
10361#endif
10362 use pm_kind, only: IKG => IK5
10363 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10364 integer(IKG) , intent(in) , contiguous :: vdia(:)
10365 type(dia_type) , intent(in) :: subset
10366 end subroutine
10367#endif
10368
10369#if IK4_ENABLED
10370 PURE module subroutine setMatInit_IMP_XXD_D2XX1_IK4(mat, subset, vdia)
10371#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10372 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_IK4
10373#endif
10374 use pm_kind, only: IKG => IK4
10375 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10376 integer(IKG) , intent(in) , contiguous :: vdia(:)
10377 type(dia_type) , intent(in) :: subset
10378 end subroutine
10379#endif
10380
10381#if IK3_ENABLED
10382 PURE module subroutine setMatInit_IMP_XXD_D2XX1_IK3(mat, subset, vdia)
10383#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10384 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_IK3
10385#endif
10386 use pm_kind, only: IKG => IK3
10387 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10388 integer(IKG) , intent(in) , contiguous :: vdia(:)
10389 type(dia_type) , intent(in) :: subset
10390 end subroutine
10391#endif
10392
10393#if IK2_ENABLED
10394 PURE module subroutine setMatInit_IMP_XXD_D2XX1_IK2(mat, subset, vdia)
10395#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10396 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_IK2
10397#endif
10398 use pm_kind, only: IKG => IK2
10399 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10400 integer(IKG) , intent(in) , contiguous :: vdia(:)
10401 type(dia_type) , intent(in) :: subset
10402 end subroutine
10403#endif
10404
10405#if IK1_ENABLED
10406 PURE module subroutine setMatInit_IMP_XXD_D2XX1_IK1(mat, subset, vdia)
10407#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10408 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_IK1
10409#endif
10410 use pm_kind, only: IKG => IK1
10411 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10412 integer(IKG) , intent(in) , contiguous :: vdia(:)
10413 type(dia_type) , intent(in) :: subset
10414 end subroutine
10415#endif
10416
10417 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10418
10419#if LK5_ENABLED
10420 PURE module subroutine setMatInit_IMP_XXD_D2XX1_LK5(mat, subset, vdia)
10421#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10422 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_LK5
10423#endif
10424 use pm_kind, only: LKG => LK5
10425 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10426 logical(LKG) , intent(in) , contiguous :: vdia(:)
10427 type(dia_type) , intent(in) :: subset
10428 end subroutine
10429#endif
10430
10431#if LK4_ENABLED
10432 PURE module subroutine setMatInit_IMP_XXD_D2XX1_LK4(mat, subset, vdia)
10433#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10434 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_LK4
10435#endif
10436 use pm_kind, only: LKG => LK4
10437 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10438 logical(LKG) , intent(in) , contiguous :: vdia(:)
10439 type(dia_type) , intent(in) :: subset
10440 end subroutine
10441#endif
10442
10443#if LK3_ENABLED
10444 PURE module subroutine setMatInit_IMP_XXD_D2XX1_LK3(mat, subset, vdia)
10445#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10446 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_LK3
10447#endif
10448 use pm_kind, only: LKG => LK3
10449 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10450 logical(LKG) , intent(in) , contiguous :: vdia(:)
10451 type(dia_type) , intent(in) :: subset
10452 end subroutine
10453#endif
10454
10455#if LK2_ENABLED
10456 PURE module subroutine setMatInit_IMP_XXD_D2XX1_LK2(mat, subset, vdia)
10457#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10458 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_LK2
10459#endif
10460 use pm_kind, only: LKG => LK2
10461 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10462 logical(LKG) , intent(in) , contiguous :: vdia(:)
10463 type(dia_type) , intent(in) :: subset
10464 end subroutine
10465#endif
10466
10467#if LK1_ENABLED
10468 PURE module subroutine setMatInit_IMP_XXD_D2XX1_LK1(mat, subset, vdia)
10469#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10470 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_LK1
10471#endif
10472 use pm_kind, only: LKG => LK1
10473 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10474 logical(LKG) , intent(in) , contiguous :: vdia(:)
10475 type(dia_type) , intent(in) :: subset
10476 end subroutine
10477#endif
10478
10479 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10480
10481#if CK5_ENABLED
10482 PURE module subroutine setMatInit_IMP_XXD_D2XX1_CK5(mat, subset, vdia)
10483#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10484 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_CK5
10485#endif
10486 use pm_kind, only: CKG => CK5
10487 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10488 complex(CKG) , intent(in) , contiguous :: vdia(:)
10489 type(dia_type) , intent(in) :: subset
10490 end subroutine
10491#endif
10492
10493#if CK4_ENABLED
10494 PURE module subroutine setMatInit_IMP_XXD_D2XX1_CK4(mat, subset, vdia)
10495#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10496 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_CK4
10497#endif
10498 use pm_kind, only: CKG => CK4
10499 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10500 complex(CKG) , intent(in) , contiguous :: vdia(:)
10501 type(dia_type) , intent(in) :: subset
10502 end subroutine
10503#endif
10504
10505#if CK3_ENABLED
10506 PURE module subroutine setMatInit_IMP_XXD_D2XX1_CK3(mat, subset, vdia)
10507#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10508 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_CK3
10509#endif
10510 use pm_kind, only: CKG => CK3
10511 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10512 complex(CKG) , intent(in) , contiguous :: vdia(:)
10513 type(dia_type) , intent(in) :: subset
10514 end subroutine
10515#endif
10516
10517#if CK2_ENABLED
10518 PURE module subroutine setMatInit_IMP_XXD_D2XX1_CK2(mat, subset, vdia)
10519#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10520 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_CK2
10521#endif
10522 use pm_kind, only: CKG => CK2
10523 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10524 complex(CKG) , intent(in) , contiguous :: vdia(:)
10525 type(dia_type) , intent(in) :: subset
10526 end subroutine
10527#endif
10528
10529#if CK1_ENABLED
10530 PURE module subroutine setMatInit_IMP_XXD_D2XX1_CK1(mat, subset, vdia)
10531#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10532 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_CK1
10533#endif
10534 use pm_kind, only: CKG => CK1
10535 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10536 complex(CKG) , intent(in) , contiguous :: vdia(:)
10537 type(dia_type) , intent(in) :: subset
10538 end subroutine
10539#endif
10540
10541 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10542
10543#if RK5_ENABLED
10544 PURE module subroutine setMatInit_IMP_XXD_D2XX1_RK5(mat, subset, vdia)
10545#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10546 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_RK5
10547#endif
10548 use pm_kind, only: RKG => RK5
10549 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10550 real(RKG) , intent(in) , contiguous :: vdia(:)
10551 type(dia_type) , intent(in) :: subset
10552 end subroutine
10553#endif
10554
10555#if RK4_ENABLED
10556 PURE module subroutine setMatInit_IMP_XXD_D2XX1_RK4(mat, subset, vdia)
10557#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10558 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_RK4
10559#endif
10560 use pm_kind, only: RKG => RK4
10561 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10562 real(RKG) , intent(in) , contiguous :: vdia(:)
10563 type(dia_type) , intent(in) :: subset
10564 end subroutine
10565#endif
10566
10567#if RK3_ENABLED
10568 PURE module subroutine setMatInit_IMP_XXD_D2XX1_RK3(mat, subset, vdia)
10569#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10570 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_RK3
10571#endif
10572 use pm_kind, only: RKG => RK3
10573 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10574 real(RKG) , intent(in) , contiguous :: vdia(:)
10575 type(dia_type) , intent(in) :: subset
10576 end subroutine
10577#endif
10578
10579#if RK2_ENABLED
10580 PURE module subroutine setMatInit_IMP_XXD_D2XX1_RK2(mat, subset, vdia)
10581#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10582 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_RK2
10583#endif
10584 use pm_kind, only: RKG => RK2
10585 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10586 real(RKG) , intent(in) , contiguous :: vdia(:)
10587 type(dia_type) , intent(in) :: subset
10588 end subroutine
10589#endif
10590
10591#if RK1_ENABLED
10592 PURE module subroutine setMatInit_IMP_XXD_D2XX1_RK1(mat, subset, vdia)
10593#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10594 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XXD_D2XX1_RK1
10595#endif
10596 use pm_kind, only: RKG => RK1
10597 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10598 real(RKG) , intent(in) , contiguous :: vdia(:)
10599 type(dia_type) , intent(in) :: subset
10600 end subroutine
10601#endif
10602
10603 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10604
10605 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10606 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10607 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10608
10609 end interface
10610
10611 ! IMP_XLD
10612
10613 interface setMatInit
10614
10615 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10616 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10617 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10618
10619 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10620
10621#if SK5_ENABLED
10622 PURE module subroutine setMatInit_IMP_XLD_D2X00_SK5(mat, subset, vlow, vdia, doff)
10623#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10624 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_SK5
10625#endif
10626 use pm_kind, only: SKG => SK5
10627 integer(IK) , intent(in) , optional :: doff
10628 type(lowDia_type) , intent(in) :: subset
10629 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10630 character(*,SKG) , intent(in) :: vlow
10631 character(*,SKG) , intent(in) :: vdia
10632 end subroutine
10633#endif
10634
10635#if SK4_ENABLED
10636 PURE module subroutine setMatInit_IMP_XLD_D2X00_SK4(mat, subset, vlow, vdia, doff)
10637#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10638 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_SK4
10639#endif
10640 use pm_kind, only: SKG => SK4
10641 integer(IK) , intent(in) , optional :: doff
10642 type(lowDia_type) , intent(in) :: subset
10643 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10644 character(*,SKG) , intent(in) :: vlow
10645 character(*,SKG) , intent(in) :: vdia
10646 end subroutine
10647#endif
10648
10649#if SK3_ENABLED
10650 PURE module subroutine setMatInit_IMP_XLD_D2X00_SK3(mat, subset, vlow, vdia, doff)
10651#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10652 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_SK3
10653#endif
10654 use pm_kind, only: SKG => SK3
10655 integer(IK) , intent(in) , optional :: doff
10656 type(lowDia_type) , intent(in) :: subset
10657 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10658 character(*,SKG) , intent(in) :: vlow
10659 character(*,SKG) , intent(in) :: vdia
10660 end subroutine
10661#endif
10662
10663#if SK2_ENABLED
10664 PURE module subroutine setMatInit_IMP_XLD_D2X00_SK2(mat, subset, vlow, vdia, doff)
10665#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10666 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_SK2
10667#endif
10668 use pm_kind, only: SKG => SK2
10669 integer(IK) , intent(in) , optional :: doff
10670 type(lowDia_type) , intent(in) :: subset
10671 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10672 character(*,SKG) , intent(in) :: vlow
10673 character(*,SKG) , intent(in) :: vdia
10674 end subroutine
10675#endif
10676
10677#if SK1_ENABLED
10678 PURE module subroutine setMatInit_IMP_XLD_D2X00_SK1(mat, subset, vlow, vdia, doff)
10679#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10680 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_SK1
10681#endif
10682 use pm_kind, only: SKG => SK1
10683 integer(IK) , intent(in) , optional :: doff
10684 type(lowDia_type) , intent(in) :: subset
10685 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10686 character(*,SKG) , intent(in) :: vlow
10687 character(*,SKG) , intent(in) :: vdia
10688 end subroutine
10689#endif
10690
10691 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10692
10693#if IK5_ENABLED
10694 PURE module subroutine setMatInit_IMP_XLD_D2X00_IK5(mat, subset, vlow, vdia, doff)
10695#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10696 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_IK5
10697#endif
10698 use pm_kind, only: IKG => IK5
10699 integer(IK) , intent(in) , optional :: doff
10700 type(lowDia_type) , intent(in) :: subset
10701 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10702 integer(IKG) , intent(in) :: vlow
10703 integer(IKG) , intent(in) :: vdia
10704 end subroutine
10705#endif
10706
10707#if IK4_ENABLED
10708 PURE module subroutine setMatInit_IMP_XLD_D2X00_IK4(mat, subset, vlow, vdia, doff)
10709#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10710 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_IK4
10711#endif
10712 use pm_kind, only: IKG => IK4
10713 integer(IK) , intent(in) , optional :: doff
10714 type(lowDia_type) , intent(in) :: subset
10715 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10716 integer(IKG) , intent(in) :: vlow
10717 integer(IKG) , intent(in) :: vdia
10718 end subroutine
10719#endif
10720
10721#if IK3_ENABLED
10722 PURE module subroutine setMatInit_IMP_XLD_D2X00_IK3(mat, subset, vlow, vdia, doff)
10723#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10724 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_IK3
10725#endif
10726 use pm_kind, only: IKG => IK3
10727 integer(IK) , intent(in) , optional :: doff
10728 type(lowDia_type) , intent(in) :: subset
10729 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10730 integer(IKG) , intent(in) :: vlow
10731 integer(IKG) , intent(in) :: vdia
10732 end subroutine
10733#endif
10734
10735#if IK2_ENABLED
10736 PURE module subroutine setMatInit_IMP_XLD_D2X00_IK2(mat, subset, vlow, vdia, doff)
10737#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10738 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_IK2
10739#endif
10740 use pm_kind, only: IKG => IK2
10741 integer(IK) , intent(in) , optional :: doff
10742 type(lowDia_type) , intent(in) :: subset
10743 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10744 integer(IKG) , intent(in) :: vlow
10745 integer(IKG) , intent(in) :: vdia
10746 end subroutine
10747#endif
10748
10749#if IK1_ENABLED
10750 PURE module subroutine setMatInit_IMP_XLD_D2X00_IK1(mat, subset, vlow, vdia, doff)
10751#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10752 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_IK1
10753#endif
10754 use pm_kind, only: IKG => IK1
10755 integer(IK) , intent(in) , optional :: doff
10756 type(lowDia_type) , intent(in) :: subset
10757 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
10758 integer(IKG) , intent(in) :: vlow
10759 integer(IKG) , intent(in) :: vdia
10760 end subroutine
10761#endif
10762
10763 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10764
10765#if LK5_ENABLED
10766 PURE module subroutine setMatInit_IMP_XLD_D2X00_LK5(mat, subset, vlow, vdia, doff)
10767#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10768 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_LK5
10769#endif
10770 use pm_kind, only: LKG => LK5
10771 integer(IK) , intent(in) , optional :: doff
10772 type(lowDia_type) , intent(in) :: subset
10773 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10774 logical(LKG) , intent(in) :: vlow
10775 logical(LKG) , intent(in) :: vdia
10776 end subroutine
10777#endif
10778
10779#if LK4_ENABLED
10780 PURE module subroutine setMatInit_IMP_XLD_D2X00_LK4(mat, subset, vlow, vdia, doff)
10781#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10782 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_LK4
10783#endif
10784 use pm_kind, only: LKG => LK4
10785 integer(IK) , intent(in) , optional :: doff
10786 type(lowDia_type) , intent(in) :: subset
10787 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10788 logical(LKG) , intent(in) :: vlow
10789 logical(LKG) , intent(in) :: vdia
10790 end subroutine
10791#endif
10792
10793#if LK3_ENABLED
10794 PURE module subroutine setMatInit_IMP_XLD_D2X00_LK3(mat, subset, vlow, vdia, doff)
10795#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10796 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_LK3
10797#endif
10798 use pm_kind, only: LKG => LK3
10799 integer(IK) , intent(in) , optional :: doff
10800 type(lowDia_type) , intent(in) :: subset
10801 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10802 logical(LKG) , intent(in) :: vlow
10803 logical(LKG) , intent(in) :: vdia
10804 end subroutine
10805#endif
10806
10807#if LK2_ENABLED
10808 PURE module subroutine setMatInit_IMP_XLD_D2X00_LK2(mat, subset, vlow, vdia, doff)
10809#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10810 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_LK2
10811#endif
10812 use pm_kind, only: LKG => LK2
10813 integer(IK) , intent(in) , optional :: doff
10814 type(lowDia_type) , intent(in) :: subset
10815 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10816 logical(LKG) , intent(in) :: vlow
10817 logical(LKG) , intent(in) :: vdia
10818 end subroutine
10819#endif
10820
10821#if LK1_ENABLED
10822 PURE module subroutine setMatInit_IMP_XLD_D2X00_LK1(mat, subset, vlow, vdia, doff)
10823#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10824 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_LK1
10825#endif
10826 use pm_kind, only: LKG => LK1
10827 integer(IK) , intent(in) , optional :: doff
10828 type(lowDia_type) , intent(in) :: subset
10829 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
10830 logical(LKG) , intent(in) :: vlow
10831 logical(LKG) , intent(in) :: vdia
10832 end subroutine
10833#endif
10834
10835 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10836
10837#if CK5_ENABLED
10838 PURE module subroutine setMatInit_IMP_XLD_D2X00_CK5(mat, subset, vlow, vdia, doff)
10839#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10840 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_CK5
10841#endif
10842 use pm_kind, only: CKG => CK5
10843 integer(IK) , intent(in) , optional :: doff
10844 type(lowDia_type) , intent(in) :: subset
10845 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10846 complex(CKG) , intent(in) :: vlow
10847 complex(CKG) , intent(in) :: vdia
10848 end subroutine
10849#endif
10850
10851#if CK4_ENABLED
10852 PURE module subroutine setMatInit_IMP_XLD_D2X00_CK4(mat, subset, vlow, vdia, doff)
10853#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10854 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_CK4
10855#endif
10856 use pm_kind, only: CKG => CK4
10857 integer(IK) , intent(in) , optional :: doff
10858 type(lowDia_type) , intent(in) :: subset
10859 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10860 complex(CKG) , intent(in) :: vlow
10861 complex(CKG) , intent(in) :: vdia
10862 end subroutine
10863#endif
10864
10865#if CK3_ENABLED
10866 PURE module subroutine setMatInit_IMP_XLD_D2X00_CK3(mat, subset, vlow, vdia, doff)
10867#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10868 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_CK3
10869#endif
10870 use pm_kind, only: CKG => CK3
10871 integer(IK) , intent(in) , optional :: doff
10872 type(lowDia_type) , intent(in) :: subset
10873 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10874 complex(CKG) , intent(in) :: vlow
10875 complex(CKG) , intent(in) :: vdia
10876 end subroutine
10877#endif
10878
10879#if CK2_ENABLED
10880 PURE module subroutine setMatInit_IMP_XLD_D2X00_CK2(mat, subset, vlow, vdia, doff)
10881#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10882 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_CK2
10883#endif
10884 use pm_kind, only: CKG => CK2
10885 integer(IK) , intent(in) , optional :: doff
10886 type(lowDia_type) , intent(in) :: subset
10887 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10888 complex(CKG) , intent(in) :: vlow
10889 complex(CKG) , intent(in) :: vdia
10890 end subroutine
10891#endif
10892
10893#if CK1_ENABLED
10894 PURE module subroutine setMatInit_IMP_XLD_D2X00_CK1(mat, subset, vlow, vdia, doff)
10895#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10896 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_CK1
10897#endif
10898 use pm_kind, only: CKG => CK1
10899 integer(IK) , intent(in) , optional :: doff
10900 type(lowDia_type) , intent(in) :: subset
10901 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
10902 complex(CKG) , intent(in) :: vlow
10903 complex(CKG) , intent(in) :: vdia
10904 end subroutine
10905#endif
10906
10907 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10908
10909#if RK5_ENABLED
10910 PURE module subroutine setMatInit_IMP_XLD_D2X00_RK5(mat, subset, vlow, vdia, doff)
10911#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10912 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_RK5
10913#endif
10914 use pm_kind, only: RKG => RK5
10915 integer(IK) , intent(in) , optional :: doff
10916 type(lowDia_type) , intent(in) :: subset
10917 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10918 real(RKG) , intent(in) :: vlow
10919 real(RKG) , intent(in) :: vdia
10920 end subroutine
10921#endif
10922
10923#if RK4_ENABLED
10924 PURE module subroutine setMatInit_IMP_XLD_D2X00_RK4(mat, subset, vlow, vdia, doff)
10925#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10926 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_RK4
10927#endif
10928 use pm_kind, only: RKG => RK4
10929 integer(IK) , intent(in) , optional :: doff
10930 type(lowDia_type) , intent(in) :: subset
10931 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10932 real(RKG) , intent(in) :: vlow
10933 real(RKG) , intent(in) :: vdia
10934 end subroutine
10935#endif
10936
10937#if RK3_ENABLED
10938 PURE module subroutine setMatInit_IMP_XLD_D2X00_RK3(mat, subset, vlow, vdia, doff)
10939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10940 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_RK3
10941#endif
10942 use pm_kind, only: RKG => RK3
10943 integer(IK) , intent(in) , optional :: doff
10944 type(lowDia_type) , intent(in) :: subset
10945 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10946 real(RKG) , intent(in) :: vlow
10947 real(RKG) , intent(in) :: vdia
10948 end subroutine
10949#endif
10950
10951#if RK2_ENABLED
10952 PURE module subroutine setMatInit_IMP_XLD_D2X00_RK2(mat, subset, vlow, vdia, doff)
10953#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10954 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_RK2
10955#endif
10956 use pm_kind, only: RKG => RK2
10957 integer(IK) , intent(in) , optional :: doff
10958 type(lowDia_type) , intent(in) :: subset
10959 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10960 real(RKG) , intent(in) :: vlow
10961 real(RKG) , intent(in) :: vdia
10962 end subroutine
10963#endif
10964
10965#if RK1_ENABLED
10966 PURE module subroutine setMatInit_IMP_XLD_D2X00_RK1(mat, subset, vlow, vdia, doff)
10967#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10968 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X00_RK1
10969#endif
10970 use pm_kind, only: RKG => RK1
10971 integer(IK) , intent(in) , optional :: doff
10972 type(lowDia_type) , intent(in) :: subset
10973 real(RKG) , intent(inout) , contiguous :: mat(:,:)
10974 real(RKG) , intent(in) :: vlow
10975 real(RKG) , intent(in) :: vdia
10976 end subroutine
10977#endif
10978
10979 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10980
10981 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10982 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10983 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10984
10985 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10986
10987#if SK5_ENABLED
10988 PURE module subroutine setMatInit_IMP_XLD_D2X01_SK5(mat, subset, vlow, vdia, doff)
10989#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10990 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_SK5
10991#endif
10992 use pm_kind, only: SKG => SK5
10993 integer(IK) , intent(in) , optional :: doff
10994 type(lowDia_type) , intent(in) :: subset
10995 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
10996 character(*,SKG) , intent(in) , contiguous :: vdia(:)
10997 character(*,SKG) , intent(in) :: vlow
10998 end subroutine
10999#endif
11000
11001#if SK4_ENABLED
11002 PURE module subroutine setMatInit_IMP_XLD_D2X01_SK4(mat, subset, vlow, vdia, doff)
11003#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11004 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_SK4
11005#endif
11006 use pm_kind, only: SKG => SK4
11007 integer(IK) , intent(in) , optional :: doff
11008 type(lowDia_type) , intent(in) :: subset
11009 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11010 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11011 character(*,SKG) , intent(in) :: vlow
11012 end subroutine
11013#endif
11014
11015#if SK3_ENABLED
11016 PURE module subroutine setMatInit_IMP_XLD_D2X01_SK3(mat, subset, vlow, vdia, doff)
11017#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11018 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_SK3
11019#endif
11020 use pm_kind, only: SKG => SK3
11021 integer(IK) , intent(in) , optional :: doff
11022 type(lowDia_type) , intent(in) :: subset
11023 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11024 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11025 character(*,SKG) , intent(in) :: vlow
11026 end subroutine
11027#endif
11028
11029#if SK2_ENABLED
11030 PURE module subroutine setMatInit_IMP_XLD_D2X01_SK2(mat, subset, vlow, vdia, doff)
11031#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11032 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_SK2
11033#endif
11034 use pm_kind, only: SKG => SK2
11035 integer(IK) , intent(in) , optional :: doff
11036 type(lowDia_type) , intent(in) :: subset
11037 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11038 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11039 character(*,SKG) , intent(in) :: vlow
11040 end subroutine
11041#endif
11042
11043#if SK1_ENABLED
11044 PURE module subroutine setMatInit_IMP_XLD_D2X01_SK1(mat, subset, vlow, vdia, doff)
11045#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11046 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_SK1
11047#endif
11048 use pm_kind, only: SKG => SK1
11049 integer(IK) , intent(in) , optional :: doff
11050 type(lowDia_type) , intent(in) :: subset
11051 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11052 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11053 character(*,SKG) , intent(in) :: vlow
11054 end subroutine
11055#endif
11056
11057 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11058
11059#if IK5_ENABLED
11060 PURE module subroutine setMatInit_IMP_XLD_D2X01_IK5(mat, subset, vlow, vdia, doff)
11061#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11062 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_IK5
11063#endif
11064 use pm_kind, only: IKG => IK5
11065 integer(IK) , intent(in) , optional :: doff
11066 type(lowDia_type) , intent(in) :: subset
11067 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11068 integer(IKG) , intent(in) , contiguous :: vdia(:)
11069 integer(IKG) , intent(in) :: vlow
11070 end subroutine
11071#endif
11072
11073#if IK4_ENABLED
11074 PURE module subroutine setMatInit_IMP_XLD_D2X01_IK4(mat, subset, vlow, vdia, doff)
11075#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11076 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_IK4
11077#endif
11078 use pm_kind, only: IKG => IK4
11079 integer(IK) , intent(in) , optional :: doff
11080 type(lowDia_type) , intent(in) :: subset
11081 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11082 integer(IKG) , intent(in) , contiguous :: vdia(:)
11083 integer(IKG) , intent(in) :: vlow
11084 end subroutine
11085#endif
11086
11087#if IK3_ENABLED
11088 PURE module subroutine setMatInit_IMP_XLD_D2X01_IK3(mat, subset, vlow, vdia, doff)
11089#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11090 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_IK3
11091#endif
11092 use pm_kind, only: IKG => IK3
11093 integer(IK) , intent(in) , optional :: doff
11094 type(lowDia_type) , intent(in) :: subset
11095 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11096 integer(IKG) , intent(in) , contiguous :: vdia(:)
11097 integer(IKG) , intent(in) :: vlow
11098 end subroutine
11099#endif
11100
11101#if IK2_ENABLED
11102 PURE module subroutine setMatInit_IMP_XLD_D2X01_IK2(mat, subset, vlow, vdia, doff)
11103#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11104 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_IK2
11105#endif
11106 use pm_kind, only: IKG => IK2
11107 integer(IK) , intent(in) , optional :: doff
11108 type(lowDia_type) , intent(in) :: subset
11109 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11110 integer(IKG) , intent(in) , contiguous :: vdia(:)
11111 integer(IKG) , intent(in) :: vlow
11112 end subroutine
11113#endif
11114
11115#if IK1_ENABLED
11116 PURE module subroutine setMatInit_IMP_XLD_D2X01_IK1(mat, subset, vlow, vdia, doff)
11117#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11118 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_IK1
11119#endif
11120 use pm_kind, only: IKG => IK1
11121 integer(IK) , intent(in) , optional :: doff
11122 type(lowDia_type) , intent(in) :: subset
11123 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11124 integer(IKG) , intent(in) , contiguous :: vdia(:)
11125 integer(IKG) , intent(in) :: vlow
11126 end subroutine
11127#endif
11128
11129 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11130
11131#if LK5_ENABLED
11132 PURE module subroutine setMatInit_IMP_XLD_D2X01_LK5(mat, subset, vlow, vdia, doff)
11133#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11134 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_LK5
11135#endif
11136 use pm_kind, only: LKG => LK5
11137 integer(IK) , intent(in) , optional :: doff
11138 type(lowDia_type) , intent(in) :: subset
11139 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11140 logical(LKG) , intent(in) , contiguous :: vdia(:)
11141 logical(LKG) , intent(in) :: vlow
11142 end subroutine
11143#endif
11144
11145#if LK4_ENABLED
11146 PURE module subroutine setMatInit_IMP_XLD_D2X01_LK4(mat, subset, vlow, vdia, doff)
11147#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11148 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_LK4
11149#endif
11150 use pm_kind, only: LKG => LK4
11151 integer(IK) , intent(in) , optional :: doff
11152 type(lowDia_type) , intent(in) :: subset
11153 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11154 logical(LKG) , intent(in) , contiguous :: vdia(:)
11155 logical(LKG) , intent(in) :: vlow
11156 end subroutine
11157#endif
11158
11159#if LK3_ENABLED
11160 PURE module subroutine setMatInit_IMP_XLD_D2X01_LK3(mat, subset, vlow, vdia, doff)
11161#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11162 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_LK3
11163#endif
11164 use pm_kind, only: LKG => LK3
11165 integer(IK) , intent(in) , optional :: doff
11166 type(lowDia_type) , intent(in) :: subset
11167 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11168 logical(LKG) , intent(in) , contiguous :: vdia(:)
11169 logical(LKG) , intent(in) :: vlow
11170 end subroutine
11171#endif
11172
11173#if LK2_ENABLED
11174 PURE module subroutine setMatInit_IMP_XLD_D2X01_LK2(mat, subset, vlow, vdia, doff)
11175#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11176 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_LK2
11177#endif
11178 use pm_kind, only: LKG => LK2
11179 integer(IK) , intent(in) , optional :: doff
11180 type(lowDia_type) , intent(in) :: subset
11181 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11182 logical(LKG) , intent(in) , contiguous :: vdia(:)
11183 logical(LKG) , intent(in) :: vlow
11184 end subroutine
11185#endif
11186
11187#if LK1_ENABLED
11188 PURE module subroutine setMatInit_IMP_XLD_D2X01_LK1(mat, subset, vlow, vdia, doff)
11189#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11190 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_LK1
11191#endif
11192 use pm_kind, only: LKG => LK1
11193 integer(IK) , intent(in) , optional :: doff
11194 type(lowDia_type) , intent(in) :: subset
11195 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11196 logical(LKG) , intent(in) , contiguous :: vdia(:)
11197 logical(LKG) , intent(in) :: vlow
11198 end subroutine
11199#endif
11200
11201 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11202
11203#if CK5_ENABLED
11204 PURE module subroutine setMatInit_IMP_XLD_D2X01_CK5(mat, subset, vlow, vdia, doff)
11205#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11206 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_CK5
11207#endif
11208 use pm_kind, only: CKG => CK5
11209 integer(IK) , intent(in) , optional :: doff
11210 type(lowDia_type) , intent(in) :: subset
11211 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11212 complex(CKG) , intent(in) , contiguous :: vdia(:)
11213 complex(CKG) , intent(in) :: vlow
11214 end subroutine
11215#endif
11216
11217#if CK4_ENABLED
11218 PURE module subroutine setMatInit_IMP_XLD_D2X01_CK4(mat, subset, vlow, vdia, doff)
11219#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11220 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_CK4
11221#endif
11222 use pm_kind, only: CKG => CK4
11223 integer(IK) , intent(in) , optional :: doff
11224 type(lowDia_type) , intent(in) :: subset
11225 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11226 complex(CKG) , intent(in) , contiguous :: vdia(:)
11227 complex(CKG) , intent(in) :: vlow
11228 end subroutine
11229#endif
11230
11231#if CK3_ENABLED
11232 PURE module subroutine setMatInit_IMP_XLD_D2X01_CK3(mat, subset, vlow, vdia, doff)
11233#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11234 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_CK3
11235#endif
11236 use pm_kind, only: CKG => CK3
11237 integer(IK) , intent(in) , optional :: doff
11238 type(lowDia_type) , intent(in) :: subset
11239 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11240 complex(CKG) , intent(in) , contiguous :: vdia(:)
11241 complex(CKG) , intent(in) :: vlow
11242 end subroutine
11243#endif
11244
11245#if CK2_ENABLED
11246 PURE module subroutine setMatInit_IMP_XLD_D2X01_CK2(mat, subset, vlow, vdia, doff)
11247#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11248 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_CK2
11249#endif
11250 use pm_kind, only: CKG => CK2
11251 integer(IK) , intent(in) , optional :: doff
11252 type(lowDia_type) , intent(in) :: subset
11253 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11254 complex(CKG) , intent(in) , contiguous :: vdia(:)
11255 complex(CKG) , intent(in) :: vlow
11256 end subroutine
11257#endif
11258
11259#if CK1_ENABLED
11260 PURE module subroutine setMatInit_IMP_XLD_D2X01_CK1(mat, subset, vlow, vdia, doff)
11261#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11262 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_CK1
11263#endif
11264 use pm_kind, only: CKG => CK1
11265 integer(IK) , intent(in) , optional :: doff
11266 type(lowDia_type) , intent(in) :: subset
11267 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11268 complex(CKG) , intent(in) , contiguous :: vdia(:)
11269 complex(CKG) , intent(in) :: vlow
11270 end subroutine
11271#endif
11272
11273 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11274
11275#if RK5_ENABLED
11276 PURE module subroutine setMatInit_IMP_XLD_D2X01_RK5(mat, subset, vlow, vdia, doff)
11277#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11278 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_RK5
11279#endif
11280 use pm_kind, only: RKG => RK5
11281 integer(IK) , intent(in) , optional :: doff
11282 type(lowDia_type) , intent(in) :: subset
11283 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11284 real(RKG) , intent(in) , contiguous :: vdia(:)
11285 real(RKG) , intent(in) :: vlow
11286 end subroutine
11287#endif
11288
11289#if RK4_ENABLED
11290 PURE module subroutine setMatInit_IMP_XLD_D2X01_RK4(mat, subset, vlow, vdia, doff)
11291#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11292 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_RK4
11293#endif
11294 use pm_kind, only: RKG => RK4
11295 integer(IK) , intent(in) , optional :: doff
11296 type(lowDia_type) , intent(in) :: subset
11297 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11298 real(RKG) , intent(in) , contiguous :: vdia(:)
11299 real(RKG) , intent(in) :: vlow
11300 end subroutine
11301#endif
11302
11303#if RK3_ENABLED
11304 PURE module subroutine setMatInit_IMP_XLD_D2X01_RK3(mat, subset, vlow, vdia, doff)
11305#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11306 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_RK3
11307#endif
11308 use pm_kind, only: RKG => RK3
11309 integer(IK) , intent(in) , optional :: doff
11310 type(lowDia_type) , intent(in) :: subset
11311 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11312 real(RKG) , intent(in) , contiguous :: vdia(:)
11313 real(RKG) , intent(in) :: vlow
11314 end subroutine
11315#endif
11316
11317#if RK2_ENABLED
11318 PURE module subroutine setMatInit_IMP_XLD_D2X01_RK2(mat, subset, vlow, vdia, doff)
11319#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11320 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_RK2
11321#endif
11322 use pm_kind, only: RKG => RK2
11323 integer(IK) , intent(in) , optional :: doff
11324 type(lowDia_type) , intent(in) :: subset
11325 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11326 real(RKG) , intent(in) , contiguous :: vdia(:)
11327 real(RKG) , intent(in) :: vlow
11328 end subroutine
11329#endif
11330
11331#if RK1_ENABLED
11332 PURE module subroutine setMatInit_IMP_XLD_D2X01_RK1(mat, subset, vlow, vdia, doff)
11333#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11334 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_XLD_D2X01_RK1
11335#endif
11336 use pm_kind, only: RKG => RK1
11337 integer(IK) , intent(in) , optional :: doff
11338 type(lowDia_type) , intent(in) :: subset
11339 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11340 real(RKG) , intent(in) , contiguous :: vdia(:)
11341 real(RKG) , intent(in) :: vlow
11342 end subroutine
11343#endif
11344
11345 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11346
11347 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11348 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11349 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11350
11351 end interface
11352
11353 ! IMP_UXD
11354
11355 interface setMatInit
11356
11357 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11358 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11359 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11360
11361 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11362
11363#if SK5_ENABLED
11364 PURE module subroutine setMatInit_IMP_UXD_D20X0_SK5(mat, subset, vupp, vdia, doff)
11365#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11366 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_SK5
11367#endif
11368 use pm_kind, only: SKG => SK5
11369 integer(IK) , intent(in) , optional :: doff
11370 type(uppDia_type) , intent(in) :: subset
11371 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11372 character(*,SKG) , intent(in) :: vupp
11373 character(*,SKG) , intent(in) :: vdia
11374 end subroutine
11375#endif
11376
11377#if SK4_ENABLED
11378 PURE module subroutine setMatInit_IMP_UXD_D20X0_SK4(mat, subset, vupp, vdia, doff)
11379#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11380 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_SK4
11381#endif
11382 use pm_kind, only: SKG => SK4
11383 integer(IK) , intent(in) , optional :: doff
11384 type(uppDia_type) , intent(in) :: subset
11385 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11386 character(*,SKG) , intent(in) :: vupp
11387 character(*,SKG) , intent(in) :: vdia
11388 end subroutine
11389#endif
11390
11391#if SK3_ENABLED
11392 PURE module subroutine setMatInit_IMP_UXD_D20X0_SK3(mat, subset, vupp, vdia, doff)
11393#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11394 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_SK3
11395#endif
11396 use pm_kind, only: SKG => SK3
11397 integer(IK) , intent(in) , optional :: doff
11398 type(uppDia_type) , intent(in) :: subset
11399 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11400 character(*,SKG) , intent(in) :: vupp
11401 character(*,SKG) , intent(in) :: vdia
11402 end subroutine
11403#endif
11404
11405#if SK2_ENABLED
11406 PURE module subroutine setMatInit_IMP_UXD_D20X0_SK2(mat, subset, vupp, vdia, doff)
11407#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11408 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_SK2
11409#endif
11410 use pm_kind, only: SKG => SK2
11411 integer(IK) , intent(in) , optional :: doff
11412 type(uppDia_type) , intent(in) :: subset
11413 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11414 character(*,SKG) , intent(in) :: vupp
11415 character(*,SKG) , intent(in) :: vdia
11416 end subroutine
11417#endif
11418
11419#if SK1_ENABLED
11420 PURE module subroutine setMatInit_IMP_UXD_D20X0_SK1(mat, subset, vupp, vdia, doff)
11421#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11422 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_SK1
11423#endif
11424 use pm_kind, only: SKG => SK1
11425 integer(IK) , intent(in) , optional :: doff
11426 type(uppDia_type) , intent(in) :: subset
11427 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11428 character(*,SKG) , intent(in) :: vupp
11429 character(*,SKG) , intent(in) :: vdia
11430 end subroutine
11431#endif
11432
11433 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11434
11435#if IK5_ENABLED
11436 PURE module subroutine setMatInit_IMP_UXD_D20X0_IK5(mat, subset, vupp, vdia, doff)
11437#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11438 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_IK5
11439#endif
11440 use pm_kind, only: IKG => IK5
11441 integer(IK) , intent(in) , optional :: doff
11442 type(uppDia_type) , intent(in) :: subset
11443 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11444 integer(IKG) , intent(in) :: vupp
11445 integer(IKG) , intent(in) :: vdia
11446 end subroutine
11447#endif
11448
11449#if IK4_ENABLED
11450 PURE module subroutine setMatInit_IMP_UXD_D20X0_IK4(mat, subset, vupp, vdia, doff)
11451#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11452 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_IK4
11453#endif
11454 use pm_kind, only: IKG => IK4
11455 integer(IK) , intent(in) , optional :: doff
11456 type(uppDia_type) , intent(in) :: subset
11457 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11458 integer(IKG) , intent(in) :: vupp
11459 integer(IKG) , intent(in) :: vdia
11460 end subroutine
11461#endif
11462
11463#if IK3_ENABLED
11464 PURE module subroutine setMatInit_IMP_UXD_D20X0_IK3(mat, subset, vupp, vdia, doff)
11465#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11466 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_IK3
11467#endif
11468 use pm_kind, only: IKG => IK3
11469 integer(IK) , intent(in) , optional :: doff
11470 type(uppDia_type) , intent(in) :: subset
11471 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11472 integer(IKG) , intent(in) :: vupp
11473 integer(IKG) , intent(in) :: vdia
11474 end subroutine
11475#endif
11476
11477#if IK2_ENABLED
11478 PURE module subroutine setMatInit_IMP_UXD_D20X0_IK2(mat, subset, vupp, vdia, doff)
11479#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11480 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_IK2
11481#endif
11482 use pm_kind, only: IKG => IK2
11483 integer(IK) , intent(in) , optional :: doff
11484 type(uppDia_type) , intent(in) :: subset
11485 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11486 integer(IKG) , intent(in) :: vupp
11487 integer(IKG) , intent(in) :: vdia
11488 end subroutine
11489#endif
11490
11491#if IK1_ENABLED
11492 PURE module subroutine setMatInit_IMP_UXD_D20X0_IK1(mat, subset, vupp, vdia, doff)
11493#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11494 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_IK1
11495#endif
11496 use pm_kind, only: IKG => IK1
11497 integer(IK) , intent(in) , optional :: doff
11498 type(uppDia_type) , intent(in) :: subset
11499 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11500 integer(IKG) , intent(in) :: vupp
11501 integer(IKG) , intent(in) :: vdia
11502 end subroutine
11503#endif
11504
11505 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11506
11507#if LK5_ENABLED
11508 PURE module subroutine setMatInit_IMP_UXD_D20X0_LK5(mat, subset, vupp, vdia, doff)
11509#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11510 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_LK5
11511#endif
11512 use pm_kind, only: LKG => LK5
11513 integer(IK) , intent(in) , optional :: doff
11514 type(uppDia_type) , intent(in) :: subset
11515 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11516 logical(LKG) , intent(in) :: vupp
11517 logical(LKG) , intent(in) :: vdia
11518 end subroutine
11519#endif
11520
11521#if LK4_ENABLED
11522 PURE module subroutine setMatInit_IMP_UXD_D20X0_LK4(mat, subset, vupp, vdia, doff)
11523#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11524 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_LK4
11525#endif
11526 use pm_kind, only: LKG => LK4
11527 integer(IK) , intent(in) , optional :: doff
11528 type(uppDia_type) , intent(in) :: subset
11529 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11530 logical(LKG) , intent(in) :: vupp
11531 logical(LKG) , intent(in) :: vdia
11532 end subroutine
11533#endif
11534
11535#if LK3_ENABLED
11536 PURE module subroutine setMatInit_IMP_UXD_D20X0_LK3(mat, subset, vupp, vdia, doff)
11537#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11538 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_LK3
11539#endif
11540 use pm_kind, only: LKG => LK3
11541 integer(IK) , intent(in) , optional :: doff
11542 type(uppDia_type) , intent(in) :: subset
11543 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11544 logical(LKG) , intent(in) :: vupp
11545 logical(LKG) , intent(in) :: vdia
11546 end subroutine
11547#endif
11548
11549#if LK2_ENABLED
11550 PURE module subroutine setMatInit_IMP_UXD_D20X0_LK2(mat, subset, vupp, vdia, doff)
11551#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11552 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_LK2
11553#endif
11554 use pm_kind, only: LKG => LK2
11555 integer(IK) , intent(in) , optional :: doff
11556 type(uppDia_type) , intent(in) :: subset
11557 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11558 logical(LKG) , intent(in) :: vupp
11559 logical(LKG) , intent(in) :: vdia
11560 end subroutine
11561#endif
11562
11563#if LK1_ENABLED
11564 PURE module subroutine setMatInit_IMP_UXD_D20X0_LK1(mat, subset, vupp, vdia, doff)
11565#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11566 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_LK1
11567#endif
11568 use pm_kind, only: LKG => LK1
11569 integer(IK) , intent(in) , optional :: doff
11570 type(uppDia_type) , intent(in) :: subset
11571 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11572 logical(LKG) , intent(in) :: vupp
11573 logical(LKG) , intent(in) :: vdia
11574 end subroutine
11575#endif
11576
11577 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11578
11579#if CK5_ENABLED
11580 PURE module subroutine setMatInit_IMP_UXD_D20X0_CK5(mat, subset, vupp, vdia, doff)
11581#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11582 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_CK5
11583#endif
11584 use pm_kind, only: CKG => CK5
11585 integer(IK) , intent(in) , optional :: doff
11586 type(uppDia_type) , intent(in) :: subset
11587 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11588 complex(CKG) , intent(in) :: vupp
11589 complex(CKG) , intent(in) :: vdia
11590 end subroutine
11591#endif
11592
11593#if CK4_ENABLED
11594 PURE module subroutine setMatInit_IMP_UXD_D20X0_CK4(mat, subset, vupp, vdia, doff)
11595#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11596 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_CK4
11597#endif
11598 use pm_kind, only: CKG => CK4
11599 integer(IK) , intent(in) , optional :: doff
11600 type(uppDia_type) , intent(in) :: subset
11601 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11602 complex(CKG) , intent(in) :: vupp
11603 complex(CKG) , intent(in) :: vdia
11604 end subroutine
11605#endif
11606
11607#if CK3_ENABLED
11608 PURE module subroutine setMatInit_IMP_UXD_D20X0_CK3(mat, subset, vupp, vdia, doff)
11609#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11610 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_CK3
11611#endif
11612 use pm_kind, only: CKG => CK3
11613 integer(IK) , intent(in) , optional :: doff
11614 type(uppDia_type) , intent(in) :: subset
11615 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11616 complex(CKG) , intent(in) :: vupp
11617 complex(CKG) , intent(in) :: vdia
11618 end subroutine
11619#endif
11620
11621#if CK2_ENABLED
11622 PURE module subroutine setMatInit_IMP_UXD_D20X0_CK2(mat, subset, vupp, vdia, doff)
11623#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11624 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_CK2
11625#endif
11626 use pm_kind, only: CKG => CK2
11627 integer(IK) , intent(in) , optional :: doff
11628 type(uppDia_type) , intent(in) :: subset
11629 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11630 complex(CKG) , intent(in) :: vupp
11631 complex(CKG) , intent(in) :: vdia
11632 end subroutine
11633#endif
11634
11635#if CK1_ENABLED
11636 PURE module subroutine setMatInit_IMP_UXD_D20X0_CK1(mat, subset, vupp, vdia, doff)
11637#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11638 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_CK1
11639#endif
11640 use pm_kind, only: CKG => CK1
11641 integer(IK) , intent(in) , optional :: doff
11642 type(uppDia_type) , intent(in) :: subset
11643 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11644 complex(CKG) , intent(in) :: vupp
11645 complex(CKG) , intent(in) :: vdia
11646 end subroutine
11647#endif
11648
11649 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11650
11651#if RK5_ENABLED
11652 PURE module subroutine setMatInit_IMP_UXD_D20X0_RK5(mat, subset, vupp, vdia, doff)
11653#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11654 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_RK5
11655#endif
11656 use pm_kind, only: RKG => RK5
11657 integer(IK) , intent(in) , optional :: doff
11658 type(uppDia_type) , intent(in) :: subset
11659 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11660 real(RKG) , intent(in) :: vupp
11661 real(RKG) , intent(in) :: vdia
11662 end subroutine
11663#endif
11664
11665#if RK4_ENABLED
11666 PURE module subroutine setMatInit_IMP_UXD_D20X0_RK4(mat, subset, vupp, vdia, doff)
11667#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11668 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_RK4
11669#endif
11670 use pm_kind, only: RKG => RK4
11671 integer(IK) , intent(in) , optional :: doff
11672 type(uppDia_type) , intent(in) :: subset
11673 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11674 real(RKG) , intent(in) :: vupp
11675 real(RKG) , intent(in) :: vdia
11676 end subroutine
11677#endif
11678
11679#if RK3_ENABLED
11680 PURE module subroutine setMatInit_IMP_UXD_D20X0_RK3(mat, subset, vupp, vdia, doff)
11681#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11682 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_RK3
11683#endif
11684 use pm_kind, only: RKG => RK3
11685 integer(IK) , intent(in) , optional :: doff
11686 type(uppDia_type) , intent(in) :: subset
11687 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11688 real(RKG) , intent(in) :: vupp
11689 real(RKG) , intent(in) :: vdia
11690 end subroutine
11691#endif
11692
11693#if RK2_ENABLED
11694 PURE module subroutine setMatInit_IMP_UXD_D20X0_RK2(mat, subset, vupp, vdia, doff)
11695#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11696 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_RK2
11697#endif
11698 use pm_kind, only: RKG => RK2
11699 integer(IK) , intent(in) , optional :: doff
11700 type(uppDia_type) , intent(in) :: subset
11701 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11702 real(RKG) , intent(in) :: vupp
11703 real(RKG) , intent(in) :: vdia
11704 end subroutine
11705#endif
11706
11707#if RK1_ENABLED
11708 PURE module subroutine setMatInit_IMP_UXD_D20X0_RK1(mat, subset, vupp, vdia, doff)
11709#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11710 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X0_RK1
11711#endif
11712 use pm_kind, only: RKG => RK1
11713 integer(IK) , intent(in) , optional :: doff
11714 type(uppDia_type) , intent(in) :: subset
11715 real(RKG) , intent(inout) , contiguous :: mat(:,:)
11716 real(RKG) , intent(in) :: vupp
11717 real(RKG) , intent(in) :: vdia
11718 end subroutine
11719#endif
11720
11721 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11722
11723 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11724 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11725 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11726
11727 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11728
11729#if SK5_ENABLED
11730 PURE module subroutine setMatInit_IMP_UXD_D20X1_SK5(mat, subset, vupp, vdia, doff)
11731#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11732 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_SK5
11733#endif
11734 use pm_kind, only: SKG => SK5
11735 integer(IK) , intent(in) , optional :: doff
11736 type(uppDia_type) , intent(in) :: subset
11737 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11738 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11739 character(*,SKG) , intent(in) :: vupp
11740 end subroutine
11741#endif
11742
11743#if SK4_ENABLED
11744 PURE module subroutine setMatInit_IMP_UXD_D20X1_SK4(mat, subset, vupp, vdia, doff)
11745#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11746 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_SK4
11747#endif
11748 use pm_kind, only: SKG => SK4
11749 integer(IK) , intent(in) , optional :: doff
11750 type(uppDia_type) , intent(in) :: subset
11751 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11752 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11753 character(*,SKG) , intent(in) :: vupp
11754 end subroutine
11755#endif
11756
11757#if SK3_ENABLED
11758 PURE module subroutine setMatInit_IMP_UXD_D20X1_SK3(mat, subset, vupp, vdia, doff)
11759#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11760 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_SK3
11761#endif
11762 use pm_kind, only: SKG => SK3
11763 integer(IK) , intent(in) , optional :: doff
11764 type(uppDia_type) , intent(in) :: subset
11765 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11766 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11767 character(*,SKG) , intent(in) :: vupp
11768 end subroutine
11769#endif
11770
11771#if SK2_ENABLED
11772 PURE module subroutine setMatInit_IMP_UXD_D20X1_SK2(mat, subset, vupp, vdia, doff)
11773#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11774 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_SK2
11775#endif
11776 use pm_kind, only: SKG => SK2
11777 integer(IK) , intent(in) , optional :: doff
11778 type(uppDia_type) , intent(in) :: subset
11779 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11780 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11781 character(*,SKG) , intent(in) :: vupp
11782 end subroutine
11783#endif
11784
11785#if SK1_ENABLED
11786 PURE module subroutine setMatInit_IMP_UXD_D20X1_SK1(mat, subset, vupp, vdia, doff)
11787#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11788 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_SK1
11789#endif
11790 use pm_kind, only: SKG => SK1
11791 integer(IK) , intent(in) , optional :: doff
11792 type(uppDia_type) , intent(in) :: subset
11793 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
11794 character(*,SKG) , intent(in) , contiguous :: vdia(:)
11795 character(*,SKG) , intent(in) :: vupp
11796 end subroutine
11797#endif
11798
11799 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11800
11801#if IK5_ENABLED
11802 PURE module subroutine setMatInit_IMP_UXD_D20X1_IK5(mat, subset, vupp, vdia, doff)
11803#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11804 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_IK5
11805#endif
11806 use pm_kind, only: IKG => IK5
11807 integer(IK) , intent(in) , optional :: doff
11808 type(uppDia_type) , intent(in) :: subset
11809 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11810 integer(IKG) , intent(in) , contiguous :: vdia(:)
11811 integer(IKG) , intent(in) :: vupp
11812 end subroutine
11813#endif
11814
11815#if IK4_ENABLED
11816 PURE module subroutine setMatInit_IMP_UXD_D20X1_IK4(mat, subset, vupp, vdia, doff)
11817#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11818 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_IK4
11819#endif
11820 use pm_kind, only: IKG => IK4
11821 integer(IK) , intent(in) , optional :: doff
11822 type(uppDia_type) , intent(in) :: subset
11823 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11824 integer(IKG) , intent(in) , contiguous :: vdia(:)
11825 integer(IKG) , intent(in) :: vupp
11826 end subroutine
11827#endif
11828
11829#if IK3_ENABLED
11830 PURE module subroutine setMatInit_IMP_UXD_D20X1_IK3(mat, subset, vupp, vdia, doff)
11831#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11832 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_IK3
11833#endif
11834 use pm_kind, only: IKG => IK3
11835 integer(IK) , intent(in) , optional :: doff
11836 type(uppDia_type) , intent(in) :: subset
11837 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11838 integer(IKG) , intent(in) , contiguous :: vdia(:)
11839 integer(IKG) , intent(in) :: vupp
11840 end subroutine
11841#endif
11842
11843#if IK2_ENABLED
11844 PURE module subroutine setMatInit_IMP_UXD_D20X1_IK2(mat, subset, vupp, vdia, doff)
11845#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11846 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_IK2
11847#endif
11848 use pm_kind, only: IKG => IK2
11849 integer(IK) , intent(in) , optional :: doff
11850 type(uppDia_type) , intent(in) :: subset
11851 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11852 integer(IKG) , intent(in) , contiguous :: vdia(:)
11853 integer(IKG) , intent(in) :: vupp
11854 end subroutine
11855#endif
11856
11857#if IK1_ENABLED
11858 PURE module subroutine setMatInit_IMP_UXD_D20X1_IK1(mat, subset, vupp, vdia, doff)
11859#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11860 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_IK1
11861#endif
11862 use pm_kind, only: IKG => IK1
11863 integer(IK) , intent(in) , optional :: doff
11864 type(uppDia_type) , intent(in) :: subset
11865 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
11866 integer(IKG) , intent(in) , contiguous :: vdia(:)
11867 integer(IKG) , intent(in) :: vupp
11868 end subroutine
11869#endif
11870
11871 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11872
11873#if LK5_ENABLED
11874 PURE module subroutine setMatInit_IMP_UXD_D20X1_LK5(mat, subset, vupp, vdia, doff)
11875#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11876 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_LK5
11877#endif
11878 use pm_kind, only: LKG => LK5
11879 integer(IK) , intent(in) , optional :: doff
11880 type(uppDia_type) , intent(in) :: subset
11881 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11882 logical(LKG) , intent(in) , contiguous :: vdia(:)
11883 logical(LKG) , intent(in) :: vupp
11884 end subroutine
11885#endif
11886
11887#if LK4_ENABLED
11888 PURE module subroutine setMatInit_IMP_UXD_D20X1_LK4(mat, subset, vupp, vdia, doff)
11889#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11890 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_LK4
11891#endif
11892 use pm_kind, only: LKG => LK4
11893 integer(IK) , intent(in) , optional :: doff
11894 type(uppDia_type) , intent(in) :: subset
11895 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11896 logical(LKG) , intent(in) , contiguous :: vdia(:)
11897 logical(LKG) , intent(in) :: vupp
11898 end subroutine
11899#endif
11900
11901#if LK3_ENABLED
11902 PURE module subroutine setMatInit_IMP_UXD_D20X1_LK3(mat, subset, vupp, vdia, doff)
11903#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11904 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_LK3
11905#endif
11906 use pm_kind, only: LKG => LK3
11907 integer(IK) , intent(in) , optional :: doff
11908 type(uppDia_type) , intent(in) :: subset
11909 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11910 logical(LKG) , intent(in) , contiguous :: vdia(:)
11911 logical(LKG) , intent(in) :: vupp
11912 end subroutine
11913#endif
11914
11915#if LK2_ENABLED
11916 PURE module subroutine setMatInit_IMP_UXD_D20X1_LK2(mat, subset, vupp, vdia, doff)
11917#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11918 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_LK2
11919#endif
11920 use pm_kind, only: LKG => LK2
11921 integer(IK) , intent(in) , optional :: doff
11922 type(uppDia_type) , intent(in) :: subset
11923 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11924 logical(LKG) , intent(in) , contiguous :: vdia(:)
11925 logical(LKG) , intent(in) :: vupp
11926 end subroutine
11927#endif
11928
11929#if LK1_ENABLED
11930 PURE module subroutine setMatInit_IMP_UXD_D20X1_LK1(mat, subset, vupp, vdia, doff)
11931#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11932 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_LK1
11933#endif
11934 use pm_kind, only: LKG => LK1
11935 integer(IK) , intent(in) , optional :: doff
11936 type(uppDia_type) , intent(in) :: subset
11937 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
11938 logical(LKG) , intent(in) , contiguous :: vdia(:)
11939 logical(LKG) , intent(in) :: vupp
11940 end subroutine
11941#endif
11942
11943 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11944
11945#if CK5_ENABLED
11946 PURE module subroutine setMatInit_IMP_UXD_D20X1_CK5(mat, subset, vupp, vdia, doff)
11947#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11948 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_CK5
11949#endif
11950 use pm_kind, only: CKG => CK5
11951 integer(IK) , intent(in) , optional :: doff
11952 type(uppDia_type) , intent(in) :: subset
11953 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11954 complex(CKG) , intent(in) , contiguous :: vdia(:)
11955 complex(CKG) , intent(in) :: vupp
11956 end subroutine
11957#endif
11958
11959#if CK4_ENABLED
11960 PURE module subroutine setMatInit_IMP_UXD_D20X1_CK4(mat, subset, vupp, vdia, doff)
11961#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11962 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_CK4
11963#endif
11964 use pm_kind, only: CKG => CK4
11965 integer(IK) , intent(in) , optional :: doff
11966 type(uppDia_type) , intent(in) :: subset
11967 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11968 complex(CKG) , intent(in) , contiguous :: vdia(:)
11969 complex(CKG) , intent(in) :: vupp
11970 end subroutine
11971#endif
11972
11973#if CK3_ENABLED
11974 PURE module subroutine setMatInit_IMP_UXD_D20X1_CK3(mat, subset, vupp, vdia, doff)
11975#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11976 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_CK3
11977#endif
11978 use pm_kind, only: CKG => CK3
11979 integer(IK) , intent(in) , optional :: doff
11980 type(uppDia_type) , intent(in) :: subset
11981 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11982 complex(CKG) , intent(in) , contiguous :: vdia(:)
11983 complex(CKG) , intent(in) :: vupp
11984 end subroutine
11985#endif
11986
11987#if CK2_ENABLED
11988 PURE module subroutine setMatInit_IMP_UXD_D20X1_CK2(mat, subset, vupp, vdia, doff)
11989#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11990 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_CK2
11991#endif
11992 use pm_kind, only: CKG => CK2
11993 integer(IK) , intent(in) , optional :: doff
11994 type(uppDia_type) , intent(in) :: subset
11995 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
11996 complex(CKG) , intent(in) , contiguous :: vdia(:)
11997 complex(CKG) , intent(in) :: vupp
11998 end subroutine
11999#endif
12000
12001#if CK1_ENABLED
12002 PURE module subroutine setMatInit_IMP_UXD_D20X1_CK1(mat, subset, vupp, vdia, doff)
12003#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12004 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_CK1
12005#endif
12006 use pm_kind, only: CKG => CK1
12007 integer(IK) , intent(in) , optional :: doff
12008 type(uppDia_type) , intent(in) :: subset
12009 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12010 complex(CKG) , intent(in) , contiguous :: vdia(:)
12011 complex(CKG) , intent(in) :: vupp
12012 end subroutine
12013#endif
12014
12015 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12016
12017#if RK5_ENABLED
12018 PURE module subroutine setMatInit_IMP_UXD_D20X1_RK5(mat, subset, vupp, vdia, doff)
12019#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12020 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_RK5
12021#endif
12022 use pm_kind, only: RKG => RK5
12023 integer(IK) , intent(in) , optional :: doff
12024 type(uppDia_type) , intent(in) :: subset
12025 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12026 real(RKG) , intent(in) , contiguous :: vdia(:)
12027 real(RKG) , intent(in) :: vupp
12028 end subroutine
12029#endif
12030
12031#if RK4_ENABLED
12032 PURE module subroutine setMatInit_IMP_UXD_D20X1_RK4(mat, subset, vupp, vdia, doff)
12033#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12034 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_RK4
12035#endif
12036 use pm_kind, only: RKG => RK4
12037 integer(IK) , intent(in) , optional :: doff
12038 type(uppDia_type) , intent(in) :: subset
12039 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12040 real(RKG) , intent(in) , contiguous :: vdia(:)
12041 real(RKG) , intent(in) :: vupp
12042 end subroutine
12043#endif
12044
12045#if RK3_ENABLED
12046 PURE module subroutine setMatInit_IMP_UXD_D20X1_RK3(mat, subset, vupp, vdia, doff)
12047#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12048 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_RK3
12049#endif
12050 use pm_kind, only: RKG => RK3
12051 integer(IK) , intent(in) , optional :: doff
12052 type(uppDia_type) , intent(in) :: subset
12053 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12054 real(RKG) , intent(in) , contiguous :: vdia(:)
12055 real(RKG) , intent(in) :: vupp
12056 end subroutine
12057#endif
12058
12059#if RK2_ENABLED
12060 PURE module subroutine setMatInit_IMP_UXD_D20X1_RK2(mat, subset, vupp, vdia, doff)
12061#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12062 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_RK2
12063#endif
12064 use pm_kind, only: RKG => RK2
12065 integer(IK) , intent(in) , optional :: doff
12066 type(uppDia_type) , intent(in) :: subset
12067 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12068 real(RKG) , intent(in) , contiguous :: vdia(:)
12069 real(RKG) , intent(in) :: vupp
12070 end subroutine
12071#endif
12072
12073#if RK1_ENABLED
12074 PURE module subroutine setMatInit_IMP_UXD_D20X1_RK1(mat, subset, vupp, vdia, doff)
12075#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12076 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_UXD_D20X1_RK1
12077#endif
12078 use pm_kind, only: RKG => RK1
12079 integer(IK) , intent(in) , optional :: doff
12080 type(uppDia_type) , intent(in) :: subset
12081 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12082 real(RKG) , intent(in) , contiguous :: vdia(:)
12083 real(RKG) , intent(in) :: vupp
12084 end subroutine
12085#endif
12086
12087 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12088
12089 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12090 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12091 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12092
12093 end interface
12094
12095 ! IMP_ULX
12096
12097 interface setMatInit
12098
12099 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12100 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12101 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12102
12103 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12104
12105#if SK5_ENABLED
12106 PURE module subroutine setMatInit_IMP_ULX_D200X_SK5(mat, subset, vupp, vlow, doff)
12107#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12108 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_SK5
12109#endif
12110 use pm_kind, only: SKG => SK5
12111 integer(IK) , intent(in) , optional :: doff
12112 type(uppLow_type) , intent(in) :: subset
12113 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12114 character(*,SKG) , intent(in) :: vupp, vlow
12115 end subroutine
12116#endif
12117
12118#if SK4_ENABLED
12119 PURE module subroutine setMatInit_IMP_ULX_D200X_SK4(mat, subset, vupp, vlow, doff)
12120#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12121 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_SK4
12122#endif
12123 use pm_kind, only: SKG => SK4
12124 integer(IK) , intent(in) , optional :: doff
12125 type(uppLow_type) , intent(in) :: subset
12126 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12127 character(*,SKG) , intent(in) :: vupp, vlow
12128 end subroutine
12129#endif
12130
12131#if SK3_ENABLED
12132 PURE module subroutine setMatInit_IMP_ULX_D200X_SK3(mat, subset, vupp, vlow, doff)
12133#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12134 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_SK3
12135#endif
12136 use pm_kind, only: SKG => SK3
12137 integer(IK) , intent(in) , optional :: doff
12138 type(uppLow_type) , intent(in) :: subset
12139 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12140 character(*,SKG) , intent(in) :: vupp, vlow
12141 end subroutine
12142#endif
12143
12144#if SK2_ENABLED
12145 PURE module subroutine setMatInit_IMP_ULX_D200X_SK2(mat, subset, vupp, vlow, doff)
12146#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12147 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_SK2
12148#endif
12149 use pm_kind, only: SKG => SK2
12150 integer(IK) , intent(in) , optional :: doff
12151 type(uppLow_type) , intent(in) :: subset
12152 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12153 character(*,SKG) , intent(in) :: vupp, vlow
12154 end subroutine
12155#endif
12156
12157#if SK1_ENABLED
12158 PURE module subroutine setMatInit_IMP_ULX_D200X_SK1(mat, subset, vupp, vlow, doff)
12159#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12160 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_SK1
12161#endif
12162 use pm_kind, only: SKG => SK1
12163 integer(IK) , intent(in) , optional :: doff
12164 type(uppLow_type) , intent(in) :: subset
12165 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12166 character(*,SKG) , intent(in) :: vupp, vlow
12167 end subroutine
12168#endif
12169
12170 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12171
12172#if IK5_ENABLED
12173 PURE module subroutine setMatInit_IMP_ULX_D200X_IK5(mat, subset, vupp, vlow, doff)
12174#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12175 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_IK5
12176#endif
12177 use pm_kind, only: IKG => IK5
12178 integer(IK) , intent(in) , optional :: doff
12179 type(uppLow_type) , intent(in) :: subset
12180 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12181 integer(IKG) , intent(in) :: vupp, vlow
12182 end subroutine
12183#endif
12184
12185#if IK4_ENABLED
12186 PURE module subroutine setMatInit_IMP_ULX_D200X_IK4(mat, subset, vupp, vlow, doff)
12187#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12188 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_IK4
12189#endif
12190 use pm_kind, only: IKG => IK4
12191 integer(IK) , intent(in) , optional :: doff
12192 type(uppLow_type) , intent(in) :: subset
12193 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12194 integer(IKG) , intent(in) :: vupp, vlow
12195 end subroutine
12196#endif
12197
12198#if IK3_ENABLED
12199 PURE module subroutine setMatInit_IMP_ULX_D200X_IK3(mat, subset, vupp, vlow, doff)
12200#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12201 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_IK3
12202#endif
12203 use pm_kind, only: IKG => IK3
12204 integer(IK) , intent(in) , optional :: doff
12205 type(uppLow_type) , intent(in) :: subset
12206 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12207 integer(IKG) , intent(in) :: vupp, vlow
12208 end subroutine
12209#endif
12210
12211#if IK2_ENABLED
12212 PURE module subroutine setMatInit_IMP_ULX_D200X_IK2(mat, subset, vupp, vlow, doff)
12213#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12214 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_IK2
12215#endif
12216 use pm_kind, only: IKG => IK2
12217 integer(IK) , intent(in) , optional :: doff
12218 type(uppLow_type) , intent(in) :: subset
12219 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12220 integer(IKG) , intent(in) :: vupp, vlow
12221 end subroutine
12222#endif
12223
12224#if IK1_ENABLED
12225 PURE module subroutine setMatInit_IMP_ULX_D200X_IK1(mat, subset, vupp, vlow, doff)
12226#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12227 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_IK1
12228#endif
12229 use pm_kind, only: IKG => IK1
12230 integer(IK) , intent(in) , optional :: doff
12231 type(uppLow_type) , intent(in) :: subset
12232 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12233 integer(IKG) , intent(in) :: vupp, vlow
12234 end subroutine
12235#endif
12236
12237 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12238
12239#if LK5_ENABLED
12240 PURE module subroutine setMatInit_IMP_ULX_D200X_LK5(mat, subset, vupp, vlow, doff)
12241#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12242 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_LK5
12243#endif
12244 use pm_kind, only: LKG => LK5
12245 integer(IK) , intent(in) , optional :: doff
12246 type(uppLow_type) , intent(in) :: subset
12247 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12248 logical(LKG) , intent(in) :: vupp, vlow
12249 end subroutine
12250#endif
12251
12252#if LK4_ENABLED
12253 PURE module subroutine setMatInit_IMP_ULX_D200X_LK4(mat, subset, vupp, vlow, doff)
12254#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12255 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_LK4
12256#endif
12257 use pm_kind, only: LKG => LK4
12258 integer(IK) , intent(in) , optional :: doff
12259 type(uppLow_type) , intent(in) :: subset
12260 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12261 logical(LKG) , intent(in) :: vupp, vlow
12262 end subroutine
12263#endif
12264
12265#if LK3_ENABLED
12266 PURE module subroutine setMatInit_IMP_ULX_D200X_LK3(mat, subset, vupp, vlow, doff)
12267#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12268 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_LK3
12269#endif
12270 use pm_kind, only: LKG => LK3
12271 integer(IK) , intent(in) , optional :: doff
12272 type(uppLow_type) , intent(in) :: subset
12273 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12274 logical(LKG) , intent(in) :: vupp, vlow
12275 end subroutine
12276#endif
12277
12278#if LK2_ENABLED
12279 PURE module subroutine setMatInit_IMP_ULX_D200X_LK2(mat, subset, vupp, vlow, doff)
12280#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12281 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_LK2
12282#endif
12283 use pm_kind, only: LKG => LK2
12284 integer(IK) , intent(in) , optional :: doff
12285 type(uppLow_type) , intent(in) :: subset
12286 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12287 logical(LKG) , intent(in) :: vupp, vlow
12288 end subroutine
12289#endif
12290
12291#if LK1_ENABLED
12292 PURE module subroutine setMatInit_IMP_ULX_D200X_LK1(mat, subset, vupp, vlow, doff)
12293#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12294 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_LK1
12295#endif
12296 use pm_kind, only: LKG => LK1
12297 integer(IK) , intent(in) , optional :: doff
12298 type(uppLow_type) , intent(in) :: subset
12299 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12300 logical(LKG) , intent(in) :: vupp, vlow
12301 end subroutine
12302#endif
12303
12304 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12305
12306#if CK5_ENABLED
12307 PURE module subroutine setMatInit_IMP_ULX_D200X_CK5(mat, subset, vupp, vlow, doff)
12308#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12309 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_CK5
12310#endif
12311 use pm_kind, only: CKG => CK5
12312 integer(IK) , intent(in) , optional :: doff
12313 type(uppLow_type) , intent(in) :: subset
12314 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12315 complex(CKG) , intent(in) :: vupp, vlow
12316 end subroutine
12317#endif
12318
12319#if CK4_ENABLED
12320 PURE module subroutine setMatInit_IMP_ULX_D200X_CK4(mat, subset, vupp, vlow, doff)
12321#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12322 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_CK4
12323#endif
12324 use pm_kind, only: CKG => CK4
12325 integer(IK) , intent(in) , optional :: doff
12326 type(uppLow_type) , intent(in) :: subset
12327 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12328 complex(CKG) , intent(in) :: vupp, vlow
12329 end subroutine
12330#endif
12331
12332#if CK3_ENABLED
12333 PURE module subroutine setMatInit_IMP_ULX_D200X_CK3(mat, subset, vupp, vlow, doff)
12334#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12335 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_CK3
12336#endif
12337 use pm_kind, only: CKG => CK3
12338 integer(IK) , intent(in) , optional :: doff
12339 type(uppLow_type) , intent(in) :: subset
12340 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12341 complex(CKG) , intent(in) :: vupp, vlow
12342 end subroutine
12343#endif
12344
12345#if CK2_ENABLED
12346 PURE module subroutine setMatInit_IMP_ULX_D200X_CK2(mat, subset, vupp, vlow, doff)
12347#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12348 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_CK2
12349#endif
12350 use pm_kind, only: CKG => CK2
12351 integer(IK) , intent(in) , optional :: doff
12352 type(uppLow_type) , intent(in) :: subset
12353 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12354 complex(CKG) , intent(in) :: vupp, vlow
12355 end subroutine
12356#endif
12357
12358#if CK1_ENABLED
12359 PURE module subroutine setMatInit_IMP_ULX_D200X_CK1(mat, subset, vupp, vlow, doff)
12360#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12361 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_CK1
12362#endif
12363 use pm_kind, only: CKG => CK1
12364 integer(IK) , intent(in) , optional :: doff
12365 type(uppLow_type) , intent(in) :: subset
12366 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12367 complex(CKG) , intent(in) :: vupp, vlow
12368 end subroutine
12369#endif
12370
12371 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12372
12373#if RK5_ENABLED
12374 PURE module subroutine setMatInit_IMP_ULX_D200X_RK5(mat, subset, vupp, vlow, doff)
12375#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12376 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_RK5
12377#endif
12378 use pm_kind, only: RKG => RK5
12379 integer(IK) , intent(in) , optional :: doff
12380 type(uppLow_type) , intent(in) :: subset
12381 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12382 real(RKG) , intent(in) :: vupp, vlow
12383 end subroutine
12384#endif
12385
12386#if RK4_ENABLED
12387 PURE module subroutine setMatInit_IMP_ULX_D200X_RK4(mat, subset, vupp, vlow, doff)
12388#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12389 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_RK4
12390#endif
12391 use pm_kind, only: RKG => RK4
12392 integer(IK) , intent(in) , optional :: doff
12393 type(uppLow_type) , intent(in) :: subset
12394 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12395 real(RKG) , intent(in) :: vupp, vlow
12396 end subroutine
12397#endif
12398
12399#if RK3_ENABLED
12400 PURE module subroutine setMatInit_IMP_ULX_D200X_RK3(mat, subset, vupp, vlow, doff)
12401#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12402 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_RK3
12403#endif
12404 use pm_kind, only: RKG => RK3
12405 integer(IK) , intent(in) , optional :: doff
12406 type(uppLow_type) , intent(in) :: subset
12407 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12408 real(RKG) , intent(in) :: vupp, vlow
12409 end subroutine
12410#endif
12411
12412#if RK2_ENABLED
12413 PURE module subroutine setMatInit_IMP_ULX_D200X_RK2(mat, subset, vupp, vlow, doff)
12414#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12415 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_RK2
12416#endif
12417 use pm_kind, only: RKG => RK2
12418 integer(IK) , intent(in) , optional :: doff
12419 type(uppLow_type) , intent(in) :: subset
12420 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12421 real(RKG) , intent(in) :: vupp, vlow
12422 end subroutine
12423#endif
12424
12425#if RK1_ENABLED
12426 PURE module subroutine setMatInit_IMP_ULX_D200X_RK1(mat, subset, vupp, vlow, doff)
12427#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12428 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULX_D200X_RK1
12429#endif
12430 use pm_kind, only: RKG => RK1
12431 integer(IK) , intent(in) , optional :: doff
12432 type(uppLow_type) , intent(in) :: subset
12433 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12434 real(RKG) , intent(in) :: vupp, vlow
12435 end subroutine
12436#endif
12437
12438 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12439
12440 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12441 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12442 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12443
12444 end interface
12445
12446 ! IMP_ULD
12447
12448 interface setMatInit
12449
12450 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12451 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12452 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12453
12454 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12455
12456#if SK5_ENABLED
12457 PURE module subroutine setMatInit_IMP_ULD_D2000_SK5(mat, subset, vupp, vlow, vdia, doff)
12458#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12459 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_SK5
12460#endif
12461 use pm_kind, only: SKG => SK5
12462 type(uppLowDia_type) , intent(in) :: subset
12463 integer(IK) , intent(in) , optional :: doff
12464 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12465 character(*,SKG) , intent(in) :: vupp, vlow
12466 character(*,SKG) , intent(in) :: vdia
12467 end subroutine
12468#endif
12469
12470#if SK4_ENABLED
12471 PURE module subroutine setMatInit_IMP_ULD_D2000_SK4(mat, subset, vupp, vlow, vdia, doff)
12472#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12473 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_SK4
12474#endif
12475 use pm_kind, only: SKG => SK4
12476 type(uppLowDia_type) , intent(in) :: subset
12477 integer(IK) , intent(in) , optional :: doff
12478 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12479 character(*,SKG) , intent(in) :: vupp, vlow
12480 character(*,SKG) , intent(in) :: vdia
12481 end subroutine
12482#endif
12483
12484#if SK3_ENABLED
12485 PURE module subroutine setMatInit_IMP_ULD_D2000_SK3(mat, subset, vupp, vlow, vdia, doff)
12486#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12487 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_SK3
12488#endif
12489 use pm_kind, only: SKG => SK3
12490 type(uppLowDia_type) , intent(in) :: subset
12491 integer(IK) , intent(in) , optional :: doff
12492 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12493 character(*,SKG) , intent(in) :: vupp, vlow
12494 character(*,SKG) , intent(in) :: vdia
12495 end subroutine
12496#endif
12497
12498#if SK2_ENABLED
12499 PURE module subroutine setMatInit_IMP_ULD_D2000_SK2(mat, subset, vupp, vlow, vdia, doff)
12500#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12501 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_SK2
12502#endif
12503 use pm_kind, only: SKG => SK2
12504 type(uppLowDia_type) , intent(in) :: subset
12505 integer(IK) , intent(in) , optional :: doff
12506 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12507 character(*,SKG) , intent(in) :: vupp, vlow
12508 character(*,SKG) , intent(in) :: vdia
12509 end subroutine
12510#endif
12511
12512#if SK1_ENABLED
12513 PURE module subroutine setMatInit_IMP_ULD_D2000_SK1(mat, subset, vupp, vlow, vdia, doff)
12514#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12515 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_SK1
12516#endif
12517 use pm_kind, only: SKG => SK1
12518 type(uppLowDia_type) , intent(in) :: subset
12519 integer(IK) , intent(in) , optional :: doff
12520 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12521 character(*,SKG) , intent(in) :: vupp, vlow
12522 character(*,SKG) , intent(in) :: vdia
12523 end subroutine
12524#endif
12525
12526 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12527
12528#if IK5_ENABLED
12529 PURE module subroutine setMatInit_IMP_ULD_D2000_IK5(mat, subset, vupp, vlow, vdia, doff)
12530#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12531 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_IK5
12532#endif
12533 use pm_kind, only: IKG => IK5
12534 type(uppLowDia_type) , intent(in) :: subset
12535 integer(IK) , intent(in) , optional :: doff
12536 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12537 integer(IKG) , intent(in) :: vupp, vlow
12538 integer(IKG) , intent(in) :: vdia
12539 end subroutine
12540#endif
12541
12542#if IK4_ENABLED
12543 PURE module subroutine setMatInit_IMP_ULD_D2000_IK4(mat, subset, vupp, vlow, vdia, doff)
12544#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12545 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_IK4
12546#endif
12547 use pm_kind, only: IKG => IK4
12548 type(uppLowDia_type) , intent(in) :: subset
12549 integer(IK) , intent(in) , optional :: doff
12550 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12551 integer(IKG) , intent(in) :: vupp, vlow
12552 integer(IKG) , intent(in) :: vdia
12553 end subroutine
12554#endif
12555
12556#if IK3_ENABLED
12557 PURE module subroutine setMatInit_IMP_ULD_D2000_IK3(mat, subset, vupp, vlow, vdia, doff)
12558#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12559 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_IK3
12560#endif
12561 use pm_kind, only: IKG => IK3
12562 type(uppLowDia_type) , intent(in) :: subset
12563 integer(IK) , intent(in) , optional :: doff
12564 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12565 integer(IKG) , intent(in) :: vupp, vlow
12566 integer(IKG) , intent(in) :: vdia
12567 end subroutine
12568#endif
12569
12570#if IK2_ENABLED
12571 PURE module subroutine setMatInit_IMP_ULD_D2000_IK2(mat, subset, vupp, vlow, vdia, doff)
12572#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12573 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_IK2
12574#endif
12575 use pm_kind, only: IKG => IK2
12576 type(uppLowDia_type) , intent(in) :: subset
12577 integer(IK) , intent(in) , optional :: doff
12578 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12579 integer(IKG) , intent(in) :: vupp, vlow
12580 integer(IKG) , intent(in) :: vdia
12581 end subroutine
12582#endif
12583
12584#if IK1_ENABLED
12585 PURE module subroutine setMatInit_IMP_ULD_D2000_IK1(mat, subset, vupp, vlow, vdia, doff)
12586#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12587 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_IK1
12588#endif
12589 use pm_kind, only: IKG => IK1
12590 type(uppLowDia_type) , intent(in) :: subset
12591 integer(IK) , intent(in) , optional :: doff
12592 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12593 integer(IKG) , intent(in) :: vupp, vlow
12594 integer(IKG) , intent(in) :: vdia
12595 end subroutine
12596#endif
12597
12598 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12599
12600#if LK5_ENABLED
12601 PURE module subroutine setMatInit_IMP_ULD_D2000_LK5(mat, subset, vupp, vlow, vdia, doff)
12602#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12603 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_LK5
12604#endif
12605 use pm_kind, only: LKG => LK5
12606 type(uppLowDia_type) , intent(in) :: subset
12607 integer(IK) , intent(in) , optional :: doff
12608 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12609 logical(LKG) , intent(in) :: vupp, vlow
12610 logical(LKG) , intent(in) :: vdia
12611 end subroutine
12612#endif
12613
12614#if LK4_ENABLED
12615 PURE module subroutine setMatInit_IMP_ULD_D2000_LK4(mat, subset, vupp, vlow, vdia, doff)
12616#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12617 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_LK4
12618#endif
12619 use pm_kind, only: LKG => LK4
12620 type(uppLowDia_type) , intent(in) :: subset
12621 integer(IK) , intent(in) , optional :: doff
12622 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12623 logical(LKG) , intent(in) :: vupp, vlow
12624 logical(LKG) , intent(in) :: vdia
12625 end subroutine
12626#endif
12627
12628#if LK3_ENABLED
12629 PURE module subroutine setMatInit_IMP_ULD_D2000_LK3(mat, subset, vupp, vlow, vdia, doff)
12630#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12631 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_LK3
12632#endif
12633 use pm_kind, only: LKG => LK3
12634 type(uppLowDia_type) , intent(in) :: subset
12635 integer(IK) , intent(in) , optional :: doff
12636 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12637 logical(LKG) , intent(in) :: vupp, vlow
12638 logical(LKG) , intent(in) :: vdia
12639 end subroutine
12640#endif
12641
12642#if LK2_ENABLED
12643 PURE module subroutine setMatInit_IMP_ULD_D2000_LK2(mat, subset, vupp, vlow, vdia, doff)
12644#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12645 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_LK2
12646#endif
12647 use pm_kind, only: LKG => LK2
12648 type(uppLowDia_type) , intent(in) :: subset
12649 integer(IK) , intent(in) , optional :: doff
12650 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12651 logical(LKG) , intent(in) :: vupp, vlow
12652 logical(LKG) , intent(in) :: vdia
12653 end subroutine
12654#endif
12655
12656#if LK1_ENABLED
12657 PURE module subroutine setMatInit_IMP_ULD_D2000_LK1(mat, subset, vupp, vlow, vdia, doff)
12658#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12659 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_LK1
12660#endif
12661 use pm_kind, only: LKG => LK1
12662 type(uppLowDia_type) , intent(in) :: subset
12663 integer(IK) , intent(in) , optional :: doff
12664 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12665 logical(LKG) , intent(in) :: vupp, vlow
12666 logical(LKG) , intent(in) :: vdia
12667 end subroutine
12668#endif
12669
12670 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12671
12672#if CK5_ENABLED
12673 PURE module subroutine setMatInit_IMP_ULD_D2000_CK5(mat, subset, vupp, vlow, vdia, doff)
12674#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12675 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_CK5
12676#endif
12677 use pm_kind, only: CKG => CK5
12678 type(uppLowDia_type) , intent(in) :: subset
12679 integer(IK) , intent(in) , optional :: doff
12680 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12681 complex(CKG) , intent(in) :: vupp, vlow
12682 complex(CKG) , intent(in) :: vdia
12683 end subroutine
12684#endif
12685
12686#if CK4_ENABLED
12687 PURE module subroutine setMatInit_IMP_ULD_D2000_CK4(mat, subset, vupp, vlow, vdia, doff)
12688#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12689 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_CK4
12690#endif
12691 use pm_kind, only: CKG => CK4
12692 type(uppLowDia_type) , intent(in) :: subset
12693 integer(IK) , intent(in) , optional :: doff
12694 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12695 complex(CKG) , intent(in) :: vupp, vlow
12696 complex(CKG) , intent(in) :: vdia
12697 end subroutine
12698#endif
12699
12700#if CK3_ENABLED
12701 PURE module subroutine setMatInit_IMP_ULD_D2000_CK3(mat, subset, vupp, vlow, vdia, doff)
12702#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12703 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_CK3
12704#endif
12705 use pm_kind, only: CKG => CK3
12706 type(uppLowDia_type) , intent(in) :: subset
12707 integer(IK) , intent(in) , optional :: doff
12708 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12709 complex(CKG) , intent(in) :: vupp, vlow
12710 complex(CKG) , intent(in) :: vdia
12711 end subroutine
12712#endif
12713
12714#if CK2_ENABLED
12715 PURE module subroutine setMatInit_IMP_ULD_D2000_CK2(mat, subset, vupp, vlow, vdia, doff)
12716#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12717 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_CK2
12718#endif
12719 use pm_kind, only: CKG => CK2
12720 type(uppLowDia_type) , intent(in) :: subset
12721 integer(IK) , intent(in) , optional :: doff
12722 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12723 complex(CKG) , intent(in) :: vupp, vlow
12724 complex(CKG) , intent(in) :: vdia
12725 end subroutine
12726#endif
12727
12728#if CK1_ENABLED
12729 PURE module subroutine setMatInit_IMP_ULD_D2000_CK1(mat, subset, vupp, vlow, vdia, doff)
12730#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12731 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_CK1
12732#endif
12733 use pm_kind, only: CKG => CK1
12734 type(uppLowDia_type) , intent(in) :: subset
12735 integer(IK) , intent(in) , optional :: doff
12736 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
12737 complex(CKG) , intent(in) :: vupp, vlow
12738 complex(CKG) , intent(in) :: vdia
12739 end subroutine
12740#endif
12741
12742 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12743
12744#if RK5_ENABLED
12745 PURE module subroutine setMatInit_IMP_ULD_D2000_RK5(mat, subset, vupp, vlow, vdia, doff)
12746#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12747 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_RK5
12748#endif
12749 use pm_kind, only: RKG => RK5
12750 type(uppLowDia_type) , intent(in) :: subset
12751 integer(IK) , intent(in) , optional :: doff
12752 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12753 real(RKG) , intent(in) :: vupp, vlow
12754 real(RKG) , intent(in) :: vdia
12755 end subroutine
12756#endif
12757
12758#if RK4_ENABLED
12759 PURE module subroutine setMatInit_IMP_ULD_D2000_RK4(mat, subset, vupp, vlow, vdia, doff)
12760#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12761 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_RK4
12762#endif
12763 use pm_kind, only: RKG => RK4
12764 type(uppLowDia_type) , intent(in) :: subset
12765 integer(IK) , intent(in) , optional :: doff
12766 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12767 real(RKG) , intent(in) :: vupp, vlow
12768 real(RKG) , intent(in) :: vdia
12769 end subroutine
12770#endif
12771
12772#if RK3_ENABLED
12773 PURE module subroutine setMatInit_IMP_ULD_D2000_RK3(mat, subset, vupp, vlow, vdia, doff)
12774#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12775 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_RK3
12776#endif
12777 use pm_kind, only: RKG => RK3
12778 type(uppLowDia_type) , intent(in) :: subset
12779 integer(IK) , intent(in) , optional :: doff
12780 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12781 real(RKG) , intent(in) :: vupp, vlow
12782 real(RKG) , intent(in) :: vdia
12783 end subroutine
12784#endif
12785
12786#if RK2_ENABLED
12787 PURE module subroutine setMatInit_IMP_ULD_D2000_RK2(mat, subset, vupp, vlow, vdia, doff)
12788#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12789 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_RK2
12790#endif
12791 use pm_kind, only: RKG => RK2
12792 type(uppLowDia_type) , intent(in) :: subset
12793 integer(IK) , intent(in) , optional :: doff
12794 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12795 real(RKG) , intent(in) :: vupp, vlow
12796 real(RKG) , intent(in) :: vdia
12797 end subroutine
12798#endif
12799
12800#if RK1_ENABLED
12801 PURE module subroutine setMatInit_IMP_ULD_D2000_RK1(mat, subset, vupp, vlow, vdia, doff)
12802#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12803 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2000_RK1
12804#endif
12805 use pm_kind, only: RKG => RK1
12806 type(uppLowDia_type) , intent(in) :: subset
12807 integer(IK) , intent(in) , optional :: doff
12808 real(RKG) , intent(inout) , contiguous :: mat(:,:)
12809 real(RKG) , intent(in) :: vupp, vlow
12810 real(RKG) , intent(in) :: vdia
12811 end subroutine
12812#endif
12813
12814 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12815
12816 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12817 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12818 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12819
12820 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12821
12822#if SK5_ENABLED
12823 PURE module subroutine setMatInit_IMP_ULD_D2001_SK5(mat, subset, vupp, vlow, vdia, doff)
12824#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12825 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_SK5
12826#endif
12827 use pm_kind, only: SKG => SK5
12828 type(uppLowDia_type) , intent(in) :: subset
12829 integer(IK) , intent(in) , optional :: doff
12830 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12831 character(*,SKG) , intent(in) , contiguous :: vdia(:)
12832 character(*,SKG) , intent(in) :: vupp, vlow
12833 end subroutine
12834#endif
12835
12836#if SK4_ENABLED
12837 PURE module subroutine setMatInit_IMP_ULD_D2001_SK4(mat, subset, vupp, vlow, vdia, doff)
12838#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12839 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_SK4
12840#endif
12841 use pm_kind, only: SKG => SK4
12842 type(uppLowDia_type) , intent(in) :: subset
12843 integer(IK) , intent(in) , optional :: doff
12844 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12845 character(*,SKG) , intent(in) , contiguous :: vdia(:)
12846 character(*,SKG) , intent(in) :: vupp, vlow
12847 end subroutine
12848#endif
12849
12850#if SK3_ENABLED
12851 PURE module subroutine setMatInit_IMP_ULD_D2001_SK3(mat, subset, vupp, vlow, vdia, doff)
12852#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12853 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_SK3
12854#endif
12855 use pm_kind, only: SKG => SK3
12856 type(uppLowDia_type) , intent(in) :: subset
12857 integer(IK) , intent(in) , optional :: doff
12858 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12859 character(*,SKG) , intent(in) , contiguous :: vdia(:)
12860 character(*,SKG) , intent(in) :: vupp, vlow
12861 end subroutine
12862#endif
12863
12864#if SK2_ENABLED
12865 PURE module subroutine setMatInit_IMP_ULD_D2001_SK2(mat, subset, vupp, vlow, vdia, doff)
12866#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12867 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_SK2
12868#endif
12869 use pm_kind, only: SKG => SK2
12870 type(uppLowDia_type) , intent(in) :: subset
12871 integer(IK) , intent(in) , optional :: doff
12872 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12873 character(*,SKG) , intent(in) , contiguous :: vdia(:)
12874 character(*,SKG) , intent(in) :: vupp, vlow
12875 end subroutine
12876#endif
12877
12878#if SK1_ENABLED
12879 PURE module subroutine setMatInit_IMP_ULD_D2001_SK1(mat, subset, vupp, vlow, vdia, doff)
12880#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12881 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_SK1
12882#endif
12883 use pm_kind, only: SKG => SK1
12884 type(uppLowDia_type) , intent(in) :: subset
12885 integer(IK) , intent(in) , optional :: doff
12886 character(*,SKG) , intent(inout) , contiguous :: mat(:,:)
12887 character(*,SKG) , intent(in) , contiguous :: vdia(:)
12888 character(*,SKG) , intent(in) :: vupp, vlow
12889 end subroutine
12890#endif
12891
12892 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12893
12894#if IK5_ENABLED
12895 PURE module subroutine setMatInit_IMP_ULD_D2001_IK5(mat, subset, vupp, vlow, vdia, doff)
12896#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12897 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_IK5
12898#endif
12899 use pm_kind, only: IKG => IK5
12900 type(uppLowDia_type) , intent(in) :: subset
12901 integer(IK) , intent(in) , optional :: doff
12902 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12903 integer(IKG) , intent(in) , contiguous :: vdia(:)
12904 integer(IKG) , intent(in) :: vupp, vlow
12905 end subroutine
12906#endif
12907
12908#if IK4_ENABLED
12909 PURE module subroutine setMatInit_IMP_ULD_D2001_IK4(mat, subset, vupp, vlow, vdia, doff)
12910#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12911 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_IK4
12912#endif
12913 use pm_kind, only: IKG => IK4
12914 type(uppLowDia_type) , intent(in) :: subset
12915 integer(IK) , intent(in) , optional :: doff
12916 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12917 integer(IKG) , intent(in) , contiguous :: vdia(:)
12918 integer(IKG) , intent(in) :: vupp, vlow
12919 end subroutine
12920#endif
12921
12922#if IK3_ENABLED
12923 PURE module subroutine setMatInit_IMP_ULD_D2001_IK3(mat, subset, vupp, vlow, vdia, doff)
12924#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12925 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_IK3
12926#endif
12927 use pm_kind, only: IKG => IK3
12928 type(uppLowDia_type) , intent(in) :: subset
12929 integer(IK) , intent(in) , optional :: doff
12930 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12931 integer(IKG) , intent(in) , contiguous :: vdia(:)
12932 integer(IKG) , intent(in) :: vupp, vlow
12933 end subroutine
12934#endif
12935
12936#if IK2_ENABLED
12937 PURE module subroutine setMatInit_IMP_ULD_D2001_IK2(mat, subset, vupp, vlow, vdia, doff)
12938#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12939 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_IK2
12940#endif
12941 use pm_kind, only: IKG => IK2
12942 type(uppLowDia_type) , intent(in) :: subset
12943 integer(IK) , intent(in) , optional :: doff
12944 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12945 integer(IKG) , intent(in) , contiguous :: vdia(:)
12946 integer(IKG) , intent(in) :: vupp, vlow
12947 end subroutine
12948#endif
12949
12950#if IK1_ENABLED
12951 PURE module subroutine setMatInit_IMP_ULD_D2001_IK1(mat, subset, vupp, vlow, vdia, doff)
12952#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12953 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_IK1
12954#endif
12955 use pm_kind, only: IKG => IK1
12956 type(uppLowDia_type) , intent(in) :: subset
12957 integer(IK) , intent(in) , optional :: doff
12958 integer(IKG) , intent(inout) , contiguous :: mat(:,:)
12959 integer(IKG) , intent(in) , contiguous :: vdia(:)
12960 integer(IKG) , intent(in) :: vupp, vlow
12961 end subroutine
12962#endif
12963
12964 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12965
12966#if LK5_ENABLED
12967 PURE module subroutine setMatInit_IMP_ULD_D2001_LK5(mat, subset, vupp, vlow, vdia, doff)
12968#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12969 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_LK5
12970#endif
12971 use pm_kind, only: LKG => LK5
12972 type(uppLowDia_type) , intent(in) :: subset
12973 integer(IK) , intent(in) , optional :: doff
12974 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12975 logical(LKG) , intent(in) , contiguous :: vdia(:)
12976 logical(LKG) , intent(in) :: vupp, vlow
12977 end subroutine
12978#endif
12979
12980#if LK4_ENABLED
12981 PURE module subroutine setMatInit_IMP_ULD_D2001_LK4(mat, subset, vupp, vlow, vdia, doff)
12982#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12983 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_LK4
12984#endif
12985 use pm_kind, only: LKG => LK4
12986 type(uppLowDia_type) , intent(in) :: subset
12987 integer(IK) , intent(in) , optional :: doff
12988 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
12989 logical(LKG) , intent(in) , contiguous :: vdia(:)
12990 logical(LKG) , intent(in) :: vupp, vlow
12991 end subroutine
12992#endif
12993
12994#if LK3_ENABLED
12995 PURE module subroutine setMatInit_IMP_ULD_D2001_LK3(mat, subset, vupp, vlow, vdia, doff)
12996#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
12997 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_LK3
12998#endif
12999 use pm_kind, only: LKG => LK3
13000 type(uppLowDia_type) , intent(in) :: subset
13001 integer(IK) , intent(in) , optional :: doff
13002 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
13003 logical(LKG) , intent(in) , contiguous :: vdia(:)
13004 logical(LKG) , intent(in) :: vupp, vlow
13005 end subroutine
13006#endif
13007
13008#if LK2_ENABLED
13009 PURE module subroutine setMatInit_IMP_ULD_D2001_LK2(mat, subset, vupp, vlow, vdia, doff)
13010#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13011 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_LK2
13012#endif
13013 use pm_kind, only: LKG => LK2
13014 type(uppLowDia_type) , intent(in) :: subset
13015 integer(IK) , intent(in) , optional :: doff
13016 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
13017 logical(LKG) , intent(in) , contiguous :: vdia(:)
13018 logical(LKG) , intent(in) :: vupp, vlow
13019 end subroutine
13020#endif
13021
13022#if LK1_ENABLED
13023 PURE module subroutine setMatInit_IMP_ULD_D2001_LK1(mat, subset, vupp, vlow, vdia, doff)
13024#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13025 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_LK1
13026#endif
13027 use pm_kind, only: LKG => LK1
13028 type(uppLowDia_type) , intent(in) :: subset
13029 integer(IK) , intent(in) , optional :: doff
13030 logical(LKG) , intent(inout) , contiguous :: mat(:,:)
13031 logical(LKG) , intent(in) , contiguous :: vdia(:)
13032 logical(LKG) , intent(in) :: vupp, vlow
13033 end subroutine
13034#endif
13035
13036 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13037
13038#if CK5_ENABLED
13039 PURE module subroutine setMatInit_IMP_ULD_D2001_CK5(mat, subset, vupp, vlow, vdia, doff)
13040#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13041 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_CK5
13042#endif
13043 use pm_kind, only: CKG => CK5
13044 type(uppLowDia_type) , intent(in) :: subset
13045 integer(IK) , intent(in) , optional :: doff
13046 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
13047 complex(CKG) , intent(in) , contiguous :: vdia(:)
13048 complex(CKG) , intent(in) :: vupp, vlow
13049 end subroutine
13050#endif
13051
13052#if CK4_ENABLED
13053 PURE module subroutine setMatInit_IMP_ULD_D2001_CK4(mat, subset, vupp, vlow, vdia, doff)
13054#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13055 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_CK4
13056#endif
13057 use pm_kind, only: CKG => CK4
13058 type(uppLowDia_type) , intent(in) :: subset
13059 integer(IK) , intent(in) , optional :: doff
13060 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
13061 complex(CKG) , intent(in) , contiguous :: vdia(:)
13062 complex(CKG) , intent(in) :: vupp, vlow
13063 end subroutine
13064#endif
13065
13066#if CK3_ENABLED
13067 PURE module subroutine setMatInit_IMP_ULD_D2001_CK3(mat, subset, vupp, vlow, vdia, doff)
13068#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13069 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_CK3
13070#endif
13071 use pm_kind, only: CKG => CK3
13072 type(uppLowDia_type) , intent(in) :: subset
13073 integer(IK) , intent(in) , optional :: doff
13074 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
13075 complex(CKG) , intent(in) , contiguous :: vdia(:)
13076 complex(CKG) , intent(in) :: vupp, vlow
13077 end subroutine
13078#endif
13079
13080#if CK2_ENABLED
13081 PURE module subroutine setMatInit_IMP_ULD_D2001_CK2(mat, subset, vupp, vlow, vdia, doff)
13082#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13083 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_CK2
13084#endif
13085 use pm_kind, only: CKG => CK2
13086 type(uppLowDia_type) , intent(in) :: subset
13087 integer(IK) , intent(in) , optional :: doff
13088 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
13089 complex(CKG) , intent(in) , contiguous :: vdia(:)
13090 complex(CKG) , intent(in) :: vupp, vlow
13091 end subroutine
13092#endif
13093
13094#if CK1_ENABLED
13095 PURE module subroutine setMatInit_IMP_ULD_D2001_CK1(mat, subset, vupp, vlow, vdia, doff)
13096#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13097 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_CK1
13098#endif
13099 use pm_kind, only: CKG => CK1
13100 type(uppLowDia_type) , intent(in) :: subset
13101 integer(IK) , intent(in) , optional :: doff
13102 complex(CKG) , intent(inout) , contiguous :: mat(:,:)
13103 complex(CKG) , intent(in) , contiguous :: vdia(:)
13104 complex(CKG) , intent(in) :: vupp, vlow
13105 end subroutine
13106#endif
13107
13108 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13109
13110#if RK5_ENABLED
13111 PURE module subroutine setMatInit_IMP_ULD_D2001_RK5(mat, subset, vupp, vlow, vdia, doff)
13112#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13113 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_RK5
13114#endif
13115 use pm_kind, only: RKG => RK5
13116 type(uppLowDia_type) , intent(in) :: subset
13117 integer(IK) , intent(in) , optional :: doff
13118 real(RKG) , intent(inout) , contiguous :: mat(:,:)
13119 real(RKG) , intent(in) , contiguous :: vdia(:)
13120 real(RKG) , intent(in) :: vupp, vlow
13121 end subroutine
13122#endif
13123
13124#if RK4_ENABLED
13125 PURE module subroutine setMatInit_IMP_ULD_D2001_RK4(mat, subset, vupp, vlow, vdia, doff)
13126#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13127 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_RK4
13128#endif
13129 use pm_kind, only: RKG => RK4
13130 type(uppLowDia_type) , intent(in) :: subset
13131 integer(IK) , intent(in) , optional :: doff
13132 real(RKG) , intent(inout) , contiguous :: mat(:,:)
13133 real(RKG) , intent(in) , contiguous :: vdia(:)
13134 real(RKG) , intent(in) :: vupp, vlow
13135 end subroutine
13136#endif
13137
13138#if RK3_ENABLED
13139 PURE module subroutine setMatInit_IMP_ULD_D2001_RK3(mat, subset, vupp, vlow, vdia, doff)
13140#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13141 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_RK3
13142#endif
13143 use pm_kind, only: RKG => RK3
13144 type(uppLowDia_type) , intent(in) :: subset
13145 integer(IK) , intent(in) , optional :: doff
13146 real(RKG) , intent(inout) , contiguous :: mat(:,:)
13147 real(RKG) , intent(in) , contiguous :: vdia(:)
13148 real(RKG) , intent(in) :: vupp, vlow
13149 end subroutine
13150#endif
13151
13152#if RK2_ENABLED
13153 PURE module subroutine setMatInit_IMP_ULD_D2001_RK2(mat, subset, vupp, vlow, vdia, doff)
13154#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13155 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_RK2
13156#endif
13157 use pm_kind, only: RKG => RK2
13158 type(uppLowDia_type) , intent(in) :: subset
13159 integer(IK) , intent(in) , optional :: doff
13160 real(RKG) , intent(inout) , contiguous :: mat(:,:)
13161 real(RKG) , intent(in) , contiguous :: vdia(:)
13162 real(RKG) , intent(in) :: vupp, vlow
13163 end subroutine
13164#endif
13165
13166#if RK1_ENABLED
13167 PURE module subroutine setMatInit_IMP_ULD_D2001_RK1(mat, subset, vupp, vlow, vdia, doff)
13168#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
13169 !DEC$ ATTRIBUTES DLLEXPORT :: setMatInit_IMP_ULD_D2001_RK1
13170#endif
13171 use pm_kind, only: RKG => RK1
13172 type(uppLowDia_type) , intent(in) :: subset
13173 integer(IK) , intent(in) , optional :: doff
13174 real(RKG) , intent(inout) , contiguous :: mat(:,:)
13175 real(RKG) , intent(in) , contiguous :: vdia(:)
13176 real(RKG) , intent(in) :: vupp, vlow
13177 end subroutine
13178#endif
13179
13180 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13181
13182 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13183 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13184 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13185
13186 end interface
13187
13188!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13189
13190end module pm_matrixInit ! LCOV_EXCL_LINE
Generate and return a matrix of shape (shape(1), shape(2)) with the upper/lower triangle and the diag...
Set the upper/lower triangle and the diagonal elements of the input matrix of arbitrary shape (:,...
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter SK5
Definition: pm_kind.F90:326
integer, parameter LK1
Definition: pm_kind.F90:412
integer, parameter IK3
Definition: pm_kind.F90:368
integer, parameter RK5
Definition: pm_kind.F90:478
integer, parameter RK4
Definition: pm_kind.F90:489
integer, parameter SK1
Definition: pm_kind.F90:346
integer, parameter IK1
Definition: pm_kind.F90:382
integer, parameter LK5
Definition: pm_kind.F90:392
integer, parameter RK2
Definition: pm_kind.F90:511
integer, parameter CK1
Definition: pm_kind.F90:464
integer, parameter RK3
Definition: pm_kind.F90:500
integer, parameter LK2
Definition: pm_kind.F90:407
integer, parameter LK4
Definition: pm_kind.F90:397
integer, parameter CK5
Definition: pm_kind.F90:420
integer, parameter CK4
Definition: pm_kind.F90:431
integer, parameter SK4
Definition: pm_kind.F90:331
integer, parameter LK3
Definition: pm_kind.F90:402
integer, parameter IK2
Definition: pm_kind.F90:375
integer, parameter CK2
Definition: pm_kind.F90:453
integer, parameter SK2
Definition: pm_kind.F90:341
integer, parameter CK3
Definition: pm_kind.F90:442
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
Definition: pm_kind.F90:540
integer, parameter IK4
Definition: pm_kind.F90:361
integer, parameter IK5
Definition: pm_kind.F90:354
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
Definition: pm_kind.F90:539
integer, parameter RK1
Definition: pm_kind.F90:522
integer, parameter SK3
Definition: pm_kind.F90:336
This module contains procedures and generic interfaces relevant to generating and initializing matric...
character(*, SK), parameter MODULE_NAME
This module contains abstract and concrete derived types that are required for compile-time resolutio...
type(lowDia_type), parameter lowDia
This is a scalar parameter object of type lowDia_type that is exclusively used to request lower-diago...
type(uppLowDia_type), parameter uppLowDia
This is a scalar parameter object of type uppLowDia_type that is exclusively used to request full dia...
type(uppLow_type), parameter uppLow
This is a scalar parameter object of type uppLow_type that is exclusively used to request upper-lower...
type(low_type), parameter low
This is a scalar parameter object of type low_type that is exclusively used to request lower-triangul...
type(upp_type), parameter upp
This is a scalar parameter object of type upp_type that is exclusively used to request upper-triangul...
type(uppDia_type), parameter uppDia
This is a scalar parameter object of type uppDia_type that is exclusively used to request upper-diago...
type(dia_type), parameter dia
This is a scalar parameter object of type dia_type that is exclusively used to request unit (or Ident...
This is a concrete derived type whose instances are exclusively used to request unit (or Identity or ...
This is a concrete derived type whose instances are exclusively used to request lower-diagonal triang...
This is a concrete derived type whose instances are exclusively used to request lower-triangular stor...
This is a concrete derived type whose instances are exclusively used to request upper-diagonal triang...
This is a concrete derived type whose instances are exclusively used to request full diagonal and upp...
This is a concrete derived type whose instances are exclusively used to request upper-lower triangula...
This is a concrete derived type whose instances are exclusively used to request upper-triangular stor...