ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_sampleVar.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
391
392!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
393
395
396 use pm_kind, only: SK, IK, LK
400
401 implicit none
402
403 character(*, SK), parameter :: MODULE_NAME = "@pm_sampleVar"
404
405!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
406
480
482
483 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
484
485#if RK5_ENABLED
486 PURE elemental module function getVarCorrectionFreq_RK5(weisum) result(correction)
487#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
488 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionFreq_RK5
489#endif
490 use pm_kind, only: TKG => RK5
491 real(TKG) , intent(in) :: weisum
492 real(TKG) :: correction
493 end function
494#endif
495
496#if RK4_ENABLED
497 PURE elemental module function getVarCorrectionFreq_RK4(weisum) result(correction)
498#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
499 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionFreq_RK4
500#endif
501 use pm_kind, only: TKG => RK4
502 real(TKG) , intent(in) :: weisum
503 real(TKG) :: correction
504 end function
505#endif
506
507#if RK3_ENABLED
508 PURE elemental module function getVarCorrectionFreq_RK3(weisum) result(correction)
509#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
510 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionFreq_RK3
511#endif
512 use pm_kind, only: TKG => RK3
513 real(TKG) , intent(in) :: weisum
514 real(TKG) :: correction
515 end function
516#endif
517
518#if RK2_ENABLED
519 PURE elemental module function getVarCorrectionFreq_RK2(weisum) result(correction)
520#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
521 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionFreq_RK2
522#endif
523 use pm_kind, only: TKG => RK2
524 real(TKG) , intent(in) :: weisum
525 real(TKG) :: correction
526 end function
527#endif
528
529#if RK1_ENABLED
530 PURE elemental module function getVarCorrectionFreq_RK1(weisum) result(correction)
531#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
532 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionFreq_RK1
533#endif
534 use pm_kind, only: TKG => RK1
535 real(TKG) , intent(in) :: weisum
536 real(TKG) :: correction
537 end function
538#endif
539
540 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
541
542#if RK5_ENABLED
543 PURE elemental module function getVarCorrectionReli_RK5(weisum, weisqs) result(correction)
544#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
545 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionReli_RK5
546#endif
547 use pm_kind, only: TKG => RK5
548 real(TKG) , intent(in) :: weisum, weisqs
549 real(TKG) :: correction
550 end function
551#endif
552
553#if RK4_ENABLED
554 PURE elemental module function getVarCorrectionReli_RK4(weisum, weisqs) result(correction)
555#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
556 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionReli_RK4
557#endif
558 use pm_kind, only: TKG => RK4
559 real(TKG) , intent(in) :: weisum, weisqs
560 real(TKG) :: correction
561 end function
562#endif
563
564#if RK3_ENABLED
565 PURE elemental module function getVarCorrectionReli_RK3(weisum, weisqs) result(correction)
566#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
567 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionReli_RK3
568#endif
569 use pm_kind, only: TKG => RK3
570 real(TKG) , intent(in) :: weisum, weisqs
571 real(TKG) :: correction
572 end function
573#endif
574
575#if RK2_ENABLED
576 PURE elemental module function getVarCorrectionReli_RK2(weisum, weisqs) result(correction)
577#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
578 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionReli_RK2
579#endif
580 use pm_kind, only: TKG => RK2
581 real(TKG) , intent(in) :: weisum, weisqs
582 real(TKG) :: correction
583 end function
584#endif
585
586#if RK1_ENABLED
587 PURE elemental module function getVarCorrectionReli_RK1(weisum, weisqs) result(correction)
588#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
589 !DEC$ ATTRIBUTES DLLEXPORT :: getVarCorrectionReli_RK1
590#endif
591 use pm_kind, only: TKG => RK1
592 real(TKG) , intent(in) :: weisum, weisqs
593 real(TKG) :: correction
594 end function
595#endif
596
597 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
598
599 end interface
600
601!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
602
712
713 ! ALL D1
714
715 interface getVar
716
717 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
718 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
719 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
720
721 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
722
723#if CK5_ENABLED
724 PURE module function getVarALL_WNO_D1_CK5(sample, correction) result(var)
725#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
726 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_CK5
727#endif
728 use pm_kind, only: TKG => CK5
729 class(weight_type) , intent(in) , optional :: correction
730 complex(TKG) , intent(in) , contiguous :: sample(:)
731 real(TKG) :: var
732 end function
733#endif
734
735#if CK4_ENABLED
736 PURE module function getVarALL_WNO_D1_CK4(sample, correction) result(var)
737#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
738 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_CK4
739#endif
740 use pm_kind, only: TKG => CK4
741 class(weight_type) , intent(in) , optional :: correction
742 complex(TKG) , intent(in) , contiguous :: sample(:)
743 real(TKG) :: var
744 end function
745#endif
746
747#if CK3_ENABLED
748 PURE module function getVarALL_WNO_D1_CK3(sample, correction) result(var)
749#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
750 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_CK3
751#endif
752 use pm_kind, only: TKG => CK3
753 class(weight_type) , intent(in) , optional :: correction
754 complex(TKG) , intent(in) , contiguous :: sample(:)
755 real(TKG) :: var
756 end function
757#endif
758
759#if CK2_ENABLED
760 PURE module function getVarALL_WNO_D1_CK2(sample, correction) result(var)
761#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
762 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_CK2
763#endif
764 use pm_kind, only: TKG => CK2
765 class(weight_type) , intent(in) , optional :: correction
766 complex(TKG) , intent(in) , contiguous :: sample(:)
767 real(TKG) :: var
768 end function
769#endif
770
771#if CK1_ENABLED
772 PURE module function getVarALL_WNO_D1_CK1(sample, correction) result(var)
773#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
774 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_CK1
775#endif
776 use pm_kind, only: TKG => CK1
777 class(weight_type) , intent(in) , optional :: correction
778 complex(TKG) , intent(in) , contiguous :: sample(:)
779 real(TKG) :: var
780 end function
781#endif
782
783 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
784
785#if RK5_ENABLED
786 PURE module function getVarALL_WNO_D1_RK5(sample, correction) result(var)
787#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
788 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_RK5
789#endif
790 use pm_kind, only: TKG => RK5
791 class(weight_type) , intent(in) , optional :: correction
792 real(TKG) , intent(in) , contiguous :: sample(:)
793 real(TKG) :: var
794 end function
795#endif
796
797#if RK4_ENABLED
798 PURE module function getVarALL_WNO_D1_RK4(sample, correction) result(var)
799#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
800 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_RK4
801#endif
802 use pm_kind, only: TKG => RK4
803 class(weight_type) , intent(in) , optional :: correction
804 real(TKG) , intent(in) , contiguous :: sample(:)
805 real(TKG) :: var
806 end function
807#endif
808
809#if RK3_ENABLED
810 PURE module function getVarALL_WNO_D1_RK3(sample, correction) result(var)
811#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
812 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_RK3
813#endif
814 use pm_kind, only: TKG => RK3
815 class(weight_type) , intent(in) , optional :: correction
816 real(TKG) , intent(in) , contiguous :: sample(:)
817 real(TKG) :: var
818 end function
819#endif
820
821#if RK2_ENABLED
822 PURE module function getVarALL_WNO_D1_RK2(sample, correction) result(var)
823#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
824 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_RK2
825#endif
826 use pm_kind, only: TKG => RK2
827 class(weight_type) , intent(in) , optional :: correction
828 real(TKG) , intent(in) , contiguous :: sample(:)
829 real(TKG) :: var
830 end function
831#endif
832
833#if RK1_ENABLED
834 PURE module function getVarALL_WNO_D1_RK1(sample, correction) result(var)
835#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
836 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D1_RK1
837#endif
838 use pm_kind, only: TKG => RK1
839 class(weight_type) , intent(in) , optional :: correction
840 real(TKG) , intent(in) , contiguous :: sample(:)
841 real(TKG) :: var
842 end function
843#endif
844
845 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
846
847 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
848 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
849 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
850
851 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
852
853#if CK5_ENABLED
854 PURE module function getVarALL_WTI_D1_CK5(sample, weight, correction) result(var)
855#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
856 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_CK5
857#endif
858 use pm_kind, only: TKG => CK5
859 class(weight_type) , intent(in) , optional :: correction
860 integer(IK) , intent(in) , contiguous :: weight(:)
861 complex(TKG) , intent(in) , contiguous :: sample(:)
862 real(TKG) :: var
863 end function
864#endif
865
866#if CK4_ENABLED
867 PURE module function getVarALL_WTI_D1_CK4(sample, weight, correction) result(var)
868#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
869 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_CK4
870#endif
871 use pm_kind, only: TKG => CK4
872 class(weight_type) , intent(in) , optional :: correction
873 integer(IK) , intent(in) , contiguous :: weight(:)
874 complex(TKG) , intent(in) , contiguous :: sample(:)
875 real(TKG) :: var
876 end function
877#endif
878
879#if CK3_ENABLED
880 PURE module function getVarALL_WTI_D1_CK3(sample, weight, correction) result(var)
881#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
882 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_CK3
883#endif
884 use pm_kind, only: TKG => CK3
885 class(weight_type) , intent(in) , optional :: correction
886 integer(IK) , intent(in) , contiguous :: weight(:)
887 complex(TKG) , intent(in) , contiguous :: sample(:)
888 real(TKG) :: var
889 end function
890#endif
891
892#if CK2_ENABLED
893 PURE module function getVarALL_WTI_D1_CK2(sample, weight, correction) result(var)
894#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
895 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_CK2
896#endif
897 use pm_kind, only: TKG => CK2
898 class(weight_type) , intent(in) , optional :: correction
899 integer(IK) , intent(in) , contiguous :: weight(:)
900 complex(TKG) , intent(in) , contiguous :: sample(:)
901 real(TKG) :: var
902 end function
903#endif
904
905#if CK1_ENABLED
906 PURE module function getVarALL_WTI_D1_CK1(sample, weight, correction) result(var)
907#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
908 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_CK1
909#endif
910 use pm_kind, only: TKG => CK1
911 class(weight_type) , intent(in) , optional :: correction
912 integer(IK) , intent(in) , contiguous :: weight(:)
913 complex(TKG) , intent(in) , contiguous :: sample(:)
914 real(TKG) :: var
915 end function
916#endif
917
918 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
919
920#if RK5_ENABLED
921 PURE module function getVarALL_WTI_D1_RK5(sample, weight, correction) result(var)
922#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
923 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_RK5
924#endif
925 use pm_kind, only: TKG => RK5
926 class(weight_type) , intent(in) , optional :: correction
927 integer(IK) , intent(in) , contiguous :: weight(:)
928 real(TKG) , intent(in) , contiguous :: sample(:)
929 real(TKG) :: var
930 end function
931#endif
932
933#if RK4_ENABLED
934 PURE module function getVarALL_WTI_D1_RK4(sample, weight, correction) result(var)
935#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
936 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_RK4
937#endif
938 use pm_kind, only: TKG => RK4
939 class(weight_type) , intent(in) , optional :: correction
940 integer(IK) , intent(in) , contiguous :: weight(:)
941 real(TKG) , intent(in) , contiguous :: sample(:)
942 real(TKG) :: var
943 end function
944#endif
945
946#if RK3_ENABLED
947 PURE module function getVarALL_WTI_D1_RK3(sample, weight, correction) result(var)
948#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
949 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_RK3
950#endif
951 use pm_kind, only: TKG => RK3
952 class(weight_type) , intent(in) , optional :: correction
953 integer(IK) , intent(in) , contiguous :: weight(:)
954 real(TKG) , intent(in) , contiguous :: sample(:)
955 real(TKG) :: var
956 end function
957#endif
958
959#if RK2_ENABLED
960 PURE module function getVarALL_WTI_D1_RK2(sample, weight, correction) result(var)
961#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
962 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_RK2
963#endif
964 use pm_kind, only: TKG => RK2
965 class(weight_type) , intent(in) , optional :: correction
966 integer(IK) , intent(in) , contiguous :: weight(:)
967 real(TKG) , intent(in) , contiguous :: sample(:)
968 real(TKG) :: var
969 end function
970#endif
971
972#if RK1_ENABLED
973 PURE module function getVarALL_WTI_D1_RK1(sample, weight, correction) result(var)
974#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
975 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D1_RK1
976#endif
977 use pm_kind, only: TKG => RK1
978 class(weight_type) , intent(in) , optional :: correction
979 integer(IK) , intent(in) , contiguous :: weight(:)
980 real(TKG) , intent(in) , contiguous :: sample(:)
981 real(TKG) :: var
982 end function
983#endif
984
985 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
986
987 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
988 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
989 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
990
991 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
992
993#if CK5_ENABLED
994 PURE module function getVarALL_WTR_D1_CK5(sample, weight, correction) result(var)
995#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
996 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_CK5
997#endif
998 use pm_kind, only: TKG => CK5
999 class(weight_type) , intent(in) , optional :: correction
1000 real(TKG) , intent(in) , contiguous :: weight(:)
1001 complex(TKG) , intent(in) , contiguous :: sample(:)
1002 real(TKG) :: var
1003 end function
1004#endif
1005
1006#if CK4_ENABLED
1007 PURE module function getVarALL_WTR_D1_CK4(sample, weight, correction) result(var)
1008#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1009 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_CK4
1010#endif
1011 use pm_kind, only: TKG => CK4
1012 class(weight_type) , intent(in) , optional :: correction
1013 real(TKG) , intent(in) , contiguous :: weight(:)
1014 complex(TKG) , intent(in) , contiguous :: sample(:)
1015 real(TKG) :: var
1016 end function
1017#endif
1018
1019#if CK3_ENABLED
1020 PURE module function getVarALL_WTR_D1_CK3(sample, weight, correction) result(var)
1021#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1022 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_CK3
1023#endif
1024 use pm_kind, only: TKG => CK3
1025 class(weight_type) , intent(in) , optional :: correction
1026 real(TKG) , intent(in) , contiguous :: weight(:)
1027 complex(TKG) , intent(in) , contiguous :: sample(:)
1028 real(TKG) :: var
1029 end function
1030#endif
1031
1032#if CK2_ENABLED
1033 PURE module function getVarALL_WTR_D1_CK2(sample, weight, correction) result(var)
1034#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1035 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_CK2
1036#endif
1037 use pm_kind, only: TKG => CK2
1038 class(weight_type) , intent(in) , optional :: correction
1039 real(TKG) , intent(in) , contiguous :: weight(:)
1040 complex(TKG) , intent(in) , contiguous :: sample(:)
1041 real(TKG) :: var
1042 end function
1043#endif
1044
1045#if CK1_ENABLED
1046 PURE module function getVarALL_WTR_D1_CK1(sample, weight, correction) result(var)
1047#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1048 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_CK1
1049#endif
1050 use pm_kind, only: TKG => CK1
1051 class(weight_type) , intent(in) , optional :: correction
1052 real(TKG) , intent(in) , contiguous :: weight(:)
1053 complex(TKG) , intent(in) , contiguous :: sample(:)
1054 real(TKG) :: var
1055 end function
1056#endif
1057
1058 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1059
1060#if RK5_ENABLED
1061 PURE module function getVarALL_WTR_D1_RK5(sample, weight, correction) result(var)
1062#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1063 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_RK5
1064#endif
1065 use pm_kind, only: TKG => RK5
1066 class(weight_type) , intent(in) , optional :: correction
1067 real(TKG) , intent(in) , contiguous :: weight(:)
1068 real(TKG) , intent(in) , contiguous :: sample(:)
1069 real(TKG) :: var
1070 end function
1071#endif
1072
1073#if RK4_ENABLED
1074 PURE module function getVarALL_WTR_D1_RK4(sample, weight, correction) result(var)
1075#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1076 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_RK4
1077#endif
1078 use pm_kind, only: TKG => RK4
1079 class(weight_type) , intent(in) , optional :: correction
1080 real(TKG) , intent(in) , contiguous :: weight(:)
1081 real(TKG) , intent(in) , contiguous :: sample(:)
1082 real(TKG) :: var
1083 end function
1084#endif
1085
1086#if RK3_ENABLED
1087 PURE module function getVarALL_WTR_D1_RK3(sample, weight, correction) result(var)
1088#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1089 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_RK3
1090#endif
1091 use pm_kind, only: TKG => RK3
1092 class(weight_type) , intent(in) , optional :: correction
1093 real(TKG) , intent(in) , contiguous :: weight(:)
1094 real(TKG) , intent(in) , contiguous :: sample(:)
1095 real(TKG) :: var
1096 end function
1097#endif
1098
1099#if RK2_ENABLED
1100 PURE module function getVarALL_WTR_D1_RK2(sample, weight, correction) result(var)
1101#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1102 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_RK2
1103#endif
1104 use pm_kind, only: TKG => RK2
1105 class(weight_type) , intent(in) , optional :: correction
1106 real(TKG) , intent(in) , contiguous :: weight(:)
1107 real(TKG) , intent(in) , contiguous :: sample(:)
1108 real(TKG) :: var
1109 end function
1110#endif
1111
1112#if RK1_ENABLED
1113 PURE module function getVarALL_WTR_D1_RK1(sample, weight, correction) result(var)
1114#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1115 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D1_RK1
1116#endif
1117 use pm_kind, only: TKG => RK1
1118 class(weight_type) , intent(in) , optional :: correction
1119 real(TKG) , intent(in) , contiguous :: weight(:)
1120 real(TKG) , intent(in) , contiguous :: sample(:)
1121 real(TKG) :: var
1122 end function
1123#endif
1124
1125 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1126
1127 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1128 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1129 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1130
1131 end interface getVar
1132
1133 ! ALL D2
1134
1135 interface getVar
1136
1137 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1138 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1139 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1140
1141 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1142
1143#if CK5_ENABLED
1144 PURE module function getVarALL_WNO_D2_CK5(sample, correction) result(var)
1145#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1146 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_CK5
1147#endif
1148 use pm_kind, only: TKG => CK5
1149 class(weight_type) , intent(in) , optional :: correction
1150 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1151 real(TKG) :: var
1152 end function
1153#endif
1154
1155#if CK4_ENABLED
1156 PURE module function getVarALL_WNO_D2_CK4(sample, correction) result(var)
1157#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1158 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_CK4
1159#endif
1160 use pm_kind, only: TKG => CK4
1161 class(weight_type) , intent(in) , optional :: correction
1162 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1163 real(TKG) :: var
1164 end function
1165#endif
1166
1167#if CK3_ENABLED
1168 PURE module function getVarALL_WNO_D2_CK3(sample, correction) result(var)
1169#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1170 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_CK3
1171#endif
1172 use pm_kind, only: TKG => CK3
1173 class(weight_type) , intent(in) , optional :: correction
1174 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1175 real(TKG) :: var
1176 end function
1177#endif
1178
1179#if CK2_ENABLED
1180 PURE module function getVarALL_WNO_D2_CK2(sample, correction) result(var)
1181#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1182 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_CK2
1183#endif
1184 use pm_kind, only: TKG => CK2
1185 class(weight_type) , intent(in) , optional :: correction
1186 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1187 real(TKG) :: var
1188 end function
1189#endif
1190
1191#if CK1_ENABLED
1192 PURE module function getVarALL_WNO_D2_CK1(sample, correction) result(var)
1193#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1194 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_CK1
1195#endif
1196 use pm_kind, only: TKG => CK1
1197 class(weight_type) , intent(in) , optional :: correction
1198 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1199 real(TKG) :: var
1200 end function
1201#endif
1202
1203 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1204
1205#if RK5_ENABLED
1206 PURE module function getVarALL_WNO_D2_RK5(sample, correction) result(var)
1207#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1208 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_RK5
1209#endif
1210 use pm_kind, only: TKG => RK5
1211 class(weight_type) , intent(in) , optional :: correction
1212 real(TKG) , intent(in) , contiguous :: sample(:,:)
1213 real(TKG) :: var
1214 end function
1215#endif
1216
1217#if RK4_ENABLED
1218 PURE module function getVarALL_WNO_D2_RK4(sample, correction) result(var)
1219#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1220 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_RK4
1221#endif
1222 use pm_kind, only: TKG => RK4
1223 class(weight_type) , intent(in) , optional :: correction
1224 real(TKG) , intent(in) , contiguous :: sample(:,:)
1225 real(TKG) :: var
1226 end function
1227#endif
1228
1229#if RK3_ENABLED
1230 PURE module function getVarALL_WNO_D2_RK3(sample, correction) result(var)
1231#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1232 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_RK3
1233#endif
1234 use pm_kind, only: TKG => RK3
1235 class(weight_type) , intent(in) , optional :: correction
1236 real(TKG) , intent(in) , contiguous :: sample(:,:)
1237 real(TKG) :: var
1238 end function
1239#endif
1240
1241#if RK2_ENABLED
1242 PURE module function getVarALL_WNO_D2_RK2(sample, correction) result(var)
1243#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1244 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_RK2
1245#endif
1246 use pm_kind, only: TKG => RK2
1247 class(weight_type) , intent(in) , optional :: correction
1248 real(TKG) , intent(in) , contiguous :: sample(:,:)
1249 real(TKG) :: var
1250 end function
1251#endif
1252
1253#if RK1_ENABLED
1254 PURE module function getVarALL_WNO_D2_RK1(sample, correction) result(var)
1255#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1256 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WNO_D2_RK1
1257#endif
1258 use pm_kind, only: TKG => RK1
1259 class(weight_type) , intent(in) , optional :: correction
1260 real(TKG) , intent(in) , contiguous :: sample(:,:)
1261 real(TKG) :: var
1262 end function
1263#endif
1264
1265 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1266
1267 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1268 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1269 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1270
1271 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1272
1273#if CK5_ENABLED
1274 PURE module function getVarALL_WTI_D2_CK5(sample, weight, correction) result(var)
1275#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1276 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_CK5
1277#endif
1278 use pm_kind, only: TKG => CK5
1279 class(weight_type) , intent(in) , optional :: correction
1280 integer(IK) , intent(in) , contiguous :: weight(:)
1281 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1282 real(TKG) :: var
1283 end function
1284#endif
1285
1286#if CK4_ENABLED
1287 PURE module function getVarALL_WTI_D2_CK4(sample, weight, correction) result(var)
1288#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1289 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_CK4
1290#endif
1291 use pm_kind, only: TKG => CK4
1292 class(weight_type) , intent(in) , optional :: correction
1293 integer(IK) , intent(in) , contiguous :: weight(:)
1294 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1295 real(TKG) :: var
1296 end function
1297#endif
1298
1299#if CK3_ENABLED
1300 PURE module function getVarALL_WTI_D2_CK3(sample, weight, correction) result(var)
1301#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1302 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_CK3
1303#endif
1304 use pm_kind, only: TKG => CK3
1305 class(weight_type) , intent(in) , optional :: correction
1306 integer(IK) , intent(in) , contiguous :: weight(:)
1307 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1308 real(TKG) :: var
1309 end function
1310#endif
1311
1312#if CK2_ENABLED
1313 PURE module function getVarALL_WTI_D2_CK2(sample, weight, correction) result(var)
1314#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1315 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_CK2
1316#endif
1317 use pm_kind, only: TKG => CK2
1318 class(weight_type) , intent(in) , optional :: correction
1319 integer(IK) , intent(in) , contiguous :: weight(:)
1320 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1321 real(TKG) :: var
1322 end function
1323#endif
1324
1325#if CK1_ENABLED
1326 PURE module function getVarALL_WTI_D2_CK1(sample, weight, correction) result(var)
1327#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1328 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_CK1
1329#endif
1330 use pm_kind, only: TKG => CK1
1331 class(weight_type) , intent(in) , optional :: correction
1332 integer(IK) , intent(in) , contiguous :: weight(:)
1333 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1334 real(TKG) :: var
1335 end function
1336#endif
1337
1338 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1339
1340#if RK5_ENABLED
1341 PURE module function getVarALL_WTI_D2_RK5(sample, weight, correction) result(var)
1342#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1343 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_RK5
1344#endif
1345 use pm_kind, only: TKG => RK5
1346 class(weight_type) , intent(in) , optional :: correction
1347 integer(IK) , intent(in) , contiguous :: weight(:)
1348 real(TKG) , intent(in) , contiguous :: sample(:,:)
1349 real(TKG) :: var
1350 end function
1351#endif
1352
1353#if RK4_ENABLED
1354 PURE module function getVarALL_WTI_D2_RK4(sample, weight, correction) result(var)
1355#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1356 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_RK4
1357#endif
1358 use pm_kind, only: TKG => RK4
1359 class(weight_type) , intent(in) , optional :: correction
1360 integer(IK) , intent(in) , contiguous :: weight(:)
1361 real(TKG) , intent(in) , contiguous :: sample(:,:)
1362 real(TKG) :: var
1363 end function
1364#endif
1365
1366#if RK3_ENABLED
1367 PURE module function getVarALL_WTI_D2_RK3(sample, weight, correction) result(var)
1368#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1369 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_RK3
1370#endif
1371 use pm_kind, only: TKG => RK3
1372 class(weight_type) , intent(in) , optional :: correction
1373 integer(IK) , intent(in) , contiguous :: weight(:)
1374 real(TKG) , intent(in) , contiguous :: sample(:,:)
1375 real(TKG) :: var
1376 end function
1377#endif
1378
1379#if RK2_ENABLED
1380 PURE module function getVarALL_WTI_D2_RK2(sample, weight, correction) result(var)
1381#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1382 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_RK2
1383#endif
1384 use pm_kind, only: TKG => RK2
1385 class(weight_type) , intent(in) , optional :: correction
1386 integer(IK) , intent(in) , contiguous :: weight(:)
1387 real(TKG) , intent(in) , contiguous :: sample(:,:)
1388 real(TKG) :: var
1389 end function
1390#endif
1391
1392#if RK1_ENABLED
1393 PURE module function getVarALL_WTI_D2_RK1(sample, weight, correction) result(var)
1394#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1395 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTI_D2_RK1
1396#endif
1397 use pm_kind, only: TKG => RK1
1398 class(weight_type) , intent(in) , optional :: correction
1399 integer(IK) , intent(in) , contiguous :: weight(:)
1400 real(TKG) , intent(in) , contiguous :: sample(:,:)
1401 real(TKG) :: var
1402 end function
1403#endif
1404
1405 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1406
1407 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1408 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1409 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1410
1411 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1412
1413#if CK5_ENABLED
1414 PURE module function getVarALL_WTR_D2_CK5(sample, weight, correction) result(var)
1415#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1416 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_CK5
1417#endif
1418 use pm_kind, only: TKG => CK5
1419 class(weight_type) , intent(in) , optional :: correction
1420 real(TKG) , intent(in) , contiguous :: weight(:)
1421 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1422 real(TKG) :: var
1423 end function
1424#endif
1425
1426#if CK4_ENABLED
1427 PURE module function getVarALL_WTR_D2_CK4(sample, weight, correction) result(var)
1428#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1429 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_CK4
1430#endif
1431 use pm_kind, only: TKG => CK4
1432 class(weight_type) , intent(in) , optional :: correction
1433 real(TKG) , intent(in) , contiguous :: weight(:)
1434 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1435 real(TKG) :: var
1436 end function
1437#endif
1438
1439#if CK3_ENABLED
1440 PURE module function getVarALL_WTR_D2_CK3(sample, weight, correction) result(var)
1441#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1442 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_CK3
1443#endif
1444 use pm_kind, only: TKG => CK3
1445 class(weight_type) , intent(in) , optional :: correction
1446 real(TKG) , intent(in) , contiguous :: weight(:)
1447 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1448 real(TKG) :: var
1449 end function
1450#endif
1451
1452#if CK2_ENABLED
1453 PURE module function getVarALL_WTR_D2_CK2(sample, weight, correction) result(var)
1454#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1455 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_CK2
1456#endif
1457 use pm_kind, only: TKG => CK2
1458 class(weight_type) , intent(in) , optional :: correction
1459 real(TKG) , intent(in) , contiguous :: weight(:)
1460 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1461 real(TKG) :: var
1462 end function
1463#endif
1464
1465#if CK1_ENABLED
1466 PURE module function getVarALL_WTR_D2_CK1(sample, weight, correction) result(var)
1467#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1468 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_CK1
1469#endif
1470 use pm_kind, only: TKG => CK1
1471 class(weight_type) , intent(in) , optional :: correction
1472 real(TKG) , intent(in) , contiguous :: weight(:)
1473 complex(TKG) , intent(in) , contiguous :: sample(:,:)
1474 real(TKG) :: var
1475 end function
1476#endif
1477
1478 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1479
1480#if RK5_ENABLED
1481 PURE module function getVarALL_WTR_D2_RK5(sample, weight, correction) result(var)
1482#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1483 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_RK5
1484#endif
1485 use pm_kind, only: TKG => RK5
1486 class(weight_type) , intent(in) , optional :: correction
1487 real(TKG) , intent(in) , contiguous :: weight(:)
1488 real(TKG) , intent(in) , contiguous :: sample(:,:)
1489 real(TKG) :: var
1490 end function
1491#endif
1492
1493#if RK4_ENABLED
1494 PURE module function getVarALL_WTR_D2_RK4(sample, weight, correction) result(var)
1495#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1496 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_RK4
1497#endif
1498 use pm_kind, only: TKG => RK4
1499 class(weight_type) , intent(in) , optional :: correction
1500 real(TKG) , intent(in) , contiguous :: weight(:)
1501 real(TKG) , intent(in) , contiguous :: sample(:,:)
1502 real(TKG) :: var
1503 end function
1504#endif
1505
1506#if RK3_ENABLED
1507 PURE module function getVarALL_WTR_D2_RK3(sample, weight, correction) result(var)
1508#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1509 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_RK3
1510#endif
1511 use pm_kind, only: TKG => RK3
1512 class(weight_type) , intent(in) , optional :: correction
1513 real(TKG) , intent(in) , contiguous :: weight(:)
1514 real(TKG) , intent(in) , contiguous :: sample(:,:)
1515 real(TKG) :: var
1516 end function
1517#endif
1518
1519#if RK2_ENABLED
1520 PURE module function getVarALL_WTR_D2_RK2(sample, weight, correction) result(var)
1521#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1522 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_RK2
1523#endif
1524 use pm_kind, only: TKG => RK2
1525 class(weight_type) , intent(in) , optional :: correction
1526 real(TKG) , intent(in) , contiguous :: weight(:)
1527 real(TKG) , intent(in) , contiguous :: sample(:,:)
1528 real(TKG) :: var
1529 end function
1530#endif
1531
1532#if RK1_ENABLED
1533 PURE module function getVarALL_WTR_D2_RK1(sample, weight, correction) result(var)
1534#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1535 !DEC$ ATTRIBUTES DLLEXPORT :: getVarALL_WTR_D2_RK1
1536#endif
1537 use pm_kind, only: TKG => RK1
1538 class(weight_type) , intent(in) , optional :: correction
1539 real(TKG) , intent(in) , contiguous :: weight(:)
1540 real(TKG) , intent(in) , contiguous :: sample(:,:)
1541 real(TKG) :: var
1542 end function
1543#endif
1544
1545 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1546
1547 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1548 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1549 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1550
1551 end interface getVar
1552
1553 ! DIM D1
1554
1555 interface getVar
1556
1557 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1558 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1559 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1560
1561 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1562
1563#if CK5_ENABLED
1564 PURE module function getVarDIM_WNO_D1_CK5(sample, dim, correction) result(var)
1565#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1566 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_CK5
1567#endif
1568 use pm_kind, only: TKG => CK5
1569 integer(IK) , intent(in) :: dim
1570 class(weight_type) , intent(in) , optional :: correction
1571 complex(TKG) , intent(in) , contiguous :: sample(:)
1572 real(TKG) :: var
1573 end function
1574#endif
1575
1576#if CK4_ENABLED
1577 PURE module function getVarDIM_WNO_D1_CK4(sample, dim, correction) result(var)
1578#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1579 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_CK4
1580#endif
1581 use pm_kind, only: TKG => CK4
1582 integer(IK) , intent(in) :: dim
1583 class(weight_type) , intent(in) , optional :: correction
1584 complex(TKG) , intent(in) , contiguous :: sample(:)
1585 real(TKG) :: var
1586 end function
1587#endif
1588
1589#if CK3_ENABLED
1590 PURE module function getVarDIM_WNO_D1_CK3(sample, dim, correction) result(var)
1591#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1592 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_CK3
1593#endif
1594 use pm_kind, only: TKG => CK3
1595 integer(IK) , intent(in) :: dim
1596 class(weight_type) , intent(in) , optional :: correction
1597 complex(TKG) , intent(in) , contiguous :: sample(:)
1598 real(TKG) :: var
1599 end function
1600#endif
1601
1602#if CK2_ENABLED
1603 PURE module function getVarDIM_WNO_D1_CK2(sample, dim, correction) result(var)
1604#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1605 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_CK2
1606#endif
1607 use pm_kind, only: TKG => CK2
1608 integer(IK) , intent(in) :: dim
1609 class(weight_type) , intent(in) , optional :: correction
1610 complex(TKG) , intent(in) , contiguous :: sample(:)
1611 real(TKG) :: var
1612 end function
1613#endif
1614
1615#if CK1_ENABLED
1616 PURE module function getVarDIM_WNO_D1_CK1(sample, dim, correction) result(var)
1617#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1618 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_CK1
1619#endif
1620 use pm_kind, only: TKG => CK1
1621 integer(IK) , intent(in) :: dim
1622 class(weight_type) , intent(in) , optional :: correction
1623 complex(TKG) , intent(in) , contiguous :: sample(:)
1624 real(TKG) :: var
1625 end function
1626#endif
1627
1628 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1629
1630#if RK5_ENABLED
1631 PURE module function getVarDIM_WNO_D1_RK5(sample, dim, correction) result(var)
1632#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1633 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_RK5
1634#endif
1635 use pm_kind, only: TKG => RK5
1636 integer(IK) , intent(in) :: dim
1637 class(weight_type) , intent(in) , optional :: correction
1638 real(TKG) , intent(in) , contiguous :: sample(:)
1639 real(TKG) :: var
1640 end function
1641#endif
1642
1643#if RK4_ENABLED
1644 PURE module function getVarDIM_WNO_D1_RK4(sample, dim, correction) result(var)
1645#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1646 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_RK4
1647#endif
1648 use pm_kind, only: TKG => RK4
1649 integer(IK) , intent(in) :: dim
1650 class(weight_type) , intent(in) , optional :: correction
1651 real(TKG) , intent(in) , contiguous :: sample(:)
1652 real(TKG) :: var
1653 end function
1654#endif
1655
1656#if RK3_ENABLED
1657 PURE module function getVarDIM_WNO_D1_RK3(sample, dim, correction) result(var)
1658#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1659 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_RK3
1660#endif
1661 use pm_kind, only: TKG => RK3
1662 integer(IK) , intent(in) :: dim
1663 class(weight_type) , intent(in) , optional :: correction
1664 real(TKG) , intent(in) , contiguous :: sample(:)
1665 real(TKG) :: var
1666 end function
1667#endif
1668
1669#if RK2_ENABLED
1670 PURE module function getVarDIM_WNO_D1_RK2(sample, dim, correction) result(var)
1671#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1672 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_RK2
1673#endif
1674 use pm_kind, only: TKG => RK2
1675 integer(IK) , intent(in) :: dim
1676 class(weight_type) , intent(in) , optional :: correction
1677 real(TKG) , intent(in) , contiguous :: sample(:)
1678 real(TKG) :: var
1679 end function
1680#endif
1681
1682#if RK1_ENABLED
1683 PURE module function getVarDIM_WNO_D1_RK1(sample, dim, correction) result(var)
1684#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1685 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D1_RK1
1686#endif
1687 use pm_kind, only: TKG => RK1
1688 integer(IK) , intent(in) :: dim
1689 class(weight_type) , intent(in) , optional :: correction
1690 real(TKG) , intent(in) , contiguous :: sample(:)
1691 real(TKG) :: var
1692 end function
1693#endif
1694
1695 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1696
1697 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1698 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1699 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1700
1701 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1702
1703#if CK5_ENABLED
1704 PURE module function getVarDIM_WTI_D1_CK5(sample, dim, weight, correction) result(var)
1705#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1706 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_CK5
1707#endif
1708 use pm_kind, only: TKG => CK5
1709 integer(IK) , intent(in) :: dim
1710 class(weight_type) , intent(in) , optional :: correction
1711 integer(IK) , intent(in) , contiguous :: weight(:)
1712 complex(TKG) , intent(in) , contiguous :: sample(:)
1713 real(TKG) :: var
1714 end function
1715#endif
1716
1717#if CK4_ENABLED
1718 PURE module function getVarDIM_WTI_D1_CK4(sample, dim, weight, correction) result(var)
1719#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1720 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_CK4
1721#endif
1722 use pm_kind, only: TKG => CK4
1723 integer(IK) , intent(in) :: dim
1724 class(weight_type) , intent(in) , optional :: correction
1725 integer(IK) , intent(in) , contiguous :: weight(:)
1726 complex(TKG) , intent(in) , contiguous :: sample(:)
1727 real(TKG) :: var
1728 end function
1729#endif
1730
1731#if CK3_ENABLED
1732 PURE module function getVarDIM_WTI_D1_CK3(sample, dim, weight, correction) result(var)
1733#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1734 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_CK3
1735#endif
1736 use pm_kind, only: TKG => CK3
1737 integer(IK) , intent(in) :: dim
1738 class(weight_type) , intent(in) , optional :: correction
1739 integer(IK) , intent(in) , contiguous :: weight(:)
1740 complex(TKG) , intent(in) , contiguous :: sample(:)
1741 real(TKG) :: var
1742 end function
1743#endif
1744
1745#if CK2_ENABLED
1746 PURE module function getVarDIM_WTI_D1_CK2(sample, dim, weight, correction) result(var)
1747#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1748 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_CK2
1749#endif
1750 use pm_kind, only: TKG => CK2
1751 integer(IK) , intent(in) :: dim
1752 class(weight_type) , intent(in) , optional :: correction
1753 integer(IK) , intent(in) , contiguous :: weight(:)
1754 complex(TKG) , intent(in) , contiguous :: sample(:)
1755 real(TKG) :: var
1756 end function
1757#endif
1758
1759#if CK1_ENABLED
1760 PURE module function getVarDIM_WTI_D1_CK1(sample, dim, weight, correction) result(var)
1761#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1762 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_CK1
1763#endif
1764 use pm_kind, only: TKG => CK1
1765 integer(IK) , intent(in) :: dim
1766 class(weight_type) , intent(in) , optional :: correction
1767 integer(IK) , intent(in) , contiguous :: weight(:)
1768 complex(TKG) , intent(in) , contiguous :: sample(:)
1769 real(TKG) :: var
1770 end function
1771#endif
1772
1773 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1774
1775#if RK5_ENABLED
1776 PURE module function getVarDIM_WTI_D1_RK5(sample, dim, weight, correction) result(var)
1777#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1778 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_RK5
1779#endif
1780 use pm_kind, only: TKG => RK5
1781 integer(IK) , intent(in) :: dim
1782 class(weight_type) , intent(in) , optional :: correction
1783 integer(IK) , intent(in) , contiguous :: weight(:)
1784 real(TKG) , intent(in) , contiguous :: sample(:)
1785 real(TKG) :: var
1786 end function
1787#endif
1788
1789#if RK4_ENABLED
1790 PURE module function getVarDIM_WTI_D1_RK4(sample, dim, weight, correction) result(var)
1791#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1792 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_RK4
1793#endif
1794 use pm_kind, only: TKG => RK4
1795 integer(IK) , intent(in) :: dim
1796 class(weight_type) , intent(in) , optional :: correction
1797 integer(IK) , intent(in) , contiguous :: weight(:)
1798 real(TKG) , intent(in) , contiguous :: sample(:)
1799 real(TKG) :: var
1800 end function
1801#endif
1802
1803#if RK3_ENABLED
1804 PURE module function getVarDIM_WTI_D1_RK3(sample, dim, weight, correction) result(var)
1805#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1806 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_RK3
1807#endif
1808 use pm_kind, only: TKG => RK3
1809 integer(IK) , intent(in) :: dim
1810 class(weight_type) , intent(in) , optional :: correction
1811 integer(IK) , intent(in) , contiguous :: weight(:)
1812 real(TKG) , intent(in) , contiguous :: sample(:)
1813 real(TKG) :: var
1814 end function
1815#endif
1816
1817#if RK2_ENABLED
1818 PURE module function getVarDIM_WTI_D1_RK2(sample, dim, weight, correction) result(var)
1819#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1820 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_RK2
1821#endif
1822 use pm_kind, only: TKG => RK2
1823 integer(IK) , intent(in) :: dim
1824 class(weight_type) , intent(in) , optional :: correction
1825 integer(IK) , intent(in) , contiguous :: weight(:)
1826 real(TKG) , intent(in) , contiguous :: sample(:)
1827 real(TKG) :: var
1828 end function
1829#endif
1830
1831#if RK1_ENABLED
1832 PURE module function getVarDIM_WTI_D1_RK1(sample, dim, weight, correction) result(var)
1833#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1834 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D1_RK1
1835#endif
1836 use pm_kind, only: TKG => RK1
1837 integer(IK) , intent(in) :: dim
1838 class(weight_type) , intent(in) , optional :: correction
1839 integer(IK) , intent(in) , contiguous :: weight(:)
1840 real(TKG) , intent(in) , contiguous :: sample(:)
1841 real(TKG) :: var
1842 end function
1843#endif
1844
1845 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1846
1847 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1848 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1849 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1850
1851 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1852
1853#if CK5_ENABLED
1854 PURE module function getVarDIM_WTR_D1_CK5(sample, dim, weight, correction) result(var)
1855#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1856 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_CK5
1857#endif
1858 use pm_kind, only: TKG => CK5
1859 integer(IK) , intent(in) :: dim
1860 class(weight_type) , intent(in) , optional :: correction
1861 real(TKG) , intent(in) , contiguous :: weight(:)
1862 complex(TKG) , intent(in) , contiguous :: sample(:)
1863 real(TKG) :: var
1864 end function
1865#endif
1866
1867#if CK4_ENABLED
1868 PURE module function getVarDIM_WTR_D1_CK4(sample, dim, weight, correction) result(var)
1869#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1870 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_CK4
1871#endif
1872 use pm_kind, only: TKG => CK4
1873 integer(IK) , intent(in) :: dim
1874 class(weight_type) , intent(in) , optional :: correction
1875 real(TKG) , intent(in) , contiguous :: weight(:)
1876 complex(TKG) , intent(in) , contiguous :: sample(:)
1877 real(TKG) :: var
1878 end function
1879#endif
1880
1881#if CK3_ENABLED
1882 PURE module function getVarDIM_WTR_D1_CK3(sample, dim, weight, correction) result(var)
1883#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1884 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_CK3
1885#endif
1886 use pm_kind, only: TKG => CK3
1887 integer(IK) , intent(in) :: dim
1888 class(weight_type) , intent(in) , optional :: correction
1889 real(TKG) , intent(in) , contiguous :: weight(:)
1890 complex(TKG) , intent(in) , contiguous :: sample(:)
1891 real(TKG) :: var
1892 end function
1893#endif
1894
1895#if CK2_ENABLED
1896 PURE module function getVarDIM_WTR_D1_CK2(sample, dim, weight, correction) result(var)
1897#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1898 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_CK2
1899#endif
1900 use pm_kind, only: TKG => CK2
1901 integer(IK) , intent(in) :: dim
1902 class(weight_type) , intent(in) , optional :: correction
1903 real(TKG) , intent(in) , contiguous :: weight(:)
1904 complex(TKG) , intent(in) , contiguous :: sample(:)
1905 real(TKG) :: var
1906 end function
1907#endif
1908
1909#if CK1_ENABLED
1910 PURE module function getVarDIM_WTR_D1_CK1(sample, dim, weight, correction) result(var)
1911#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1912 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_CK1
1913#endif
1914 use pm_kind, only: TKG => CK1
1915 integer(IK) , intent(in) :: dim
1916 class(weight_type) , intent(in) , optional :: correction
1917 real(TKG) , intent(in) , contiguous :: weight(:)
1918 complex(TKG) , intent(in) , contiguous :: sample(:)
1919 real(TKG) :: var
1920 end function
1921#endif
1922
1923 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1924
1925#if RK5_ENABLED
1926 PURE module function getVarDIM_WTR_D1_RK5(sample, dim, weight, correction) result(var)
1927#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1928 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_RK5
1929#endif
1930 use pm_kind, only: TKG => RK5
1931 integer(IK) , intent(in) :: dim
1932 class(weight_type) , intent(in) , optional :: correction
1933 real(TKG) , intent(in) , contiguous :: weight(:)
1934 real(TKG) , intent(in) , contiguous :: sample(:)
1935 real(TKG) :: var
1936 end function
1937#endif
1938
1939#if RK4_ENABLED
1940 PURE module function getVarDIM_WTR_D1_RK4(sample, dim, weight, correction) result(var)
1941#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1942 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_RK4
1943#endif
1944 use pm_kind, only: TKG => RK4
1945 integer(IK) , intent(in) :: dim
1946 class(weight_type) , intent(in) , optional :: correction
1947 real(TKG) , intent(in) , contiguous :: weight(:)
1948 real(TKG) , intent(in) , contiguous :: sample(:)
1949 real(TKG) :: var
1950 end function
1951#endif
1952
1953#if RK3_ENABLED
1954 PURE module function getVarDIM_WTR_D1_RK3(sample, dim, weight, correction) result(var)
1955#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1956 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_RK3
1957#endif
1958 use pm_kind, only: TKG => RK3
1959 integer(IK) , intent(in) :: dim
1960 class(weight_type) , intent(in) , optional :: correction
1961 real(TKG) , intent(in) , contiguous :: weight(:)
1962 real(TKG) , intent(in) , contiguous :: sample(:)
1963 real(TKG) :: var
1964 end function
1965#endif
1966
1967#if RK2_ENABLED
1968 PURE module function getVarDIM_WTR_D1_RK2(sample, dim, weight, correction) result(var)
1969#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1970 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_RK2
1971#endif
1972 use pm_kind, only: TKG => RK2
1973 integer(IK) , intent(in) :: dim
1974 class(weight_type) , intent(in) , optional :: correction
1975 real(TKG) , intent(in) , contiguous :: weight(:)
1976 real(TKG) , intent(in) , contiguous :: sample(:)
1977 real(TKG) :: var
1978 end function
1979#endif
1980
1981#if RK1_ENABLED
1982 PURE module function getVarDIM_WTR_D1_RK1(sample, dim, weight, correction) result(var)
1983#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1984 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D1_RK1
1985#endif
1986 use pm_kind, only: TKG => RK1
1987 integer(IK) , intent(in) :: dim
1988 class(weight_type) , intent(in) , optional :: correction
1989 real(TKG) , intent(in) , contiguous :: weight(:)
1990 real(TKG) , intent(in) , contiguous :: sample(:)
1991 real(TKG) :: var
1992 end function
1993#endif
1994
1995 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1996
1997 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1998 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1999 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2000
2001 end interface getVar
2002
2003 ! DIM D2
2004
2005 interface getVar
2006
2007 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2008 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2009 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2010
2011 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2012
2013#if CK5_ENABLED
2014 PURE module function getVarDIM_WNO_D2_CK5(sample, dim, correction) result(var)
2015#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2016 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_CK5
2017#endif
2018 use pm_kind, only: TKG => CK5
2019 integer(IK) , intent(in) :: dim
2020 class(weight_type) , intent(in) , optional :: correction
2021 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2022 real(TKG) :: var(size(sample, 3 - dim, IK))
2023 end function
2024#endif
2025
2026#if CK4_ENABLED
2027 PURE module function getVarDIM_WNO_D2_CK4(sample, dim, correction) result(var)
2028#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2029 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_CK4
2030#endif
2031 use pm_kind, only: TKG => CK4
2032 integer(IK) , intent(in) :: dim
2033 class(weight_type) , intent(in) , optional :: correction
2034 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2035 real(TKG) :: var(size(sample, 3 - dim, IK))
2036 end function
2037#endif
2038
2039#if CK3_ENABLED
2040 PURE module function getVarDIM_WNO_D2_CK3(sample, dim, correction) result(var)
2041#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2042 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_CK3
2043#endif
2044 use pm_kind, only: TKG => CK3
2045 integer(IK) , intent(in) :: dim
2046 class(weight_type) , intent(in) , optional :: correction
2047 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2048 real(TKG) :: var(size(sample, 3 - dim, IK))
2049 end function
2050#endif
2051
2052#if CK2_ENABLED
2053 PURE module function getVarDIM_WNO_D2_CK2(sample, dim, correction) result(var)
2054#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2055 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_CK2
2056#endif
2057 use pm_kind, only: TKG => CK2
2058 integer(IK) , intent(in) :: dim
2059 class(weight_type) , intent(in) , optional :: correction
2060 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2061 real(TKG) :: var(size(sample, 3 - dim, IK))
2062 end function
2063#endif
2064
2065#if CK1_ENABLED
2066 PURE module function getVarDIM_WNO_D2_CK1(sample, dim, correction) result(var)
2067#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2068 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_CK1
2069#endif
2070 use pm_kind, only: TKG => CK1
2071 integer(IK) , intent(in) :: dim
2072 class(weight_type) , intent(in) , optional :: correction
2073 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2074 real(TKG) :: var(size(sample, 3 - dim, IK))
2075 end function
2076#endif
2077
2078 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2079
2080#if RK5_ENABLED
2081 PURE module function getVarDIM_WNO_D2_RK5(sample, dim, correction) result(var)
2082#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2083 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_RK5
2084#endif
2085 use pm_kind, only: TKG => RK5
2086 integer(IK) , intent(in) :: dim
2087 class(weight_type) , intent(in) , optional :: correction
2088 real(TKG) , intent(in) , contiguous :: sample(:,:)
2089 real(TKG) :: var(size(sample, 3 - dim, IK))
2090 end function
2091#endif
2092
2093#if RK4_ENABLED
2094 PURE module function getVarDIM_WNO_D2_RK4(sample, dim, correction) result(var)
2095#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2096 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_RK4
2097#endif
2098 use pm_kind, only: TKG => RK4
2099 integer(IK) , intent(in) :: dim
2100 class(weight_type) , intent(in) , optional :: correction
2101 real(TKG) , intent(in) , contiguous :: sample(:,:)
2102 real(TKG) :: var(size(sample, 3 - dim, IK))
2103 end function
2104#endif
2105
2106#if RK3_ENABLED
2107 PURE module function getVarDIM_WNO_D2_RK3(sample, dim, correction) result(var)
2108#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2109 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_RK3
2110#endif
2111 use pm_kind, only: TKG => RK3
2112 integer(IK) , intent(in) :: dim
2113 class(weight_type) , intent(in) , optional :: correction
2114 real(TKG) , intent(in) , contiguous :: sample(:,:)
2115 real(TKG) :: var(size(sample, 3 - dim, IK))
2116 end function
2117#endif
2118
2119#if RK2_ENABLED
2120 PURE module function getVarDIM_WNO_D2_RK2(sample, dim, correction) result(var)
2121#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2122 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_RK2
2123#endif
2124 use pm_kind, only: TKG => RK2
2125 integer(IK) , intent(in) :: dim
2126 class(weight_type) , intent(in) , optional :: correction
2127 real(TKG) , intent(in) , contiguous :: sample(:,:)
2128 real(TKG) :: var(size(sample, 3 - dim, IK))
2129 end function
2130#endif
2131
2132#if RK1_ENABLED
2133 PURE module function getVarDIM_WNO_D2_RK1(sample, dim, correction) result(var)
2134#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2135 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WNO_D2_RK1
2136#endif
2137 use pm_kind, only: TKG => RK1
2138 integer(IK) , intent(in) :: dim
2139 class(weight_type) , intent(in) , optional :: correction
2140 real(TKG) , intent(in) , contiguous :: sample(:,:)
2141 real(TKG) :: var(size(sample, 3 - dim, IK))
2142 end function
2143#endif
2144
2145 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2146
2147 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2148 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2149 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2150
2151 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2152
2153#if CK5_ENABLED
2154 PURE module function getVarDIM_WTI_D2_CK5(sample, dim, weight, correction) result(var)
2155#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2156 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_CK5
2157#endif
2158 use pm_kind, only: TKG => CK5
2159 integer(IK) , intent(in) :: dim
2160 class(weight_type) , intent(in) , optional :: correction
2161 integer(IK) , intent(in) , contiguous :: weight(:)
2162 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2163 real(TKG) :: var(size(sample, 3 - dim, IK))
2164 end function
2165#endif
2166
2167#if CK4_ENABLED
2168 PURE module function getVarDIM_WTI_D2_CK4(sample, dim, weight, correction) result(var)
2169#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2170 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_CK4
2171#endif
2172 use pm_kind, only: TKG => CK4
2173 integer(IK) , intent(in) :: dim
2174 class(weight_type) , intent(in) , optional :: correction
2175 integer(IK) , intent(in) , contiguous :: weight(:)
2176 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2177 real(TKG) :: var(size(sample, 3 - dim, IK))
2178 end function
2179#endif
2180
2181#if CK3_ENABLED
2182 PURE module function getVarDIM_WTI_D2_CK3(sample, dim, weight, correction) result(var)
2183#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2184 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_CK3
2185#endif
2186 use pm_kind, only: TKG => CK3
2187 integer(IK) , intent(in) :: dim
2188 class(weight_type) , intent(in) , optional :: correction
2189 integer(IK) , intent(in) , contiguous :: weight(:)
2190 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2191 real(TKG) :: var(size(sample, 3 - dim, IK))
2192 end function
2193#endif
2194
2195#if CK2_ENABLED
2196 PURE module function getVarDIM_WTI_D2_CK2(sample, dim, weight, correction) result(var)
2197#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2198 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_CK2
2199#endif
2200 use pm_kind, only: TKG => CK2
2201 integer(IK) , intent(in) :: dim
2202 class(weight_type) , intent(in) , optional :: correction
2203 integer(IK) , intent(in) , contiguous :: weight(:)
2204 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2205 real(TKG) :: var(size(sample, 3 - dim, IK))
2206 end function
2207#endif
2208
2209#if CK1_ENABLED
2210 PURE module function getVarDIM_WTI_D2_CK1(sample, dim, weight, correction) result(var)
2211#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2212 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_CK1
2213#endif
2214 use pm_kind, only: TKG => CK1
2215 integer(IK) , intent(in) :: dim
2216 class(weight_type) , intent(in) , optional :: correction
2217 integer(IK) , intent(in) , contiguous :: weight(:)
2218 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2219 real(TKG) :: var(size(sample, 3 - dim, IK))
2220 end function
2221#endif
2222
2223 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2224
2225#if RK5_ENABLED
2226 PURE module function getVarDIM_WTI_D2_RK5(sample, dim, weight, correction) result(var)
2227#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2228 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_RK5
2229#endif
2230 use pm_kind, only: TKG => RK5
2231 integer(IK) , intent(in) :: dim
2232 class(weight_type) , intent(in) , optional :: correction
2233 integer(IK) , intent(in) , contiguous :: weight(:)
2234 real(TKG) , intent(in) , contiguous :: sample(:,:)
2235 real(TKG) :: var(size(sample, 3 - dim, IK))
2236 end function
2237#endif
2238
2239#if RK4_ENABLED
2240 PURE module function getVarDIM_WTI_D2_RK4(sample, dim, weight, correction) result(var)
2241#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2242 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_RK4
2243#endif
2244 use pm_kind, only: TKG => RK4
2245 integer(IK) , intent(in) :: dim
2246 class(weight_type) , intent(in) , optional :: correction
2247 integer(IK) , intent(in) , contiguous :: weight(:)
2248 real(TKG) , intent(in) , contiguous :: sample(:,:)
2249 real(TKG) :: var(size(sample, 3 - dim, IK))
2250 end function
2251#endif
2252
2253#if RK3_ENABLED
2254 PURE module function getVarDIM_WTI_D2_RK3(sample, dim, weight, correction) result(var)
2255#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2256 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_RK3
2257#endif
2258 use pm_kind, only: TKG => RK3
2259 integer(IK) , intent(in) :: dim
2260 class(weight_type) , intent(in) , optional :: correction
2261 integer(IK) , intent(in) , contiguous :: weight(:)
2262 real(TKG) , intent(in) , contiguous :: sample(:,:)
2263 real(TKG) :: var(size(sample, 3 - dim, IK))
2264 end function
2265#endif
2266
2267#if RK2_ENABLED
2268 PURE module function getVarDIM_WTI_D2_RK2(sample, dim, weight, correction) result(var)
2269#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2270 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_RK2
2271#endif
2272 use pm_kind, only: TKG => RK2
2273 integer(IK) , intent(in) :: dim
2274 class(weight_type) , intent(in) , optional :: correction
2275 integer(IK) , intent(in) , contiguous :: weight(:)
2276 real(TKG) , intent(in) , contiguous :: sample(:,:)
2277 real(TKG) :: var(size(sample, 3 - dim, IK))
2278 end function
2279#endif
2280
2281#if RK1_ENABLED
2282 PURE module function getVarDIM_WTI_D2_RK1(sample, dim, weight, correction) result(var)
2283#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2284 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTI_D2_RK1
2285#endif
2286 use pm_kind, only: TKG => RK1
2287 integer(IK) , intent(in) :: dim
2288 class(weight_type) , intent(in) , optional :: correction
2289 integer(IK) , intent(in) , contiguous :: weight(:)
2290 real(TKG) , intent(in) , contiguous :: sample(:,:)
2291 real(TKG) :: var(size(sample, 3 - dim, IK))
2292 end function
2293#endif
2294
2295 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2296
2297 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2298 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2299 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2300
2301 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2302
2303#if CK5_ENABLED
2304 PURE module function getVarDIM_WTR_D2_CK5(sample, dim, weight, correction) result(var)
2305#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2306 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_CK5
2307#endif
2308 use pm_kind, only: TKG => CK5
2309 integer(IK) , intent(in) :: dim
2310 class(weight_type) , intent(in) , optional :: correction
2311 real(TKG) , intent(in) , contiguous :: weight(:)
2312 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2313 real(TKG) :: var(size(sample, 3 - dim, IK))
2314 end function
2315#endif
2316
2317#if CK4_ENABLED
2318 PURE module function getVarDIM_WTR_D2_CK4(sample, dim, weight, correction) result(var)
2319#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2320 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_CK4
2321#endif
2322 use pm_kind, only: TKG => CK4
2323 integer(IK) , intent(in) :: dim
2324 class(weight_type) , intent(in) , optional :: correction
2325 real(TKG) , intent(in) , contiguous :: weight(:)
2326 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2327 real(TKG) :: var(size(sample, 3 - dim, IK))
2328 end function
2329#endif
2330
2331#if CK3_ENABLED
2332 PURE module function getVarDIM_WTR_D2_CK3(sample, dim, weight, correction) result(var)
2333#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2334 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_CK3
2335#endif
2336 use pm_kind, only: TKG => CK3
2337 integer(IK) , intent(in) :: dim
2338 class(weight_type) , intent(in) , optional :: correction
2339 real(TKG) , intent(in) , contiguous :: weight(:)
2340 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2341 real(TKG) :: var(size(sample, 3 - dim, IK))
2342 end function
2343#endif
2344
2345#if CK2_ENABLED
2346 PURE module function getVarDIM_WTR_D2_CK2(sample, dim, weight, correction) result(var)
2347#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2348 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_CK2
2349#endif
2350 use pm_kind, only: TKG => CK2
2351 integer(IK) , intent(in) :: dim
2352 class(weight_type) , intent(in) , optional :: correction
2353 real(TKG) , intent(in) , contiguous :: weight(:)
2354 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2355 real(TKG) :: var(size(sample, 3 - dim, IK))
2356 end function
2357#endif
2358
2359#if CK1_ENABLED
2360 PURE module function getVarDIM_WTR_D2_CK1(sample, dim, weight, correction) result(var)
2361#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2362 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_CK1
2363#endif
2364 use pm_kind, only: TKG => CK1
2365 integer(IK) , intent(in) :: dim
2366 class(weight_type) , intent(in) , optional :: correction
2367 real(TKG) , intent(in) , contiguous :: weight(:)
2368 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2369 real(TKG) :: var(size(sample, 3 - dim, IK))
2370 end function
2371#endif
2372
2373 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2374
2375#if RK5_ENABLED
2376 PURE module function getVarDIM_WTR_D2_RK5(sample, dim, weight, correction) result(var)
2377#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2378 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_RK5
2379#endif
2380 use pm_kind, only: TKG => RK5
2381 integer(IK) , intent(in) :: dim
2382 class(weight_type) , intent(in) , optional :: correction
2383 real(TKG) , intent(in) , contiguous :: weight(:)
2384 real(TKG) , intent(in) , contiguous :: sample(:,:)
2385 real(TKG) :: var(size(sample, 3 - dim, IK))
2386 end function
2387#endif
2388
2389#if RK4_ENABLED
2390 PURE module function getVarDIM_WTR_D2_RK4(sample, dim, weight, correction) result(var)
2391#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2392 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_RK4
2393#endif
2394 use pm_kind, only: TKG => RK4
2395 integer(IK) , intent(in) :: dim
2396 class(weight_type) , intent(in) , optional :: correction
2397 real(TKG) , intent(in) , contiguous :: weight(:)
2398 real(TKG) , intent(in) , contiguous :: sample(:,:)
2399 real(TKG) :: var(size(sample, 3 - dim, IK))
2400 end function
2401#endif
2402
2403#if RK3_ENABLED
2404 PURE module function getVarDIM_WTR_D2_RK3(sample, dim, weight, correction) result(var)
2405#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2406 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_RK3
2407#endif
2408 use pm_kind, only: TKG => RK3
2409 integer(IK) , intent(in) :: dim
2410 class(weight_type) , intent(in) , optional :: correction
2411 real(TKG) , intent(in) , contiguous :: weight(:)
2412 real(TKG) , intent(in) , contiguous :: sample(:,:)
2413 real(TKG) :: var(size(sample, 3 - dim, IK))
2414 end function
2415#endif
2416
2417#if RK2_ENABLED
2418 PURE module function getVarDIM_WTR_D2_RK2(sample, dim, weight, correction) result(var)
2419#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2420 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_RK2
2421#endif
2422 use pm_kind, only: TKG => RK2
2423 integer(IK) , intent(in) :: dim
2424 class(weight_type) , intent(in) , optional :: correction
2425 real(TKG) , intent(in) , contiguous :: weight(:)
2426 real(TKG) , intent(in) , contiguous :: sample(:,:)
2427 real(TKG) :: var(size(sample, 3 - dim, IK))
2428 end function
2429#endif
2430
2431#if RK1_ENABLED
2432 PURE module function getVarDIM_WTR_D2_RK1(sample, dim, weight, correction) result(var)
2433#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2434 !DEC$ ATTRIBUTES DLLEXPORT :: getVarDIM_WTR_D2_RK1
2435#endif
2436 use pm_kind, only: TKG => RK1
2437 integer(IK) , intent(in) :: dim
2438 class(weight_type) , intent(in) , optional :: correction
2439 real(TKG) , intent(in) , contiguous :: weight(:)
2440 real(TKG) , intent(in) , contiguous :: sample(:,:)
2441 real(TKG) :: var(size(sample, 3 - dim, IK))
2442 end function
2443#endif
2444
2445 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2446
2447 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2448 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2449 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2450
2451 end interface getVar
2452
2453!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2454
2615
2616 ! AvgDIM_WNO
2617
2618 interface setVar
2619
2620 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2621 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2622 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2623
2624 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2625
2626#if CK5_ENABLED
2627 PURE module subroutine setVarAvgDIM_WNO_D1_CK5(var, mean, sample, dim)
2628#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2629 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_CK5
2630#endif
2631 use pm_kind, only: TKG => CK5
2632 integer(IK) , intent(in) :: dim
2633 complex(TKG) , intent(in) , contiguous :: sample(:)
2634 complex(TKG) , intent(in) :: mean
2635 real(TKG) , intent(out) :: var
2636 end subroutine
2637#endif
2638
2639#if CK4_ENABLED
2640 PURE module subroutine setVarAvgDIM_WNO_D1_CK4(var, mean, sample, dim)
2641#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2642 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_CK4
2643#endif
2644 use pm_kind, only: TKG => CK4
2645 integer(IK) , intent(in) :: dim
2646 complex(TKG) , intent(in) , contiguous :: sample(:)
2647 complex(TKG) , intent(in) :: mean
2648 real(TKG) , intent(out) :: var
2649 end subroutine
2650#endif
2651
2652#if CK3_ENABLED
2653 PURE module subroutine setVarAvgDIM_WNO_D1_CK3(var, mean, sample, dim)
2654#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2655 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_CK3
2656#endif
2657 use pm_kind, only: TKG => CK3
2658 integer(IK) , intent(in) :: dim
2659 complex(TKG) , intent(in) , contiguous :: sample(:)
2660 complex(TKG) , intent(in) :: mean
2661 real(TKG) , intent(out) :: var
2662 end subroutine
2663#endif
2664
2665#if CK2_ENABLED
2666 PURE module subroutine setVarAvgDIM_WNO_D1_CK2(var, mean, sample, dim)
2667#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2668 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_CK2
2669#endif
2670 use pm_kind, only: TKG => CK2
2671 integer(IK) , intent(in) :: dim
2672 complex(TKG) , intent(in) , contiguous :: sample(:)
2673 complex(TKG) , intent(in) :: mean
2674 real(TKG) , intent(out) :: var
2675 end subroutine
2676#endif
2677
2678#if CK1_ENABLED
2679 PURE module subroutine setVarAvgDIM_WNO_D1_CK1(var, mean, sample, dim)
2680#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2681 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_CK1
2682#endif
2683 use pm_kind, only: TKG => CK1
2684 integer(IK) , intent(in) :: dim
2685 complex(TKG) , intent(in) , contiguous :: sample(:)
2686 complex(TKG) , intent(in) :: mean
2687 real(TKG) , intent(out) :: var
2688 end subroutine
2689#endif
2690
2691 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2692
2693#if RK5_ENABLED
2694 PURE module subroutine setVarAvgDIM_WNO_D1_RK5(var, mean, sample, dim)
2695#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2696 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_RK5
2697#endif
2698 use pm_kind, only: TKG => RK5
2699 integer(IK) , intent(in) :: dim
2700 real(TKG) , intent(in) , contiguous :: sample(:)
2701 real(TKG) , intent(in) :: mean
2702 real(TKG) , intent(out) :: var
2703 end subroutine
2704#endif
2705
2706#if RK4_ENABLED
2707 PURE module subroutine setVarAvgDIM_WNO_D1_RK4(var, mean, sample, dim)
2708#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2709 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_RK4
2710#endif
2711 use pm_kind, only: TKG => RK4
2712 integer(IK) , intent(in) :: dim
2713 real(TKG) , intent(in) , contiguous :: sample(:)
2714 real(TKG) , intent(in) :: mean
2715 real(TKG) , intent(out) :: var
2716 end subroutine
2717#endif
2718
2719#if RK3_ENABLED
2720 PURE module subroutine setVarAvgDIM_WNO_D1_RK3(var, mean, sample, dim)
2721#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2722 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_RK3
2723#endif
2724 use pm_kind, only: TKG => RK3
2725 integer(IK) , intent(in) :: dim
2726 real(TKG) , intent(in) , contiguous :: sample(:)
2727 real(TKG) , intent(in) :: mean
2728 real(TKG) , intent(out) :: var
2729 end subroutine
2730#endif
2731
2732#if RK2_ENABLED
2733 PURE module subroutine setVarAvgDIM_WNO_D1_RK2(var, mean, sample, dim)
2734#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2735 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_RK2
2736#endif
2737 use pm_kind, only: TKG => RK2
2738 integer(IK) , intent(in) :: dim
2739 real(TKG) , intent(in) , contiguous :: sample(:)
2740 real(TKG) , intent(in) :: mean
2741 real(TKG) , intent(out) :: var
2742 end subroutine
2743#endif
2744
2745#if RK1_ENABLED
2746 PURE module subroutine setVarAvgDIM_WNO_D1_RK1(var, mean, sample, dim)
2747#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2748 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D1_RK1
2749#endif
2750 use pm_kind, only: TKG => RK1
2751 integer(IK) , intent(in) :: dim
2752 real(TKG) , intent(in) , contiguous :: sample(:)
2753 real(TKG) , intent(in) :: mean
2754 real(TKG) , intent(out) :: var
2755 end subroutine
2756#endif
2757
2758 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2759
2760 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2761 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2762 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2763
2764 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2765
2766#if CK5_ENABLED
2767 PURE module subroutine setVarAvgDIM_WNO_D2_CK5(var, mean, sample, dim)
2768#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2769 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_CK5
2770#endif
2771 use pm_kind, only: TKG => CK5
2772 integer(IK) , intent(in) :: dim
2773 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2774 complex(TKG) , intent(in) , contiguous :: mean(:)
2775 real(TKG) , intent(out) , contiguous :: var(:)
2776 end subroutine
2777#endif
2778
2779#if CK4_ENABLED
2780 PURE module subroutine setVarAvgDIM_WNO_D2_CK4(var, mean, sample, dim)
2781#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2782 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_CK4
2783#endif
2784 use pm_kind, only: TKG => CK4
2785 integer(IK) , intent(in) :: dim
2786 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2787 complex(TKG) , intent(in) , contiguous :: mean(:)
2788 real(TKG) , intent(out) , contiguous :: var(:)
2789 end subroutine
2790#endif
2791
2792#if CK3_ENABLED
2793 PURE module subroutine setVarAvgDIM_WNO_D2_CK3(var, mean, sample, dim)
2794#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2795 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_CK3
2796#endif
2797 use pm_kind, only: TKG => CK3
2798 integer(IK) , intent(in) :: dim
2799 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2800 complex(TKG) , intent(in) , contiguous :: mean(:)
2801 real(TKG) , intent(out) , contiguous :: var(:)
2802 end subroutine
2803#endif
2804
2805#if CK2_ENABLED
2806 PURE module subroutine setVarAvgDIM_WNO_D2_CK2(var, mean, sample, dim)
2807#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2808 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_CK2
2809#endif
2810 use pm_kind, only: TKG => CK2
2811 integer(IK) , intent(in) :: dim
2812 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2813 complex(TKG) , intent(in) , contiguous :: mean(:)
2814 real(TKG) , intent(out) , contiguous :: var(:)
2815 end subroutine
2816#endif
2817
2818#if CK1_ENABLED
2819 PURE module subroutine setVarAvgDIM_WNO_D2_CK1(var, mean, sample, dim)
2820#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2821 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_CK1
2822#endif
2823 use pm_kind, only: TKG => CK1
2824 integer(IK) , intent(in) :: dim
2825 complex(TKG) , intent(in) , contiguous :: sample(:,:)
2826 complex(TKG) , intent(in) , contiguous :: mean(:)
2827 real(TKG) , intent(out) , contiguous :: var(:)
2828 end subroutine
2829#endif
2830
2831 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2832
2833#if RK5_ENABLED
2834 PURE module subroutine setVarAvgDIM_WNO_D2_RK5(var, mean, sample, dim)
2835#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2836 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_RK5
2837#endif
2838 use pm_kind, only: TKG => RK5
2839 integer(IK) , intent(in) :: dim
2840 real(TKG) , intent(in) , contiguous :: sample(:,:)
2841 real(TKG) , intent(in) , contiguous :: mean(:)
2842 real(TKG) , intent(out) , contiguous :: var(:)
2843 end subroutine
2844#endif
2845
2846#if RK4_ENABLED
2847 PURE module subroutine setVarAvgDIM_WNO_D2_RK4(var, mean, sample, dim)
2848#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2849 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_RK4
2850#endif
2851 use pm_kind, only: TKG => RK4
2852 integer(IK) , intent(in) :: dim
2853 real(TKG) , intent(in) , contiguous :: sample(:,:)
2854 real(TKG) , intent(in) , contiguous :: mean(:)
2855 real(TKG) , intent(out) , contiguous :: var(:)
2856 end subroutine
2857#endif
2858
2859#if RK3_ENABLED
2860 PURE module subroutine setVarAvgDIM_WNO_D2_RK3(var, mean, sample, dim)
2861#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2862 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_RK3
2863#endif
2864 use pm_kind, only: TKG => RK3
2865 integer(IK) , intent(in) :: dim
2866 real(TKG) , intent(in) , contiguous :: sample(:,:)
2867 real(TKG) , intent(in) , contiguous :: mean(:)
2868 real(TKG) , intent(out) , contiguous :: var(:)
2869 end subroutine
2870#endif
2871
2872#if RK2_ENABLED
2873 PURE module subroutine setVarAvgDIM_WNO_D2_RK2(var, mean, sample, dim)
2874#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2875 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_RK2
2876#endif
2877 use pm_kind, only: TKG => RK2
2878 integer(IK) , intent(in) :: dim
2879 real(TKG) , intent(in) , contiguous :: sample(:,:)
2880 real(TKG) , intent(in) , contiguous :: mean(:)
2881 real(TKG) , intent(out) , contiguous :: var(:)
2882 end subroutine
2883#endif
2884
2885#if RK1_ENABLED
2886 PURE module subroutine setVarAvgDIM_WNO_D2_RK1(var, mean, sample, dim)
2887#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2888 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WNO_D2_RK1
2889#endif
2890 use pm_kind, only: TKG => RK1
2891 integer(IK) , intent(in) :: dim
2892 real(TKG) , intent(in) , contiguous :: sample(:,:)
2893 real(TKG) , intent(in) , contiguous :: mean(:)
2894 real(TKG) , intent(out) , contiguous :: var(:)
2895 end subroutine
2896#endif
2897
2898 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2899
2900 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2901 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2902 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2903
2904 end interface setVar
2905
2906 ! AvgDIM_WTI
2907
2908 interface setVar
2909
2910 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2911 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2912 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2913
2914 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2915
2916#if CK5_ENABLED
2917 PURE module subroutine setVarAvgDIM_WTI_D1_CK5(var, mean, sample, dim, weight, weisum)
2918#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2919 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_CK5
2920#endif
2921 use pm_kind, only: TKG => CK5
2922 integer(IK) , intent(in) :: dim
2923 integer(IK) , intent(in) :: weisum
2924 integer(IK) , intent(in) , contiguous :: weight(:)
2925 complex(TKG) , intent(in) , contiguous :: sample(:)
2926 complex(TKG) , intent(in) :: mean
2927 real(TKG) , intent(out) :: var
2928 end subroutine
2929#endif
2930
2931#if CK4_ENABLED
2932 PURE module subroutine setVarAvgDIM_WTI_D1_CK4(var, mean, sample, dim, weight, weisum)
2933#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2934 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_CK4
2935#endif
2936 use pm_kind, only: TKG => CK4
2937 integer(IK) , intent(in) :: dim
2938 integer(IK) , intent(in) :: weisum
2939 integer(IK) , intent(in) , contiguous :: weight(:)
2940 complex(TKG) , intent(in) , contiguous :: sample(:)
2941 complex(TKG) , intent(in) :: mean
2942 real(TKG) , intent(out) :: var
2943 end subroutine
2944#endif
2945
2946#if CK3_ENABLED
2947 PURE module subroutine setVarAvgDIM_WTI_D1_CK3(var, mean, sample, dim, weight, weisum)
2948#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2949 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_CK3
2950#endif
2951 use pm_kind, only: TKG => CK3
2952 integer(IK) , intent(in) :: dim
2953 integer(IK) , intent(in) :: weisum
2954 integer(IK) , intent(in) , contiguous :: weight(:)
2955 complex(TKG) , intent(in) , contiguous :: sample(:)
2956 complex(TKG) , intent(in) :: mean
2957 real(TKG) , intent(out) :: var
2958 end subroutine
2959#endif
2960
2961#if CK2_ENABLED
2962 PURE module subroutine setVarAvgDIM_WTI_D1_CK2(var, mean, sample, dim, weight, weisum)
2963#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2964 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_CK2
2965#endif
2966 use pm_kind, only: TKG => CK2
2967 integer(IK) , intent(in) :: dim
2968 integer(IK) , intent(in) :: weisum
2969 integer(IK) , intent(in) , contiguous :: weight(:)
2970 complex(TKG) , intent(in) , contiguous :: sample(:)
2971 complex(TKG) , intent(in) :: mean
2972 real(TKG) , intent(out) :: var
2973 end subroutine
2974#endif
2975
2976#if CK1_ENABLED
2977 PURE module subroutine setVarAvgDIM_WTI_D1_CK1(var, mean, sample, dim, weight, weisum)
2978#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2979 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_CK1
2980#endif
2981 use pm_kind, only: TKG => CK1
2982 integer(IK) , intent(in) :: dim
2983 integer(IK) , intent(in) :: weisum
2984 integer(IK) , intent(in) , contiguous :: weight(:)
2985 complex(TKG) , intent(in) , contiguous :: sample(:)
2986 complex(TKG) , intent(in) :: mean
2987 real(TKG) , intent(out) :: var
2988 end subroutine
2989#endif
2990
2991 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2992
2993#if RK5_ENABLED
2994 PURE module subroutine setVarAvgDIM_WTI_D1_RK5(var, mean, sample, dim, weight, weisum)
2995#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2996 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_RK5
2997#endif
2998 use pm_kind, only: TKG => RK5
2999 integer(IK) , intent(in) :: dim
3000 integer(IK) , intent(in) :: weisum
3001 integer(IK) , intent(in) , contiguous :: weight(:)
3002 real(TKG) , intent(in) , contiguous :: sample(:)
3003 real(TKG) , intent(in) :: mean
3004 real(TKG) , intent(out) :: var
3005 end subroutine
3006#endif
3007
3008#if RK4_ENABLED
3009 PURE module subroutine setVarAvgDIM_WTI_D1_RK4(var, mean, sample, dim, weight, weisum)
3010#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3011 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_RK4
3012#endif
3013 use pm_kind, only: TKG => RK4
3014 integer(IK) , intent(in) :: dim
3015 integer(IK) , intent(in) :: weisum
3016 integer(IK) , intent(in) , contiguous :: weight(:)
3017 real(TKG) , intent(in) , contiguous :: sample(:)
3018 real(TKG) , intent(in) :: mean
3019 real(TKG) , intent(out) :: var
3020 end subroutine
3021#endif
3022
3023#if RK3_ENABLED
3024 PURE module subroutine setVarAvgDIM_WTI_D1_RK3(var, mean, sample, dim, weight, weisum)
3025#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3026 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_RK3
3027#endif
3028 use pm_kind, only: TKG => RK3
3029 integer(IK) , intent(in) :: dim
3030 integer(IK) , intent(in) :: weisum
3031 integer(IK) , intent(in) , contiguous :: weight(:)
3032 real(TKG) , intent(in) , contiguous :: sample(:)
3033 real(TKG) , intent(in) :: mean
3034 real(TKG) , intent(out) :: var
3035 end subroutine
3036#endif
3037
3038#if RK2_ENABLED
3039 PURE module subroutine setVarAvgDIM_WTI_D1_RK2(var, mean, sample, dim, weight, weisum)
3040#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3041 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_RK2
3042#endif
3043 use pm_kind, only: TKG => RK2
3044 integer(IK) , intent(in) :: dim
3045 integer(IK) , intent(in) :: weisum
3046 integer(IK) , intent(in) , contiguous :: weight(:)
3047 real(TKG) , intent(in) , contiguous :: sample(:)
3048 real(TKG) , intent(in) :: mean
3049 real(TKG) , intent(out) :: var
3050 end subroutine
3051#endif
3052
3053#if RK1_ENABLED
3054 PURE module subroutine setVarAvgDIM_WTI_D1_RK1(var, mean, sample, dim, weight, weisum)
3055#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3056 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D1_RK1
3057#endif
3058 use pm_kind, only: TKG => RK1
3059 integer(IK) , intent(in) :: dim
3060 integer(IK) , intent(in) :: weisum
3061 integer(IK) , intent(in) , contiguous :: weight(:)
3062 real(TKG) , intent(in) , contiguous :: sample(:)
3063 real(TKG) , intent(in) :: mean
3064 real(TKG) , intent(out) :: var
3065 end subroutine
3066#endif
3067
3068 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3069
3070 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3071 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3072 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3073
3074 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3075
3076#if CK5_ENABLED
3077 PURE module subroutine setVarAvgDIM_WTI_D2_CK5(var, mean, sample, dim, weight, weisum)
3078#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3079 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_CK5
3080#endif
3081 use pm_kind, only: TKG => CK5
3082 integer(IK) , intent(in) :: dim
3083 integer(IK) , intent(in) :: weisum
3084 integer(IK) , intent(in) , contiguous :: weight(:)
3085 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3086 complex(TKG) , intent(in) , contiguous :: mean(:)
3087 real(TKG) , intent(out) , contiguous :: var(:)
3088 end subroutine
3089#endif
3090
3091#if CK4_ENABLED
3092 PURE module subroutine setVarAvgDIM_WTI_D2_CK4(var, mean, sample, dim, weight, weisum)
3093#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3094 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_CK4
3095#endif
3096 use pm_kind, only: TKG => CK4
3097 integer(IK) , intent(in) :: dim
3098 integer(IK) , intent(in) :: weisum
3099 integer(IK) , intent(in) , contiguous :: weight(:)
3100 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3101 complex(TKG) , intent(in) , contiguous :: mean(:)
3102 real(TKG) , intent(out) , contiguous :: var(:)
3103 end subroutine
3104#endif
3105
3106#if CK3_ENABLED
3107 PURE module subroutine setVarAvgDIM_WTI_D2_CK3(var, mean, sample, dim, weight, weisum)
3108#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3109 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_CK3
3110#endif
3111 use pm_kind, only: TKG => CK3
3112 integer(IK) , intent(in) :: dim
3113 integer(IK) , intent(in) :: weisum
3114 integer(IK) , intent(in) , contiguous :: weight(:)
3115 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3116 complex(TKG) , intent(in) , contiguous :: mean(:)
3117 real(TKG) , intent(out) , contiguous :: var(:)
3118 end subroutine
3119#endif
3120
3121#if CK2_ENABLED
3122 PURE module subroutine setVarAvgDIM_WTI_D2_CK2(var, mean, sample, dim, weight, weisum)
3123#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3124 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_CK2
3125#endif
3126 use pm_kind, only: TKG => CK2
3127 integer(IK) , intent(in) :: dim
3128 integer(IK) , intent(in) :: weisum
3129 integer(IK) , intent(in) , contiguous :: weight(:)
3130 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3131 complex(TKG) , intent(in) , contiguous :: mean(:)
3132 real(TKG) , intent(out) , contiguous :: var(:)
3133 end subroutine
3134#endif
3135
3136#if CK1_ENABLED
3137 PURE module subroutine setVarAvgDIM_WTI_D2_CK1(var, mean, sample, dim, weight, weisum)
3138#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3139 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_CK1
3140#endif
3141 use pm_kind, only: TKG => CK1
3142 integer(IK) , intent(in) :: dim
3143 integer(IK) , intent(in) :: weisum
3144 integer(IK) , intent(in) , contiguous :: weight(:)
3145 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3146 complex(TKG) , intent(in) , contiguous :: mean(:)
3147 real(TKG) , intent(out) , contiguous :: var(:)
3148 end subroutine
3149#endif
3150
3151 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3152
3153#if RK5_ENABLED
3154 PURE module subroutine setVarAvgDIM_WTI_D2_RK5(var, mean, sample, dim, weight, weisum)
3155#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3156 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_RK5
3157#endif
3158 use pm_kind, only: TKG => RK5
3159 integer(IK) , intent(in) :: dim
3160 integer(IK) , intent(in) :: weisum
3161 integer(IK) , intent(in) , contiguous :: weight(:)
3162 real(TKG) , intent(in) , contiguous :: sample(:,:)
3163 real(TKG) , intent(in) , contiguous :: mean(:)
3164 real(TKG) , intent(out) , contiguous :: var(:)
3165 end subroutine
3166#endif
3167
3168#if RK4_ENABLED
3169 PURE module subroutine setVarAvgDIM_WTI_D2_RK4(var, mean, sample, dim, weight, weisum)
3170#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3171 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_RK4
3172#endif
3173 use pm_kind, only: TKG => RK4
3174 integer(IK) , intent(in) :: dim
3175 integer(IK) , intent(in) :: weisum
3176 integer(IK) , intent(in) , contiguous :: weight(:)
3177 real(TKG) , intent(in) , contiguous :: sample(:,:)
3178 real(TKG) , intent(in) , contiguous :: mean(:)
3179 real(TKG) , intent(out) , contiguous :: var(:)
3180 end subroutine
3181#endif
3182
3183#if RK3_ENABLED
3184 PURE module subroutine setVarAvgDIM_WTI_D2_RK3(var, mean, sample, dim, weight, weisum)
3185#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3186 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_RK3
3187#endif
3188 use pm_kind, only: TKG => RK3
3189 integer(IK) , intent(in) :: dim
3190 integer(IK) , intent(in) :: weisum
3191 integer(IK) , intent(in) , contiguous :: weight(:)
3192 real(TKG) , intent(in) , contiguous :: sample(:,:)
3193 real(TKG) , intent(in) , contiguous :: mean(:)
3194 real(TKG) , intent(out) , contiguous :: var(:)
3195 end subroutine
3196#endif
3197
3198#if RK2_ENABLED
3199 PURE module subroutine setVarAvgDIM_WTI_D2_RK2(var, mean, sample, dim, weight, weisum)
3200#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3201 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_RK2
3202#endif
3203 use pm_kind, only: TKG => RK2
3204 integer(IK) , intent(in) :: dim
3205 integer(IK) , intent(in) :: weisum
3206 integer(IK) , intent(in) , contiguous :: weight(:)
3207 real(TKG) , intent(in) , contiguous :: sample(:,:)
3208 real(TKG) , intent(in) , contiguous :: mean(:)
3209 real(TKG) , intent(out) , contiguous :: var(:)
3210 end subroutine
3211#endif
3212
3213#if RK1_ENABLED
3214 PURE module subroutine setVarAvgDIM_WTI_D2_RK1(var, mean, sample, dim, weight, weisum)
3215#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3216 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTI_D2_RK1
3217#endif
3218 use pm_kind, only: TKG => RK1
3219 integer(IK) , intent(in) :: dim
3220 integer(IK) , intent(in) :: weisum
3221 integer(IK) , intent(in) , contiguous :: weight(:)
3222 real(TKG) , intent(in) , contiguous :: sample(:,:)
3223 real(TKG) , intent(in) , contiguous :: mean(:)
3224 real(TKG) , intent(out) , contiguous :: var(:)
3225 end subroutine
3226#endif
3227
3228 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3229
3230 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3231 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3232 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3233
3234 end interface setVar
3235
3236 ! AvgDIM_WTR
3237
3238 interface setVar
3239
3240 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3241 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3242 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3243
3244 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3245
3246#if CK5_ENABLED
3247 PURE module subroutine setVarAvgDIM_WTR_D1_CK5(var, mean, sample, dim, weight, weisum)
3248#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3249 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_CK5
3250#endif
3251 use pm_kind, only: TKG => CK5
3252 integer(IK) , intent(in) :: dim
3253 real(TKG) , intent(in) :: weisum
3254 real(TKG) , intent(in) , contiguous :: weight(:)
3255 complex(TKG) , intent(in) , contiguous :: sample(:)
3256 complex(TKG) , intent(in) :: mean
3257 real(TKG) , intent(out) :: var
3258 end subroutine
3259#endif
3260
3261#if CK4_ENABLED
3262 PURE module subroutine setVarAvgDIM_WTR_D1_CK4(var, mean, sample, dim, weight, weisum)
3263#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3264 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_CK4
3265#endif
3266 use pm_kind, only: TKG => CK4
3267 integer(IK) , intent(in) :: dim
3268 real(TKG) , intent(in) :: weisum
3269 real(TKG) , intent(in) , contiguous :: weight(:)
3270 complex(TKG) , intent(in) , contiguous :: sample(:)
3271 complex(TKG) , intent(in) :: mean
3272 real(TKG) , intent(out) :: var
3273 end subroutine
3274#endif
3275
3276#if CK3_ENABLED
3277 PURE module subroutine setVarAvgDIM_WTR_D1_CK3(var, mean, sample, dim, weight, weisum)
3278#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3279 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_CK3
3280#endif
3281 use pm_kind, only: TKG => CK3
3282 integer(IK) , intent(in) :: dim
3283 real(TKG) , intent(in) :: weisum
3284 real(TKG) , intent(in) , contiguous :: weight(:)
3285 complex(TKG) , intent(in) , contiguous :: sample(:)
3286 complex(TKG) , intent(in) :: mean
3287 real(TKG) , intent(out) :: var
3288 end subroutine
3289#endif
3290
3291#if CK2_ENABLED
3292 PURE module subroutine setVarAvgDIM_WTR_D1_CK2(var, mean, sample, dim, weight, weisum)
3293#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3294 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_CK2
3295#endif
3296 use pm_kind, only: TKG => CK2
3297 integer(IK) , intent(in) :: dim
3298 real(TKG) , intent(in) :: weisum
3299 real(TKG) , intent(in) , contiguous :: weight(:)
3300 complex(TKG) , intent(in) , contiguous :: sample(:)
3301 complex(TKG) , intent(in) :: mean
3302 real(TKG) , intent(out) :: var
3303 end subroutine
3304#endif
3305
3306#if CK1_ENABLED
3307 PURE module subroutine setVarAvgDIM_WTR_D1_CK1(var, mean, sample, dim, weight, weisum)
3308#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3309 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_CK1
3310#endif
3311 use pm_kind, only: TKG => CK1
3312 integer(IK) , intent(in) :: dim
3313 real(TKG) , intent(in) :: weisum
3314 real(TKG) , intent(in) , contiguous :: weight(:)
3315 complex(TKG) , intent(in) , contiguous :: sample(:)
3316 complex(TKG) , intent(in) :: mean
3317 real(TKG) , intent(out) :: var
3318 end subroutine
3319#endif
3320
3321 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3322
3323#if RK5_ENABLED
3324 PURE module subroutine setVarAvgDIM_WTR_D1_RK5(var, mean, sample, dim, weight, weisum)
3325#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3326 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_RK5
3327#endif
3328 use pm_kind, only: TKG => RK5
3329 integer(IK) , intent(in) :: dim
3330 real(TKG) , intent(in) :: weisum
3331 real(TKG) , intent(in) , contiguous :: weight(:)
3332 real(TKG) , intent(in) , contiguous :: sample(:)
3333 real(TKG) , intent(in) :: mean
3334 real(TKG) , intent(out) :: var
3335 end subroutine
3336#endif
3337
3338#if RK4_ENABLED
3339 PURE module subroutine setVarAvgDIM_WTR_D1_RK4(var, mean, sample, dim, weight, weisum)
3340#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3341 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_RK4
3342#endif
3343 use pm_kind, only: TKG => RK4
3344 integer(IK) , intent(in) :: dim
3345 real(TKG) , intent(in) :: weisum
3346 real(TKG) , intent(in) , contiguous :: weight(:)
3347 real(TKG) , intent(in) , contiguous :: sample(:)
3348 real(TKG) , intent(in) :: mean
3349 real(TKG) , intent(out) :: var
3350 end subroutine
3351#endif
3352
3353#if RK3_ENABLED
3354 PURE module subroutine setVarAvgDIM_WTR_D1_RK3(var, mean, sample, dim, weight, weisum)
3355#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3356 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_RK3
3357#endif
3358 use pm_kind, only: TKG => RK3
3359 integer(IK) , intent(in) :: dim
3360 real(TKG) , intent(in) :: weisum
3361 real(TKG) , intent(in) , contiguous :: weight(:)
3362 real(TKG) , intent(in) , contiguous :: sample(:)
3363 real(TKG) , intent(in) :: mean
3364 real(TKG) , intent(out) :: var
3365 end subroutine
3366#endif
3367
3368#if RK2_ENABLED
3369 PURE module subroutine setVarAvgDIM_WTR_D1_RK2(var, mean, sample, dim, weight, weisum)
3370#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3371 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_RK2
3372#endif
3373 use pm_kind, only: TKG => RK2
3374 integer(IK) , intent(in) :: dim
3375 real(TKG) , intent(in) :: weisum
3376 real(TKG) , intent(in) , contiguous :: weight(:)
3377 real(TKG) , intent(in) , contiguous :: sample(:)
3378 real(TKG) , intent(in) :: mean
3379 real(TKG) , intent(out) :: var
3380 end subroutine
3381#endif
3382
3383#if RK1_ENABLED
3384 PURE module subroutine setVarAvgDIM_WTR_D1_RK1(var, mean, sample, dim, weight, weisum)
3385#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3386 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D1_RK1
3387#endif
3388 use pm_kind, only: TKG => RK1
3389 integer(IK) , intent(in) :: dim
3390 real(TKG) , intent(in) :: weisum
3391 real(TKG) , intent(in) , contiguous :: weight(:)
3392 real(TKG) , intent(in) , contiguous :: sample(:)
3393 real(TKG) , intent(in) :: mean
3394 real(TKG) , intent(out) :: var
3395 end subroutine
3396#endif
3397
3398 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3399
3400 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3401 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3402 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3403
3404 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3405
3406#if CK5_ENABLED
3407 PURE module subroutine setVarAvgDIM_WTR_D2_CK5(var, mean, sample, dim, weight, weisum)
3408#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3409 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_CK5
3410#endif
3411 use pm_kind, only: TKG => CK5
3412 integer(IK) , intent(in) :: dim
3413 real(TKG) , intent(in) :: weisum
3414 real(TKG) , intent(in) , contiguous :: weight(:)
3415 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3416 complex(TKG) , intent(in) , contiguous :: mean(:)
3417 real(TKG) , intent(out) , contiguous :: var(:)
3418 end subroutine
3419#endif
3420
3421#if CK4_ENABLED
3422 PURE module subroutine setVarAvgDIM_WTR_D2_CK4(var, mean, sample, dim, weight, weisum)
3423#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3424 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_CK4
3425#endif
3426 use pm_kind, only: TKG => CK4
3427 integer(IK) , intent(in) :: dim
3428 real(TKG) , intent(in) :: weisum
3429 real(TKG) , intent(in) , contiguous :: weight(:)
3430 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3431 complex(TKG) , intent(in) , contiguous :: mean(:)
3432 real(TKG) , intent(out) , contiguous :: var(:)
3433 end subroutine
3434#endif
3435
3436#if CK3_ENABLED
3437 PURE module subroutine setVarAvgDIM_WTR_D2_CK3(var, mean, sample, dim, weight, weisum)
3438#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3439 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_CK3
3440#endif
3441 use pm_kind, only: TKG => CK3
3442 integer(IK) , intent(in) :: dim
3443 real(TKG) , intent(in) :: weisum
3444 real(TKG) , intent(in) , contiguous :: weight(:)
3445 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3446 complex(TKG) , intent(in) , contiguous :: mean(:)
3447 real(TKG) , intent(out) , contiguous :: var(:)
3448 end subroutine
3449#endif
3450
3451#if CK2_ENABLED
3452 PURE module subroutine setVarAvgDIM_WTR_D2_CK2(var, mean, sample, dim, weight, weisum)
3453#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3454 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_CK2
3455#endif
3456 use pm_kind, only: TKG => CK2
3457 integer(IK) , intent(in) :: dim
3458 real(TKG) , intent(in) :: weisum
3459 real(TKG) , intent(in) , contiguous :: weight(:)
3460 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3461 complex(TKG) , intent(in) , contiguous :: mean(:)
3462 real(TKG) , intent(out) , contiguous :: var(:)
3463 end subroutine
3464#endif
3465
3466#if CK1_ENABLED
3467 PURE module subroutine setVarAvgDIM_WTR_D2_CK1(var, mean, sample, dim, weight, weisum)
3468#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3469 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_CK1
3470#endif
3471 use pm_kind, only: TKG => CK1
3472 integer(IK) , intent(in) :: dim
3473 real(TKG) , intent(in) :: weisum
3474 real(TKG) , intent(in) , contiguous :: weight(:)
3475 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3476 complex(TKG) , intent(in) , contiguous :: mean(:)
3477 real(TKG) , intent(out) , contiguous :: var(:)
3478 end subroutine
3479#endif
3480
3481 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3482
3483#if RK5_ENABLED
3484 PURE module subroutine setVarAvgDIM_WTR_D2_RK5(var, mean, sample, dim, weight, weisum)
3485#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3486 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_RK5
3487#endif
3488 use pm_kind, only: TKG => RK5
3489 integer(IK) , intent(in) :: dim
3490 real(TKG) , intent(in) :: weisum
3491 real(TKG) , intent(in) , contiguous :: weight(:)
3492 real(TKG) , intent(in) , contiguous :: sample(:,:)
3493 real(TKG) , intent(in) , contiguous :: mean(:)
3494 real(TKG) , intent(out) , contiguous :: var(:)
3495 end subroutine
3496#endif
3497
3498#if RK4_ENABLED
3499 PURE module subroutine setVarAvgDIM_WTR_D2_RK4(var, mean, sample, dim, weight, weisum)
3500#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3501 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_RK4
3502#endif
3503 use pm_kind, only: TKG => RK4
3504 integer(IK) , intent(in) :: dim
3505 real(TKG) , intent(in) :: weisum
3506 real(TKG) , intent(in) , contiguous :: weight(:)
3507 real(TKG) , intent(in) , contiguous :: sample(:,:)
3508 real(TKG) , intent(in) , contiguous :: mean(:)
3509 real(TKG) , intent(out) , contiguous :: var(:)
3510 end subroutine
3511#endif
3512
3513#if RK3_ENABLED
3514 PURE module subroutine setVarAvgDIM_WTR_D2_RK3(var, mean, sample, dim, weight, weisum)
3515#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3516 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_RK3
3517#endif
3518 use pm_kind, only: TKG => RK3
3519 integer(IK) , intent(in) :: dim
3520 real(TKG) , intent(in) :: weisum
3521 real(TKG) , intent(in) , contiguous :: weight(:)
3522 real(TKG) , intent(in) , contiguous :: sample(:,:)
3523 real(TKG) , intent(in) , contiguous :: mean(:)
3524 real(TKG) , intent(out) , contiguous :: var(:)
3525 end subroutine
3526#endif
3527
3528#if RK2_ENABLED
3529 PURE module subroutine setVarAvgDIM_WTR_D2_RK2(var, mean, sample, dim, weight, weisum)
3530#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3531 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_RK2
3532#endif
3533 use pm_kind, only: TKG => RK2
3534 integer(IK) , intent(in) :: dim
3535 real(TKG) , intent(in) :: weisum
3536 real(TKG) , intent(in) , contiguous :: weight(:)
3537 real(TKG) , intent(in) , contiguous :: sample(:,:)
3538 real(TKG) , intent(in) , contiguous :: mean(:)
3539 real(TKG) , intent(out) , contiguous :: var(:)
3540 end subroutine
3541#endif
3542
3543#if RK1_ENABLED
3544 PURE module subroutine setVarAvgDIM_WTR_D2_RK1(var, mean, sample, dim, weight, weisum)
3545#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3546 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgDIM_WTR_D2_RK1
3547#endif
3548 use pm_kind, only: TKG => RK1
3549 integer(IK) , intent(in) :: dim
3550 real(TKG) , intent(in) :: weisum
3551 real(TKG) , intent(in) , contiguous :: weight(:)
3552 real(TKG) , intent(in) , contiguous :: sample(:,:)
3553 real(TKG) , intent(in) , contiguous :: mean(:)
3554 real(TKG) , intent(out) , contiguous :: var(:)
3555 end subroutine
3556#endif
3557
3558 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3559
3560 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3561 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3562 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3563
3564 end interface setVar
3565
3566 ! OrgDIM_WNO
3567
3568 interface setVar
3569
3570 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3571 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3572 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3573
3574 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3575
3576#if CK5_ENABLED
3577 PURE module subroutine setVarOrgDIM_WNO_D1_CK5(var, sample, dim)
3578#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3579 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_CK5
3580#endif
3581 use pm_kind, only: TKG => CK5
3582 integer(IK) , intent(in) :: dim
3583 complex(TKG) , intent(in) , contiguous :: sample(:)
3584 real(TKG) , intent(out) :: var
3585 end subroutine
3586#endif
3587
3588#if CK4_ENABLED
3589 PURE module subroutine setVarOrgDIM_WNO_D1_CK4(var, sample, dim)
3590#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3591 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_CK4
3592#endif
3593 use pm_kind, only: TKG => CK4
3594 integer(IK) , intent(in) :: dim
3595 complex(TKG) , intent(in) , contiguous :: sample(:)
3596 real(TKG) , intent(out) :: var
3597 end subroutine
3598#endif
3599
3600#if CK3_ENABLED
3601 PURE module subroutine setVarOrgDIM_WNO_D1_CK3(var, sample, dim)
3602#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3603 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_CK3
3604#endif
3605 use pm_kind, only: TKG => CK3
3606 integer(IK) , intent(in) :: dim
3607 complex(TKG) , intent(in) , contiguous :: sample(:)
3608 real(TKG) , intent(out) :: var
3609 end subroutine
3610#endif
3611
3612#if CK2_ENABLED
3613 PURE module subroutine setVarOrgDIM_WNO_D1_CK2(var, sample, dim)
3614#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3615 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_CK2
3616#endif
3617 use pm_kind, only: TKG => CK2
3618 integer(IK) , intent(in) :: dim
3619 complex(TKG) , intent(in) , contiguous :: sample(:)
3620 real(TKG) , intent(out) :: var
3621 end subroutine
3622#endif
3623
3624#if CK1_ENABLED
3625 PURE module subroutine setVarOrgDIM_WNO_D1_CK1(var, sample, dim)
3626#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3627 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_CK1
3628#endif
3629 use pm_kind, only: TKG => CK1
3630 integer(IK) , intent(in) :: dim
3631 complex(TKG) , intent(in) , contiguous :: sample(:)
3632 real(TKG) , intent(out) :: var
3633 end subroutine
3634#endif
3635
3636 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3637
3638#if RK5_ENABLED
3639 PURE module subroutine setVarOrgDIM_WNO_D1_RK5(var, sample, dim)
3640#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3641 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_RK5
3642#endif
3643 use pm_kind, only: TKG => RK5
3644 integer(IK) , intent(in) :: dim
3645 real(TKG) , intent(in) , contiguous :: sample(:)
3646 real(TKG) , intent(out) :: var
3647 end subroutine
3648#endif
3649
3650#if RK4_ENABLED
3651 PURE module subroutine setVarOrgDIM_WNO_D1_RK4(var, sample, dim)
3652#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3653 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_RK4
3654#endif
3655 use pm_kind, only: TKG => RK4
3656 integer(IK) , intent(in) :: dim
3657 real(TKG) , intent(in) , contiguous :: sample(:)
3658 real(TKG) , intent(out) :: var
3659 end subroutine
3660#endif
3661
3662#if RK3_ENABLED
3663 PURE module subroutine setVarOrgDIM_WNO_D1_RK3(var, sample, dim)
3664#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3665 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_RK3
3666#endif
3667 use pm_kind, only: TKG => RK3
3668 integer(IK) , intent(in) :: dim
3669 real(TKG) , intent(in) , contiguous :: sample(:)
3670 real(TKG) , intent(out) :: var
3671 end subroutine
3672#endif
3673
3674#if RK2_ENABLED
3675 PURE module subroutine setVarOrgDIM_WNO_D1_RK2(var, sample, dim)
3676#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3677 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_RK2
3678#endif
3679 use pm_kind, only: TKG => RK2
3680 integer(IK) , intent(in) :: dim
3681 real(TKG) , intent(in) , contiguous :: sample(:)
3682 real(TKG) , intent(out) :: var
3683 end subroutine
3684#endif
3685
3686#if RK1_ENABLED
3687 PURE module subroutine setVarOrgDIM_WNO_D1_RK1(var, sample, dim)
3688#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3689 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D1_RK1
3690#endif
3691 use pm_kind, only: TKG => RK1
3692 integer(IK) , intent(in) :: dim
3693 real(TKG) , intent(in) , contiguous :: sample(:)
3694 real(TKG) , intent(out) :: var
3695 end subroutine
3696#endif
3697
3698 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3699
3700 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3701 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3702 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3703
3704 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3705
3706#if CK5_ENABLED
3707 PURE module subroutine setVarOrgDIM_WNO_D2_CK5(var, sample, dim)
3708#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3709 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_CK5
3710#endif
3711 use pm_kind, only: TKG => CK5
3712 integer(IK) , intent(in) :: dim
3713 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3714 real(TKG) , intent(out) , contiguous :: var(:)
3715 end subroutine
3716#endif
3717
3718#if CK4_ENABLED
3719 PURE module subroutine setVarOrgDIM_WNO_D2_CK4(var, sample, dim)
3720#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3721 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_CK4
3722#endif
3723 use pm_kind, only: TKG => CK4
3724 integer(IK) , intent(in) :: dim
3725 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3726 real(TKG) , intent(out) , contiguous :: var(:)
3727 end subroutine
3728#endif
3729
3730#if CK3_ENABLED
3731 PURE module subroutine setVarOrgDIM_WNO_D2_CK3(var, sample, dim)
3732#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3733 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_CK3
3734#endif
3735 use pm_kind, only: TKG => CK3
3736 integer(IK) , intent(in) :: dim
3737 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3738 real(TKG) , intent(out) , contiguous :: var(:)
3739 end subroutine
3740#endif
3741
3742#if CK2_ENABLED
3743 PURE module subroutine setVarOrgDIM_WNO_D2_CK2(var, sample, dim)
3744#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3745 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_CK2
3746#endif
3747 use pm_kind, only: TKG => CK2
3748 integer(IK) , intent(in) :: dim
3749 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3750 real(TKG) , intent(out) , contiguous :: var(:)
3751 end subroutine
3752#endif
3753
3754#if CK1_ENABLED
3755 PURE module subroutine setVarOrgDIM_WNO_D2_CK1(var, sample, dim)
3756#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3757 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_CK1
3758#endif
3759 use pm_kind, only: TKG => CK1
3760 integer(IK) , intent(in) :: dim
3761 complex(TKG) , intent(in) , contiguous :: sample(:,:)
3762 real(TKG) , intent(out) , contiguous :: var(:)
3763 end subroutine
3764#endif
3765
3766 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3767
3768#if RK5_ENABLED
3769 PURE module subroutine setVarOrgDIM_WNO_D2_RK5(var, sample, dim)
3770#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3771 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_RK5
3772#endif
3773 use pm_kind, only: TKG => RK5
3774 integer(IK) , intent(in) :: dim
3775 real(TKG) , intent(in) , contiguous :: sample(:,:)
3776 real(TKG) , intent(out) , contiguous :: var(:)
3777 end subroutine
3778#endif
3779
3780#if RK4_ENABLED
3781 PURE module subroutine setVarOrgDIM_WNO_D2_RK4(var, sample, dim)
3782#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3783 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_RK4
3784#endif
3785 use pm_kind, only: TKG => RK4
3786 integer(IK) , intent(in) :: dim
3787 real(TKG) , intent(in) , contiguous :: sample(:,:)
3788 real(TKG) , intent(out) , contiguous :: var(:)
3789 end subroutine
3790#endif
3791
3792#if RK3_ENABLED
3793 PURE module subroutine setVarOrgDIM_WNO_D2_RK3(var, sample, dim)
3794#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3795 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_RK3
3796#endif
3797 use pm_kind, only: TKG => RK3
3798 integer(IK) , intent(in) :: dim
3799 real(TKG) , intent(in) , contiguous :: sample(:,:)
3800 real(TKG) , intent(out) , contiguous :: var(:)
3801 end subroutine
3802#endif
3803
3804#if RK2_ENABLED
3805 PURE module subroutine setVarOrgDIM_WNO_D2_RK2(var, sample, dim)
3806#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3807 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_RK2
3808#endif
3809 use pm_kind, only: TKG => RK2
3810 integer(IK) , intent(in) :: dim
3811 real(TKG) , intent(in) , contiguous :: sample(:,:)
3812 real(TKG) , intent(out) , contiguous :: var(:)
3813 end subroutine
3814#endif
3815
3816#if RK1_ENABLED
3817 PURE module subroutine setVarOrgDIM_WNO_D2_RK1(var, sample, dim)
3818#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3819 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WNO_D2_RK1
3820#endif
3821 use pm_kind, only: TKG => RK1
3822 integer(IK) , intent(in) :: dim
3823 real(TKG) , intent(in) , contiguous :: sample(:,:)
3824 real(TKG) , intent(out) , contiguous :: var(:)
3825 end subroutine
3826#endif
3827
3828 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3829
3830 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3831 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3832 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3833
3834 end interface setVar
3835
3836 ! OrgDIM_WTI
3837
3838 interface setVar
3839
3840 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3841 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3842 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3843
3844 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3845
3846#if CK5_ENABLED
3847 PURE module subroutine setVarOrgDIM_WTI_D1_CK5(var, sample, dim, weight, weisum)
3848#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3849 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_CK5
3850#endif
3851 use pm_kind, only: TKG => CK5
3852 integer(IK) , intent(in) :: dim
3853 integer(IK) , intent(in) :: weisum
3854 integer(IK) , intent(in) , contiguous :: weight(:)
3855 complex(TKG) , intent(in) , contiguous :: sample(:)
3856 real(TKG) , intent(out) :: var
3857 end subroutine
3858#endif
3859
3860#if CK4_ENABLED
3861 PURE module subroutine setVarOrgDIM_WTI_D1_CK4(var, sample, dim, weight, weisum)
3862#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3863 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_CK4
3864#endif
3865 use pm_kind, only: TKG => CK4
3866 integer(IK) , intent(in) :: dim
3867 integer(IK) , intent(in) :: weisum
3868 integer(IK) , intent(in) , contiguous :: weight(:)
3869 complex(TKG) , intent(in) , contiguous :: sample(:)
3870 real(TKG) , intent(out) :: var
3871 end subroutine
3872#endif
3873
3874#if CK3_ENABLED
3875 PURE module subroutine setVarOrgDIM_WTI_D1_CK3(var, sample, dim, weight, weisum)
3876#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3877 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_CK3
3878#endif
3879 use pm_kind, only: TKG => CK3
3880 integer(IK) , intent(in) :: dim
3881 integer(IK) , intent(in) :: weisum
3882 integer(IK) , intent(in) , contiguous :: weight(:)
3883 complex(TKG) , intent(in) , contiguous :: sample(:)
3884 real(TKG) , intent(out) :: var
3885 end subroutine
3886#endif
3887
3888#if CK2_ENABLED
3889 PURE module subroutine setVarOrgDIM_WTI_D1_CK2(var, sample, dim, weight, weisum)
3890#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3891 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_CK2
3892#endif
3893 use pm_kind, only: TKG => CK2
3894 integer(IK) , intent(in) :: dim
3895 integer(IK) , intent(in) :: weisum
3896 integer(IK) , intent(in) , contiguous :: weight(:)
3897 complex(TKG) , intent(in) , contiguous :: sample(:)
3898 real(TKG) , intent(out) :: var
3899 end subroutine
3900#endif
3901
3902#if CK1_ENABLED
3903 PURE module subroutine setVarOrgDIM_WTI_D1_CK1(var, sample, dim, weight, weisum)
3904#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3905 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_CK1
3906#endif
3907 use pm_kind, only: TKG => CK1
3908 integer(IK) , intent(in) :: dim
3909 integer(IK) , intent(in) :: weisum
3910 integer(IK) , intent(in) , contiguous :: weight(:)
3911 complex(TKG) , intent(in) , contiguous :: sample(:)
3912 real(TKG) , intent(out) :: var
3913 end subroutine
3914#endif
3915
3916 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3917
3918#if RK5_ENABLED
3919 PURE module subroutine setVarOrgDIM_WTI_D1_RK5(var, sample, dim, weight, weisum)
3920#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3921 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_RK5
3922#endif
3923 use pm_kind, only: TKG => RK5
3924 integer(IK) , intent(in) :: dim
3925 integer(IK) , intent(in) :: weisum
3926 integer(IK) , intent(in) , contiguous :: weight(:)
3927 real(TKG) , intent(in) , contiguous :: sample(:)
3928 real(TKG) , intent(out) :: var
3929 end subroutine
3930#endif
3931
3932#if RK4_ENABLED
3933 PURE module subroutine setVarOrgDIM_WTI_D1_RK4(var, sample, dim, weight, weisum)
3934#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3935 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_RK4
3936#endif
3937 use pm_kind, only: TKG => RK4
3938 integer(IK) , intent(in) :: dim
3939 integer(IK) , intent(in) :: weisum
3940 integer(IK) , intent(in) , contiguous :: weight(:)
3941 real(TKG) , intent(in) , contiguous :: sample(:)
3942 real(TKG) , intent(out) :: var
3943 end subroutine
3944#endif
3945
3946#if RK3_ENABLED
3947 PURE module subroutine setVarOrgDIM_WTI_D1_RK3(var, sample, dim, weight, weisum)
3948#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3949 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_RK3
3950#endif
3951 use pm_kind, only: TKG => RK3
3952 integer(IK) , intent(in) :: dim
3953 integer(IK) , intent(in) :: weisum
3954 integer(IK) , intent(in) , contiguous :: weight(:)
3955 real(TKG) , intent(in) , contiguous :: sample(:)
3956 real(TKG) , intent(out) :: var
3957 end subroutine
3958#endif
3959
3960#if RK2_ENABLED
3961 PURE module subroutine setVarOrgDIM_WTI_D1_RK2(var, sample, dim, weight, weisum)
3962#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3963 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_RK2
3964#endif
3965 use pm_kind, only: TKG => RK2
3966 integer(IK) , intent(in) :: dim
3967 integer(IK) , intent(in) :: weisum
3968 integer(IK) , intent(in) , contiguous :: weight(:)
3969 real(TKG) , intent(in) , contiguous :: sample(:)
3970 real(TKG) , intent(out) :: var
3971 end subroutine
3972#endif
3973
3974#if RK1_ENABLED
3975 PURE module subroutine setVarOrgDIM_WTI_D1_RK1(var, sample, dim, weight, weisum)
3976#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3977 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D1_RK1
3978#endif
3979 use pm_kind, only: TKG => RK1
3980 integer(IK) , intent(in) :: dim
3981 integer(IK) , intent(in) :: weisum
3982 integer(IK) , intent(in) , contiguous :: weight(:)
3983 real(TKG) , intent(in) , contiguous :: sample(:)
3984 real(TKG) , intent(out) :: var
3985 end subroutine
3986#endif
3987
3988 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3989
3990 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3991 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3992 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3993
3994 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3995
3996#if CK5_ENABLED
3997 PURE module subroutine setVarOrgDIM_WTI_D2_CK5(var, sample, dim, weight, weisum)
3998#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3999 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_CK5
4000#endif
4001 use pm_kind, only: TKG => CK5
4002 integer(IK) , intent(in) :: dim
4003 integer(IK) , intent(in) :: weisum
4004 integer(IK) , intent(in) , contiguous :: weight(:)
4005 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4006 real(TKG) , intent(out) , contiguous :: var(:)
4007 end subroutine
4008#endif
4009
4010#if CK4_ENABLED
4011 PURE module subroutine setVarOrgDIM_WTI_D2_CK4(var, sample, dim, weight, weisum)
4012#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4013 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_CK4
4014#endif
4015 use pm_kind, only: TKG => CK4
4016 integer(IK) , intent(in) :: dim
4017 integer(IK) , intent(in) :: weisum
4018 integer(IK) , intent(in) , contiguous :: weight(:)
4019 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4020 real(TKG) , intent(out) , contiguous :: var(:)
4021 end subroutine
4022#endif
4023
4024#if CK3_ENABLED
4025 PURE module subroutine setVarOrgDIM_WTI_D2_CK3(var, sample, dim, weight, weisum)
4026#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4027 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_CK3
4028#endif
4029 use pm_kind, only: TKG => CK3
4030 integer(IK) , intent(in) :: dim
4031 integer(IK) , intent(in) :: weisum
4032 integer(IK) , intent(in) , contiguous :: weight(:)
4033 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4034 real(TKG) , intent(out) , contiguous :: var(:)
4035 end subroutine
4036#endif
4037
4038#if CK2_ENABLED
4039 PURE module subroutine setVarOrgDIM_WTI_D2_CK2(var, sample, dim, weight, weisum)
4040#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4041 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_CK2
4042#endif
4043 use pm_kind, only: TKG => CK2
4044 integer(IK) , intent(in) :: dim
4045 integer(IK) , intent(in) :: weisum
4046 integer(IK) , intent(in) , contiguous :: weight(:)
4047 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4048 real(TKG) , intent(out) , contiguous :: var(:)
4049 end subroutine
4050#endif
4051
4052#if CK1_ENABLED
4053 PURE module subroutine setVarOrgDIM_WTI_D2_CK1(var, sample, dim, weight, weisum)
4054#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4055 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_CK1
4056#endif
4057 use pm_kind, only: TKG => CK1
4058 integer(IK) , intent(in) :: dim
4059 integer(IK) , intent(in) :: weisum
4060 integer(IK) , intent(in) , contiguous :: weight(:)
4061 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4062 real(TKG) , intent(out) , contiguous :: var(:)
4063 end subroutine
4064#endif
4065
4066 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4067
4068#if RK5_ENABLED
4069 PURE module subroutine setVarOrgDIM_WTI_D2_RK5(var, sample, dim, weight, weisum)
4070#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4071 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_RK5
4072#endif
4073 use pm_kind, only: TKG => RK5
4074 integer(IK) , intent(in) :: dim
4075 integer(IK) , intent(in) :: weisum
4076 integer(IK) , intent(in) , contiguous :: weight(:)
4077 real(TKG) , intent(in) , contiguous :: sample(:,:)
4078 real(TKG) , intent(out) , contiguous :: var(:)
4079 end subroutine
4080#endif
4081
4082#if RK4_ENABLED
4083 PURE module subroutine setVarOrgDIM_WTI_D2_RK4(var, sample, dim, weight, weisum)
4084#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4085 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_RK4
4086#endif
4087 use pm_kind, only: TKG => RK4
4088 integer(IK) , intent(in) :: dim
4089 integer(IK) , intent(in) :: weisum
4090 integer(IK) , intent(in) , contiguous :: weight(:)
4091 real(TKG) , intent(in) , contiguous :: sample(:,:)
4092 real(TKG) , intent(out) , contiguous :: var(:)
4093 end subroutine
4094#endif
4095
4096#if RK3_ENABLED
4097 PURE module subroutine setVarOrgDIM_WTI_D2_RK3(var, sample, dim, weight, weisum)
4098#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4099 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_RK3
4100#endif
4101 use pm_kind, only: TKG => RK3
4102 integer(IK) , intent(in) :: dim
4103 integer(IK) , intent(in) :: weisum
4104 integer(IK) , intent(in) , contiguous :: weight(:)
4105 real(TKG) , intent(in) , contiguous :: sample(:,:)
4106 real(TKG) , intent(out) , contiguous :: var(:)
4107 end subroutine
4108#endif
4109
4110#if RK2_ENABLED
4111 PURE module subroutine setVarOrgDIM_WTI_D2_RK2(var, sample, dim, weight, weisum)
4112#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4113 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_RK2
4114#endif
4115 use pm_kind, only: TKG => RK2
4116 integer(IK) , intent(in) :: dim
4117 integer(IK) , intent(in) :: weisum
4118 integer(IK) , intent(in) , contiguous :: weight(:)
4119 real(TKG) , intent(in) , contiguous :: sample(:,:)
4120 real(TKG) , intent(out) , contiguous :: var(:)
4121 end subroutine
4122#endif
4123
4124#if RK1_ENABLED
4125 PURE module subroutine setVarOrgDIM_WTI_D2_RK1(var, sample, dim, weight, weisum)
4126#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4127 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTI_D2_RK1
4128#endif
4129 use pm_kind, only: TKG => RK1
4130 integer(IK) , intent(in) :: dim
4131 integer(IK) , intent(in) :: weisum
4132 integer(IK) , intent(in) , contiguous :: weight(:)
4133 real(TKG) , intent(in) , contiguous :: sample(:,:)
4134 real(TKG) , intent(out) , contiguous :: var(:)
4135 end subroutine
4136#endif
4137
4138 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4139
4140 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4141 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4142 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4143
4144 end interface setVar
4145
4146 ! OrgDIM_WTR
4147
4148 interface setVar
4149
4150 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4151 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4152 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4153
4154 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4155
4156#if CK5_ENABLED
4157 PURE module subroutine setVarOrgDIM_WTR_D1_CK5(var, sample, dim, weight, weisum)
4158#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4159 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_CK5
4160#endif
4161 use pm_kind, only: TKG => CK5
4162 integer(IK) , intent(in) :: dim
4163 real(TKG) , intent(in) :: weisum
4164 real(TKG) , intent(in) , contiguous :: weight(:)
4165 complex(TKG) , intent(in) , contiguous :: sample(:)
4166 real(TKG) , intent(out) :: var
4167 end subroutine
4168#endif
4169
4170#if CK4_ENABLED
4171 PURE module subroutine setVarOrgDIM_WTR_D1_CK4(var, sample, dim, weight, weisum)
4172#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4173 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_CK4
4174#endif
4175 use pm_kind, only: TKG => CK4
4176 integer(IK) , intent(in) :: dim
4177 real(TKG) , intent(in) :: weisum
4178 real(TKG) , intent(in) , contiguous :: weight(:)
4179 complex(TKG) , intent(in) , contiguous :: sample(:)
4180 real(TKG) , intent(out) :: var
4181 end subroutine
4182#endif
4183
4184#if CK3_ENABLED
4185 PURE module subroutine setVarOrgDIM_WTR_D1_CK3(var, sample, dim, weight, weisum)
4186#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4187 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_CK3
4188#endif
4189 use pm_kind, only: TKG => CK3
4190 integer(IK) , intent(in) :: dim
4191 real(TKG) , intent(in) :: weisum
4192 real(TKG) , intent(in) , contiguous :: weight(:)
4193 complex(TKG) , intent(in) , contiguous :: sample(:)
4194 real(TKG) , intent(out) :: var
4195 end subroutine
4196#endif
4197
4198#if CK2_ENABLED
4199 PURE module subroutine setVarOrgDIM_WTR_D1_CK2(var, sample, dim, weight, weisum)
4200#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4201 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_CK2
4202#endif
4203 use pm_kind, only: TKG => CK2
4204 integer(IK) , intent(in) :: dim
4205 real(TKG) , intent(in) :: weisum
4206 real(TKG) , intent(in) , contiguous :: weight(:)
4207 complex(TKG) , intent(in) , contiguous :: sample(:)
4208 real(TKG) , intent(out) :: var
4209 end subroutine
4210#endif
4211
4212#if CK1_ENABLED
4213 PURE module subroutine setVarOrgDIM_WTR_D1_CK1(var, sample, dim, weight, weisum)
4214#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4215 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_CK1
4216#endif
4217 use pm_kind, only: TKG => CK1
4218 integer(IK) , intent(in) :: dim
4219 real(TKG) , intent(in) :: weisum
4220 real(TKG) , intent(in) , contiguous :: weight(:)
4221 complex(TKG) , intent(in) , contiguous :: sample(:)
4222 real(TKG) , intent(out) :: var
4223 end subroutine
4224#endif
4225
4226 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4227
4228#if RK5_ENABLED
4229 PURE module subroutine setVarOrgDIM_WTR_D1_RK5(var, sample, dim, weight, weisum)
4230#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4231 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_RK5
4232#endif
4233 use pm_kind, only: TKG => RK5
4234 integer(IK) , intent(in) :: dim
4235 real(TKG) , intent(in) :: weisum
4236 real(TKG) , intent(in) , contiguous :: weight(:)
4237 real(TKG) , intent(in) , contiguous :: sample(:)
4238 real(TKG) , intent(out) :: var
4239 end subroutine
4240#endif
4241
4242#if RK4_ENABLED
4243 PURE module subroutine setVarOrgDIM_WTR_D1_RK4(var, sample, dim, weight, weisum)
4244#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4245 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_RK4
4246#endif
4247 use pm_kind, only: TKG => RK4
4248 integer(IK) , intent(in) :: dim
4249 real(TKG) , intent(in) :: weisum
4250 real(TKG) , intent(in) , contiguous :: weight(:)
4251 real(TKG) , intent(in) , contiguous :: sample(:)
4252 real(TKG) , intent(out) :: var
4253 end subroutine
4254#endif
4255
4256#if RK3_ENABLED
4257 PURE module subroutine setVarOrgDIM_WTR_D1_RK3(var, sample, dim, weight, weisum)
4258#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4259 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_RK3
4260#endif
4261 use pm_kind, only: TKG => RK3
4262 integer(IK) , intent(in) :: dim
4263 real(TKG) , intent(in) :: weisum
4264 real(TKG) , intent(in) , contiguous :: weight(:)
4265 real(TKG) , intent(in) , contiguous :: sample(:)
4266 real(TKG) , intent(out) :: var
4267 end subroutine
4268#endif
4269
4270#if RK2_ENABLED
4271 PURE module subroutine setVarOrgDIM_WTR_D1_RK2(var, sample, dim, weight, weisum)
4272#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4273 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_RK2
4274#endif
4275 use pm_kind, only: TKG => RK2
4276 integer(IK) , intent(in) :: dim
4277 real(TKG) , intent(in) :: weisum
4278 real(TKG) , intent(in) , contiguous :: weight(:)
4279 real(TKG) , intent(in) , contiguous :: sample(:)
4280 real(TKG) , intent(out) :: var
4281 end subroutine
4282#endif
4283
4284#if RK1_ENABLED
4285 PURE module subroutine setVarOrgDIM_WTR_D1_RK1(var, sample, dim, weight, weisum)
4286#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4287 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D1_RK1
4288#endif
4289 use pm_kind, only: TKG => RK1
4290 integer(IK) , intent(in) :: dim
4291 real(TKG) , intent(in) :: weisum
4292 real(TKG) , intent(in) , contiguous :: weight(:)
4293 real(TKG) , intent(in) , contiguous :: sample(:)
4294 real(TKG) , intent(out) :: var
4295 end subroutine
4296#endif
4297
4298 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4299
4300 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4301 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4302 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4303
4304 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4305
4306#if CK5_ENABLED
4307 PURE module subroutine setVarOrgDIM_WTR_D2_CK5(var, sample, dim, weight, weisum)
4308#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4309 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_CK5
4310#endif
4311 use pm_kind, only: TKG => CK5
4312 integer(IK) , intent(in) :: dim
4313 real(TKG) , intent(in) :: weisum
4314 real(TKG) , intent(in) , contiguous :: weight(:)
4315 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4316 real(TKG) , intent(out) , contiguous :: var(:)
4317 end subroutine
4318#endif
4319
4320#if CK4_ENABLED
4321 PURE module subroutine setVarOrgDIM_WTR_D2_CK4(var, sample, dim, weight, weisum)
4322#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4323 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_CK4
4324#endif
4325 use pm_kind, only: TKG => CK4
4326 integer(IK) , intent(in) :: dim
4327 real(TKG) , intent(in) :: weisum
4328 real(TKG) , intent(in) , contiguous :: weight(:)
4329 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4330 real(TKG) , intent(out) , contiguous :: var(:)
4331 end subroutine
4332#endif
4333
4334#if CK3_ENABLED
4335 PURE module subroutine setVarOrgDIM_WTR_D2_CK3(var, sample, dim, weight, weisum)
4336#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4337 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_CK3
4338#endif
4339 use pm_kind, only: TKG => CK3
4340 integer(IK) , intent(in) :: dim
4341 real(TKG) , intent(in) :: weisum
4342 real(TKG) , intent(in) , contiguous :: weight(:)
4343 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4344 real(TKG) , intent(out) , contiguous :: var(:)
4345 end subroutine
4346#endif
4347
4348#if CK2_ENABLED
4349 PURE module subroutine setVarOrgDIM_WTR_D2_CK2(var, sample, dim, weight, weisum)
4350#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4351 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_CK2
4352#endif
4353 use pm_kind, only: TKG => CK2
4354 integer(IK) , intent(in) :: dim
4355 real(TKG) , intent(in) :: weisum
4356 real(TKG) , intent(in) , contiguous :: weight(:)
4357 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4358 real(TKG) , intent(out) , contiguous :: var(:)
4359 end subroutine
4360#endif
4361
4362#if CK1_ENABLED
4363 PURE module subroutine setVarOrgDIM_WTR_D2_CK1(var, sample, dim, weight, weisum)
4364#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4365 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_CK1
4366#endif
4367 use pm_kind, only: TKG => CK1
4368 integer(IK) , intent(in) :: dim
4369 real(TKG) , intent(in) :: weisum
4370 real(TKG) , intent(in) , contiguous :: weight(:)
4371 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4372 real(TKG) , intent(out) , contiguous :: var(:)
4373 end subroutine
4374#endif
4375
4376 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4377
4378#if RK5_ENABLED
4379 PURE module subroutine setVarOrgDIM_WTR_D2_RK5(var, sample, dim, weight, weisum)
4380#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4381 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_RK5
4382#endif
4383 use pm_kind, only: TKG => RK5
4384 integer(IK) , intent(in) :: dim
4385 real(TKG) , intent(in) :: weisum
4386 real(TKG) , intent(in) , contiguous :: weight(:)
4387 real(TKG) , intent(in) , contiguous :: sample(:,:)
4388 real(TKG) , intent(out) , contiguous :: var(:)
4389 end subroutine
4390#endif
4391
4392#if RK4_ENABLED
4393 PURE module subroutine setVarOrgDIM_WTR_D2_RK4(var, sample, dim, weight, weisum)
4394#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4395 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_RK4
4396#endif
4397 use pm_kind, only: TKG => RK4
4398 integer(IK) , intent(in) :: dim
4399 real(TKG) , intent(in) :: weisum
4400 real(TKG) , intent(in) , contiguous :: weight(:)
4401 real(TKG) , intent(in) , contiguous :: sample(:,:)
4402 real(TKG) , intent(out) , contiguous :: var(:)
4403 end subroutine
4404#endif
4405
4406#if RK3_ENABLED
4407 PURE module subroutine setVarOrgDIM_WTR_D2_RK3(var, sample, dim, weight, weisum)
4408#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4409 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_RK3
4410#endif
4411 use pm_kind, only: TKG => RK3
4412 integer(IK) , intent(in) :: dim
4413 real(TKG) , intent(in) :: weisum
4414 real(TKG) , intent(in) , contiguous :: weight(:)
4415 real(TKG) , intent(in) , contiguous :: sample(:,:)
4416 real(TKG) , intent(out) , contiguous :: var(:)
4417 end subroutine
4418#endif
4419
4420#if RK2_ENABLED
4421 PURE module subroutine setVarOrgDIM_WTR_D2_RK2(var, sample, dim, weight, weisum)
4422#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4423 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_RK2
4424#endif
4425 use pm_kind, only: TKG => RK2
4426 integer(IK) , intent(in) :: dim
4427 real(TKG) , intent(in) :: weisum
4428 real(TKG) , intent(in) , contiguous :: weight(:)
4429 real(TKG) , intent(in) , contiguous :: sample(:,:)
4430 real(TKG) , intent(out) , contiguous :: var(:)
4431 end subroutine
4432#endif
4433
4434#if RK1_ENABLED
4435 PURE module subroutine setVarOrgDIM_WTR_D2_RK1(var, sample, dim, weight, weisum)
4436#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4437 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgDIM_WTR_D2_RK1
4438#endif
4439 use pm_kind, only: TKG => RK1
4440 integer(IK) , intent(in) :: dim
4441 real(TKG) , intent(in) :: weisum
4442 real(TKG) , intent(in) , contiguous :: weight(:)
4443 real(TKG) , intent(in) , contiguous :: sample(:,:)
4444 real(TKG) , intent(out) , contiguous :: var(:)
4445 end subroutine
4446#endif
4447
4448 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4449
4450 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4451 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4452 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4453
4454 end interface setVar
4455
4456 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4457
4458 ! AvgALL_WNO
4459
4460 interface setVar
4461
4462 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4463 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4464 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4465
4466 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4467
4468#if CK5_ENABLED
4469 PURE module subroutine setVarAvgALL_WNO_D1_CK5(var, mean, sample)
4470#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4471 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_CK5
4472#endif
4473 use pm_kind, only: TKG => CK5
4474 complex(TKG) , intent(in) , contiguous :: sample(:)
4475 complex(TKG) , intent(in) :: mean
4476 real(TKG) , intent(out) :: var
4477 end subroutine
4478#endif
4479
4480#if CK4_ENABLED
4481 PURE module subroutine setVarAvgALL_WNO_D1_CK4(var, mean, sample)
4482#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4483 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_CK4
4484#endif
4485 use pm_kind, only: TKG => CK4
4486 complex(TKG) , intent(in) , contiguous :: sample(:)
4487 complex(TKG) , intent(in) :: mean
4488 real(TKG) , intent(out) :: var
4489 end subroutine
4490#endif
4491
4492#if CK3_ENABLED
4493 PURE module subroutine setVarAvgALL_WNO_D1_CK3(var, mean, sample)
4494#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4495 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_CK3
4496#endif
4497 use pm_kind, only: TKG => CK3
4498 complex(TKG) , intent(in) , contiguous :: sample(:)
4499 complex(TKG) , intent(in) :: mean
4500 real(TKG) , intent(out) :: var
4501 end subroutine
4502#endif
4503
4504#if CK2_ENABLED
4505 PURE module subroutine setVarAvgALL_WNO_D1_CK2(var, mean, sample)
4506#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4507 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_CK2
4508#endif
4509 use pm_kind, only: TKG => CK2
4510 complex(TKG) , intent(in) , contiguous :: sample(:)
4511 complex(TKG) , intent(in) :: mean
4512 real(TKG) , intent(out) :: var
4513 end subroutine
4514#endif
4515
4516#if CK1_ENABLED
4517 PURE module subroutine setVarAvgALL_WNO_D1_CK1(var, mean, sample)
4518#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4519 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_CK1
4520#endif
4521 use pm_kind, only: TKG => CK1
4522 complex(TKG) , intent(in) , contiguous :: sample(:)
4523 complex(TKG) , intent(in) :: mean
4524 real(TKG) , intent(out) :: var
4525 end subroutine
4526#endif
4527
4528 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4529
4530#if RK5_ENABLED
4531 PURE module subroutine setVarAvgALL_WNO_D1_RK5(var, mean, sample)
4532#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4533 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_RK5
4534#endif
4535 use pm_kind, only: TKG => RK5
4536 real(TKG) , intent(in) , contiguous :: sample(:)
4537 real(TKG) , intent(in) :: mean
4538 real(TKG) , intent(out) :: var
4539 end subroutine
4540#endif
4541
4542#if RK4_ENABLED
4543 PURE module subroutine setVarAvgALL_WNO_D1_RK4(var, mean, sample)
4544#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4545 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_RK4
4546#endif
4547 use pm_kind, only: TKG => RK4
4548 real(TKG) , intent(in) , contiguous :: sample(:)
4549 real(TKG) , intent(in) :: mean
4550 real(TKG) , intent(out) :: var
4551 end subroutine
4552#endif
4553
4554#if RK3_ENABLED
4555 PURE module subroutine setVarAvgALL_WNO_D1_RK3(var, mean, sample)
4556#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4557 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_RK3
4558#endif
4559 use pm_kind, only: TKG => RK3
4560 real(TKG) , intent(in) , contiguous :: sample(:)
4561 real(TKG) , intent(in) :: mean
4562 real(TKG) , intent(out) :: var
4563 end subroutine
4564#endif
4565
4566#if RK2_ENABLED
4567 PURE module subroutine setVarAvgALL_WNO_D1_RK2(var, mean, sample)
4568#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4569 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_RK2
4570#endif
4571 use pm_kind, only: TKG => RK2
4572 real(TKG) , intent(in) , contiguous :: sample(:)
4573 real(TKG) , intent(in) :: mean
4574 real(TKG) , intent(out) :: var
4575 end subroutine
4576#endif
4577
4578#if RK1_ENABLED
4579 PURE module subroutine setVarAvgALL_WNO_D1_RK1(var, mean, sample)
4580#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4581 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D1_RK1
4582#endif
4583 use pm_kind, only: TKG => RK1
4584 real(TKG) , intent(in) , contiguous :: sample(:)
4585 real(TKG) , intent(in) :: mean
4586 real(TKG) , intent(out) :: var
4587 end subroutine
4588#endif
4589
4590 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4591
4592 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4593 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4594 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4595
4596 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4597
4598#if CK5_ENABLED
4599 PURE module subroutine setVarAvgALL_WNO_D2_CK5(var, mean, sample)
4600#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4601 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_CK5
4602#endif
4603 use pm_kind, only: TKG => CK5
4604 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4605 complex(TKG) , intent(in) :: mean
4606 real(TKG) , intent(out) :: var
4607 end subroutine
4608#endif
4609
4610#if CK4_ENABLED
4611 PURE module subroutine setVarAvgALL_WNO_D2_CK4(var, mean, sample)
4612#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4613 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_CK4
4614#endif
4615 use pm_kind, only: TKG => CK4
4616 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4617 complex(TKG) , intent(in) :: mean
4618 real(TKG) , intent(out) :: var
4619 end subroutine
4620#endif
4621
4622#if CK3_ENABLED
4623 PURE module subroutine setVarAvgALL_WNO_D2_CK3(var, mean, sample)
4624#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4625 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_CK3
4626#endif
4627 use pm_kind, only: TKG => CK3
4628 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4629 complex(TKG) , intent(in) :: mean
4630 real(TKG) , intent(out) :: var
4631 end subroutine
4632#endif
4633
4634#if CK2_ENABLED
4635 PURE module subroutine setVarAvgALL_WNO_D2_CK2(var, mean, sample)
4636#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4637 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_CK2
4638#endif
4639 use pm_kind, only: TKG => CK2
4640 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4641 complex(TKG) , intent(in) :: mean
4642 real(TKG) , intent(out) :: var
4643 end subroutine
4644#endif
4645
4646#if CK1_ENABLED
4647 PURE module subroutine setVarAvgALL_WNO_D2_CK1(var, mean, sample)
4648#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4649 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_CK1
4650#endif
4651 use pm_kind, only: TKG => CK1
4652 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4653 complex(TKG) , intent(in) :: mean
4654 real(TKG) , intent(out) :: var
4655 end subroutine
4656#endif
4657
4658 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4659
4660#if RK5_ENABLED
4661 PURE module subroutine setVarAvgALL_WNO_D2_RK5(var, mean, sample)
4662#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4663 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_RK5
4664#endif
4665 use pm_kind, only: TKG => RK5
4666 real(TKG) , intent(in) , contiguous :: sample(:,:)
4667 real(TKG) , intent(in) :: mean
4668 real(TKG) , intent(out) :: var
4669 end subroutine
4670#endif
4671
4672#if RK4_ENABLED
4673 PURE module subroutine setVarAvgALL_WNO_D2_RK4(var, mean, sample)
4674#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4675 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_RK4
4676#endif
4677 use pm_kind, only: TKG => RK4
4678 real(TKG) , intent(in) , contiguous :: sample(:,:)
4679 real(TKG) , intent(in) :: mean
4680 real(TKG) , intent(out) :: var
4681 end subroutine
4682#endif
4683
4684#if RK3_ENABLED
4685 PURE module subroutine setVarAvgALL_WNO_D2_RK3(var, mean, sample)
4686#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4687 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_RK3
4688#endif
4689 use pm_kind, only: TKG => RK3
4690 real(TKG) , intent(in) , contiguous :: sample(:,:)
4691 real(TKG) , intent(in) :: mean
4692 real(TKG) , intent(out) :: var
4693 end subroutine
4694#endif
4695
4696#if RK2_ENABLED
4697 PURE module subroutine setVarAvgALL_WNO_D2_RK2(var, mean, sample)
4698#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4699 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_RK2
4700#endif
4701 use pm_kind, only: TKG => RK2
4702 real(TKG) , intent(in) , contiguous :: sample(:,:)
4703 real(TKG) , intent(in) :: mean
4704 real(TKG) , intent(out) :: var
4705 end subroutine
4706#endif
4707
4708#if RK1_ENABLED
4709 PURE module subroutine setVarAvgALL_WNO_D2_RK1(var, mean, sample)
4710#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4711 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WNO_D2_RK1
4712#endif
4713 use pm_kind, only: TKG => RK1
4714 real(TKG) , intent(in) , contiguous :: sample(:,:)
4715 real(TKG) , intent(in) :: mean
4716 real(TKG) , intent(out) :: var
4717 end subroutine
4718#endif
4719
4720 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4721
4722 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4723 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4724 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4725
4726 end interface setVar
4727
4728 ! AvgALL_WTI
4729
4730 interface setVar
4731
4732 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4733 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4734 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4735
4736 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4737
4738#if CK5_ENABLED
4739 PURE module subroutine setVarAvgALL_WTI_D1_CK5(var, mean, sample, weight, weisum)
4740#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4741 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_CK5
4742#endif
4743 use pm_kind, only: TKG => CK5
4744 integer(IK) , intent(in) :: weisum
4745 integer(IK) , intent(in) , contiguous :: weight(:)
4746 complex(TKG) , intent(in) , contiguous :: sample(:)
4747 complex(TKG) , intent(in) :: mean
4748 real(TKG) , intent(out) :: var
4749 end subroutine
4750#endif
4751
4752#if CK4_ENABLED
4753 PURE module subroutine setVarAvgALL_WTI_D1_CK4(var, mean, sample, weight, weisum)
4754#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4755 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_CK4
4756#endif
4757 use pm_kind, only: TKG => CK4
4758 integer(IK) , intent(in) :: weisum
4759 integer(IK) , intent(in) , contiguous :: weight(:)
4760 complex(TKG) , intent(in) , contiguous :: sample(:)
4761 complex(TKG) , intent(in) :: mean
4762 real(TKG) , intent(out) :: var
4763 end subroutine
4764#endif
4765
4766#if CK3_ENABLED
4767 PURE module subroutine setVarAvgALL_WTI_D1_CK3(var, mean, sample, weight, weisum)
4768#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4769 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_CK3
4770#endif
4771 use pm_kind, only: TKG => CK3
4772 integer(IK) , intent(in) :: weisum
4773 integer(IK) , intent(in) , contiguous :: weight(:)
4774 complex(TKG) , intent(in) , contiguous :: sample(:)
4775 complex(TKG) , intent(in) :: mean
4776 real(TKG) , intent(out) :: var
4777 end subroutine
4778#endif
4779
4780#if CK2_ENABLED
4781 PURE module subroutine setVarAvgALL_WTI_D1_CK2(var, mean, sample, weight, weisum)
4782#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4783 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_CK2
4784#endif
4785 use pm_kind, only: TKG => CK2
4786 integer(IK) , intent(in) :: weisum
4787 integer(IK) , intent(in) , contiguous :: weight(:)
4788 complex(TKG) , intent(in) , contiguous :: sample(:)
4789 complex(TKG) , intent(in) :: mean
4790 real(TKG) , intent(out) :: var
4791 end subroutine
4792#endif
4793
4794#if CK1_ENABLED
4795 PURE module subroutine setVarAvgALL_WTI_D1_CK1(var, mean, sample, weight, weisum)
4796#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4797 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_CK1
4798#endif
4799 use pm_kind, only: TKG => CK1
4800 integer(IK) , intent(in) :: weisum
4801 integer(IK) , intent(in) , contiguous :: weight(:)
4802 complex(TKG) , intent(in) , contiguous :: sample(:)
4803 complex(TKG) , intent(in) :: mean
4804 real(TKG) , intent(out) :: var
4805 end subroutine
4806#endif
4807
4808 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4809
4810#if RK5_ENABLED
4811 PURE module subroutine setVarAvgALL_WTI_D1_RK5(var, mean, sample, weight, weisum)
4812#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4813 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_RK5
4814#endif
4815 use pm_kind, only: TKG => RK5
4816 integer(IK) , intent(in) :: weisum
4817 integer(IK) , intent(in) , contiguous :: weight(:)
4818 real(TKG) , intent(in) , contiguous :: sample(:)
4819 real(TKG) , intent(in) :: mean
4820 real(TKG) , intent(out) :: var
4821 end subroutine
4822#endif
4823
4824#if RK4_ENABLED
4825 PURE module subroutine setVarAvgALL_WTI_D1_RK4(var, mean, sample, weight, weisum)
4826#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4827 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_RK4
4828#endif
4829 use pm_kind, only: TKG => RK4
4830 integer(IK) , intent(in) :: weisum
4831 integer(IK) , intent(in) , contiguous :: weight(:)
4832 real(TKG) , intent(in) , contiguous :: sample(:)
4833 real(TKG) , intent(in) :: mean
4834 real(TKG) , intent(out) :: var
4835 end subroutine
4836#endif
4837
4838#if RK3_ENABLED
4839 PURE module subroutine setVarAvgALL_WTI_D1_RK3(var, mean, sample, weight, weisum)
4840#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4841 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_RK3
4842#endif
4843 use pm_kind, only: TKG => RK3
4844 integer(IK) , intent(in) :: weisum
4845 integer(IK) , intent(in) , contiguous :: weight(:)
4846 real(TKG) , intent(in) , contiguous :: sample(:)
4847 real(TKG) , intent(in) :: mean
4848 real(TKG) , intent(out) :: var
4849 end subroutine
4850#endif
4851
4852#if RK2_ENABLED
4853 PURE module subroutine setVarAvgALL_WTI_D1_RK2(var, mean, sample, weight, weisum)
4854#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4855 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_RK2
4856#endif
4857 use pm_kind, only: TKG => RK2
4858 integer(IK) , intent(in) :: weisum
4859 integer(IK) , intent(in) , contiguous :: weight(:)
4860 real(TKG) , intent(in) , contiguous :: sample(:)
4861 real(TKG) , intent(in) :: mean
4862 real(TKG) , intent(out) :: var
4863 end subroutine
4864#endif
4865
4866#if RK1_ENABLED
4867 PURE module subroutine setVarAvgALL_WTI_D1_RK1(var, mean, sample, weight, weisum)
4868#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4869 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D1_RK1
4870#endif
4871 use pm_kind, only: TKG => RK1
4872 integer(IK) , intent(in) :: weisum
4873 integer(IK) , intent(in) , contiguous :: weight(:)
4874 real(TKG) , intent(in) , contiguous :: sample(:)
4875 real(TKG) , intent(in) :: mean
4876 real(TKG) , intent(out) :: var
4877 end subroutine
4878#endif
4879
4880 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4881
4882 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4883 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4884 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4885
4886 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4887
4888#if CK5_ENABLED
4889 PURE module subroutine setVarAvgALL_WTI_D2_CK5(var, mean, sample, weight, weisum)
4890#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4891 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_CK5
4892#endif
4893 use pm_kind, only: TKG => CK5
4894 integer(IK) , intent(in) :: weisum
4895 integer(IK) , intent(in) , contiguous :: weight(:)
4896 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4897 complex(TKG) , intent(in) :: mean
4898 real(TKG) , intent(out) :: var
4899 end subroutine
4900#endif
4901
4902#if CK4_ENABLED
4903 PURE module subroutine setVarAvgALL_WTI_D2_CK4(var, mean, sample, weight, weisum)
4904#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4905 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_CK4
4906#endif
4907 use pm_kind, only: TKG => CK4
4908 integer(IK) , intent(in) :: weisum
4909 integer(IK) , intent(in) , contiguous :: weight(:)
4910 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4911 complex(TKG) , intent(in) :: mean
4912 real(TKG) , intent(out) :: var
4913 end subroutine
4914#endif
4915
4916#if CK3_ENABLED
4917 PURE module subroutine setVarAvgALL_WTI_D2_CK3(var, mean, sample, weight, weisum)
4918#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4919 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_CK3
4920#endif
4921 use pm_kind, only: TKG => CK3
4922 integer(IK) , intent(in) :: weisum
4923 integer(IK) , intent(in) , contiguous :: weight(:)
4924 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4925 complex(TKG) , intent(in) :: mean
4926 real(TKG) , intent(out) :: var
4927 end subroutine
4928#endif
4929
4930#if CK2_ENABLED
4931 PURE module subroutine setVarAvgALL_WTI_D2_CK2(var, mean, sample, weight, weisum)
4932#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4933 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_CK2
4934#endif
4935 use pm_kind, only: TKG => CK2
4936 integer(IK) , intent(in) :: weisum
4937 integer(IK) , intent(in) , contiguous :: weight(:)
4938 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4939 complex(TKG) , intent(in) :: mean
4940 real(TKG) , intent(out) :: var
4941 end subroutine
4942#endif
4943
4944#if CK1_ENABLED
4945 PURE module subroutine setVarAvgALL_WTI_D2_CK1(var, mean, sample, weight, weisum)
4946#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4947 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_CK1
4948#endif
4949 use pm_kind, only: TKG => CK1
4950 integer(IK) , intent(in) :: weisum
4951 integer(IK) , intent(in) , contiguous :: weight(:)
4952 complex(TKG) , intent(in) , contiguous :: sample(:,:)
4953 complex(TKG) , intent(in) :: mean
4954 real(TKG) , intent(out) :: var
4955 end subroutine
4956#endif
4957
4958 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4959
4960#if RK5_ENABLED
4961 PURE module subroutine setVarAvgALL_WTI_D2_RK5(var, mean, sample, weight, weisum)
4962#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4963 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_RK5
4964#endif
4965 use pm_kind, only: TKG => RK5
4966 integer(IK) , intent(in) :: weisum
4967 integer(IK) , intent(in) , contiguous :: weight(:)
4968 real(TKG) , intent(in) , contiguous :: sample(:,:)
4969 real(TKG) , intent(in) :: mean
4970 real(TKG) , intent(out) :: var
4971 end subroutine
4972#endif
4973
4974#if RK4_ENABLED
4975 PURE module subroutine setVarAvgALL_WTI_D2_RK4(var, mean, sample, weight, weisum)
4976#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4977 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_RK4
4978#endif
4979 use pm_kind, only: TKG => RK4
4980 integer(IK) , intent(in) :: weisum
4981 integer(IK) , intent(in) , contiguous :: weight(:)
4982 real(TKG) , intent(in) , contiguous :: sample(:,:)
4983 real(TKG) , intent(in) :: mean
4984 real(TKG) , intent(out) :: var
4985 end subroutine
4986#endif
4987
4988#if RK3_ENABLED
4989 PURE module subroutine setVarAvgALL_WTI_D2_RK3(var, mean, sample, weight, weisum)
4990#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4991 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_RK3
4992#endif
4993 use pm_kind, only: TKG => RK3
4994 integer(IK) , intent(in) :: weisum
4995 integer(IK) , intent(in) , contiguous :: weight(:)
4996 real(TKG) , intent(in) , contiguous :: sample(:,:)
4997 real(TKG) , intent(in) :: mean
4998 real(TKG) , intent(out) :: var
4999 end subroutine
5000#endif
5001
5002#if RK2_ENABLED
5003 PURE module subroutine setVarAvgALL_WTI_D2_RK2(var, mean, sample, weight, weisum)
5004#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5005 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_RK2
5006#endif
5007 use pm_kind, only: TKG => RK2
5008 integer(IK) , intent(in) :: weisum
5009 integer(IK) , intent(in) , contiguous :: weight(:)
5010 real(TKG) , intent(in) , contiguous :: sample(:,:)
5011 real(TKG) , intent(in) :: mean
5012 real(TKG) , intent(out) :: var
5013 end subroutine
5014#endif
5015
5016#if RK1_ENABLED
5017 PURE module subroutine setVarAvgALL_WTI_D2_RK1(var, mean, sample, weight, weisum)
5018#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5019 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTI_D2_RK1
5020#endif
5021 use pm_kind, only: TKG => RK1
5022 integer(IK) , intent(in) :: weisum
5023 integer(IK) , intent(in) , contiguous :: weight(:)
5024 real(TKG) , intent(in) , contiguous :: sample(:,:)
5025 real(TKG) , intent(in) :: mean
5026 real(TKG) , intent(out) :: var
5027 end subroutine
5028#endif
5029
5030 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5031
5032 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5033 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5034 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5035
5036 end interface setVar
5037
5038 ! AvgALL_WTR
5039
5040 interface setVar
5041
5042 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5043 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5044 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5045
5046 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5047
5048#if CK5_ENABLED
5049 PURE module subroutine setVarAvgALL_WTR_D1_CK5(var, mean, sample, weight, weisum)
5050#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5051 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_CK5
5052#endif
5053 use pm_kind, only: TKG => CK5
5054 real(TKG) , intent(in) :: weisum
5055 real(TKG) , intent(in) , contiguous :: weight(:)
5056 complex(TKG) , intent(in) , contiguous :: sample(:)
5057 complex(TKG) , intent(in) :: mean
5058 real(TKG) , intent(out) :: var
5059 end subroutine
5060#endif
5061
5062#if CK4_ENABLED
5063 PURE module subroutine setVarAvgALL_WTR_D1_CK4(var, mean, sample, weight, weisum)
5064#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5065 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_CK4
5066#endif
5067 use pm_kind, only: TKG => CK4
5068 real(TKG) , intent(in) :: weisum
5069 real(TKG) , intent(in) , contiguous :: weight(:)
5070 complex(TKG) , intent(in) , contiguous :: sample(:)
5071 complex(TKG) , intent(in) :: mean
5072 real(TKG) , intent(out) :: var
5073 end subroutine
5074#endif
5075
5076#if CK3_ENABLED
5077 PURE module subroutine setVarAvgALL_WTR_D1_CK3(var, mean, sample, weight, weisum)
5078#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5079 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_CK3
5080#endif
5081 use pm_kind, only: TKG => CK3
5082 real(TKG) , intent(in) :: weisum
5083 real(TKG) , intent(in) , contiguous :: weight(:)
5084 complex(TKG) , intent(in) , contiguous :: sample(:)
5085 complex(TKG) , intent(in) :: mean
5086 real(TKG) , intent(out) :: var
5087 end subroutine
5088#endif
5089
5090#if CK2_ENABLED
5091 PURE module subroutine setVarAvgALL_WTR_D1_CK2(var, mean, sample, weight, weisum)
5092#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5093 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_CK2
5094#endif
5095 use pm_kind, only: TKG => CK2
5096 real(TKG) , intent(in) :: weisum
5097 real(TKG) , intent(in) , contiguous :: weight(:)
5098 complex(TKG) , intent(in) , contiguous :: sample(:)
5099 complex(TKG) , intent(in) :: mean
5100 real(TKG) , intent(out) :: var
5101 end subroutine
5102#endif
5103
5104#if CK1_ENABLED
5105 PURE module subroutine setVarAvgALL_WTR_D1_CK1(var, mean, sample, weight, weisum)
5106#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5107 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_CK1
5108#endif
5109 use pm_kind, only: TKG => CK1
5110 real(TKG) , intent(in) :: weisum
5111 real(TKG) , intent(in) , contiguous :: weight(:)
5112 complex(TKG) , intent(in) , contiguous :: sample(:)
5113 complex(TKG) , intent(in) :: mean
5114 real(TKG) , intent(out) :: var
5115 end subroutine
5116#endif
5117
5118 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5119
5120#if RK5_ENABLED
5121 PURE module subroutine setVarAvgALL_WTR_D1_RK5(var, mean, sample, weight, weisum)
5122#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5123 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_RK5
5124#endif
5125 use pm_kind, only: TKG => RK5
5126 real(TKG) , intent(in) :: weisum
5127 real(TKG) , intent(in) , contiguous :: weight(:)
5128 real(TKG) , intent(in) , contiguous :: sample(:)
5129 real(TKG) , intent(in) :: mean
5130 real(TKG) , intent(out) :: var
5131 end subroutine
5132#endif
5133
5134#if RK4_ENABLED
5135 PURE module subroutine setVarAvgALL_WTR_D1_RK4(var, mean, sample, weight, weisum)
5136#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5137 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_RK4
5138#endif
5139 use pm_kind, only: TKG => RK4
5140 real(TKG) , intent(in) :: weisum
5141 real(TKG) , intent(in) , contiguous :: weight(:)
5142 real(TKG) , intent(in) , contiguous :: sample(:)
5143 real(TKG) , intent(in) :: mean
5144 real(TKG) , intent(out) :: var
5145 end subroutine
5146#endif
5147
5148#if RK3_ENABLED
5149 PURE module subroutine setVarAvgALL_WTR_D1_RK3(var, mean, sample, weight, weisum)
5150#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5151 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_RK3
5152#endif
5153 use pm_kind, only: TKG => RK3
5154 real(TKG) , intent(in) :: weisum
5155 real(TKG) , intent(in) , contiguous :: weight(:)
5156 real(TKG) , intent(in) , contiguous :: sample(:)
5157 real(TKG) , intent(in) :: mean
5158 real(TKG) , intent(out) :: var
5159 end subroutine
5160#endif
5161
5162#if RK2_ENABLED
5163 PURE module subroutine setVarAvgALL_WTR_D1_RK2(var, mean, sample, weight, weisum)
5164#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5165 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_RK2
5166#endif
5167 use pm_kind, only: TKG => RK2
5168 real(TKG) , intent(in) :: weisum
5169 real(TKG) , intent(in) , contiguous :: weight(:)
5170 real(TKG) , intent(in) , contiguous :: sample(:)
5171 real(TKG) , intent(in) :: mean
5172 real(TKG) , intent(out) :: var
5173 end subroutine
5174#endif
5175
5176#if RK1_ENABLED
5177 PURE module subroutine setVarAvgALL_WTR_D1_RK1(var, mean, sample, weight, weisum)
5178#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5179 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D1_RK1
5180#endif
5181 use pm_kind, only: TKG => RK1
5182 real(TKG) , intent(in) :: weisum
5183 real(TKG) , intent(in) , contiguous :: weight(:)
5184 real(TKG) , intent(in) , contiguous :: sample(:)
5185 real(TKG) , intent(in) :: mean
5186 real(TKG) , intent(out) :: var
5187 end subroutine
5188#endif
5189
5190 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5191
5192 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5193 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5194 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5195
5196 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5197
5198#if CK5_ENABLED
5199 PURE module subroutine setVarAvgALL_WTR_D2_CK5(var, mean, sample, weight, weisum)
5200#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5201 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_CK5
5202#endif
5203 use pm_kind, only: TKG => CK5
5204 real(TKG) , intent(in) :: weisum
5205 real(TKG) , intent(in) , contiguous :: weight(:)
5206 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5207 complex(TKG) , intent(in) :: mean
5208 real(TKG) , intent(out) :: var
5209 end subroutine
5210#endif
5211
5212#if CK4_ENABLED
5213 PURE module subroutine setVarAvgALL_WTR_D2_CK4(var, mean, sample, weight, weisum)
5214#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5215 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_CK4
5216#endif
5217 use pm_kind, only: TKG => CK4
5218 real(TKG) , intent(in) :: weisum
5219 real(TKG) , intent(in) , contiguous :: weight(:)
5220 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5221 complex(TKG) , intent(in) :: mean
5222 real(TKG) , intent(out) :: var
5223 end subroutine
5224#endif
5225
5226#if CK3_ENABLED
5227 PURE module subroutine setVarAvgALL_WTR_D2_CK3(var, mean, sample, weight, weisum)
5228#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5229 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_CK3
5230#endif
5231 use pm_kind, only: TKG => CK3
5232 real(TKG) , intent(in) :: weisum
5233 real(TKG) , intent(in) , contiguous :: weight(:)
5234 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5235 complex(TKG) , intent(in) :: mean
5236 real(TKG) , intent(out) :: var
5237 end subroutine
5238#endif
5239
5240#if CK2_ENABLED
5241 PURE module subroutine setVarAvgALL_WTR_D2_CK2(var, mean, sample, weight, weisum)
5242#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5243 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_CK2
5244#endif
5245 use pm_kind, only: TKG => CK2
5246 real(TKG) , intent(in) :: weisum
5247 real(TKG) , intent(in) , contiguous :: weight(:)
5248 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5249 complex(TKG) , intent(in) :: mean
5250 real(TKG) , intent(out) :: var
5251 end subroutine
5252#endif
5253
5254#if CK1_ENABLED
5255 PURE module subroutine setVarAvgALL_WTR_D2_CK1(var, mean, sample, weight, weisum)
5256#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5257 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_CK1
5258#endif
5259 use pm_kind, only: TKG => CK1
5260 real(TKG) , intent(in) :: weisum
5261 real(TKG) , intent(in) , contiguous :: weight(:)
5262 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5263 complex(TKG) , intent(in) :: mean
5264 real(TKG) , intent(out) :: var
5265 end subroutine
5266#endif
5267
5268 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5269
5270#if RK5_ENABLED
5271 PURE module subroutine setVarAvgALL_WTR_D2_RK5(var, mean, sample, weight, weisum)
5272#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5273 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_RK5
5274#endif
5275 use pm_kind, only: TKG => RK5
5276 real(TKG) , intent(in) :: weisum
5277 real(TKG) , intent(in) , contiguous :: weight(:)
5278 real(TKG) , intent(in) , contiguous :: sample(:,:)
5279 real(TKG) , intent(in) :: mean
5280 real(TKG) , intent(out) :: var
5281 end subroutine
5282#endif
5283
5284#if RK4_ENABLED
5285 PURE module subroutine setVarAvgALL_WTR_D2_RK4(var, mean, sample, weight, weisum)
5286#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5287 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_RK4
5288#endif
5289 use pm_kind, only: TKG => RK4
5290 real(TKG) , intent(in) :: weisum
5291 real(TKG) , intent(in) , contiguous :: weight(:)
5292 real(TKG) , intent(in) , contiguous :: sample(:,:)
5293 real(TKG) , intent(in) :: mean
5294 real(TKG) , intent(out) :: var
5295 end subroutine
5296#endif
5297
5298#if RK3_ENABLED
5299 PURE module subroutine setVarAvgALL_WTR_D2_RK3(var, mean, sample, weight, weisum)
5300#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5301 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_RK3
5302#endif
5303 use pm_kind, only: TKG => RK3
5304 real(TKG) , intent(in) :: weisum
5305 real(TKG) , intent(in) , contiguous :: weight(:)
5306 real(TKG) , intent(in) , contiguous :: sample(:,:)
5307 real(TKG) , intent(in) :: mean
5308 real(TKG) , intent(out) :: var
5309 end subroutine
5310#endif
5311
5312#if RK2_ENABLED
5313 PURE module subroutine setVarAvgALL_WTR_D2_RK2(var, mean, sample, weight, weisum)
5314#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5315 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_RK2
5316#endif
5317 use pm_kind, only: TKG => RK2
5318 real(TKG) , intent(in) :: weisum
5319 real(TKG) , intent(in) , contiguous :: weight(:)
5320 real(TKG) , intent(in) , contiguous :: sample(:,:)
5321 real(TKG) , intent(in) :: mean
5322 real(TKG) , intent(out) :: var
5323 end subroutine
5324#endif
5325
5326#if RK1_ENABLED
5327 PURE module subroutine setVarAvgALL_WTR_D2_RK1(var, mean, sample, weight, weisum)
5328#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5329 !DEC$ ATTRIBUTES DLLEXPORT :: setVarAvgALL_WTR_D2_RK1
5330#endif
5331 use pm_kind, only: TKG => RK1
5332 real(TKG) , intent(in) :: weisum
5333 real(TKG) , intent(in) , contiguous :: weight(:)
5334 real(TKG) , intent(in) , contiguous :: sample(:,:)
5335 real(TKG) , intent(in) :: mean
5336 real(TKG) , intent(out) :: var
5337 end subroutine
5338#endif
5339
5340 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5341
5342 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5343 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5344 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5345
5346 end interface setVar
5347
5348 ! OrgALL_WNO
5349
5350 interface setVar
5351
5352 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5353 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5354 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5355
5356 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5357
5358#if CK5_ENABLED
5359 PURE module subroutine setVarOrgALL_WNO_D1_CK5(var, sample)
5360#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5361 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_CK5
5362#endif
5363 use pm_kind, only: TKG => CK5
5364 complex(TKG) , intent(in) , contiguous :: sample(:)
5365 real(TKG) , intent(out) :: var
5366 end subroutine
5367#endif
5368
5369#if CK4_ENABLED
5370 PURE module subroutine setVarOrgALL_WNO_D1_CK4(var, sample)
5371#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5372 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_CK4
5373#endif
5374 use pm_kind, only: TKG => CK4
5375 complex(TKG) , intent(in) , contiguous :: sample(:)
5376 real(TKG) , intent(out) :: var
5377 end subroutine
5378#endif
5379
5380#if CK3_ENABLED
5381 PURE module subroutine setVarOrgALL_WNO_D1_CK3(var, sample)
5382#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5383 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_CK3
5384#endif
5385 use pm_kind, only: TKG => CK3
5386 complex(TKG) , intent(in) , contiguous :: sample(:)
5387 real(TKG) , intent(out) :: var
5388 end subroutine
5389#endif
5390
5391#if CK2_ENABLED
5392 PURE module subroutine setVarOrgALL_WNO_D1_CK2(var, sample)
5393#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5394 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_CK2
5395#endif
5396 use pm_kind, only: TKG => CK2
5397 complex(TKG) , intent(in) , contiguous :: sample(:)
5398 real(TKG) , intent(out) :: var
5399 end subroutine
5400#endif
5401
5402#if CK1_ENABLED
5403 PURE module subroutine setVarOrgALL_WNO_D1_CK1(var, sample)
5404#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5405 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_CK1
5406#endif
5407 use pm_kind, only: TKG => CK1
5408 complex(TKG) , intent(in) , contiguous :: sample(:)
5409 real(TKG) , intent(out) :: var
5410 end subroutine
5411#endif
5412
5413 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5414
5415#if RK5_ENABLED
5416 PURE module subroutine setVarOrgALL_WNO_D1_RK5(var, sample)
5417#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5418 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_RK5
5419#endif
5420 use pm_kind, only: TKG => RK5
5421 real(TKG) , intent(in) , contiguous :: sample(:)
5422 real(TKG) , intent(out) :: var
5423 end subroutine
5424#endif
5425
5426#if RK4_ENABLED
5427 PURE module subroutine setVarOrgALL_WNO_D1_RK4(var, sample)
5428#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5429 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_RK4
5430#endif
5431 use pm_kind, only: TKG => RK4
5432 real(TKG) , intent(in) , contiguous :: sample(:)
5433 real(TKG) , intent(out) :: var
5434 end subroutine
5435#endif
5436
5437#if RK3_ENABLED
5438 PURE module subroutine setVarOrgALL_WNO_D1_RK3(var, sample)
5439#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5440 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_RK3
5441#endif
5442 use pm_kind, only: TKG => RK3
5443 real(TKG) , intent(in) , contiguous :: sample(:)
5444 real(TKG) , intent(out) :: var
5445 end subroutine
5446#endif
5447
5448#if RK2_ENABLED
5449 PURE module subroutine setVarOrgALL_WNO_D1_RK2(var, sample)
5450#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5451 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_RK2
5452#endif
5453 use pm_kind, only: TKG => RK2
5454 real(TKG) , intent(in) , contiguous :: sample(:)
5455 real(TKG) , intent(out) :: var
5456 end subroutine
5457#endif
5458
5459#if RK1_ENABLED
5460 PURE module subroutine setVarOrgALL_WNO_D1_RK1(var, sample)
5461#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5462 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D1_RK1
5463#endif
5464 use pm_kind, only: TKG => RK1
5465 real(TKG) , intent(in) , contiguous :: sample(:)
5466 real(TKG) , intent(out) :: var
5467 end subroutine
5468#endif
5469
5470 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5471
5472 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5473 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5474 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5475
5476 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5477
5478#if CK5_ENABLED
5479 PURE module subroutine setVarOrgALL_WNO_D2_CK5(var, sample)
5480#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5481 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_CK5
5482#endif
5483 use pm_kind, only: TKG => CK5
5484 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5485 real(TKG) , intent(out) :: var
5486 end subroutine
5487#endif
5488
5489#if CK4_ENABLED
5490 PURE module subroutine setVarOrgALL_WNO_D2_CK4(var, sample)
5491#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5492 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_CK4
5493#endif
5494 use pm_kind, only: TKG => CK4
5495 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5496 real(TKG) , intent(out) :: var
5497 end subroutine
5498#endif
5499
5500#if CK3_ENABLED
5501 PURE module subroutine setVarOrgALL_WNO_D2_CK3(var, sample)
5502#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5503 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_CK3
5504#endif
5505 use pm_kind, only: TKG => CK3
5506 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5507 real(TKG) , intent(out) :: var
5508 end subroutine
5509#endif
5510
5511#if CK2_ENABLED
5512 PURE module subroutine setVarOrgALL_WNO_D2_CK2(var, sample)
5513#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5514 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_CK2
5515#endif
5516 use pm_kind, only: TKG => CK2
5517 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5518 real(TKG) , intent(out) :: var
5519 end subroutine
5520#endif
5521
5522#if CK1_ENABLED
5523 PURE module subroutine setVarOrgALL_WNO_D2_CK1(var, sample)
5524#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5525 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_CK1
5526#endif
5527 use pm_kind, only: TKG => CK1
5528 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5529 real(TKG) , intent(out) :: var
5530 end subroutine
5531#endif
5532
5533 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5534
5535#if RK5_ENABLED
5536 PURE module subroutine setVarOrgALL_WNO_D2_RK5(var, sample)
5537#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5538 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_RK5
5539#endif
5540 use pm_kind, only: TKG => RK5
5541 real(TKG) , intent(in) , contiguous :: sample(:,:)
5542 real(TKG) , intent(out) :: var
5543 end subroutine
5544#endif
5545
5546#if RK4_ENABLED
5547 PURE module subroutine setVarOrgALL_WNO_D2_RK4(var, sample)
5548#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5549 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_RK4
5550#endif
5551 use pm_kind, only: TKG => RK4
5552 real(TKG) , intent(in) , contiguous :: sample(:,:)
5553 real(TKG) , intent(out) :: var
5554 end subroutine
5555#endif
5556
5557#if RK3_ENABLED
5558 PURE module subroutine setVarOrgALL_WNO_D2_RK3(var, sample)
5559#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5560 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_RK3
5561#endif
5562 use pm_kind, only: TKG => RK3
5563 real(TKG) , intent(in) , contiguous :: sample(:,:)
5564 real(TKG) , intent(out) :: var
5565 end subroutine
5566#endif
5567
5568#if RK2_ENABLED
5569 PURE module subroutine setVarOrgALL_WNO_D2_RK2(var, sample)
5570#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5571 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_RK2
5572#endif
5573 use pm_kind, only: TKG => RK2
5574 real(TKG) , intent(in) , contiguous :: sample(:,:)
5575 real(TKG) , intent(out) :: var
5576 end subroutine
5577#endif
5578
5579#if RK1_ENABLED
5580 PURE module subroutine setVarOrgALL_WNO_D2_RK1(var, sample)
5581#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5582 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WNO_D2_RK1
5583#endif
5584 use pm_kind, only: TKG => RK1
5585 real(TKG) , intent(in) , contiguous :: sample(:,:)
5586 real(TKG) , intent(out) :: var
5587 end subroutine
5588#endif
5589
5590 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5591
5592 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5593 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5594 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5595
5596 end interface setVar
5597
5598 ! OrgALL_WTI
5599
5600 interface setVar
5601
5602 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5603 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5604 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5605
5606 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5607
5608#if CK5_ENABLED
5609 PURE module subroutine setVarOrgALL_WTI_D1_CK5(var, sample, weight, weisum)
5610#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5611 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_CK5
5612#endif
5613 use pm_kind, only: TKG => CK5
5614 integer(IK) , intent(in) :: weisum
5615 integer(IK) , intent(in) , contiguous :: weight(:)
5616 complex(TKG) , intent(in) , contiguous :: sample(:)
5617 real(TKG) , intent(out) :: var
5618 end subroutine
5619#endif
5620
5621#if CK4_ENABLED
5622 PURE module subroutine setVarOrgALL_WTI_D1_CK4(var, sample, weight, weisum)
5623#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5624 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_CK4
5625#endif
5626 use pm_kind, only: TKG => CK4
5627 integer(IK) , intent(in) :: weisum
5628 integer(IK) , intent(in) , contiguous :: weight(:)
5629 complex(TKG) , intent(in) , contiguous :: sample(:)
5630 real(TKG) , intent(out) :: var
5631 end subroutine
5632#endif
5633
5634#if CK3_ENABLED
5635 PURE module subroutine setVarOrgALL_WTI_D1_CK3(var, sample, weight, weisum)
5636#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5637 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_CK3
5638#endif
5639 use pm_kind, only: TKG => CK3
5640 integer(IK) , intent(in) :: weisum
5641 integer(IK) , intent(in) , contiguous :: weight(:)
5642 complex(TKG) , intent(in) , contiguous :: sample(:)
5643 real(TKG) , intent(out) :: var
5644 end subroutine
5645#endif
5646
5647#if CK2_ENABLED
5648 PURE module subroutine setVarOrgALL_WTI_D1_CK2(var, sample, weight, weisum)
5649#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5650 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_CK2
5651#endif
5652 use pm_kind, only: TKG => CK2
5653 integer(IK) , intent(in) :: weisum
5654 integer(IK) , intent(in) , contiguous :: weight(:)
5655 complex(TKG) , intent(in) , contiguous :: sample(:)
5656 real(TKG) , intent(out) :: var
5657 end subroutine
5658#endif
5659
5660#if CK1_ENABLED
5661 PURE module subroutine setVarOrgALL_WTI_D1_CK1(var, sample, weight, weisum)
5662#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5663 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_CK1
5664#endif
5665 use pm_kind, only: TKG => CK1
5666 integer(IK) , intent(in) :: weisum
5667 integer(IK) , intent(in) , contiguous :: weight(:)
5668 complex(TKG) , intent(in) , contiguous :: sample(:)
5669 real(TKG) , intent(out) :: var
5670 end subroutine
5671#endif
5672
5673 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5674
5675#if RK5_ENABLED
5676 PURE module subroutine setVarOrgALL_WTI_D1_RK5(var, sample, weight, weisum)
5677#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5678 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_RK5
5679#endif
5680 use pm_kind, only: TKG => RK5
5681 integer(IK) , intent(in) :: weisum
5682 integer(IK) , intent(in) , contiguous :: weight(:)
5683 real(TKG) , intent(in) , contiguous :: sample(:)
5684 real(TKG) , intent(out) :: var
5685 end subroutine
5686#endif
5687
5688#if RK4_ENABLED
5689 PURE module subroutine setVarOrgALL_WTI_D1_RK4(var, sample, weight, weisum)
5690#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5691 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_RK4
5692#endif
5693 use pm_kind, only: TKG => RK4
5694 integer(IK) , intent(in) :: weisum
5695 integer(IK) , intent(in) , contiguous :: weight(:)
5696 real(TKG) , intent(in) , contiguous :: sample(:)
5697 real(TKG) , intent(out) :: var
5698 end subroutine
5699#endif
5700
5701#if RK3_ENABLED
5702 PURE module subroutine setVarOrgALL_WTI_D1_RK3(var, sample, weight, weisum)
5703#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5704 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_RK3
5705#endif
5706 use pm_kind, only: TKG => RK3
5707 integer(IK) , intent(in) :: weisum
5708 integer(IK) , intent(in) , contiguous :: weight(:)
5709 real(TKG) , intent(in) , contiguous :: sample(:)
5710 real(TKG) , intent(out) :: var
5711 end subroutine
5712#endif
5713
5714#if RK2_ENABLED
5715 PURE module subroutine setVarOrgALL_WTI_D1_RK2(var, sample, weight, weisum)
5716#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5717 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_RK2
5718#endif
5719 use pm_kind, only: TKG => RK2
5720 integer(IK) , intent(in) :: weisum
5721 integer(IK) , intent(in) , contiguous :: weight(:)
5722 real(TKG) , intent(in) , contiguous :: sample(:)
5723 real(TKG) , intent(out) :: var
5724 end subroutine
5725#endif
5726
5727#if RK1_ENABLED
5728 PURE module subroutine setVarOrgALL_WTI_D1_RK1(var, sample, weight, weisum)
5729#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5730 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D1_RK1
5731#endif
5732 use pm_kind, only: TKG => RK1
5733 integer(IK) , intent(in) :: weisum
5734 integer(IK) , intent(in) , contiguous :: weight(:)
5735 real(TKG) , intent(in) , contiguous :: sample(:)
5736 real(TKG) , intent(out) :: var
5737 end subroutine
5738#endif
5739
5740 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5741
5742 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5743 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5744 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5745
5746 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5747
5748#if CK5_ENABLED
5749 PURE module subroutine setVarOrgALL_WTI_D2_CK5(var, sample, weight, weisum)
5750#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5751 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_CK5
5752#endif
5753 use pm_kind, only: TKG => CK5
5754 integer(IK) , intent(in) :: weisum
5755 integer(IK) , intent(in) , contiguous :: weight(:)
5756 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5757 real(TKG) , intent(out) :: var
5758 end subroutine
5759#endif
5760
5761#if CK4_ENABLED
5762 PURE module subroutine setVarOrgALL_WTI_D2_CK4(var, sample, weight, weisum)
5763#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5764 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_CK4
5765#endif
5766 use pm_kind, only: TKG => CK4
5767 integer(IK) , intent(in) :: weisum
5768 integer(IK) , intent(in) , contiguous :: weight(:)
5769 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5770 real(TKG) , intent(out) :: var
5771 end subroutine
5772#endif
5773
5774#if CK3_ENABLED
5775 PURE module subroutine setVarOrgALL_WTI_D2_CK3(var, sample, weight, weisum)
5776#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5777 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_CK3
5778#endif
5779 use pm_kind, only: TKG => CK3
5780 integer(IK) , intent(in) :: weisum
5781 integer(IK) , intent(in) , contiguous :: weight(:)
5782 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5783 real(TKG) , intent(out) :: var
5784 end subroutine
5785#endif
5786
5787#if CK2_ENABLED
5788 PURE module subroutine setVarOrgALL_WTI_D2_CK2(var, sample, weight, weisum)
5789#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5790 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_CK2
5791#endif
5792 use pm_kind, only: TKG => CK2
5793 integer(IK) , intent(in) :: weisum
5794 integer(IK) , intent(in) , contiguous :: weight(:)
5795 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5796 real(TKG) , intent(out) :: var
5797 end subroutine
5798#endif
5799
5800#if CK1_ENABLED
5801 PURE module subroutine setVarOrgALL_WTI_D2_CK1(var, sample, weight, weisum)
5802#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5803 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_CK1
5804#endif
5805 use pm_kind, only: TKG => CK1
5806 integer(IK) , intent(in) :: weisum
5807 integer(IK) , intent(in) , contiguous :: weight(:)
5808 complex(TKG) , intent(in) , contiguous :: sample(:,:)
5809 real(TKG) , intent(out) :: var
5810 end subroutine
5811#endif
5812
5813 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5814
5815#if RK5_ENABLED
5816 PURE module subroutine setVarOrgALL_WTI_D2_RK5(var, sample, weight, weisum)
5817#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5818 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_RK5
5819#endif
5820 use pm_kind, only: TKG => RK5
5821 integer(IK) , intent(in) :: weisum
5822 integer(IK) , intent(in) , contiguous :: weight(:)
5823 real(TKG) , intent(in) , contiguous :: sample(:,:)
5824 real(TKG) , intent(out) :: var
5825 end subroutine
5826#endif
5827
5828#if RK4_ENABLED
5829 PURE module subroutine setVarOrgALL_WTI_D2_RK4(var, sample, weight, weisum)
5830#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5831 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_RK4
5832#endif
5833 use pm_kind, only: TKG => RK4
5834 integer(IK) , intent(in) :: weisum
5835 integer(IK) , intent(in) , contiguous :: weight(:)
5836 real(TKG) , intent(in) , contiguous :: sample(:,:)
5837 real(TKG) , intent(out) :: var
5838 end subroutine
5839#endif
5840
5841#if RK3_ENABLED
5842 PURE module subroutine setVarOrgALL_WTI_D2_RK3(var, sample, weight, weisum)
5843#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5844 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_RK3
5845#endif
5846 use pm_kind, only: TKG => RK3
5847 integer(IK) , intent(in) :: weisum
5848 integer(IK) , intent(in) , contiguous :: weight(:)
5849 real(TKG) , intent(in) , contiguous :: sample(:,:)
5850 real(TKG) , intent(out) :: var
5851 end subroutine
5852#endif
5853
5854#if RK2_ENABLED
5855 PURE module subroutine setVarOrgALL_WTI_D2_RK2(var, sample, weight, weisum)
5856#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5857 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_RK2
5858#endif
5859 use pm_kind, only: TKG => RK2
5860 integer(IK) , intent(in) :: weisum
5861 integer(IK) , intent(in) , contiguous :: weight(:)
5862 real(TKG) , intent(in) , contiguous :: sample(:,:)
5863 real(TKG) , intent(out) :: var
5864 end subroutine
5865#endif
5866
5867#if RK1_ENABLED
5868 PURE module subroutine setVarOrgALL_WTI_D2_RK1(var, sample, weight, weisum)
5869#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5870 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTI_D2_RK1
5871#endif
5872 use pm_kind, only: TKG => RK1
5873 integer(IK) , intent(in) :: weisum
5874 integer(IK) , intent(in) , contiguous :: weight(:)
5875 real(TKG) , intent(in) , contiguous :: sample(:,:)
5876 real(TKG) , intent(out) :: var
5877 end subroutine
5878#endif
5879
5880 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5881
5882 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5883 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5884 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5885
5886 end interface setVar
5887
5888 ! OrgALL_WTR
5889
5890 interface setVar
5891
5892 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5893 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5894 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5895
5896 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5897
5898#if CK5_ENABLED
5899 PURE module subroutine setVarOrgALL_WTR_D1_CK5(var, sample, weight, weisum)
5900#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5901 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_CK5
5902#endif
5903 use pm_kind, only: TKG => CK5
5904 real(TKG) , intent(in) :: weisum
5905 real(TKG) , intent(in) , contiguous :: weight(:)
5906 complex(TKG) , intent(in) , contiguous :: sample(:)
5907 real(TKG) , intent(out) :: var
5908 end subroutine
5909#endif
5910
5911#if CK4_ENABLED
5912 PURE module subroutine setVarOrgALL_WTR_D1_CK4(var, sample, weight, weisum)
5913#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5914 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_CK4
5915#endif
5916 use pm_kind, only: TKG => CK4
5917 real(TKG) , intent(in) :: weisum
5918 real(TKG) , intent(in) , contiguous :: weight(:)
5919 complex(TKG) , intent(in) , contiguous :: sample(:)
5920 real(TKG) , intent(out) :: var
5921 end subroutine
5922#endif
5923
5924#if CK3_ENABLED
5925 PURE module subroutine setVarOrgALL_WTR_D1_CK3(var, sample, weight, weisum)
5926#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5927 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_CK3
5928#endif
5929 use pm_kind, only: TKG => CK3
5930 real(TKG) , intent(in) :: weisum
5931 real(TKG) , intent(in) , contiguous :: weight(:)
5932 complex(TKG) , intent(in) , contiguous :: sample(:)
5933 real(TKG) , intent(out) :: var
5934 end subroutine
5935#endif
5936
5937#if CK2_ENABLED
5938 PURE module subroutine setVarOrgALL_WTR_D1_CK2(var, sample, weight, weisum)
5939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5940 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_CK2
5941#endif
5942 use pm_kind, only: TKG => CK2
5943 real(TKG) , intent(in) :: weisum
5944 real(TKG) , intent(in) , contiguous :: weight(:)
5945 complex(TKG) , intent(in) , contiguous :: sample(:)
5946 real(TKG) , intent(out) :: var
5947 end subroutine
5948#endif
5949
5950#if CK1_ENABLED
5951 PURE module subroutine setVarOrgALL_WTR_D1_CK1(var, sample, weight, weisum)
5952#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5953 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_CK1
5954#endif
5955 use pm_kind, only: TKG => CK1
5956 real(TKG) , intent(in) :: weisum
5957 real(TKG) , intent(in) , contiguous :: weight(:)
5958 complex(TKG) , intent(in) , contiguous :: sample(:)
5959 real(TKG) , intent(out) :: var
5960 end subroutine
5961#endif
5962
5963 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5964
5965#if RK5_ENABLED
5966 PURE module subroutine setVarOrgALL_WTR_D1_RK5(var, sample, weight, weisum)
5967#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5968 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_RK5
5969#endif
5970 use pm_kind, only: TKG => RK5
5971 real(TKG) , intent(in) :: weisum
5972 real(TKG) , intent(in) , contiguous :: weight(:)
5973 real(TKG) , intent(in) , contiguous :: sample(:)
5974 real(TKG) , intent(out) :: var
5975 end subroutine
5976#endif
5977
5978#if RK4_ENABLED
5979 PURE module subroutine setVarOrgALL_WTR_D1_RK4(var, sample, weight, weisum)
5980#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5981 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_RK4
5982#endif
5983 use pm_kind, only: TKG => RK4
5984 real(TKG) , intent(in) :: weisum
5985 real(TKG) , intent(in) , contiguous :: weight(:)
5986 real(TKG) , intent(in) , contiguous :: sample(:)
5987 real(TKG) , intent(out) :: var
5988 end subroutine
5989#endif
5990
5991#if RK3_ENABLED
5992 PURE module subroutine setVarOrgALL_WTR_D1_RK3(var, sample, weight, weisum)
5993#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5994 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_RK3
5995#endif
5996 use pm_kind, only: TKG => RK3
5997 real(TKG) , intent(in) :: weisum
5998 real(TKG) , intent(in) , contiguous :: weight(:)
5999 real(TKG) , intent(in) , contiguous :: sample(:)
6000 real(TKG) , intent(out) :: var
6001 end subroutine
6002#endif
6003
6004#if RK2_ENABLED
6005 PURE module subroutine setVarOrgALL_WTR_D1_RK2(var, sample, weight, weisum)
6006#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6007 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_RK2
6008#endif
6009 use pm_kind, only: TKG => RK2
6010 real(TKG) , intent(in) :: weisum
6011 real(TKG) , intent(in) , contiguous :: weight(:)
6012 real(TKG) , intent(in) , contiguous :: sample(:)
6013 real(TKG) , intent(out) :: var
6014 end subroutine
6015#endif
6016
6017#if RK1_ENABLED
6018 PURE module subroutine setVarOrgALL_WTR_D1_RK1(var, sample, weight, weisum)
6019#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6020 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D1_RK1
6021#endif
6022 use pm_kind, only: TKG => RK1
6023 real(TKG) , intent(in) :: weisum
6024 real(TKG) , intent(in) , contiguous :: weight(:)
6025 real(TKG) , intent(in) , contiguous :: sample(:)
6026 real(TKG) , intent(out) :: var
6027 end subroutine
6028#endif
6029
6030 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6031
6032 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6033 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6034 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6035
6036 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6037
6038#if CK5_ENABLED
6039 PURE module subroutine setVarOrgALL_WTR_D2_CK5(var, sample, weight, weisum)
6040#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6041 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_CK5
6042#endif
6043 use pm_kind, only: TKG => CK5
6044 real(TKG) , intent(in) :: weisum
6045 real(TKG) , intent(in) , contiguous :: weight(:)
6046 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6047 real(TKG) , intent(out) :: var
6048 end subroutine
6049#endif
6050
6051#if CK4_ENABLED
6052 PURE module subroutine setVarOrgALL_WTR_D2_CK4(var, sample, weight, weisum)
6053#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6054 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_CK4
6055#endif
6056 use pm_kind, only: TKG => CK4
6057 real(TKG) , intent(in) :: weisum
6058 real(TKG) , intent(in) , contiguous :: weight(:)
6059 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6060 real(TKG) , intent(out) :: var
6061 end subroutine
6062#endif
6063
6064#if CK3_ENABLED
6065 PURE module subroutine setVarOrgALL_WTR_D2_CK3(var, sample, weight, weisum)
6066#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6067 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_CK3
6068#endif
6069 use pm_kind, only: TKG => CK3
6070 real(TKG) , intent(in) :: weisum
6071 real(TKG) , intent(in) , contiguous :: weight(:)
6072 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6073 real(TKG) , intent(out) :: var
6074 end subroutine
6075#endif
6076
6077#if CK2_ENABLED
6078 PURE module subroutine setVarOrgALL_WTR_D2_CK2(var, sample, weight, weisum)
6079#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6080 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_CK2
6081#endif
6082 use pm_kind, only: TKG => CK2
6083 real(TKG) , intent(in) :: weisum
6084 real(TKG) , intent(in) , contiguous :: weight(:)
6085 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6086 real(TKG) , intent(out) :: var
6087 end subroutine
6088#endif
6089
6090#if CK1_ENABLED
6091 PURE module subroutine setVarOrgALL_WTR_D2_CK1(var, sample, weight, weisum)
6092#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6093 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_CK1
6094#endif
6095 use pm_kind, only: TKG => CK1
6096 real(TKG) , intent(in) :: weisum
6097 real(TKG) , intent(in) , contiguous :: weight(:)
6098 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6099 real(TKG) , intent(out) :: var
6100 end subroutine
6101#endif
6102
6103 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6104
6105#if RK5_ENABLED
6106 PURE module subroutine setVarOrgALL_WTR_D2_RK5(var, sample, weight, weisum)
6107#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6108 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_RK5
6109#endif
6110 use pm_kind, only: TKG => RK5
6111 real(TKG) , intent(in) :: weisum
6112 real(TKG) , intent(in) , contiguous :: weight(:)
6113 real(TKG) , intent(in) , contiguous :: sample(:,:)
6114 real(TKG) , intent(out) :: var
6115 end subroutine
6116#endif
6117
6118#if RK4_ENABLED
6119 PURE module subroutine setVarOrgALL_WTR_D2_RK4(var, sample, weight, weisum)
6120#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6121 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_RK4
6122#endif
6123 use pm_kind, only: TKG => RK4
6124 real(TKG) , intent(in) :: weisum
6125 real(TKG) , intent(in) , contiguous :: weight(:)
6126 real(TKG) , intent(in) , contiguous :: sample(:,:)
6127 real(TKG) , intent(out) :: var
6128 end subroutine
6129#endif
6130
6131#if RK3_ENABLED
6132 PURE module subroutine setVarOrgALL_WTR_D2_RK3(var, sample, weight, weisum)
6133#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6134 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_RK3
6135#endif
6136 use pm_kind, only: TKG => RK3
6137 real(TKG) , intent(in) :: weisum
6138 real(TKG) , intent(in) , contiguous :: weight(:)
6139 real(TKG) , intent(in) , contiguous :: sample(:,:)
6140 real(TKG) , intent(out) :: var
6141 end subroutine
6142#endif
6143
6144#if RK2_ENABLED
6145 PURE module subroutine setVarOrgALL_WTR_D2_RK2(var, sample, weight, weisum)
6146#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6147 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_RK2
6148#endif
6149 use pm_kind, only: TKG => RK2
6150 real(TKG) , intent(in) :: weisum
6151 real(TKG) , intent(in) , contiguous :: weight(:)
6152 real(TKG) , intent(in) , contiguous :: sample(:,:)
6153 real(TKG) , intent(out) :: var
6154 end subroutine
6155#endif
6156
6157#if RK1_ENABLED
6158 PURE module subroutine setVarOrgALL_WTR_D2_RK1(var, sample, weight, weisum)
6159#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6160 !DEC$ ATTRIBUTES DLLEXPORT :: setVarOrgALL_WTR_D2_RK1
6161#endif
6162 use pm_kind, only: TKG => RK1
6163 real(TKG) , intent(in) :: weisum
6164 real(TKG) , intent(in) , contiguous :: weight(:)
6165 real(TKG) , intent(in) , contiguous :: sample(:,:)
6166 real(TKG) , intent(out) :: var
6167 end subroutine
6168#endif
6169
6170 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6171
6172 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6173 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6174 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6175
6176 end interface setVar
6177
6178!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6179
6301
6302 ! ALL D1
6303
6304 interface setVarMean
6305
6306 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6307 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6308 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6309
6310 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6311
6312#if CK5_ENABLED
6313 PURE module subroutine setVarMeanALL_WNODD_D1_CK5(var, mean, sample, meang)
6314#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6315 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_CK5
6316#endif
6317 use pm_kind, only: TKG => CK5
6318 complex(TKG) , intent(in) , contiguous :: sample(:)
6319 complex(TKG) , intent(in) :: meang
6320 complex(TKG) , intent(out) :: mean
6321 real(TKG) , intent(out) :: var
6322 end subroutine
6323#endif
6324
6325#if CK4_ENABLED
6326 PURE module subroutine setVarMeanALL_WNODD_D1_CK4(var, mean, sample, meang)
6327#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6328 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_CK4
6329#endif
6330 use pm_kind, only: TKG => CK4
6331 complex(TKG) , intent(in) , contiguous :: sample(:)
6332 complex(TKG) , intent(in) :: meang
6333 complex(TKG) , intent(out) :: mean
6334 real(TKG) , intent(out) :: var
6335 end subroutine
6336#endif
6337
6338#if CK3_ENABLED
6339 PURE module subroutine setVarMeanALL_WNODD_D1_CK3(var, mean, sample, meang)
6340#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6341 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_CK3
6342#endif
6343 use pm_kind, only: TKG => CK3
6344 complex(TKG) , intent(in) , contiguous :: sample(:)
6345 complex(TKG) , intent(in) :: meang
6346 complex(TKG) , intent(out) :: mean
6347 real(TKG) , intent(out) :: var
6348 end subroutine
6349#endif
6350
6351#if CK2_ENABLED
6352 PURE module subroutine setVarMeanALL_WNODD_D1_CK2(var, mean, sample, meang)
6353#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6354 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_CK2
6355#endif
6356 use pm_kind, only: TKG => CK2
6357 complex(TKG) , intent(in) , contiguous :: sample(:)
6358 complex(TKG) , intent(in) :: meang
6359 complex(TKG) , intent(out) :: mean
6360 real(TKG) , intent(out) :: var
6361 end subroutine
6362#endif
6363
6364#if CK1_ENABLED
6365 PURE module subroutine setVarMeanALL_WNODD_D1_CK1(var, mean, sample, meang)
6366#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6367 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_CK1
6368#endif
6369 use pm_kind, only: TKG => CK1
6370 complex(TKG) , intent(in) , contiguous :: sample(:)
6371 complex(TKG) , intent(in) :: meang
6372 complex(TKG) , intent(out) :: mean
6373 real(TKG) , intent(out) :: var
6374 end subroutine
6375#endif
6376
6377 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6378
6379#if RK5_ENABLED
6380 PURE module subroutine setVarMeanALL_WNODD_D1_RK5(var, mean, sample, meang)
6381#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6382 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_RK5
6383#endif
6384 use pm_kind, only: TKG => RK5
6385 real(TKG) , intent(in) , contiguous :: sample(:)
6386 real(TKG) , intent(in) :: meang
6387 real(TKG) , intent(out) :: mean
6388 real(TKG) , intent(out) :: var
6389 end subroutine
6390#endif
6391
6392#if RK4_ENABLED
6393 PURE module subroutine setVarMeanALL_WNODD_D1_RK4(var, mean, sample, meang)
6394#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6395 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_RK4
6396#endif
6397 use pm_kind, only: TKG => RK4
6398 real(TKG) , intent(in) , contiguous :: sample(:)
6399 real(TKG) , intent(in) :: meang
6400 real(TKG) , intent(out) :: mean
6401 real(TKG) , intent(out) :: var
6402 end subroutine
6403#endif
6404
6405#if RK3_ENABLED
6406 PURE module subroutine setVarMeanALL_WNODD_D1_RK3(var, mean, sample, meang)
6407#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6408 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_RK3
6409#endif
6410 use pm_kind, only: TKG => RK3
6411 real(TKG) , intent(in) , contiguous :: sample(:)
6412 real(TKG) , intent(in) :: meang
6413 real(TKG) , intent(out) :: mean
6414 real(TKG) , intent(out) :: var
6415 end subroutine
6416#endif
6417
6418#if RK2_ENABLED
6419 PURE module subroutine setVarMeanALL_WNODD_D1_RK2(var, mean, sample, meang)
6420#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6421 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_RK2
6422#endif
6423 use pm_kind, only: TKG => RK2
6424 real(TKG) , intent(in) , contiguous :: sample(:)
6425 real(TKG) , intent(in) :: meang
6426 real(TKG) , intent(out) :: mean
6427 real(TKG) , intent(out) :: var
6428 end subroutine
6429#endif
6430
6431#if RK1_ENABLED
6432 PURE module subroutine setVarMeanALL_WNODD_D1_RK1(var, mean, sample, meang)
6433#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6434 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D1_RK1
6435#endif
6436 use pm_kind, only: TKG => RK1
6437 real(TKG) , intent(in) , contiguous :: sample(:)
6438 real(TKG) , intent(in) :: meang
6439 real(TKG) , intent(out) :: mean
6440 real(TKG) , intent(out) :: var
6441 end subroutine
6442#endif
6443
6444 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6445
6446 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6447 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6448 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6449
6450 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6451
6452#if CK5_ENABLED
6453 PURE module subroutine setVarMeanALL_WTISD_D1_CK5(var, mean, sample, weight, weisum, meang)
6454#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6455 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_CK5
6456#endif
6457 use pm_kind, only: TKG => CK5
6458 integer(IK) , intent(out) :: weisum
6459 integer(IK) , intent(in) , contiguous :: weight(:)
6460 complex(TKG) , intent(in) , contiguous :: sample(:)
6461 complex(TKG) , intent(in) :: meang
6462 complex(TKG) , intent(out) :: mean
6463 real(TKG) , intent(out) :: var
6464 end subroutine
6465#endif
6466
6467#if CK4_ENABLED
6468 PURE module subroutine setVarMeanALL_WTISD_D1_CK4(var, mean, sample, weight, weisum, meang)
6469#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6470 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_CK4
6471#endif
6472 use pm_kind, only: TKG => CK4
6473 integer(IK) , intent(out) :: weisum
6474 integer(IK) , intent(in) , contiguous :: weight(:)
6475 complex(TKG) , intent(in) , contiguous :: sample(:)
6476 complex(TKG) , intent(in) :: meang
6477 complex(TKG) , intent(out) :: mean
6478 real(TKG) , intent(out) :: var
6479 end subroutine
6480#endif
6481
6482#if CK3_ENABLED
6483 PURE module subroutine setVarMeanALL_WTISD_D1_CK3(var, mean, sample, weight, weisum, meang)
6484#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6485 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_CK3
6486#endif
6487 use pm_kind, only: TKG => CK3
6488 integer(IK) , intent(out) :: weisum
6489 integer(IK) , intent(in) , contiguous :: weight(:)
6490 complex(TKG) , intent(in) , contiguous :: sample(:)
6491 complex(TKG) , intent(in) :: meang
6492 complex(TKG) , intent(out) :: mean
6493 real(TKG) , intent(out) :: var
6494 end subroutine
6495#endif
6496
6497#if CK2_ENABLED
6498 PURE module subroutine setVarMeanALL_WTISD_D1_CK2(var, mean, sample, weight, weisum, meang)
6499#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6500 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_CK2
6501#endif
6502 use pm_kind, only: TKG => CK2
6503 integer(IK) , intent(out) :: weisum
6504 integer(IK) , intent(in) , contiguous :: weight(:)
6505 complex(TKG) , intent(in) , contiguous :: sample(:)
6506 complex(TKG) , intent(in) :: meang
6507 complex(TKG) , intent(out) :: mean
6508 real(TKG) , intent(out) :: var
6509 end subroutine
6510#endif
6511
6512#if CK1_ENABLED
6513 PURE module subroutine setVarMeanALL_WTISD_D1_CK1(var, mean, sample, weight, weisum, meang)
6514#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6515 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_CK1
6516#endif
6517 use pm_kind, only: TKG => CK1
6518 integer(IK) , intent(out) :: weisum
6519 integer(IK) , intent(in) , contiguous :: weight(:)
6520 complex(TKG) , intent(in) , contiguous :: sample(:)
6521 complex(TKG) , intent(in) :: meang
6522 complex(TKG) , intent(out) :: mean
6523 real(TKG) , intent(out) :: var
6524 end subroutine
6525#endif
6526
6527 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6528
6529#if RK5_ENABLED
6530 PURE module subroutine setVarMeanALL_WTISD_D1_RK5(var, mean, sample, weight, weisum, meang)
6531#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6532 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_RK5
6533#endif
6534 use pm_kind, only: TKG => RK5
6535 integer(IK) , intent(out) :: weisum
6536 integer(IK) , intent(in) , contiguous :: weight(:)
6537 real(TKG) , intent(in) , contiguous :: sample(:)
6538 real(TKG) , intent(in) :: meang
6539 real(TKG) , intent(out) :: mean
6540 real(TKG) , intent(out) :: var
6541 end subroutine
6542#endif
6543
6544#if RK4_ENABLED
6545 PURE module subroutine setVarMeanALL_WTISD_D1_RK4(var, mean, sample, weight, weisum, meang)
6546#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6547 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_RK4
6548#endif
6549 use pm_kind, only: TKG => RK4
6550 integer(IK) , intent(out) :: weisum
6551 integer(IK) , intent(in) , contiguous :: weight(:)
6552 real(TKG) , intent(in) , contiguous :: sample(:)
6553 real(TKG) , intent(in) :: meang
6554 real(TKG) , intent(out) :: mean
6555 real(TKG) , intent(out) :: var
6556 end subroutine
6557#endif
6558
6559#if RK3_ENABLED
6560 PURE module subroutine setVarMeanALL_WTISD_D1_RK3(var, mean, sample, weight, weisum, meang)
6561#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6562 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_RK3
6563#endif
6564 use pm_kind, only: TKG => RK3
6565 integer(IK) , intent(out) :: weisum
6566 integer(IK) , intent(in) , contiguous :: weight(:)
6567 real(TKG) , intent(in) , contiguous :: sample(:)
6568 real(TKG) , intent(in) :: meang
6569 real(TKG) , intent(out) :: mean
6570 real(TKG) , intent(out) :: var
6571 end subroutine
6572#endif
6573
6574#if RK2_ENABLED
6575 PURE module subroutine setVarMeanALL_WTISD_D1_RK2(var, mean, sample, weight, weisum, meang)
6576#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6577 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_RK2
6578#endif
6579 use pm_kind, only: TKG => RK2
6580 integer(IK) , intent(out) :: weisum
6581 integer(IK) , intent(in) , contiguous :: weight(:)
6582 real(TKG) , intent(in) , contiguous :: sample(:)
6583 real(TKG) , intent(in) :: meang
6584 real(TKG) , intent(out) :: mean
6585 real(TKG) , intent(out) :: var
6586 end subroutine
6587#endif
6588
6589#if RK1_ENABLED
6590 PURE module subroutine setVarMeanALL_WTISD_D1_RK1(var, mean, sample, weight, weisum, meang)
6591#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6592 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D1_RK1
6593#endif
6594 use pm_kind, only: TKG => RK1
6595 integer(IK) , intent(out) :: weisum
6596 integer(IK) , intent(in) , contiguous :: weight(:)
6597 real(TKG) , intent(in) , contiguous :: sample(:)
6598 real(TKG) , intent(in) :: meang
6599 real(TKG) , intent(out) :: mean
6600 real(TKG) , intent(out) :: var
6601 end subroutine
6602#endif
6603
6604 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6605
6606 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6607 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6608 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6609
6610 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6611
6612#if CK5_ENABLED
6613 PURE module subroutine setVarMeanALL_WTRSD_D1_CK5(var, mean, sample, weight, weisum, meang)
6614#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6615 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_CK5
6616#endif
6617 use pm_kind, only: TKG => CK5
6618 real(TKG) , intent(out) :: weisum
6619 real(TKG) , intent(in) , contiguous :: weight(:)
6620 complex(TKG) , intent(in) , contiguous :: sample(:)
6621 complex(TKG) , intent(in) :: meang
6622 complex(TKG) , intent(out) :: mean
6623 real(TKG) , intent(out) :: var
6624 end subroutine
6625#endif
6626
6627#if CK4_ENABLED
6628 PURE module subroutine setVarMeanALL_WTRSD_D1_CK4(var, mean, sample, weight, weisum, meang)
6629#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6630 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_CK4
6631#endif
6632 use pm_kind, only: TKG => CK4
6633 real(TKG) , intent(out) :: weisum
6634 real(TKG) , intent(in) , contiguous :: weight(:)
6635 complex(TKG) , intent(in) , contiguous :: sample(:)
6636 complex(TKG) , intent(in) :: meang
6637 complex(TKG) , intent(out) :: mean
6638 real(TKG) , intent(out) :: var
6639 end subroutine
6640#endif
6641
6642#if CK3_ENABLED
6643 PURE module subroutine setVarMeanALL_WTRSD_D1_CK3(var, mean, sample, weight, weisum, meang)
6644#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6645 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_CK3
6646#endif
6647 use pm_kind, only: TKG => CK3
6648 real(TKG) , intent(out) :: weisum
6649 real(TKG) , intent(in) , contiguous :: weight(:)
6650 complex(TKG) , intent(in) , contiguous :: sample(:)
6651 complex(TKG) , intent(in) :: meang
6652 complex(TKG) , intent(out) :: mean
6653 real(TKG) , intent(out) :: var
6654 end subroutine
6655#endif
6656
6657#if CK2_ENABLED
6658 PURE module subroutine setVarMeanALL_WTRSD_D1_CK2(var, mean, sample, weight, weisum, meang)
6659#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6660 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_CK2
6661#endif
6662 use pm_kind, only: TKG => CK2
6663 real(TKG) , intent(out) :: weisum
6664 real(TKG) , intent(in) , contiguous :: weight(:)
6665 complex(TKG) , intent(in) , contiguous :: sample(:)
6666 complex(TKG) , intent(in) :: meang
6667 complex(TKG) , intent(out) :: mean
6668 real(TKG) , intent(out) :: var
6669 end subroutine
6670#endif
6671
6672#if CK1_ENABLED
6673 PURE module subroutine setVarMeanALL_WTRSD_D1_CK1(var, mean, sample, weight, weisum, meang)
6674#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6675 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_CK1
6676#endif
6677 use pm_kind, only: TKG => CK1
6678 real(TKG) , intent(out) :: weisum
6679 real(TKG) , intent(in) , contiguous :: weight(:)
6680 complex(TKG) , intent(in) , contiguous :: sample(:)
6681 complex(TKG) , intent(in) :: meang
6682 complex(TKG) , intent(out) :: mean
6683 real(TKG) , intent(out) :: var
6684 end subroutine
6685#endif
6686
6687 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6688
6689#if RK5_ENABLED
6690 PURE module subroutine setVarMeanALL_WTRSD_D1_RK5(var, mean, sample, weight, weisum, meang)
6691#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6692 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_RK5
6693#endif
6694 use pm_kind, only: TKG => RK5
6695 real(TKG) , intent(out) :: weisum
6696 real(TKG) , intent(in) , contiguous :: weight(:)
6697 real(TKG) , intent(in) , contiguous :: sample(:)
6698 real(TKG) , intent(in) :: meang
6699 real(TKG) , intent(out) :: mean
6700 real(TKG) , intent(out) :: var
6701 end subroutine
6702#endif
6703
6704#if RK4_ENABLED
6705 PURE module subroutine setVarMeanALL_WTRSD_D1_RK4(var, mean, sample, weight, weisum, meang)
6706#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6707 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_RK4
6708#endif
6709 use pm_kind, only: TKG => RK4
6710 real(TKG) , intent(out) :: weisum
6711 real(TKG) , intent(in) , contiguous :: weight(:)
6712 real(TKG) , intent(in) , contiguous :: sample(:)
6713 real(TKG) , intent(in) :: meang
6714 real(TKG) , intent(out) :: mean
6715 real(TKG) , intent(out) :: var
6716 end subroutine
6717#endif
6718
6719#if RK3_ENABLED
6720 PURE module subroutine setVarMeanALL_WTRSD_D1_RK3(var, mean, sample, weight, weisum, meang)
6721#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6722 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_RK3
6723#endif
6724 use pm_kind, only: TKG => RK3
6725 real(TKG) , intent(out) :: weisum
6726 real(TKG) , intent(in) , contiguous :: weight(:)
6727 real(TKG) , intent(in) , contiguous :: sample(:)
6728 real(TKG) , intent(in) :: meang
6729 real(TKG) , intent(out) :: mean
6730 real(TKG) , intent(out) :: var
6731 end subroutine
6732#endif
6733
6734#if RK2_ENABLED
6735 PURE module subroutine setVarMeanALL_WTRSD_D1_RK2(var, mean, sample, weight, weisum, meang)
6736#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6737 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_RK2
6738#endif
6739 use pm_kind, only: TKG => RK2
6740 real(TKG) , intent(out) :: weisum
6741 real(TKG) , intent(in) , contiguous :: weight(:)
6742 real(TKG) , intent(in) , contiguous :: sample(:)
6743 real(TKG) , intent(in) :: meang
6744 real(TKG) , intent(out) :: mean
6745 real(TKG) , intent(out) :: var
6746 end subroutine
6747#endif
6748
6749#if RK1_ENABLED
6750 PURE module subroutine setVarMeanALL_WTRSD_D1_RK1(var, mean, sample, weight, weisum, meang)
6751#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6752 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D1_RK1
6753#endif
6754 use pm_kind, only: TKG => RK1
6755 real(TKG) , intent(out) :: weisum
6756 real(TKG) , intent(in) , contiguous :: weight(:)
6757 real(TKG) , intent(in) , contiguous :: sample(:)
6758 real(TKG) , intent(in) :: meang
6759 real(TKG) , intent(out) :: mean
6760 real(TKG) , intent(out) :: var
6761 end subroutine
6762#endif
6763
6764 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6765
6766 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6767 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6768 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6769
6770 end interface
6771
6772 ! ALL D2
6773
6774 interface setVarMean
6775
6776 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6777 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6778 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6779
6780 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6781
6782#if CK5_ENABLED
6783 PURE module subroutine setVarMeanALL_WNODD_D2_CK5(var, mean, sample, meang)
6784#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6785 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_CK5
6786#endif
6787 use pm_kind, only: TKG => CK5
6788 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6789 complex(TKG) , intent(in) :: meang
6790 complex(TKG) , intent(out) :: mean
6791 real(TKG) , intent(out) :: var
6792 end subroutine
6793#endif
6794
6795#if CK4_ENABLED
6796 PURE module subroutine setVarMeanALL_WNODD_D2_CK4(var, mean, sample, meang)
6797#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6798 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_CK4
6799#endif
6800 use pm_kind, only: TKG => CK4
6801 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6802 complex(TKG) , intent(in) :: meang
6803 complex(TKG) , intent(out) :: mean
6804 real(TKG) , intent(out) :: var
6805 end subroutine
6806#endif
6807
6808#if CK3_ENABLED
6809 PURE module subroutine setVarMeanALL_WNODD_D2_CK3(var, mean, sample, meang)
6810#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6811 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_CK3
6812#endif
6813 use pm_kind, only: TKG => CK3
6814 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6815 complex(TKG) , intent(in) :: meang
6816 complex(TKG) , intent(out) :: mean
6817 real(TKG) , intent(out) :: var
6818 end subroutine
6819#endif
6820
6821#if CK2_ENABLED
6822 PURE module subroutine setVarMeanALL_WNODD_D2_CK2(var, mean, sample, meang)
6823#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6824 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_CK2
6825#endif
6826 use pm_kind, only: TKG => CK2
6827 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6828 complex(TKG) , intent(in) :: meang
6829 complex(TKG) , intent(out) :: mean
6830 real(TKG) , intent(out) :: var
6831 end subroutine
6832#endif
6833
6834#if CK1_ENABLED
6835 PURE module subroutine setVarMeanALL_WNODD_D2_CK1(var, mean, sample, meang)
6836#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6837 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_CK1
6838#endif
6839 use pm_kind, only: TKG => CK1
6840 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6841 complex(TKG) , intent(in) :: meang
6842 complex(TKG) , intent(out) :: mean
6843 real(TKG) , intent(out) :: var
6844 end subroutine
6845#endif
6846
6847 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6848
6849#if RK5_ENABLED
6850 PURE module subroutine setVarMeanALL_WNODD_D2_RK5(var, mean, sample, meang)
6851#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6852 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_RK5
6853#endif
6854 use pm_kind, only: TKG => RK5
6855 real(TKG) , intent(in) , contiguous :: sample(:,:)
6856 real(TKG) , intent(in) :: meang
6857 real(TKG) , intent(out) :: mean
6858 real(TKG) , intent(out) :: var
6859 end subroutine
6860#endif
6861
6862#if RK4_ENABLED
6863 PURE module subroutine setVarMeanALL_WNODD_D2_RK4(var, mean, sample, meang)
6864#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6865 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_RK4
6866#endif
6867 use pm_kind, only: TKG => RK4
6868 real(TKG) , intent(in) , contiguous :: sample(:,:)
6869 real(TKG) , intent(in) :: meang
6870 real(TKG) , intent(out) :: mean
6871 real(TKG) , intent(out) :: var
6872 end subroutine
6873#endif
6874
6875#if RK3_ENABLED
6876 PURE module subroutine setVarMeanALL_WNODD_D2_RK3(var, mean, sample, meang)
6877#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6878 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_RK3
6879#endif
6880 use pm_kind, only: TKG => RK3
6881 real(TKG) , intent(in) , contiguous :: sample(:,:)
6882 real(TKG) , intent(in) :: meang
6883 real(TKG) , intent(out) :: mean
6884 real(TKG) , intent(out) :: var
6885 end subroutine
6886#endif
6887
6888#if RK2_ENABLED
6889 PURE module subroutine setVarMeanALL_WNODD_D2_RK2(var, mean, sample, meang)
6890#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6891 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_RK2
6892#endif
6893 use pm_kind, only: TKG => RK2
6894 real(TKG) , intent(in) , contiguous :: sample(:,:)
6895 real(TKG) , intent(in) :: meang
6896 real(TKG) , intent(out) :: mean
6897 real(TKG) , intent(out) :: var
6898 end subroutine
6899#endif
6900
6901#if RK1_ENABLED
6902 PURE module subroutine setVarMeanALL_WNODD_D2_RK1(var, mean, sample, meang)
6903#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6904 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WNODD_D2_RK1
6905#endif
6906 use pm_kind, only: TKG => RK1
6907 real(TKG) , intent(in) , contiguous :: sample(:,:)
6908 real(TKG) , intent(in) :: meang
6909 real(TKG) , intent(out) :: mean
6910 real(TKG) , intent(out) :: var
6911 end subroutine
6912#endif
6913
6914 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6915
6916 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6917 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6918 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6919
6920 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6921
6922#if CK5_ENABLED
6923 PURE module subroutine setVarMeanALL_WTISD_D2_CK5(var, mean, sample, weight, weisum, meang)
6924#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6925 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_CK5
6926#endif
6927 use pm_kind, only: TKG => CK5
6928 integer(IK) , intent(out) :: weisum
6929 integer(IK) , intent(in) , contiguous :: weight(:)
6930 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6931 complex(TKG) , intent(in) :: meang
6932 complex(TKG) , intent(out) :: mean
6933 real(TKG) , intent(out) :: var
6934 end subroutine
6935#endif
6936
6937#if CK4_ENABLED
6938 PURE module subroutine setVarMeanALL_WTISD_D2_CK4(var, mean, sample, weight, weisum, meang)
6939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6940 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_CK4
6941#endif
6942 use pm_kind, only: TKG => CK4
6943 integer(IK) , intent(out) :: weisum
6944 integer(IK) , intent(in) , contiguous :: weight(:)
6945 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6946 complex(TKG) , intent(in) :: meang
6947 complex(TKG) , intent(out) :: mean
6948 real(TKG) , intent(out) :: var
6949 end subroutine
6950#endif
6951
6952#if CK3_ENABLED
6953 PURE module subroutine setVarMeanALL_WTISD_D2_CK3(var, mean, sample, weight, weisum, meang)
6954#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6955 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_CK3
6956#endif
6957 use pm_kind, only: TKG => CK3
6958 integer(IK) , intent(out) :: weisum
6959 integer(IK) , intent(in) , contiguous :: weight(:)
6960 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6961 complex(TKG) , intent(in) :: meang
6962 complex(TKG) , intent(out) :: mean
6963 real(TKG) , intent(out) :: var
6964 end subroutine
6965#endif
6966
6967#if CK2_ENABLED
6968 PURE module subroutine setVarMeanALL_WTISD_D2_CK2(var, mean, sample, weight, weisum, meang)
6969#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6970 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_CK2
6971#endif
6972 use pm_kind, only: TKG => CK2
6973 integer(IK) , intent(out) :: weisum
6974 integer(IK) , intent(in) , contiguous :: weight(:)
6975 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6976 complex(TKG) , intent(in) :: meang
6977 complex(TKG) , intent(out) :: mean
6978 real(TKG) , intent(out) :: var
6979 end subroutine
6980#endif
6981
6982#if CK1_ENABLED
6983 PURE module subroutine setVarMeanALL_WTISD_D2_CK1(var, mean, sample, weight, weisum, meang)
6984#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6985 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_CK1
6986#endif
6987 use pm_kind, only: TKG => CK1
6988 integer(IK) , intent(out) :: weisum
6989 integer(IK) , intent(in) , contiguous :: weight(:)
6990 complex(TKG) , intent(in) , contiguous :: sample(:,:)
6991 complex(TKG) , intent(in) :: meang
6992 complex(TKG) , intent(out) :: mean
6993 real(TKG) , intent(out) :: var
6994 end subroutine
6995#endif
6996
6997 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6998
6999#if RK5_ENABLED
7000 PURE module subroutine setVarMeanALL_WTISD_D2_RK5(var, mean, sample, weight, weisum, meang)
7001#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7002 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_RK5
7003#endif
7004 use pm_kind, only: TKG => RK5
7005 integer(IK) , intent(out) :: weisum
7006 integer(IK) , intent(in) , contiguous :: weight(:)
7007 real(TKG) , intent(in) , contiguous :: sample(:,:)
7008 real(TKG) , intent(in) :: meang
7009 real(TKG) , intent(out) :: mean
7010 real(TKG) , intent(out) :: var
7011 end subroutine
7012#endif
7013
7014#if RK4_ENABLED
7015 PURE module subroutine setVarMeanALL_WTISD_D2_RK4(var, mean, sample, weight, weisum, meang)
7016#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7017 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_RK4
7018#endif
7019 use pm_kind, only: TKG => RK4
7020 integer(IK) , intent(out) :: weisum
7021 integer(IK) , intent(in) , contiguous :: weight(:)
7022 real(TKG) , intent(in) , contiguous :: sample(:,:)
7023 real(TKG) , intent(in) :: meang
7024 real(TKG) , intent(out) :: mean
7025 real(TKG) , intent(out) :: var
7026 end subroutine
7027#endif
7028
7029#if RK3_ENABLED
7030 PURE module subroutine setVarMeanALL_WTISD_D2_RK3(var, mean, sample, weight, weisum, meang)
7031#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7032 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_RK3
7033#endif
7034 use pm_kind, only: TKG => RK3
7035 integer(IK) , intent(out) :: weisum
7036 integer(IK) , intent(in) , contiguous :: weight(:)
7037 real(TKG) , intent(in) , contiguous :: sample(:,:)
7038 real(TKG) , intent(in) :: meang
7039 real(TKG) , intent(out) :: mean
7040 real(TKG) , intent(out) :: var
7041 end subroutine
7042#endif
7043
7044#if RK2_ENABLED
7045 PURE module subroutine setVarMeanALL_WTISD_D2_RK2(var, mean, sample, weight, weisum, meang)
7046#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7047 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_RK2
7048#endif
7049 use pm_kind, only: TKG => RK2
7050 integer(IK) , intent(out) :: weisum
7051 integer(IK) , intent(in) , contiguous :: weight(:)
7052 real(TKG) , intent(in) , contiguous :: sample(:,:)
7053 real(TKG) , intent(in) :: meang
7054 real(TKG) , intent(out) :: mean
7055 real(TKG) , intent(out) :: var
7056 end subroutine
7057#endif
7058
7059#if RK1_ENABLED
7060 PURE module subroutine setVarMeanALL_WTISD_D2_RK1(var, mean, sample, weight, weisum, meang)
7061#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7062 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTISD_D2_RK1
7063#endif
7064 use pm_kind, only: TKG => RK1
7065 integer(IK) , intent(out) :: weisum
7066 integer(IK) , intent(in) , contiguous :: weight(:)
7067 real(TKG) , intent(in) , contiguous :: sample(:,:)
7068 real(TKG) , intent(in) :: meang
7069 real(TKG) , intent(out) :: mean
7070 real(TKG) , intent(out) :: var
7071 end subroutine
7072#endif
7073
7074 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7075
7076 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7077 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7078 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7079
7080 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7081
7082#if CK5_ENABLED
7083 PURE module subroutine setVarMeanALL_WTRSD_D2_CK5(var, mean, sample, weight, weisum, meang)
7084#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7085 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_CK5
7086#endif
7087 use pm_kind, only: TKG => CK5
7088 real(TKG) , intent(out) :: weisum
7089 real(TKG) , intent(in) , contiguous :: weight(:)
7090 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7091 complex(TKG) , intent(in) :: meang
7092 complex(TKG) , intent(out) :: mean
7093 real(TKG) , intent(out) :: var
7094 end subroutine
7095#endif
7096
7097#if CK4_ENABLED
7098 PURE module subroutine setVarMeanALL_WTRSD_D2_CK4(var, mean, sample, weight, weisum, meang)
7099#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7100 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_CK4
7101#endif
7102 use pm_kind, only: TKG => CK4
7103 real(TKG) , intent(out) :: weisum
7104 real(TKG) , intent(in) , contiguous :: weight(:)
7105 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7106 complex(TKG) , intent(in) :: meang
7107 complex(TKG) , intent(out) :: mean
7108 real(TKG) , intent(out) :: var
7109 end subroutine
7110#endif
7111
7112#if CK3_ENABLED
7113 PURE module subroutine setVarMeanALL_WTRSD_D2_CK3(var, mean, sample, weight, weisum, meang)
7114#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7115 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_CK3
7116#endif
7117 use pm_kind, only: TKG => CK3
7118 real(TKG) , intent(out) :: weisum
7119 real(TKG) , intent(in) , contiguous :: weight(:)
7120 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7121 complex(TKG) , intent(in) :: meang
7122 complex(TKG) , intent(out) :: mean
7123 real(TKG) , intent(out) :: var
7124 end subroutine
7125#endif
7126
7127#if CK2_ENABLED
7128 PURE module subroutine setVarMeanALL_WTRSD_D2_CK2(var, mean, sample, weight, weisum, meang)
7129#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7130 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_CK2
7131#endif
7132 use pm_kind, only: TKG => CK2
7133 real(TKG) , intent(out) :: weisum
7134 real(TKG) , intent(in) , contiguous :: weight(:)
7135 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7136 complex(TKG) , intent(in) :: meang
7137 complex(TKG) , intent(out) :: mean
7138 real(TKG) , intent(out) :: var
7139 end subroutine
7140#endif
7141
7142#if CK1_ENABLED
7143 PURE module subroutine setVarMeanALL_WTRSD_D2_CK1(var, mean, sample, weight, weisum, meang)
7144#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7145 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_CK1
7146#endif
7147 use pm_kind, only: TKG => CK1
7148 real(TKG) , intent(out) :: weisum
7149 real(TKG) , intent(in) , contiguous :: weight(:)
7150 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7151 complex(TKG) , intent(in) :: meang
7152 complex(TKG) , intent(out) :: mean
7153 real(TKG) , intent(out) :: var
7154 end subroutine
7155#endif
7156
7157 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7158
7159#if RK5_ENABLED
7160 PURE module subroutine setVarMeanALL_WTRSD_D2_RK5(var, mean, sample, weight, weisum, meang)
7161#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7162 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_RK5
7163#endif
7164 use pm_kind, only: TKG => RK5
7165 real(TKG) , intent(out) :: weisum
7166 real(TKG) , intent(in) , contiguous :: weight(:)
7167 real(TKG) , intent(in) , contiguous :: sample(:,:)
7168 real(TKG) , intent(in) :: meang
7169 real(TKG) , intent(out) :: mean
7170 real(TKG) , intent(out) :: var
7171 end subroutine
7172#endif
7173
7174#if RK4_ENABLED
7175 PURE module subroutine setVarMeanALL_WTRSD_D2_RK4(var, mean, sample, weight, weisum, meang)
7176#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7177 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_RK4
7178#endif
7179 use pm_kind, only: TKG => RK4
7180 real(TKG) , intent(out) :: weisum
7181 real(TKG) , intent(in) , contiguous :: weight(:)
7182 real(TKG) , intent(in) , contiguous :: sample(:,:)
7183 real(TKG) , intent(in) :: meang
7184 real(TKG) , intent(out) :: mean
7185 real(TKG) , intent(out) :: var
7186 end subroutine
7187#endif
7188
7189#if RK3_ENABLED
7190 PURE module subroutine setVarMeanALL_WTRSD_D2_RK3(var, mean, sample, weight, weisum, meang)
7191#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7192 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_RK3
7193#endif
7194 use pm_kind, only: TKG => RK3
7195 real(TKG) , intent(out) :: weisum
7196 real(TKG) , intent(in) , contiguous :: weight(:)
7197 real(TKG) , intent(in) , contiguous :: sample(:,:)
7198 real(TKG) , intent(in) :: meang
7199 real(TKG) , intent(out) :: mean
7200 real(TKG) , intent(out) :: var
7201 end subroutine
7202#endif
7203
7204#if RK2_ENABLED
7205 PURE module subroutine setVarMeanALL_WTRSD_D2_RK2(var, mean, sample, weight, weisum, meang)
7206#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7207 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_RK2
7208#endif
7209 use pm_kind, only: TKG => RK2
7210 real(TKG) , intent(out) :: weisum
7211 real(TKG) , intent(in) , contiguous :: weight(:)
7212 real(TKG) , intent(in) , contiguous :: sample(:,:)
7213 real(TKG) , intent(in) :: meang
7214 real(TKG) , intent(out) :: mean
7215 real(TKG) , intent(out) :: var
7216 end subroutine
7217#endif
7218
7219#if RK1_ENABLED
7220 PURE module subroutine setVarMeanALL_WTRSD_D2_RK1(var, mean, sample, weight, weisum, meang)
7221#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7222 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanALL_WTRSD_D2_RK1
7223#endif
7224 use pm_kind, only: TKG => RK1
7225 real(TKG) , intent(out) :: weisum
7226 real(TKG) , intent(in) , contiguous :: weight(:)
7227 real(TKG) , intent(in) , contiguous :: sample(:,:)
7228 real(TKG) , intent(in) :: meang
7229 real(TKG) , intent(out) :: mean
7230 real(TKG) , intent(out) :: var
7231 end subroutine
7232#endif
7233
7234 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7235
7236 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7237 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7238 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7239
7240 end interface
7241
7242 ! DIM D1
7243
7244 interface setVarMean
7245
7246 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7247 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7248 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7249
7250 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7251
7252#if CK5_ENABLED
7253 PURE module subroutine setVarMeanDIM_WNODD_D1_CK5(var, mean, sample, dim, meang)
7254#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7255 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_CK5
7256#endif
7257 use pm_kind, only: TKG => CK5
7258 complex(TKG) , intent(in) , contiguous :: sample(:)
7259 complex(TKG) , intent(in) :: meang
7260 complex(TKG) , intent(out) :: mean
7261 real(TKG) , intent(out) :: var
7262 integer(IK) , intent(in) :: dim
7263 end subroutine
7264#endif
7265
7266#if CK4_ENABLED
7267 PURE module subroutine setVarMeanDIM_WNODD_D1_CK4(var, mean, sample, dim, meang)
7268#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7269 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_CK4
7270#endif
7271 use pm_kind, only: TKG => CK4
7272 complex(TKG) , intent(in) , contiguous :: sample(:)
7273 complex(TKG) , intent(in) :: meang
7274 complex(TKG) , intent(out) :: mean
7275 real(TKG) , intent(out) :: var
7276 integer(IK) , intent(in) :: dim
7277 end subroutine
7278#endif
7279
7280#if CK3_ENABLED
7281 PURE module subroutine setVarMeanDIM_WNODD_D1_CK3(var, mean, sample, dim, meang)
7282#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7283 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_CK3
7284#endif
7285 use pm_kind, only: TKG => CK3
7286 complex(TKG) , intent(in) , contiguous :: sample(:)
7287 complex(TKG) , intent(in) :: meang
7288 complex(TKG) , intent(out) :: mean
7289 real(TKG) , intent(out) :: var
7290 integer(IK) , intent(in) :: dim
7291 end subroutine
7292#endif
7293
7294#if CK2_ENABLED
7295 PURE module subroutine setVarMeanDIM_WNODD_D1_CK2(var, mean, sample, dim, meang)
7296#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7297 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_CK2
7298#endif
7299 use pm_kind, only: TKG => CK2
7300 complex(TKG) , intent(in) , contiguous :: sample(:)
7301 complex(TKG) , intent(in) :: meang
7302 complex(TKG) , intent(out) :: mean
7303 real(TKG) , intent(out) :: var
7304 integer(IK) , intent(in) :: dim
7305 end subroutine
7306#endif
7307
7308#if CK1_ENABLED
7309 PURE module subroutine setVarMeanDIM_WNODD_D1_CK1(var, mean, sample, dim, meang)
7310#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7311 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_CK1
7312#endif
7313 use pm_kind, only: TKG => CK1
7314 complex(TKG) , intent(in) , contiguous :: sample(:)
7315 complex(TKG) , intent(in) :: meang
7316 complex(TKG) , intent(out) :: mean
7317 real(TKG) , intent(out) :: var
7318 integer(IK) , intent(in) :: dim
7319 end subroutine
7320#endif
7321
7322 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7323
7324#if RK5_ENABLED
7325 PURE module subroutine setVarMeanDIM_WNODD_D1_RK5(var, mean, sample, dim, meang)
7326#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7327 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_RK5
7328#endif
7329 use pm_kind, only: TKG => RK5
7330 real(TKG) , intent(in) , contiguous :: sample(:)
7331 real(TKG) , intent(in) :: meang
7332 real(TKG) , intent(out) :: mean
7333 real(TKG) , intent(out) :: var
7334 integer(IK) , intent(in) :: dim
7335 end subroutine
7336#endif
7337
7338#if RK4_ENABLED
7339 PURE module subroutine setVarMeanDIM_WNODD_D1_RK4(var, mean, sample, dim, meang)
7340#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7341 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_RK4
7342#endif
7343 use pm_kind, only: TKG => RK4
7344 real(TKG) , intent(in) , contiguous :: sample(:)
7345 real(TKG) , intent(in) :: meang
7346 real(TKG) , intent(out) :: mean
7347 real(TKG) , intent(out) :: var
7348 integer(IK) , intent(in) :: dim
7349 end subroutine
7350#endif
7351
7352#if RK3_ENABLED
7353 PURE module subroutine setVarMeanDIM_WNODD_D1_RK3(var, mean, sample, dim, meang)
7354#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7355 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_RK3
7356#endif
7357 use pm_kind, only: TKG => RK3
7358 real(TKG) , intent(in) , contiguous :: sample(:)
7359 real(TKG) , intent(in) :: meang
7360 real(TKG) , intent(out) :: mean
7361 real(TKG) , intent(out) :: var
7362 integer(IK) , intent(in) :: dim
7363 end subroutine
7364#endif
7365
7366#if RK2_ENABLED
7367 PURE module subroutine setVarMeanDIM_WNODD_D1_RK2(var, mean, sample, dim, meang)
7368#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7369 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_RK2
7370#endif
7371 use pm_kind, only: TKG => RK2
7372 real(TKG) , intent(in) , contiguous :: sample(:)
7373 real(TKG) , intent(in) :: meang
7374 real(TKG) , intent(out) :: mean
7375 real(TKG) , intent(out) :: var
7376 integer(IK) , intent(in) :: dim
7377 end subroutine
7378#endif
7379
7380#if RK1_ENABLED
7381 PURE module subroutine setVarMeanDIM_WNODD_D1_RK1(var, mean, sample, dim, meang)
7382#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7383 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D1_RK1
7384#endif
7385 use pm_kind, only: TKG => RK1
7386 real(TKG) , intent(in) , contiguous :: sample(:)
7387 real(TKG) , intent(in) :: meang
7388 real(TKG) , intent(out) :: mean
7389 real(TKG) , intent(out) :: var
7390 integer(IK) , intent(in) :: dim
7391 end subroutine
7392#endif
7393
7394 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7395
7396 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7397 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7398 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7399
7400 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7401
7402#if CK5_ENABLED
7403 PURE module subroutine setVarMeanDIM_WTISD_D1_CK5(var, mean, sample, dim, weight, weisum, meang)
7404#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7405 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_CK5
7406#endif
7407 use pm_kind, only: TKG => CK5
7408 integer(IK) , intent(out) :: weisum
7409 integer(IK) , intent(in) , contiguous :: weight(:)
7410 complex(TKG) , intent(in) , contiguous :: sample(:)
7411 complex(TKG) , intent(in) :: meang
7412 complex(TKG) , intent(out) :: mean
7413 real(TKG) , intent(out) :: var
7414 integer(IK) , intent(in) :: dim
7415 end subroutine
7416#endif
7417
7418#if CK4_ENABLED
7419 PURE module subroutine setVarMeanDIM_WTISD_D1_CK4(var, mean, sample, dim, weight, weisum, meang)
7420#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7421 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_CK4
7422#endif
7423 use pm_kind, only: TKG => CK4
7424 integer(IK) , intent(out) :: weisum
7425 integer(IK) , intent(in) , contiguous :: weight(:)
7426 complex(TKG) , intent(in) , contiguous :: sample(:)
7427 complex(TKG) , intent(in) :: meang
7428 complex(TKG) , intent(out) :: mean
7429 real(TKG) , intent(out) :: var
7430 integer(IK) , intent(in) :: dim
7431 end subroutine
7432#endif
7433
7434#if CK3_ENABLED
7435 PURE module subroutine setVarMeanDIM_WTISD_D1_CK3(var, mean, sample, dim, weight, weisum, meang)
7436#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7437 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_CK3
7438#endif
7439 use pm_kind, only: TKG => CK3
7440 integer(IK) , intent(out) :: weisum
7441 integer(IK) , intent(in) , contiguous :: weight(:)
7442 complex(TKG) , intent(in) , contiguous :: sample(:)
7443 complex(TKG) , intent(in) :: meang
7444 complex(TKG) , intent(out) :: mean
7445 real(TKG) , intent(out) :: var
7446 integer(IK) , intent(in) :: dim
7447 end subroutine
7448#endif
7449
7450#if CK2_ENABLED
7451 PURE module subroutine setVarMeanDIM_WTISD_D1_CK2(var, mean, sample, dim, weight, weisum, meang)
7452#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7453 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_CK2
7454#endif
7455 use pm_kind, only: TKG => CK2
7456 integer(IK) , intent(out) :: weisum
7457 integer(IK) , intent(in) , contiguous :: weight(:)
7458 complex(TKG) , intent(in) , contiguous :: sample(:)
7459 complex(TKG) , intent(in) :: meang
7460 complex(TKG) , intent(out) :: mean
7461 real(TKG) , intent(out) :: var
7462 integer(IK) , intent(in) :: dim
7463 end subroutine
7464#endif
7465
7466#if CK1_ENABLED
7467 PURE module subroutine setVarMeanDIM_WTISD_D1_CK1(var, mean, sample, dim, weight, weisum, meang)
7468#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7469 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_CK1
7470#endif
7471 use pm_kind, only: TKG => CK1
7472 integer(IK) , intent(out) :: weisum
7473 integer(IK) , intent(in) , contiguous :: weight(:)
7474 complex(TKG) , intent(in) , contiguous :: sample(:)
7475 complex(TKG) , intent(in) :: meang
7476 complex(TKG) , intent(out) :: mean
7477 real(TKG) , intent(out) :: var
7478 integer(IK) , intent(in) :: dim
7479 end subroutine
7480#endif
7481
7482 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7483
7484#if RK5_ENABLED
7485 PURE module subroutine setVarMeanDIM_WTISD_D1_RK5(var, mean, sample, dim, weight, weisum, meang)
7486#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7487 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_RK5
7488#endif
7489 use pm_kind, only: TKG => RK5
7490 integer(IK) , intent(out) :: weisum
7491 integer(IK) , intent(in) , contiguous :: weight(:)
7492 real(TKG) , intent(in) , contiguous :: sample(:)
7493 real(TKG) , intent(in) :: meang
7494 real(TKG) , intent(out) :: mean
7495 real(TKG) , intent(out) :: var
7496 integer(IK) , intent(in) :: dim
7497 end subroutine
7498#endif
7499
7500#if RK4_ENABLED
7501 PURE module subroutine setVarMeanDIM_WTISD_D1_RK4(var, mean, sample, dim, weight, weisum, meang)
7502#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7503 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_RK4
7504#endif
7505 use pm_kind, only: TKG => RK4
7506 integer(IK) , intent(out) :: weisum
7507 integer(IK) , intent(in) , contiguous :: weight(:)
7508 real(TKG) , intent(in) , contiguous :: sample(:)
7509 real(TKG) , intent(in) :: meang
7510 real(TKG) , intent(out) :: mean
7511 real(TKG) , intent(out) :: var
7512 integer(IK) , intent(in) :: dim
7513 end subroutine
7514#endif
7515
7516#if RK3_ENABLED
7517 PURE module subroutine setVarMeanDIM_WTISD_D1_RK3(var, mean, sample, dim, weight, weisum, meang)
7518#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7519 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_RK3
7520#endif
7521 use pm_kind, only: TKG => RK3
7522 integer(IK) , intent(out) :: weisum
7523 integer(IK) , intent(in) , contiguous :: weight(:)
7524 real(TKG) , intent(in) , contiguous :: sample(:)
7525 real(TKG) , intent(in) :: meang
7526 real(TKG) , intent(out) :: mean
7527 real(TKG) , intent(out) :: var
7528 integer(IK) , intent(in) :: dim
7529 end subroutine
7530#endif
7531
7532#if RK2_ENABLED
7533 PURE module subroutine setVarMeanDIM_WTISD_D1_RK2(var, mean, sample, dim, weight, weisum, meang)
7534#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7535 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_RK2
7536#endif
7537 use pm_kind, only: TKG => RK2
7538 integer(IK) , intent(out) :: weisum
7539 integer(IK) , intent(in) , contiguous :: weight(:)
7540 real(TKG) , intent(in) , contiguous :: sample(:)
7541 real(TKG) , intent(in) :: meang
7542 real(TKG) , intent(out) :: mean
7543 real(TKG) , intent(out) :: var
7544 integer(IK) , intent(in) :: dim
7545 end subroutine
7546#endif
7547
7548#if RK1_ENABLED
7549 PURE module subroutine setVarMeanDIM_WTISD_D1_RK1(var, mean, sample, dim, weight, weisum, meang)
7550#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7551 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D1_RK1
7552#endif
7553 use pm_kind, only: TKG => RK1
7554 integer(IK) , intent(out) :: weisum
7555 integer(IK) , intent(in) , contiguous :: weight(:)
7556 real(TKG) , intent(in) , contiguous :: sample(:)
7557 real(TKG) , intent(in) :: meang
7558 real(TKG) , intent(out) :: mean
7559 real(TKG) , intent(out) :: var
7560 integer(IK) , intent(in) :: dim
7561 end subroutine
7562#endif
7563
7564 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7565
7566 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7567 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7568 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7569
7570 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7571
7572#if CK5_ENABLED
7573 PURE module subroutine setVarMeanDIM_WTRSD_D1_CK5(var, mean, sample, dim, weight, weisum, meang)
7574#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7575 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_CK5
7576#endif
7577 use pm_kind, only: TKG => CK5
7578 real(TKG) , intent(out) :: weisum
7579 real(TKG) , intent(in) , contiguous :: weight(:)
7580 complex(TKG) , intent(in) , contiguous :: sample(:)
7581 complex(TKG) , intent(in) :: meang
7582 complex(TKG) , intent(out) :: mean
7583 real(TKG) , intent(out) :: var
7584 integer(IK) , intent(in) :: dim
7585 end subroutine
7586#endif
7587
7588#if CK4_ENABLED
7589 PURE module subroutine setVarMeanDIM_WTRSD_D1_CK4(var, mean, sample, dim, weight, weisum, meang)
7590#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7591 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_CK4
7592#endif
7593 use pm_kind, only: TKG => CK4
7594 real(TKG) , intent(out) :: weisum
7595 real(TKG) , intent(in) , contiguous :: weight(:)
7596 complex(TKG) , intent(in) , contiguous :: sample(:)
7597 complex(TKG) , intent(in) :: meang
7598 complex(TKG) , intent(out) :: mean
7599 real(TKG) , intent(out) :: var
7600 integer(IK) , intent(in) :: dim
7601 end subroutine
7602#endif
7603
7604#if CK3_ENABLED
7605 PURE module subroutine setVarMeanDIM_WTRSD_D1_CK3(var, mean, sample, dim, weight, weisum, meang)
7606#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7607 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_CK3
7608#endif
7609 use pm_kind, only: TKG => CK3
7610 real(TKG) , intent(out) :: weisum
7611 real(TKG) , intent(in) , contiguous :: weight(:)
7612 complex(TKG) , intent(in) , contiguous :: sample(:)
7613 complex(TKG) , intent(in) :: meang
7614 complex(TKG) , intent(out) :: mean
7615 real(TKG) , intent(out) :: var
7616 integer(IK) , intent(in) :: dim
7617 end subroutine
7618#endif
7619
7620#if CK2_ENABLED
7621 PURE module subroutine setVarMeanDIM_WTRSD_D1_CK2(var, mean, sample, dim, weight, weisum, meang)
7622#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7623 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_CK2
7624#endif
7625 use pm_kind, only: TKG => CK2
7626 real(TKG) , intent(out) :: weisum
7627 real(TKG) , intent(in) , contiguous :: weight(:)
7628 complex(TKG) , intent(in) , contiguous :: sample(:)
7629 complex(TKG) , intent(in) :: meang
7630 complex(TKG) , intent(out) :: mean
7631 real(TKG) , intent(out) :: var
7632 integer(IK) , intent(in) :: dim
7633 end subroutine
7634#endif
7635
7636#if CK1_ENABLED
7637 PURE module subroutine setVarMeanDIM_WTRSD_D1_CK1(var, mean, sample, dim, weight, weisum, meang)
7638#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7639 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_CK1
7640#endif
7641 use pm_kind, only: TKG => CK1
7642 real(TKG) , intent(out) :: weisum
7643 real(TKG) , intent(in) , contiguous :: weight(:)
7644 complex(TKG) , intent(in) , contiguous :: sample(:)
7645 complex(TKG) , intent(in) :: meang
7646 complex(TKG) , intent(out) :: mean
7647 real(TKG) , intent(out) :: var
7648 integer(IK) , intent(in) :: dim
7649 end subroutine
7650#endif
7651
7652 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7653
7654#if RK5_ENABLED
7655 PURE module subroutine setVarMeanDIM_WTRSD_D1_RK5(var, mean, sample, dim, weight, weisum, meang)
7656#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7657 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_RK5
7658#endif
7659 use pm_kind, only: TKG => RK5
7660 real(TKG) , intent(out) :: weisum
7661 real(TKG) , intent(in) , contiguous :: weight(:)
7662 real(TKG) , intent(in) , contiguous :: sample(:)
7663 real(TKG) , intent(in) :: meang
7664 real(TKG) , intent(out) :: mean
7665 real(TKG) , intent(out) :: var
7666 integer(IK) , intent(in) :: dim
7667 end subroutine
7668#endif
7669
7670#if RK4_ENABLED
7671 PURE module subroutine setVarMeanDIM_WTRSD_D1_RK4(var, mean, sample, dim, weight, weisum, meang)
7672#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7673 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_RK4
7674#endif
7675 use pm_kind, only: TKG => RK4
7676 real(TKG) , intent(out) :: weisum
7677 real(TKG) , intent(in) , contiguous :: weight(:)
7678 real(TKG) , intent(in) , contiguous :: sample(:)
7679 real(TKG) , intent(in) :: meang
7680 real(TKG) , intent(out) :: mean
7681 real(TKG) , intent(out) :: var
7682 integer(IK) , intent(in) :: dim
7683 end subroutine
7684#endif
7685
7686#if RK3_ENABLED
7687 PURE module subroutine setVarMeanDIM_WTRSD_D1_RK3(var, mean, sample, dim, weight, weisum, meang)
7688#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7689 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_RK3
7690#endif
7691 use pm_kind, only: TKG => RK3
7692 real(TKG) , intent(out) :: weisum
7693 real(TKG) , intent(in) , contiguous :: weight(:)
7694 real(TKG) , intent(in) , contiguous :: sample(:)
7695 real(TKG) , intent(in) :: meang
7696 real(TKG) , intent(out) :: mean
7697 real(TKG) , intent(out) :: var
7698 integer(IK) , intent(in) :: dim
7699 end subroutine
7700#endif
7701
7702#if RK2_ENABLED
7703 PURE module subroutine setVarMeanDIM_WTRSD_D1_RK2(var, mean, sample, dim, weight, weisum, meang)
7704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7705 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_RK2
7706#endif
7707 use pm_kind, only: TKG => RK2
7708 real(TKG) , intent(out) :: weisum
7709 real(TKG) , intent(in) , contiguous :: weight(:)
7710 real(TKG) , intent(in) , contiguous :: sample(:)
7711 real(TKG) , intent(in) :: meang
7712 real(TKG) , intent(out) :: mean
7713 real(TKG) , intent(out) :: var
7714 integer(IK) , intent(in) :: dim
7715 end subroutine
7716#endif
7717
7718#if RK1_ENABLED
7719 PURE module subroutine setVarMeanDIM_WTRSD_D1_RK1(var, mean, sample, dim, weight, weisum, meang)
7720#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7721 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D1_RK1
7722#endif
7723 use pm_kind, only: TKG => RK1
7724 real(TKG) , intent(out) :: weisum
7725 real(TKG) , intent(in) , contiguous :: weight(:)
7726 real(TKG) , intent(in) , contiguous :: sample(:)
7727 real(TKG) , intent(in) :: meang
7728 real(TKG) , intent(out) :: mean
7729 real(TKG) , intent(out) :: var
7730 integer(IK) , intent(in) :: dim
7731 end subroutine
7732#endif
7733
7734 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7735
7736 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7737 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7738 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7739
7740 end interface
7741
7742 ! DIM D2
7743
7744 interface setVarMean
7745
7746 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7747 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7748 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7749
7750 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7751
7752#if CK5_ENABLED
7753 PURE module subroutine setVarMeanDIM_WNODD_D2_CK5(var, mean, sample, dim, meang)
7754#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7755 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_CK5
7756#endif
7757 use pm_kind, only: TKG => CK5
7758 integer(IK) , intent(in) :: dim
7759 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7760 complex(TKG) , intent(in) , contiguous :: meang(:)
7761 complex(TKG) , intent(out) , contiguous :: mean(:)
7762 real(TKG) , intent(out) , contiguous :: var(:)
7763 end subroutine
7764#endif
7765
7766#if CK4_ENABLED
7767 PURE module subroutine setVarMeanDIM_WNODD_D2_CK4(var, mean, sample, dim, meang)
7768#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7769 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_CK4
7770#endif
7771 use pm_kind, only: TKG => CK4
7772 integer(IK) , intent(in) :: dim
7773 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7774 complex(TKG) , intent(in) , contiguous :: meang(:)
7775 complex(TKG) , intent(out) , contiguous :: mean(:)
7776 real(TKG) , intent(out) , contiguous :: var(:)
7777 end subroutine
7778#endif
7779
7780#if CK3_ENABLED
7781 PURE module subroutine setVarMeanDIM_WNODD_D2_CK3(var, mean, sample, dim, meang)
7782#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7783 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_CK3
7784#endif
7785 use pm_kind, only: TKG => CK3
7786 integer(IK) , intent(in) :: dim
7787 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7788 complex(TKG) , intent(in) , contiguous :: meang(:)
7789 complex(TKG) , intent(out) , contiguous :: mean(:)
7790 real(TKG) , intent(out) , contiguous :: var(:)
7791 end subroutine
7792#endif
7793
7794#if CK2_ENABLED
7795 PURE module subroutine setVarMeanDIM_WNODD_D2_CK2(var, mean, sample, dim, meang)
7796#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7797 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_CK2
7798#endif
7799 use pm_kind, only: TKG => CK2
7800 integer(IK) , intent(in) :: dim
7801 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7802 complex(TKG) , intent(in) , contiguous :: meang(:)
7803 complex(TKG) , intent(out) , contiguous :: mean(:)
7804 real(TKG) , intent(out) , contiguous :: var(:)
7805 end subroutine
7806#endif
7807
7808#if CK1_ENABLED
7809 PURE module subroutine setVarMeanDIM_WNODD_D2_CK1(var, mean, sample, dim, meang)
7810#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7811 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_CK1
7812#endif
7813 use pm_kind, only: TKG => CK1
7814 integer(IK) , intent(in) :: dim
7815 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7816 complex(TKG) , intent(in) , contiguous :: meang(:)
7817 complex(TKG) , intent(out) , contiguous :: mean(:)
7818 real(TKG) , intent(out) , contiguous :: var(:)
7819 end subroutine
7820#endif
7821
7822 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7823
7824#if RK5_ENABLED
7825 PURE module subroutine setVarMeanDIM_WNODD_D2_RK5(var, mean, sample, dim, meang)
7826#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7827 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_RK5
7828#endif
7829 use pm_kind, only: TKG => RK5
7830 integer(IK) , intent(in) :: dim
7831 real(TKG) , intent(in) , contiguous :: sample(:,:)
7832 real(TKG) , intent(in) , contiguous :: meang(:)
7833 real(TKG) , intent(out) , contiguous :: mean(:)
7834 real(TKG) , intent(out) , contiguous :: var(:)
7835 end subroutine
7836#endif
7837
7838#if RK4_ENABLED
7839 PURE module subroutine setVarMeanDIM_WNODD_D2_RK4(var, mean, sample, dim, meang)
7840#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7841 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_RK4
7842#endif
7843 use pm_kind, only: TKG => RK4
7844 integer(IK) , intent(in) :: dim
7845 real(TKG) , intent(in) , contiguous :: sample(:,:)
7846 real(TKG) , intent(in) , contiguous :: meang(:)
7847 real(TKG) , intent(out) , contiguous :: mean(:)
7848 real(TKG) , intent(out) , contiguous :: var(:)
7849 end subroutine
7850#endif
7851
7852#if RK3_ENABLED
7853 PURE module subroutine setVarMeanDIM_WNODD_D2_RK3(var, mean, sample, dim, meang)
7854#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7855 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_RK3
7856#endif
7857 use pm_kind, only: TKG => RK3
7858 integer(IK) , intent(in) :: dim
7859 real(TKG) , intent(in) , contiguous :: sample(:,:)
7860 real(TKG) , intent(in) , contiguous :: meang(:)
7861 real(TKG) , intent(out) , contiguous :: mean(:)
7862 real(TKG) , intent(out) , contiguous :: var(:)
7863 end subroutine
7864#endif
7865
7866#if RK2_ENABLED
7867 PURE module subroutine setVarMeanDIM_WNODD_D2_RK2(var, mean, sample, dim, meang)
7868#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7869 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_RK2
7870#endif
7871 use pm_kind, only: TKG => RK2
7872 integer(IK) , intent(in) :: dim
7873 real(TKG) , intent(in) , contiguous :: sample(:,:)
7874 real(TKG) , intent(in) , contiguous :: meang(:)
7875 real(TKG) , intent(out) , contiguous :: mean(:)
7876 real(TKG) , intent(out) , contiguous :: var(:)
7877 end subroutine
7878#endif
7879
7880#if RK1_ENABLED
7881 PURE module subroutine setVarMeanDIM_WNODD_D2_RK1(var, mean, sample, dim, meang)
7882#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7883 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WNODD_D2_RK1
7884#endif
7885 use pm_kind, only: TKG => RK1
7886 integer(IK) , intent(in) :: dim
7887 real(TKG) , intent(in) , contiguous :: sample(:,:)
7888 real(TKG) , intent(in) , contiguous :: meang(:)
7889 real(TKG) , intent(out) , contiguous :: mean(:)
7890 real(TKG) , intent(out) , contiguous :: var(:)
7891 end subroutine
7892#endif
7893
7894 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7895
7896 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7897 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7898 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7899
7900 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7901
7902#if CK5_ENABLED
7903 PURE module subroutine setVarMeanDIM_WTISD_D2_CK5(var, mean, sample, dim, weight, weisum, meang)
7904#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7905 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_CK5
7906#endif
7907 use pm_kind, only: TKG => CK5
7908 integer(IK) , intent(in) :: dim
7909 integer(IK) , intent(out) :: weisum
7910 integer(IK) , intent(in) , contiguous :: weight(:)
7911 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7912 complex(TKG) , intent(in) , contiguous :: meang(:)
7913 complex(TKG) , intent(out) , contiguous :: mean(:)
7914 real(TKG) , intent(out) , contiguous :: var(:)
7915 end subroutine
7916#endif
7917
7918#if CK4_ENABLED
7919 PURE module subroutine setVarMeanDIM_WTISD_D2_CK4(var, mean, sample, dim, weight, weisum, meang)
7920#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7921 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_CK4
7922#endif
7923 use pm_kind, only: TKG => CK4
7924 integer(IK) , intent(in) :: dim
7925 integer(IK) , intent(out) :: weisum
7926 integer(IK) , intent(in) , contiguous :: weight(:)
7927 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7928 complex(TKG) , intent(in) , contiguous :: meang(:)
7929 complex(TKG) , intent(out) , contiguous :: mean(:)
7930 real(TKG) , intent(out) , contiguous :: var(:)
7931 end subroutine
7932#endif
7933
7934#if CK3_ENABLED
7935 PURE module subroutine setVarMeanDIM_WTISD_D2_CK3(var, mean, sample, dim, weight, weisum, meang)
7936#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7937 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_CK3
7938#endif
7939 use pm_kind, only: TKG => CK3
7940 integer(IK) , intent(in) :: dim
7941 integer(IK) , intent(out) :: weisum
7942 integer(IK) , intent(in) , contiguous :: weight(:)
7943 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7944 complex(TKG) , intent(in) , contiguous :: meang(:)
7945 complex(TKG) , intent(out) , contiguous :: mean(:)
7946 real(TKG) , intent(out) , contiguous :: var(:)
7947 end subroutine
7948#endif
7949
7950#if CK2_ENABLED
7951 PURE module subroutine setVarMeanDIM_WTISD_D2_CK2(var, mean, sample, dim, weight, weisum, meang)
7952#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7953 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_CK2
7954#endif
7955 use pm_kind, only: TKG => CK2
7956 integer(IK) , intent(in) :: dim
7957 integer(IK) , intent(out) :: weisum
7958 integer(IK) , intent(in) , contiguous :: weight(:)
7959 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7960 complex(TKG) , intent(in) , contiguous :: meang(:)
7961 complex(TKG) , intent(out) , contiguous :: mean(:)
7962 real(TKG) , intent(out) , contiguous :: var(:)
7963 end subroutine
7964#endif
7965
7966#if CK1_ENABLED
7967 PURE module subroutine setVarMeanDIM_WTISD_D2_CK1(var, mean, sample, dim, weight, weisum, meang)
7968#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7969 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_CK1
7970#endif
7971 use pm_kind, only: TKG => CK1
7972 integer(IK) , intent(in) :: dim
7973 integer(IK) , intent(out) :: weisum
7974 integer(IK) , intent(in) , contiguous :: weight(:)
7975 complex(TKG) , intent(in) , contiguous :: sample(:,:)
7976 complex(TKG) , intent(in) , contiguous :: meang(:)
7977 complex(TKG) , intent(out) , contiguous :: mean(:)
7978 real(TKG) , intent(out) , contiguous :: var(:)
7979 end subroutine
7980#endif
7981
7982 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7983
7984#if RK5_ENABLED
7985 PURE module subroutine setVarMeanDIM_WTISD_D2_RK5(var, mean, sample, dim, weight, weisum, meang)
7986#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7987 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_RK5
7988#endif
7989 use pm_kind, only: TKG => RK5
7990 integer(IK) , intent(in) :: dim
7991 integer(IK) , intent(out) :: weisum
7992 integer(IK) , intent(in) , contiguous :: weight(:)
7993 real(TKG) , intent(in) , contiguous :: sample(:,:)
7994 real(TKG) , intent(in) , contiguous :: meang(:)
7995 real(TKG) , intent(out) , contiguous :: mean(:)
7996 real(TKG) , intent(out) , contiguous :: var(:)
7997 end subroutine
7998#endif
7999
8000#if RK4_ENABLED
8001 PURE module subroutine setVarMeanDIM_WTISD_D2_RK4(var, mean, sample, dim, weight, weisum, meang)
8002#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8003 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_RK4
8004#endif
8005 use pm_kind, only: TKG => RK4
8006 integer(IK) , intent(in) :: dim
8007 integer(IK) , intent(out) :: weisum
8008 integer(IK) , intent(in) , contiguous :: weight(:)
8009 real(TKG) , intent(in) , contiguous :: sample(:,:)
8010 real(TKG) , intent(in) , contiguous :: meang(:)
8011 real(TKG) , intent(out) , contiguous :: mean(:)
8012 real(TKG) , intent(out) , contiguous :: var(:)
8013 end subroutine
8014#endif
8015
8016#if RK3_ENABLED
8017 PURE module subroutine setVarMeanDIM_WTISD_D2_RK3(var, mean, sample, dim, weight, weisum, meang)
8018#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8019 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_RK3
8020#endif
8021 use pm_kind, only: TKG => RK3
8022 integer(IK) , intent(in) :: dim
8023 integer(IK) , intent(out) :: weisum
8024 integer(IK) , intent(in) , contiguous :: weight(:)
8025 real(TKG) , intent(in) , contiguous :: sample(:,:)
8026 real(TKG) , intent(in) , contiguous :: meang(:)
8027 real(TKG) , intent(out) , contiguous :: mean(:)
8028 real(TKG) , intent(out) , contiguous :: var(:)
8029 end subroutine
8030#endif
8031
8032#if RK2_ENABLED
8033 PURE module subroutine setVarMeanDIM_WTISD_D2_RK2(var, mean, sample, dim, weight, weisum, meang)
8034#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8035 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_RK2
8036#endif
8037 use pm_kind, only: TKG => RK2
8038 integer(IK) , intent(in) :: dim
8039 integer(IK) , intent(out) :: weisum
8040 integer(IK) , intent(in) , contiguous :: weight(:)
8041 real(TKG) , intent(in) , contiguous :: sample(:,:)
8042 real(TKG) , intent(in) , contiguous :: meang(:)
8043 real(TKG) , intent(out) , contiguous :: mean(:)
8044 real(TKG) , intent(out) , contiguous :: var(:)
8045 end subroutine
8046#endif
8047
8048#if RK1_ENABLED
8049 PURE module subroutine setVarMeanDIM_WTISD_D2_RK1(var, mean, sample, dim, weight, weisum, meang)
8050#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8051 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTISD_D2_RK1
8052#endif
8053 use pm_kind, only: TKG => RK1
8054 integer(IK) , intent(in) :: dim
8055 integer(IK) , intent(out) :: weisum
8056 integer(IK) , intent(in) , contiguous :: weight(:)
8057 real(TKG) , intent(in) , contiguous :: sample(:,:)
8058 real(TKG) , intent(in) , contiguous :: meang(:)
8059 real(TKG) , intent(out) , contiguous :: mean(:)
8060 real(TKG) , intent(out) , contiguous :: var(:)
8061 end subroutine
8062#endif
8063
8064 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8065
8066 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8067 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8068 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8069
8070 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8071
8072#if CK5_ENABLED
8073 PURE module subroutine setVarMeanDIM_WTRSD_D2_CK5(var, mean, sample, dim, weight, weisum, meang)
8074#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8075 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_CK5
8076#endif
8077 use pm_kind, only: TKG => CK5
8078 integer(IK) , intent(in) :: dim
8079 real(TKG) , intent(out) :: weisum
8080 real(TKG) , intent(in) , contiguous :: weight(:)
8081 complex(TKG) , intent(in) , contiguous :: sample(:,:)
8082 complex(TKG) , intent(in) , contiguous :: meang(:)
8083 complex(TKG) , intent(out) , contiguous :: mean(:)
8084 real(TKG) , intent(out) , contiguous :: var(:)
8085 end subroutine
8086#endif
8087
8088#if CK4_ENABLED
8089 PURE module subroutine setVarMeanDIM_WTRSD_D2_CK4(var, mean, sample, dim, weight, weisum, meang)
8090#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8091 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_CK4
8092#endif
8093 use pm_kind, only: TKG => CK4
8094 integer(IK) , intent(in) :: dim
8095 real(TKG) , intent(out) :: weisum
8096 real(TKG) , intent(in) , contiguous :: weight(:)
8097 complex(TKG) , intent(in) , contiguous :: sample(:,:)
8098 complex(TKG) , intent(in) , contiguous :: meang(:)
8099 complex(TKG) , intent(out) , contiguous :: mean(:)
8100 real(TKG) , intent(out) , contiguous :: var(:)
8101 end subroutine
8102#endif
8103
8104#if CK3_ENABLED
8105 PURE module subroutine setVarMeanDIM_WTRSD_D2_CK3(var, mean, sample, dim, weight, weisum, meang)
8106#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8107 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_CK3
8108#endif
8109 use pm_kind, only: TKG => CK3
8110 integer(IK) , intent(in) :: dim
8111 real(TKG) , intent(out) :: weisum
8112 real(TKG) , intent(in) , contiguous :: weight(:)
8113 complex(TKG) , intent(in) , contiguous :: sample(:,:)
8114 complex(TKG) , intent(in) , contiguous :: meang(:)
8115 complex(TKG) , intent(out) , contiguous :: mean(:)
8116 real(TKG) , intent(out) , contiguous :: var(:)
8117 end subroutine
8118#endif
8119
8120#if CK2_ENABLED
8121 PURE module subroutine setVarMeanDIM_WTRSD_D2_CK2(var, mean, sample, dim, weight, weisum, meang)
8122#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8123 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_CK2
8124#endif
8125 use pm_kind, only: TKG => CK2
8126 integer(IK) , intent(in) :: dim
8127 real(TKG) , intent(out) :: weisum
8128 real(TKG) , intent(in) , contiguous :: weight(:)
8129 complex(TKG) , intent(in) , contiguous :: sample(:,:)
8130 complex(TKG) , intent(in) , contiguous :: meang(:)
8131 complex(TKG) , intent(out) , contiguous :: mean(:)
8132 real(TKG) , intent(out) , contiguous :: var(:)
8133 end subroutine
8134#endif
8135
8136#if CK1_ENABLED
8137 PURE module subroutine setVarMeanDIM_WTRSD_D2_CK1(var, mean, sample, dim, weight, weisum, meang)
8138#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8139 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_CK1
8140#endif
8141 use pm_kind, only: TKG => CK1
8142 integer(IK) , intent(in) :: dim
8143 real(TKG) , intent(out) :: weisum
8144 real(TKG) , intent(in) , contiguous :: weight(:)
8145 complex(TKG) , intent(in) , contiguous :: sample(:,:)
8146 complex(TKG) , intent(in) , contiguous :: meang(:)
8147 complex(TKG) , intent(out) , contiguous :: mean(:)
8148 real(TKG) , intent(out) , contiguous :: var(:)
8149 end subroutine
8150#endif
8151
8152 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8153
8154#if RK5_ENABLED
8155 PURE module subroutine setVarMeanDIM_WTRSD_D2_RK5(var, mean, sample, dim, weight, weisum, meang)
8156#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8157 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_RK5
8158#endif
8159 use pm_kind, only: TKG => RK5
8160 integer(IK) , intent(in) :: dim
8161 real(TKG) , intent(out) :: weisum
8162 real(TKG) , intent(in) , contiguous :: weight(:)
8163 real(TKG) , intent(in) , contiguous :: sample(:,:)
8164 real(TKG) , intent(in) , contiguous :: meang(:)
8165 real(TKG) , intent(out) , contiguous :: mean(:)
8166 real(TKG) , intent(out) , contiguous :: var(:)
8167 end subroutine
8168#endif
8169
8170#if RK4_ENABLED
8171 PURE module subroutine setVarMeanDIM_WTRSD_D2_RK4(var, mean, sample, dim, weight, weisum, meang)
8172#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8173 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_RK4
8174#endif
8175 use pm_kind, only: TKG => RK4
8176 integer(IK) , intent(in) :: dim
8177 real(TKG) , intent(out) :: weisum
8178 real(TKG) , intent(in) , contiguous :: weight(:)
8179 real(TKG) , intent(in) , contiguous :: sample(:,:)
8180 real(TKG) , intent(in) , contiguous :: meang(:)
8181 real(TKG) , intent(out) , contiguous :: mean(:)
8182 real(TKG) , intent(out) , contiguous :: var(:)
8183 end subroutine
8184#endif
8185
8186#if RK3_ENABLED
8187 PURE module subroutine setVarMeanDIM_WTRSD_D2_RK3(var, mean, sample, dim, weight, weisum, meang)
8188#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8189 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_RK3
8190#endif
8191 use pm_kind, only: TKG => RK3
8192 integer(IK) , intent(in) :: dim
8193 real(TKG) , intent(out) :: weisum
8194 real(TKG) , intent(in) , contiguous :: weight(:)
8195 real(TKG) , intent(in) , contiguous :: sample(:,:)
8196 real(TKG) , intent(in) , contiguous :: meang(:)
8197 real(TKG) , intent(out) , contiguous :: mean(:)
8198 real(TKG) , intent(out) , contiguous :: var(:)
8199 end subroutine
8200#endif
8201
8202#if RK2_ENABLED
8203 PURE module subroutine setVarMeanDIM_WTRSD_D2_RK2(var, mean, sample, dim, weight, weisum, meang)
8204#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8205 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_RK2
8206#endif
8207 use pm_kind, only: TKG => RK2
8208 integer(IK) , intent(in) :: dim
8209 real(TKG) , intent(out) :: weisum
8210 real(TKG) , intent(in) , contiguous :: weight(:)
8211 real(TKG) , intent(in) , contiguous :: sample(:,:)
8212 real(TKG) , intent(in) , contiguous :: meang(:)
8213 real(TKG) , intent(out) , contiguous :: mean(:)
8214 real(TKG) , intent(out) , contiguous :: var(:)
8215 end subroutine
8216#endif
8217
8218#if RK1_ENABLED
8219 PURE module subroutine setVarMeanDIM_WTRSD_D2_RK1(var, mean, sample, dim, weight, weisum, meang)
8220#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8221 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanDIM_WTRSD_D2_RK1
8222#endif
8223 use pm_kind, only: TKG => RK1
8224 integer(IK) , intent(in) :: dim
8225 real(TKG) , intent(out) :: weisum
8226 real(TKG) , intent(in) , contiguous :: weight(:)
8227 real(TKG) , intent(in) , contiguous :: sample(:,:)
8228 real(TKG) , intent(in) , contiguous :: meang(:)
8229 real(TKG) , intent(out) , contiguous :: mean(:)
8230 real(TKG) , intent(out) , contiguous :: var(:)
8231 end subroutine
8232#endif
8233
8234 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8235
8236 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8237 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8238 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8239
8240 end interface
8241
8242!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8243
8327
8328 ! D0
8329
8331
8332 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8333
8334#if CK5_ENABLED
8335 PURE module function getVarMergedNew_D0_CK5(varB, varA, meanDiff, fracA) result(varMerged)
8336#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8337 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_CK5
8338#endif
8339 use pm_kind, only: TKG => CK5
8340 real(TKG) , intent(in) :: fracA
8341 complex(TKG) , intent(in) :: meanDiff
8342 real(TKG) , intent(in) :: varB, varA
8343 real(TKG) :: varMerged
8344 end function
8345#endif
8346
8347#if CK4_ENABLED
8348 PURE module function getVarMergedNew_D0_CK4(varB, varA, meanDiff, fracA) result(varMerged)
8349#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8350 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_CK4
8351#endif
8352 use pm_kind, only: TKG => CK4
8353 real(TKG) , intent(in) :: fracA
8354 complex(TKG) , intent(in) :: meanDiff
8355 real(TKG) , intent(in) :: varB, varA
8356 real(TKG) :: varMerged
8357 end function
8358#endif
8359
8360#if CK3_ENABLED
8361 PURE module function getVarMergedNew_D0_CK3(varB, varA, meanDiff, fracA) result(varMerged)
8362#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8363 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_CK3
8364#endif
8365 use pm_kind, only: TKG => CK3
8366 real(TKG) , intent(in) :: fracA
8367 complex(TKG) , intent(in) :: meanDiff
8368 real(TKG) , intent(in) :: varB, varA
8369 real(TKG) :: varMerged
8370 end function
8371#endif
8372
8373#if CK2_ENABLED
8374 PURE module function getVarMergedNew_D0_CK2(varB, varA, meanDiff, fracA) result(varMerged)
8375#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8376 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_CK2
8377#endif
8378 use pm_kind, only: TKG => CK2
8379 real(TKG) , intent(in) :: fracA
8380 complex(TKG) , intent(in) :: meanDiff
8381 real(TKG) , intent(in) :: varB, varA
8382 real(TKG) :: varMerged
8383 end function
8384#endif
8385
8386#if CK1_ENABLED
8387 PURE module function getVarMergedNew_D0_CK1(varB, varA, meanDiff, fracA) result(varMerged)
8388#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8389 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_CK1
8390#endif
8391 use pm_kind, only: TKG => CK1
8392 real(TKG) , intent(in) :: fracA
8393 complex(TKG) , intent(in) :: meanDiff
8394 real(TKG) , intent(in) :: varB, varA
8395 real(TKG) :: varMerged
8396 end function
8397#endif
8398
8399 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8400
8401#if RK5_ENABLED
8402 PURE module function getVarMergedNew_D0_RK5(varB, varA, meanDiff, fracA) result(varMerged)
8403#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8404 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_RK5
8405#endif
8406 use pm_kind, only: TKG => RK5
8407 real(TKG) , intent(in) :: fracA
8408 real(TKG) , intent(in) :: meanDiff
8409 real(TKG) , intent(in) :: varB, varA
8410 real(TKG) :: varMerged
8411 end function
8412#endif
8413
8414#if RK4_ENABLED
8415 PURE module function getVarMergedNew_D0_RK4(varB, varA, meanDiff, fracA) result(varMerged)
8416#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8417 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_RK4
8418#endif
8419 use pm_kind, only: TKG => RK4
8420 real(TKG) , intent(in) :: fracA
8421 real(TKG) , intent(in) :: meanDiff
8422 real(TKG) , intent(in) :: varB, varA
8423 real(TKG) :: varMerged
8424 end function
8425#endif
8426
8427#if RK3_ENABLED
8428 PURE module function getVarMergedNew_D0_RK3(varB, varA, meanDiff, fracA) result(varMerged)
8429#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8430 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_RK3
8431#endif
8432 use pm_kind, only: TKG => RK3
8433 real(TKG) , intent(in) :: fracA
8434 real(TKG) , intent(in) :: meanDiff
8435 real(TKG) , intent(in) :: varB, varA
8436 real(TKG) :: varMerged
8437 end function
8438#endif
8439
8440#if RK2_ENABLED
8441 PURE module function getVarMergedNew_D0_RK2(varB, varA, meanDiff, fracA) result(varMerged)
8442#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8443 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_RK2
8444#endif
8445 use pm_kind, only: TKG => RK2
8446 real(TKG) , intent(in) :: fracA
8447 real(TKG) , intent(in) :: meanDiff
8448 real(TKG) , intent(in) :: varB, varA
8449 real(TKG) :: varMerged
8450 end function
8451#endif
8452
8453#if RK1_ENABLED
8454 PURE module function getVarMergedNew_D0_RK1(varB, varA, meanDiff, fracA) result(varMerged)
8455#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8456 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D0_RK1
8457#endif
8458 use pm_kind, only: TKG => RK1
8459 real(TKG) , intent(in) :: fracA
8460 real(TKG) , intent(in) :: meanDiff
8461 real(TKG) , intent(in) :: varB, varA
8462 real(TKG) :: varMerged
8463 end function
8464#endif
8465
8466 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8467
8468 end interface
8469
8470 ! D1
8471
8472 interface getVarMerged
8473
8474 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8475
8476#if CK5_ENABLED
8477 PURE module function getVarMergedNew_D1_CK5(varB, varA, meanDiff, fracA) result(varMerged)
8478#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8479 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_CK5
8480#endif
8481 use pm_kind, only: TKG => CK5
8482 real(TKG) , intent(in) :: fracA
8483 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8484 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8485 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8486 end function
8487#endif
8488
8489#if CK4_ENABLED
8490 PURE module function getVarMergedNew_D1_CK4(varB, varA, meanDiff, fracA) result(varMerged)
8491#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8492 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_CK4
8493#endif
8494 use pm_kind, only: TKG => CK4
8495 real(TKG) , intent(in) :: fracA
8496 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8497 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8498 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8499 end function
8500#endif
8501
8502#if CK3_ENABLED
8503 PURE module function getVarMergedNew_D1_CK3(varB, varA, meanDiff, fracA) result(varMerged)
8504#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8505 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_CK3
8506#endif
8507 use pm_kind, only: TKG => CK3
8508 real(TKG) , intent(in) :: fracA
8509 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8510 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8511 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8512 end function
8513#endif
8514
8515#if CK2_ENABLED
8516 PURE module function getVarMergedNew_D1_CK2(varB, varA, meanDiff, fracA) result(varMerged)
8517#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8518 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_CK2
8519#endif
8520 use pm_kind, only: TKG => CK2
8521 real(TKG) , intent(in) :: fracA
8522 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8523 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8524 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8525 end function
8526#endif
8527
8528#if CK1_ENABLED
8529 PURE module function getVarMergedNew_D1_CK1(varB, varA, meanDiff, fracA) result(varMerged)
8530#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8531 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_CK1
8532#endif
8533 use pm_kind, only: TKG => CK1
8534 real(TKG) , intent(in) :: fracA
8535 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8536 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8537 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8538 end function
8539#endif
8540
8541 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8542
8543#if RK5_ENABLED
8544 PURE module function getVarMergedNew_D1_RK5(varB, varA, meanDiff, fracA) result(varMerged)
8545#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8546 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_RK5
8547#endif
8548 use pm_kind, only: TKG => RK5
8549 real(TKG) , intent(in) :: fracA
8550 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8551 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8552 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8553 end function
8554#endif
8555
8556#if RK4_ENABLED
8557 PURE module function getVarMergedNew_D1_RK4(varB, varA, meanDiff, fracA) result(varMerged)
8558#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8559 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_RK4
8560#endif
8561 use pm_kind, only: TKG => RK4
8562 real(TKG) , intent(in) :: fracA
8563 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8564 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8565 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8566 end function
8567#endif
8568
8569#if RK3_ENABLED
8570 PURE module function getVarMergedNew_D1_RK3(varB, varA, meanDiff, fracA) result(varMerged)
8571#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8572 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_RK3
8573#endif
8574 use pm_kind, only: TKG => RK3
8575 real(TKG) , intent(in) :: fracA
8576 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8577 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8578 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8579 end function
8580#endif
8581
8582#if RK2_ENABLED
8583 PURE module function getVarMergedNew_D1_RK2(varB, varA, meanDiff, fracA) result(varMerged)
8584#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8585 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_RK2
8586#endif
8587 use pm_kind, only: TKG => RK2
8588 real(TKG) , intent(in) :: fracA
8589 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8590 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8591 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8592 end function
8593#endif
8594
8595#if RK1_ENABLED
8596 PURE module function getVarMergedNew_D1_RK1(varB, varA, meanDiff, fracA) result(varMerged)
8597#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8598 !DEC$ ATTRIBUTES DLLEXPORT :: getVarMergedNew_D1_RK1
8599#endif
8600 use pm_kind, only: TKG => RK1
8601 real(TKG) , intent(in) :: fracA
8602 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8603 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8604 real(TKG) :: varMerged(size(meanDiff, 1, IK))
8605 end function
8606#endif
8607
8608 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8609
8610 end interface
8611
8612!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8613
8702
8703 ! New_D0
8704
8706
8707 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8708
8709#if CK5_ENABLED
8710 PURE module subroutine setVarMergedNew_D0_CK5(varMerged, varB, varA, meanDiff, fracA)
8711#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8712 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_CK5
8713#endif
8714 use pm_kind, only: TKG => CK5
8715 real(TKG) , intent(in) :: fracA
8716 complex(TKG) , intent(in) :: meanDiff
8717 real(TKG) , intent(in) :: varB, varA
8718 real(TKG) , intent(out) :: varMerged
8719 end subroutine
8720#endif
8721
8722#if CK4_ENABLED
8723 PURE module subroutine setVarMergedNew_D0_CK4(varMerged, varB, varA, meanDiff, fracA)
8724#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8725 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_CK4
8726#endif
8727 use pm_kind, only: TKG => CK4
8728 real(TKG) , intent(in) :: fracA
8729 complex(TKG) , intent(in) :: meanDiff
8730 real(TKG) , intent(in) :: varB, varA
8731 real(TKG) , intent(out) :: varMerged
8732 end subroutine
8733#endif
8734
8735#if CK3_ENABLED
8736 PURE module subroutine setVarMergedNew_D0_CK3(varMerged, varB, varA, meanDiff, fracA)
8737#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8738 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_CK3
8739#endif
8740 use pm_kind, only: TKG => CK3
8741 real(TKG) , intent(in) :: fracA
8742 complex(TKG) , intent(in) :: meanDiff
8743 real(TKG) , intent(in) :: varB, varA
8744 real(TKG) , intent(out) :: varMerged
8745 end subroutine
8746#endif
8747
8748#if CK2_ENABLED
8749 PURE module subroutine setVarMergedNew_D0_CK2(varMerged, varB, varA, meanDiff, fracA)
8750#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8751 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_CK2
8752#endif
8753 use pm_kind, only: TKG => CK2
8754 real(TKG) , intent(in) :: fracA
8755 complex(TKG) , intent(in) :: meanDiff
8756 real(TKG) , intent(in) :: varB, varA
8757 real(TKG) , intent(out) :: varMerged
8758 end subroutine
8759#endif
8760
8761#if CK1_ENABLED
8762 PURE module subroutine setVarMergedNew_D0_CK1(varMerged, varB, varA, meanDiff, fracA)
8763#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8764 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_CK1
8765#endif
8766 use pm_kind, only: TKG => CK1
8767 real(TKG) , intent(in) :: fracA
8768 complex(TKG) , intent(in) :: meanDiff
8769 real(TKG) , intent(in) :: varB, varA
8770 real(TKG) , intent(out) :: varMerged
8771 end subroutine
8772#endif
8773
8774 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8775
8776#if RK5_ENABLED
8777 PURE module subroutine setVarMergedNew_D0_RK5(varMerged, varB, varA, meanDiff, fracA)
8778#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8779 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_RK5
8780#endif
8781 use pm_kind, only: TKG => RK5
8782 real(TKG) , intent(in) :: fracA
8783 real(TKG) , intent(in) :: meanDiff
8784 real(TKG) , intent(in) :: varB, varA
8785 real(TKG) , intent(out) :: varMerged
8786 end subroutine
8787#endif
8788
8789#if RK4_ENABLED
8790 PURE module subroutine setVarMergedNew_D0_RK4(varMerged, varB, varA, meanDiff, fracA)
8791#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8792 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_RK4
8793#endif
8794 use pm_kind, only: TKG => RK4
8795 real(TKG) , intent(in) :: fracA
8796 real(TKG) , intent(in) :: meanDiff
8797 real(TKG) , intent(in) :: varB, varA
8798 real(TKG) , intent(out) :: varMerged
8799 end subroutine
8800#endif
8801
8802#if RK3_ENABLED
8803 PURE module subroutine setVarMergedNew_D0_RK3(varMerged, varB, varA, meanDiff, fracA)
8804#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8805 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_RK3
8806#endif
8807 use pm_kind, only: TKG => RK3
8808 real(TKG) , intent(in) :: fracA
8809 real(TKG) , intent(in) :: meanDiff
8810 real(TKG) , intent(in) :: varB, varA
8811 real(TKG) , intent(out) :: varMerged
8812 end subroutine
8813#endif
8814
8815#if RK2_ENABLED
8816 PURE module subroutine setVarMergedNew_D0_RK2(varMerged, varB, varA, meanDiff, fracA)
8817#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8818 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_RK2
8819#endif
8820 use pm_kind, only: TKG => RK2
8821 real(TKG) , intent(in) :: fracA
8822 real(TKG) , intent(in) :: meanDiff
8823 real(TKG) , intent(in) :: varB, varA
8824 real(TKG) , intent(out) :: varMerged
8825 end subroutine
8826#endif
8827
8828#if RK1_ENABLED
8829 PURE module subroutine setVarMergedNew_D0_RK1(varMerged, varB, varA, meanDiff, fracA)
8830#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8831 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D0_RK1
8832#endif
8833 use pm_kind, only: TKG => RK1
8834 real(TKG) , intent(in) :: fracA
8835 real(TKG) , intent(in) :: meanDiff
8836 real(TKG) , intent(in) :: varB, varA
8837 real(TKG) , intent(out) :: varMerged
8838 end subroutine
8839#endif
8840
8841 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8842
8843 end interface
8844
8845 ! New_D1
8846
8847 interface setVarMerged
8848
8849 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8850
8851#if CK5_ENABLED
8852 PURE module subroutine setVarMergedNew_D1_CK5(varMerged, varB, varA, meanDiff, fracA)
8853#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8854 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_CK5
8855#endif
8856 use pm_kind, only: TKG => CK5
8857 real(TKG) , intent(in) :: fracA
8858 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8859 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8860 real(TKG) , intent(out) , contiguous :: varMerged(:)
8861 end subroutine
8862#endif
8863
8864#if CK4_ENABLED
8865 PURE module subroutine setVarMergedNew_D1_CK4(varMerged, varB, varA, meanDiff, fracA)
8866#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8867 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_CK4
8868#endif
8869 use pm_kind, only: TKG => CK4
8870 real(TKG) , intent(in) :: fracA
8871 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8872 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8873 real(TKG) , intent(out) , contiguous :: varMerged(:)
8874 end subroutine
8875#endif
8876
8877#if CK3_ENABLED
8878 PURE module subroutine setVarMergedNew_D1_CK3(varMerged, varB, varA, meanDiff, fracA)
8879#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8880 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_CK3
8881#endif
8882 use pm_kind, only: TKG => CK3
8883 real(TKG) , intent(in) :: fracA
8884 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8885 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8886 real(TKG) , intent(out) , contiguous :: varMerged(:)
8887 end subroutine
8888#endif
8889
8890#if CK2_ENABLED
8891 PURE module subroutine setVarMergedNew_D1_CK2(varMerged, varB, varA, meanDiff, fracA)
8892#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8893 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_CK2
8894#endif
8895 use pm_kind, only: TKG => CK2
8896 real(TKG) , intent(in) :: fracA
8897 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8898 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8899 real(TKG) , intent(out) , contiguous :: varMerged(:)
8900 end subroutine
8901#endif
8902
8903#if CK1_ENABLED
8904 PURE module subroutine setVarMergedNew_D1_CK1(varMerged, varB, varA, meanDiff, fracA)
8905#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8906 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_CK1
8907#endif
8908 use pm_kind, only: TKG => CK1
8909 real(TKG) , intent(in) :: fracA
8910 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
8911 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8912 real(TKG) , intent(out) , contiguous :: varMerged(:)
8913 end subroutine
8914#endif
8915
8916 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8917
8918#if RK5_ENABLED
8919 PURE module subroutine setVarMergedNew_D1_RK5(varMerged, varB, varA, meanDiff, fracA)
8920#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8921 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_RK5
8922#endif
8923 use pm_kind, only: TKG => RK5
8924 real(TKG) , intent(in) :: fracA
8925 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8926 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8927 real(TKG) , intent(out) , contiguous :: varMerged(:)
8928 end subroutine
8929#endif
8930
8931#if RK4_ENABLED
8932 PURE module subroutine setVarMergedNew_D1_RK4(varMerged, varB, varA, meanDiff, fracA)
8933#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8934 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_RK4
8935#endif
8936 use pm_kind, only: TKG => RK4
8937 real(TKG) , intent(in) :: fracA
8938 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8939 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8940 real(TKG) , intent(out) , contiguous :: varMerged(:)
8941 end subroutine
8942#endif
8943
8944#if RK3_ENABLED
8945 PURE module subroutine setVarMergedNew_D1_RK3(varMerged, varB, varA, meanDiff, fracA)
8946#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8947 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_RK3
8948#endif
8949 use pm_kind, only: TKG => RK3
8950 real(TKG) , intent(in) :: fracA
8951 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8952 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8953 real(TKG) , intent(out) , contiguous :: varMerged(:)
8954 end subroutine
8955#endif
8956
8957#if RK2_ENABLED
8958 PURE module subroutine setVarMergedNew_D1_RK2(varMerged, varB, varA, meanDiff, fracA)
8959#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8960 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_RK2
8961#endif
8962 use pm_kind, only: TKG => RK2
8963 real(TKG) , intent(in) :: fracA
8964 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8965 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8966 real(TKG) , intent(out) , contiguous :: varMerged(:)
8967 end subroutine
8968#endif
8969
8970#if RK1_ENABLED
8971 PURE module subroutine setVarMergedNew_D1_RK1(varMerged, varB, varA, meanDiff, fracA)
8972#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8973 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedNew_D1_RK1
8974#endif
8975 use pm_kind, only: TKG => RK1
8976 real(TKG) , intent(in) :: fracA
8977 real(TKG) , intent(in) , contiguous :: meanDiff(:)
8978 real(TKG) , intent(in) , contiguous :: varB(:), varA(:)
8979 real(TKG) , intent(out) , contiguous :: varMerged(:)
8980 end subroutine
8981#endif
8982
8983 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8984
8985 end interface
8986
8987 ! Old_D0
8988
8989 interface setVarMerged
8990
8991 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8992
8993#if CK5_ENABLED
8994 PURE module subroutine setVarMergedOld_D0_CK5(varB, varA, meanDiff, fracA)
8995#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8996 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_CK5
8997#endif
8998 use pm_kind, only: TKG => CK5
8999 real(TKG) , intent(inout) :: varB
9000 real(TKG) , intent(in) :: varA
9001 complex(TKG) , intent(in) :: meanDiff
9002 real(TKG) , intent(in) :: fracA
9003 end subroutine
9004#endif
9005
9006#if CK4_ENABLED
9007 PURE module subroutine setVarMergedOld_D0_CK4(varB, varA, meanDiff, fracA)
9008#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9009 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_CK4
9010#endif
9011 use pm_kind, only: TKG => CK4
9012 real(TKG) , intent(inout) :: varB
9013 real(TKG) , intent(in) :: varA
9014 complex(TKG) , intent(in) :: meanDiff
9015 real(TKG) , intent(in) :: fracA
9016 end subroutine
9017#endif
9018
9019#if CK3_ENABLED
9020 PURE module subroutine setVarMergedOld_D0_CK3(varB, varA, meanDiff, fracA)
9021#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9022 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_CK3
9023#endif
9024 use pm_kind, only: TKG => CK3
9025 real(TKG) , intent(inout) :: varB
9026 real(TKG) , intent(in) :: varA
9027 complex(TKG) , intent(in) :: meanDiff
9028 real(TKG) , intent(in) :: fracA
9029 end subroutine
9030#endif
9031
9032#if CK2_ENABLED
9033 PURE module subroutine setVarMergedOld_D0_CK2(varB, varA, meanDiff, fracA)
9034#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9035 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_CK2
9036#endif
9037 use pm_kind, only: TKG => CK2
9038 real(TKG) , intent(inout) :: varB
9039 real(TKG) , intent(in) :: varA
9040 complex(TKG) , intent(in) :: meanDiff
9041 real(TKG) , intent(in) :: fracA
9042 end subroutine
9043#endif
9044
9045#if CK1_ENABLED
9046 PURE module subroutine setVarMergedOld_D0_CK1(varB, varA, meanDiff, fracA)
9047#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9048 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_CK1
9049#endif
9050 use pm_kind, only: TKG => CK1
9051 real(TKG) , intent(inout) :: varB
9052 real(TKG) , intent(in) :: varA
9053 complex(TKG) , intent(in) :: meanDiff
9054 real(TKG) , intent(in) :: fracA
9055 end subroutine
9056#endif
9057
9058 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9059
9060#if RK5_ENABLED
9061 PURE module subroutine setVarMergedOld_D0_RK5(varB, varA, meanDiff, fracA)
9062#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9063 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_RK5
9064#endif
9065 use pm_kind, only: TKG => RK5
9066 real(TKG) , intent(inout) :: varB
9067 real(TKG) , intent(in) :: varA
9068 real(TKG) , intent(in) :: meanDiff
9069 real(TKG) , intent(in) :: fracA
9070 end subroutine
9071#endif
9072
9073#if RK4_ENABLED
9074 PURE module subroutine setVarMergedOld_D0_RK4(varB, varA, meanDiff, fracA)
9075#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9076 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_RK4
9077#endif
9078 use pm_kind, only: TKG => RK4
9079 real(TKG) , intent(inout) :: varB
9080 real(TKG) , intent(in) :: varA
9081 real(TKG) , intent(in) :: meanDiff
9082 real(TKG) , intent(in) :: fracA
9083 end subroutine
9084#endif
9085
9086#if RK3_ENABLED
9087 PURE module subroutine setVarMergedOld_D0_RK3(varB, varA, meanDiff, fracA)
9088#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9089 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_RK3
9090#endif
9091 use pm_kind, only: TKG => RK3
9092 real(TKG) , intent(inout) :: varB
9093 real(TKG) , intent(in) :: varA
9094 real(TKG) , intent(in) :: meanDiff
9095 real(TKG) , intent(in) :: fracA
9096 end subroutine
9097#endif
9098
9099#if RK2_ENABLED
9100 PURE module subroutine setVarMergedOld_D0_RK2(varB, varA, meanDiff, fracA)
9101#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9102 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_RK2
9103#endif
9104 use pm_kind, only: TKG => RK2
9105 real(TKG) , intent(inout) :: varB
9106 real(TKG) , intent(in) :: varA
9107 real(TKG) , intent(in) :: meanDiff
9108 real(TKG) , intent(in) :: fracA
9109 end subroutine
9110#endif
9111
9112#if RK1_ENABLED
9113 PURE module subroutine setVarMergedOld_D0_RK1(varB, varA, meanDiff, fracA)
9114#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9115 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D0_RK1
9116#endif
9117 use pm_kind, only: TKG => RK1
9118 real(TKG) , intent(inout) :: varB
9119 real(TKG) , intent(in) :: varA
9120 real(TKG) , intent(in) :: meanDiff
9121 real(TKG) , intent(in) :: fracA
9122 end subroutine
9123#endif
9124
9125 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9126
9127 end interface
9128
9129 ! Old_D1
9130
9131 interface setVarMerged
9132
9133 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9134
9135#if CK5_ENABLED
9136 PURE module subroutine setVarMergedOld_D1_CK5(varB, varA, meanDiff, fracA)
9137#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9138 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_CK5
9139#endif
9140 use pm_kind, only: TKG => CK5
9141 real(TKG) , intent(inout) , contiguous :: varB(:)
9142 real(TKG) , intent(in) , contiguous :: varA(:)
9143 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
9144 real(TKG) , intent(in) :: fracA
9145 end subroutine
9146#endif
9147
9148#if CK4_ENABLED
9149 PURE module subroutine setVarMergedOld_D1_CK4(varB, varA, meanDiff, fracA)
9150#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9151 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_CK4
9152#endif
9153 use pm_kind, only: TKG => CK4
9154 real(TKG) , intent(inout) , contiguous :: varB(:)
9155 real(TKG) , intent(in) , contiguous :: varA(:)
9156 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
9157 real(TKG) , intent(in) :: fracA
9158 end subroutine
9159#endif
9160
9161#if CK3_ENABLED
9162 PURE module subroutine setVarMergedOld_D1_CK3(varB, varA, meanDiff, fracA)
9163#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9164 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_CK3
9165#endif
9166 use pm_kind, only: TKG => CK3
9167 real(TKG) , intent(inout) , contiguous :: varB(:)
9168 real(TKG) , intent(in) , contiguous :: varA(:)
9169 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
9170 real(TKG) , intent(in) :: fracA
9171 end subroutine
9172#endif
9173
9174#if CK2_ENABLED
9175 PURE module subroutine setVarMergedOld_D1_CK2(varB, varA, meanDiff, fracA)
9176#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9177 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_CK2
9178#endif
9179 use pm_kind, only: TKG => CK2
9180 real(TKG) , intent(inout) , contiguous :: varB(:)
9181 real(TKG) , intent(in) , contiguous :: varA(:)
9182 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
9183 real(TKG) , intent(in) :: fracA
9184 end subroutine
9185#endif
9186
9187#if CK1_ENABLED
9188 PURE module subroutine setVarMergedOld_D1_CK1(varB, varA, meanDiff, fracA)
9189#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9190 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_CK1
9191#endif
9192 use pm_kind, only: TKG => CK1
9193 real(TKG) , intent(inout) , contiguous :: varB(:)
9194 real(TKG) , intent(in) , contiguous :: varA(:)
9195 complex(TKG) , intent(in) , contiguous :: meanDiff(:)
9196 real(TKG) , intent(in) :: fracA
9197 end subroutine
9198#endif
9199
9200 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9201
9202#if RK5_ENABLED
9203 PURE module subroutine setVarMergedOld_D1_RK5(varB, varA, meanDiff, fracA)
9204#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9205 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_RK5
9206#endif
9207 use pm_kind, only: TKG => RK5
9208 real(TKG) , intent(inout) , contiguous :: varB(:)
9209 real(TKG) , intent(in) , contiguous :: varA(:)
9210 real(TKG) , intent(in) , contiguous :: meanDiff(:)
9211 real(TKG) , intent(in) :: fracA
9212 end subroutine
9213#endif
9214
9215#if RK4_ENABLED
9216 PURE module subroutine setVarMergedOld_D1_RK4(varB, varA, meanDiff, fracA)
9217#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9218 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_RK4
9219#endif
9220 use pm_kind, only: TKG => RK4
9221 real(TKG) , intent(inout) , contiguous :: varB(:)
9222 real(TKG) , intent(in) , contiguous :: varA(:)
9223 real(TKG) , intent(in) , contiguous :: meanDiff(:)
9224 real(TKG) , intent(in) :: fracA
9225 end subroutine
9226#endif
9227
9228#if RK3_ENABLED
9229 PURE module subroutine setVarMergedOld_D1_RK3(varB, varA, meanDiff, fracA)
9230#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9231 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_RK3
9232#endif
9233 use pm_kind, only: TKG => RK3
9234 real(TKG) , intent(inout) , contiguous :: varB(:)
9235 real(TKG) , intent(in) , contiguous :: varA(:)
9236 real(TKG) , intent(in) , contiguous :: meanDiff(:)
9237 real(TKG) , intent(in) :: fracA
9238 end subroutine
9239#endif
9240
9241#if RK2_ENABLED
9242 PURE module subroutine setVarMergedOld_D1_RK2(varB, varA, meanDiff, fracA)
9243#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9244 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_RK2
9245#endif
9246 use pm_kind, only: TKG => RK2
9247 real(TKG) , intent(inout) , contiguous :: varB(:)
9248 real(TKG) , intent(in) , contiguous :: varA(:)
9249 real(TKG) , intent(in) , contiguous :: meanDiff(:)
9250 real(TKG) , intent(in) :: fracA
9251 end subroutine
9252#endif
9253
9254#if RK1_ENABLED
9255 PURE module subroutine setVarMergedOld_D1_RK1(varB, varA, meanDiff, fracA)
9256#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9257 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMergedOld_D1_RK1
9258#endif
9259 use pm_kind, only: TKG => RK1
9260 real(TKG) , intent(inout) , contiguous :: varB(:)
9261 real(TKG) , intent(in) , contiguous :: varA(:)
9262 real(TKG) , intent(in) , contiguous :: meanDiff(:)
9263 real(TKG) , intent(in) :: fracA
9264 end subroutine
9265#endif
9266
9267 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9268
9269 end interface
9270
9271!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9272
9371
9372 ! New_D0
9373
9375
9376 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9377
9378#if CK5_ENABLED
9379 PURE module subroutine setVarMeanMergedNew_D0_CK5(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9380#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9381 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_CK5
9382#endif
9383 use pm_kind, only: TKG => CK5
9384 real(TKG) , intent(in) :: fracA
9385 real(TKG) , intent(in) :: varA
9386 real(TKG) , intent(in) :: varB
9387 real(TKG) , intent(out) :: varMerged
9388 complex(TKG) , intent(in) :: meanA
9389 complex(TKG) , intent(in) :: meanB
9390 complex(TKG) , intent(out) :: meanMerged
9391 end subroutine
9392#endif
9393
9394#if CK4_ENABLED
9395 PURE module subroutine setVarMeanMergedNew_D0_CK4(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9396#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9397 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_CK4
9398#endif
9399 use pm_kind, only: TKG => CK4
9400 real(TKG) , intent(in) :: fracA
9401 real(TKG) , intent(in) :: varA
9402 real(TKG) , intent(in) :: varB
9403 real(TKG) , intent(out) :: varMerged
9404 complex(TKG) , intent(in) :: meanA
9405 complex(TKG) , intent(in) :: meanB
9406 complex(TKG) , intent(out) :: meanMerged
9407 end subroutine
9408#endif
9409
9410#if CK3_ENABLED
9411 PURE module subroutine setVarMeanMergedNew_D0_CK3(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9412#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9413 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_CK3
9414#endif
9415 use pm_kind, only: TKG => CK3
9416 real(TKG) , intent(in) :: fracA
9417 real(TKG) , intent(in) :: varA
9418 real(TKG) , intent(in) :: varB
9419 real(TKG) , intent(out) :: varMerged
9420 complex(TKG) , intent(in) :: meanA
9421 complex(TKG) , intent(in) :: meanB
9422 complex(TKG) , intent(out) :: meanMerged
9423 end subroutine
9424#endif
9425
9426#if CK2_ENABLED
9427 PURE module subroutine setVarMeanMergedNew_D0_CK2(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9428#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9429 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_CK2
9430#endif
9431 use pm_kind, only: TKG => CK2
9432 real(TKG) , intent(in) :: fracA
9433 real(TKG) , intent(in) :: varA
9434 real(TKG) , intent(in) :: varB
9435 real(TKG) , intent(out) :: varMerged
9436 complex(TKG) , intent(in) :: meanA
9437 complex(TKG) , intent(in) :: meanB
9438 complex(TKG) , intent(out) :: meanMerged
9439 end subroutine
9440#endif
9441
9442#if CK1_ENABLED
9443 PURE module subroutine setVarMeanMergedNew_D0_CK1(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9444#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9445 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_CK1
9446#endif
9447 use pm_kind, only: TKG => CK1
9448 real(TKG) , intent(in) :: fracA
9449 real(TKG) , intent(in) :: varA
9450 real(TKG) , intent(in) :: varB
9451 real(TKG) , intent(out) :: varMerged
9452 complex(TKG) , intent(in) :: meanA
9453 complex(TKG) , intent(in) :: meanB
9454 complex(TKG) , intent(out) :: meanMerged
9455 end subroutine
9456#endif
9457
9458 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9459
9460#if RK5_ENABLED
9461 PURE module subroutine setVarMeanMergedNew_D0_RK5(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9462#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9463 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_RK5
9464#endif
9465 use pm_kind, only: TKG => RK5
9466 real(TKG) , intent(in) :: fracA
9467 real(TKG) , intent(in) :: varA
9468 real(TKG) , intent(in) :: varB
9469 real(TKG) , intent(out) :: varMerged
9470 real(TKG) , intent(in) :: meanA
9471 real(TKG) , intent(in) :: meanB
9472 real(TKG) , intent(out) :: meanMerged
9473 end subroutine
9474#endif
9475
9476#if RK4_ENABLED
9477 PURE module subroutine setVarMeanMergedNew_D0_RK4(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9478#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9479 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_RK4
9480#endif
9481 use pm_kind, only: TKG => RK4
9482 real(TKG) , intent(in) :: fracA
9483 real(TKG) , intent(in) :: varA
9484 real(TKG) , intent(in) :: varB
9485 real(TKG) , intent(out) :: varMerged
9486 real(TKG) , intent(in) :: meanA
9487 real(TKG) , intent(in) :: meanB
9488 real(TKG) , intent(out) :: meanMerged
9489 end subroutine
9490#endif
9491
9492#if RK3_ENABLED
9493 PURE module subroutine setVarMeanMergedNew_D0_RK3(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9494#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9495 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_RK3
9496#endif
9497 use pm_kind, only: TKG => RK3
9498 real(TKG) , intent(in) :: fracA
9499 real(TKG) , intent(in) :: varA
9500 real(TKG) , intent(in) :: varB
9501 real(TKG) , intent(out) :: varMerged
9502 real(TKG) , intent(in) :: meanA
9503 real(TKG) , intent(in) :: meanB
9504 real(TKG) , intent(out) :: meanMerged
9505 end subroutine
9506#endif
9507
9508#if RK2_ENABLED
9509 PURE module subroutine setVarMeanMergedNew_D0_RK2(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9510#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9511 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_RK2
9512#endif
9513 use pm_kind, only: TKG => RK2
9514 real(TKG) , intent(in) :: fracA
9515 real(TKG) , intent(in) :: varA
9516 real(TKG) , intent(in) :: varB
9517 real(TKG) , intent(out) :: varMerged
9518 real(TKG) , intent(in) :: meanA
9519 real(TKG) , intent(in) :: meanB
9520 real(TKG) , intent(out) :: meanMerged
9521 end subroutine
9522#endif
9523
9524#if RK1_ENABLED
9525 PURE module subroutine setVarMeanMergedNew_D0_RK1(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9526#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9527 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D0_RK1
9528#endif
9529 use pm_kind, only: TKG => RK1
9530 real(TKG) , intent(in) :: fracA
9531 real(TKG) , intent(in) :: varA
9532 real(TKG) , intent(in) :: varB
9533 real(TKG) , intent(out) :: varMerged
9534 real(TKG) , intent(in) :: meanA
9535 real(TKG) , intent(in) :: meanB
9536 real(TKG) , intent(out) :: meanMerged
9537 end subroutine
9538#endif
9539
9540 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9541
9542 end interface
9543
9544 ! New_D1
9545
9546 interface setVarMeanMerged
9547
9548 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9549
9550#if CK5_ENABLED
9551 PURE module subroutine setVarMeanMergedNew_D1_CK5(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9552#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9553 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_CK5
9554#endif
9555 use pm_kind, only: TKG => CK5
9556 real(TKG) , intent(in) :: fracA
9557 real(TKG) , intent(in) , contiguous :: varA(:)
9558 real(TKG) , intent(in) , contiguous :: varB(:)
9559 real(TKG) , intent(out) , contiguous :: varMerged(:)
9560 complex(TKG) , intent(in) , contiguous :: meanA(:)
9561 complex(TKG) , intent(in) , contiguous :: meanB(:)
9562 complex(TKG) , intent(out) , contiguous :: meanMerged(:)
9563 end subroutine
9564#endif
9565
9566#if CK4_ENABLED
9567 PURE module subroutine setVarMeanMergedNew_D1_CK4(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9568#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9569 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_CK4
9570#endif
9571 use pm_kind, only: TKG => CK4
9572 real(TKG) , intent(in) :: fracA
9573 real(TKG) , intent(in) , contiguous :: varA(:)
9574 real(TKG) , intent(in) , contiguous :: varB(:)
9575 real(TKG) , intent(out) , contiguous :: varMerged(:)
9576 complex(TKG) , intent(in) , contiguous :: meanA(:)
9577 complex(TKG) , intent(in) , contiguous :: meanB(:)
9578 complex(TKG) , intent(out) , contiguous :: meanMerged(:)
9579 end subroutine
9580#endif
9581
9582#if CK3_ENABLED
9583 PURE module subroutine setVarMeanMergedNew_D1_CK3(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9584#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9585 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_CK3
9586#endif
9587 use pm_kind, only: TKG => CK3
9588 real(TKG) , intent(in) :: fracA
9589 real(TKG) , intent(in) , contiguous :: varA(:)
9590 real(TKG) , intent(in) , contiguous :: varB(:)
9591 real(TKG) , intent(out) , contiguous :: varMerged(:)
9592 complex(TKG) , intent(in) , contiguous :: meanA(:)
9593 complex(TKG) , intent(in) , contiguous :: meanB(:)
9594 complex(TKG) , intent(out) , contiguous :: meanMerged(:)
9595 end subroutine
9596#endif
9597
9598#if CK2_ENABLED
9599 PURE module subroutine setVarMeanMergedNew_D1_CK2(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9600#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9601 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_CK2
9602#endif
9603 use pm_kind, only: TKG => CK2
9604 real(TKG) , intent(in) :: fracA
9605 real(TKG) , intent(in) , contiguous :: varA(:)
9606 real(TKG) , intent(in) , contiguous :: varB(:)
9607 real(TKG) , intent(out) , contiguous :: varMerged(:)
9608 complex(TKG) , intent(in) , contiguous :: meanA(:)
9609 complex(TKG) , intent(in) , contiguous :: meanB(:)
9610 complex(TKG) , intent(out) , contiguous :: meanMerged(:)
9611 end subroutine
9612#endif
9613
9614#if CK1_ENABLED
9615 PURE module subroutine setVarMeanMergedNew_D1_CK1(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9616#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9617 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_CK1
9618#endif
9619 use pm_kind, only: TKG => CK1
9620 real(TKG) , intent(in) :: fracA
9621 real(TKG) , intent(in) , contiguous :: varA(:)
9622 real(TKG) , intent(in) , contiguous :: varB(:)
9623 real(TKG) , intent(out) , contiguous :: varMerged(:)
9624 complex(TKG) , intent(in) , contiguous :: meanA(:)
9625 complex(TKG) , intent(in) , contiguous :: meanB(:)
9626 complex(TKG) , intent(out) , contiguous :: meanMerged(:)
9627 end subroutine
9628#endif
9629
9630 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9631
9632#if RK5_ENABLED
9633 PURE module subroutine setVarMeanMergedNew_D1_RK5(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9634#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9635 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_RK5
9636#endif
9637 use pm_kind, only: TKG => RK5
9638 real(TKG) , intent(in) :: fracA
9639 real(TKG) , intent(in) , contiguous :: varA(:)
9640 real(TKG) , intent(in) , contiguous :: varB(:)
9641 real(TKG) , intent(out) , contiguous :: varMerged(:)
9642 real(TKG) , intent(in) , contiguous :: meanA(:)
9643 real(TKG) , intent(in) , contiguous :: meanB(:)
9644 real(TKG) , intent(out) , contiguous :: meanMerged(:)
9645 end subroutine
9646#endif
9647
9648#if RK4_ENABLED
9649 PURE module subroutine setVarMeanMergedNew_D1_RK4(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9650#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9651 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_RK4
9652#endif
9653 use pm_kind, only: TKG => RK4
9654 real(TKG) , intent(in) :: fracA
9655 real(TKG) , intent(in) , contiguous :: varA(:)
9656 real(TKG) , intent(in) , contiguous :: varB(:)
9657 real(TKG) , intent(out) , contiguous :: varMerged(:)
9658 real(TKG) , intent(in) , contiguous :: meanA(:)
9659 real(TKG) , intent(in) , contiguous :: meanB(:)
9660 real(TKG) , intent(out) , contiguous :: meanMerged(:)
9661 end subroutine
9662#endif
9663
9664#if RK3_ENABLED
9665 PURE module subroutine setVarMeanMergedNew_D1_RK3(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9666#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9667 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_RK3
9668#endif
9669 use pm_kind, only: TKG => RK3
9670 real(TKG) , intent(in) :: fracA
9671 real(TKG) , intent(in) , contiguous :: varA(:)
9672 real(TKG) , intent(in) , contiguous :: varB(:)
9673 real(TKG) , intent(out) , contiguous :: varMerged(:)
9674 real(TKG) , intent(in) , contiguous :: meanA(:)
9675 real(TKG) , intent(in) , contiguous :: meanB(:)
9676 real(TKG) , intent(out) , contiguous :: meanMerged(:)
9677 end subroutine
9678#endif
9679
9680#if RK2_ENABLED
9681 PURE module subroutine setVarMeanMergedNew_D1_RK2(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9682#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9683 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_RK2
9684#endif
9685 use pm_kind, only: TKG => RK2
9686 real(TKG) , intent(in) :: fracA
9687 real(TKG) , intent(in) , contiguous :: varA(:)
9688 real(TKG) , intent(in) , contiguous :: varB(:)
9689 real(TKG) , intent(out) , contiguous :: varMerged(:)
9690 real(TKG) , intent(in) , contiguous :: meanA(:)
9691 real(TKG) , intent(in) , contiguous :: meanB(:)
9692 real(TKG) , intent(out) , contiguous :: meanMerged(:)
9693 end subroutine
9694#endif
9695
9696#if RK1_ENABLED
9697 PURE module subroutine setVarMeanMergedNew_D1_RK1(varMerged, meanMerged, varB, meanB, varA, meanA, fracA)
9698#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9699 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedNew_D1_RK1
9700#endif
9701 use pm_kind, only: TKG => RK1
9702 real(TKG) , intent(in) :: fracA
9703 real(TKG) , intent(in) , contiguous :: varA(:)
9704 real(TKG) , intent(in) , contiguous :: varB(:)
9705 real(TKG) , intent(out) , contiguous :: varMerged(:)
9706 real(TKG) , intent(in) , contiguous :: meanA(:)
9707 real(TKG) , intent(in) , contiguous :: meanB(:)
9708 real(TKG) , intent(out) , contiguous :: meanMerged(:)
9709 end subroutine
9710#endif
9711
9712 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9713
9714 end interface
9715
9716 ! Old_D0
9717
9718 interface setVarMeanMerged
9719
9720 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9721
9722#if CK5_ENABLED
9723 PURE module subroutine setVarMeanMergedOld_D0_CK5(varB, meanB, varA, meanA, fracA)
9724#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9725 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_CK5
9726#endif
9727 use pm_kind, only: TKG => CK5
9728 real(TKG) , intent(in) :: fracA
9729 real(TKG) , intent(in) :: varA
9730 real(TKG) , intent(out) :: varB
9731 complex(TKG) , intent(in) :: meanA
9732 complex(TKG) , intent(out) :: meanB
9733 end subroutine
9734#endif
9735
9736#if CK4_ENABLED
9737 PURE module subroutine setVarMeanMergedOld_D0_CK4(varB, meanB, varA, meanA, fracA)
9738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9739 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_CK4
9740#endif
9741 use pm_kind, only: TKG => CK4
9742 real(TKG) , intent(in) :: fracA
9743 real(TKG) , intent(in) :: varA
9744 real(TKG) , intent(out) :: varB
9745 complex(TKG) , intent(in) :: meanA
9746 complex(TKG) , intent(out) :: meanB
9747 end subroutine
9748#endif
9749
9750#if CK3_ENABLED
9751 PURE module subroutine setVarMeanMergedOld_D0_CK3(varB, meanB, varA, meanA, fracA)
9752#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9753 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_CK3
9754#endif
9755 use pm_kind, only: TKG => CK3
9756 real(TKG) , intent(in) :: fracA
9757 real(TKG) , intent(in) :: varA
9758 real(TKG) , intent(out) :: varB
9759 complex(TKG) , intent(in) :: meanA
9760 complex(TKG) , intent(out) :: meanB
9761 end subroutine
9762#endif
9763
9764#if CK2_ENABLED
9765 PURE module subroutine setVarMeanMergedOld_D0_CK2(varB, meanB, varA, meanA, fracA)
9766#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9767 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_CK2
9768#endif
9769 use pm_kind, only: TKG => CK2
9770 real(TKG) , intent(in) :: fracA
9771 real(TKG) , intent(in) :: varA
9772 real(TKG) , intent(out) :: varB
9773 complex(TKG) , intent(in) :: meanA
9774 complex(TKG) , intent(out) :: meanB
9775 end subroutine
9776#endif
9777
9778#if CK1_ENABLED
9779 PURE module subroutine setVarMeanMergedOld_D0_CK1(varB, meanB, varA, meanA, fracA)
9780#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9781 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_CK1
9782#endif
9783 use pm_kind, only: TKG => CK1
9784 real(TKG) , intent(in) :: fracA
9785 real(TKG) , intent(in) :: varA
9786 real(TKG) , intent(out) :: varB
9787 complex(TKG) , intent(in) :: meanA
9788 complex(TKG) , intent(out) :: meanB
9789 end subroutine
9790#endif
9791
9792 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9793
9794#if RK5_ENABLED
9795 PURE module subroutine setVarMeanMergedOld_D0_RK5(varB, meanB, varA, meanA, fracA)
9796#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9797 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_RK5
9798#endif
9799 use pm_kind, only: TKG => RK5
9800 real(TKG) , intent(in) :: fracA
9801 real(TKG) , intent(in) :: varA
9802 real(TKG) , intent(out) :: varB
9803 real(TKG) , intent(in) :: meanA
9804 real(TKG) , intent(out) :: meanB
9805 end subroutine
9806#endif
9807
9808#if RK4_ENABLED
9809 PURE module subroutine setVarMeanMergedOld_D0_RK4(varB, meanB, varA, meanA, fracA)
9810#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9811 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_RK4
9812#endif
9813 use pm_kind, only: TKG => RK4
9814 real(TKG) , intent(in) :: fracA
9815 real(TKG) , intent(in) :: varA
9816 real(TKG) , intent(out) :: varB
9817 real(TKG) , intent(in) :: meanA
9818 real(TKG) , intent(out) :: meanB
9819 end subroutine
9820#endif
9821
9822#if RK3_ENABLED
9823 PURE module subroutine setVarMeanMergedOld_D0_RK3(varB, meanB, varA, meanA, fracA)
9824#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9825 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_RK3
9826#endif
9827 use pm_kind, only: TKG => RK3
9828 real(TKG) , intent(in) :: fracA
9829 real(TKG) , intent(in) :: varA
9830 real(TKG) , intent(out) :: varB
9831 real(TKG) , intent(in) :: meanA
9832 real(TKG) , intent(out) :: meanB
9833 end subroutine
9834#endif
9835
9836#if RK2_ENABLED
9837 PURE module subroutine setVarMeanMergedOld_D0_RK2(varB, meanB, varA, meanA, fracA)
9838#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9839 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_RK2
9840#endif
9841 use pm_kind, only: TKG => RK2
9842 real(TKG) , intent(in) :: fracA
9843 real(TKG) , intent(in) :: varA
9844 real(TKG) , intent(out) :: varB
9845 real(TKG) , intent(in) :: meanA
9846 real(TKG) , intent(out) :: meanB
9847 end subroutine
9848#endif
9849
9850#if RK1_ENABLED
9851 PURE module subroutine setVarMeanMergedOld_D0_RK1(varB, meanB, varA, meanA, fracA)
9852#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9853 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D0_RK1
9854#endif
9855 use pm_kind, only: TKG => RK1
9856 real(TKG) , intent(in) :: fracA
9857 real(TKG) , intent(in) :: varA
9858 real(TKG) , intent(out) :: varB
9859 real(TKG) , intent(in) :: meanA
9860 real(TKG) , intent(out) :: meanB
9861 end subroutine
9862#endif
9863
9864 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9865
9866 end interface
9867
9868 ! Old_D1
9869
9870 interface setVarMeanMerged
9871
9872 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9873
9874#if CK5_ENABLED
9875 PURE module subroutine setVarMeanMergedOld_D1_CK5(varB, meanB, varA, meanA, fracA)
9876#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9877 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_CK5
9878#endif
9879 use pm_kind, only: TKG => CK5
9880 real(TKG) , intent(in) :: fracA
9881 real(TKG) , intent(in) , contiguous :: varA(:)
9882 real(TKG) , intent(out) , contiguous :: varB(:)
9883 complex(TKG) , intent(in) , contiguous :: meanA(:)
9884 complex(TKG) , intent(out) , contiguous :: meanB(:)
9885 end subroutine
9886#endif
9887
9888#if CK4_ENABLED
9889 PURE module subroutine setVarMeanMergedOld_D1_CK4(varB, meanB, varA, meanA, fracA)
9890#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9891 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_CK4
9892#endif
9893 use pm_kind, only: TKG => CK4
9894 real(TKG) , intent(in) :: fracA
9895 real(TKG) , intent(in) , contiguous :: varA(:)
9896 real(TKG) , intent(out) , contiguous :: varB(:)
9897 complex(TKG) , intent(in) , contiguous :: meanA(:)
9898 complex(TKG) , intent(out) , contiguous :: meanB(:)
9899 end subroutine
9900#endif
9901
9902#if CK3_ENABLED
9903 PURE module subroutine setVarMeanMergedOld_D1_CK3(varB, meanB, varA, meanA, fracA)
9904#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9905 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_CK3
9906#endif
9907 use pm_kind, only: TKG => CK3
9908 real(TKG) , intent(in) :: fracA
9909 real(TKG) , intent(in) , contiguous :: varA(:)
9910 real(TKG) , intent(out) , contiguous :: varB(:)
9911 complex(TKG) , intent(in) , contiguous :: meanA(:)
9912 complex(TKG) , intent(out) , contiguous :: meanB(:)
9913 end subroutine
9914#endif
9915
9916#if CK2_ENABLED
9917 PURE module subroutine setVarMeanMergedOld_D1_CK2(varB, meanB, varA, meanA, fracA)
9918#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9919 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_CK2
9920#endif
9921 use pm_kind, only: TKG => CK2
9922 real(TKG) , intent(in) :: fracA
9923 real(TKG) , intent(in) , contiguous :: varA(:)
9924 real(TKG) , intent(out) , contiguous :: varB(:)
9925 complex(TKG) , intent(in) , contiguous :: meanA(:)
9926 complex(TKG) , intent(out) , contiguous :: meanB(:)
9927 end subroutine
9928#endif
9929
9930#if CK1_ENABLED
9931 PURE module subroutine setVarMeanMergedOld_D1_CK1(varB, meanB, varA, meanA, fracA)
9932#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9933 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_CK1
9934#endif
9935 use pm_kind, only: TKG => CK1
9936 real(TKG) , intent(in) :: fracA
9937 real(TKG) , intent(in) , contiguous :: varA(:)
9938 real(TKG) , intent(out) , contiguous :: varB(:)
9939 complex(TKG) , intent(in) , contiguous :: meanA(:)
9940 complex(TKG) , intent(out) , contiguous :: meanB(:)
9941 end subroutine
9942#endif
9943
9944 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9945
9946#if RK5_ENABLED
9947 PURE module subroutine setVarMeanMergedOld_D1_RK5(varB, meanB, varA, meanA, fracA)
9948#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9949 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_RK5
9950#endif
9951 use pm_kind, only: TKG => RK5
9952 real(TKG) , intent(in) :: fracA
9953 real(TKG) , intent(in) , contiguous :: varA(:)
9954 real(TKG) , intent(out) , contiguous :: varB(:)
9955 real(TKG) , intent(in) , contiguous :: meanA(:)
9956 real(TKG) , intent(out) , contiguous :: meanB(:)
9957 end subroutine
9958#endif
9959
9960#if RK4_ENABLED
9961 PURE module subroutine setVarMeanMergedOld_D1_RK4(varB, meanB, varA, meanA, fracA)
9962#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9963 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_RK4
9964#endif
9965 use pm_kind, only: TKG => RK4
9966 real(TKG) , intent(in) :: fracA
9967 real(TKG) , intent(in) , contiguous :: varA(:)
9968 real(TKG) , intent(out) , contiguous :: varB(:)
9969 real(TKG) , intent(in) , contiguous :: meanA(:)
9970 real(TKG) , intent(out) , contiguous :: meanB(:)
9971 end subroutine
9972#endif
9973
9974#if RK3_ENABLED
9975 PURE module subroutine setVarMeanMergedOld_D1_RK3(varB, meanB, varA, meanA, fracA)
9976#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9977 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_RK3
9978#endif
9979 use pm_kind, only: TKG => RK3
9980 real(TKG) , intent(in) :: fracA
9981 real(TKG) , intent(in) , contiguous :: varA(:)
9982 real(TKG) , intent(out) , contiguous :: varB(:)
9983 real(TKG) , intent(in) , contiguous :: meanA(:)
9984 real(TKG) , intent(out) , contiguous :: meanB(:)
9985 end subroutine
9986#endif
9987
9988#if RK2_ENABLED
9989 PURE module subroutine setVarMeanMergedOld_D1_RK2(varB, meanB, varA, meanA, fracA)
9990#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9991 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_RK2
9992#endif
9993 use pm_kind, only: TKG => RK2
9994 real(TKG) , intent(in) :: fracA
9995 real(TKG) , intent(in) , contiguous :: varA(:)
9996 real(TKG) , intent(out) , contiguous :: varB(:)
9997 real(TKG) , intent(in) , contiguous :: meanA(:)
9998 real(TKG) , intent(out) , contiguous :: meanB(:)
9999 end subroutine
10000#endif
10001
10002#if RK1_ENABLED
10003 PURE module subroutine setVarMeanMergedOld_D1_RK1(varB, meanB, varA, meanA, fracA)
10004#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10005 !DEC$ ATTRIBUTES DLLEXPORT :: setVarMeanMergedOld_D1_RK1
10006#endif
10007 use pm_kind, only: TKG => RK1
10008 real(TKG) , intent(in) :: fracA
10009 real(TKG) , intent(in) , contiguous :: varA(:)
10010 real(TKG) , intent(out) , contiguous :: varB(:)
10011 real(TKG) , intent(in) , contiguous :: meanA(:)
10012 real(TKG) , intent(out) , contiguous :: meanB(:)
10013 end subroutine
10014#endif
10015
10016 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10017
10018 end interface
10019
10020!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10021
10022end module pm_sampleVar ! LCOV_EXCL_LINE
Generate and return the bias correction factor for the computation of the variance of a (weighted) sa...
Generate and return the (weighted) merged variance of a complex or real sample resulting from the mer...
Generate and return the variance of the input sample of type complex or real of shape (nsam) or (ndim...
Return the (weighted) merged variance and mean of a complex or real sample resulting from the merger ...
Return the (weighted) sample variance and mean of an input time series of nsam observations,...
Return the (weighted) merged variance of a complex or real sample resulting from the merger of two se...
Return the variance of an input (weighted) sample of type complex or real of shape (nsam) or (ndim,...
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter RK5
Definition: pm_kind.F90:478
integer, parameter RK4
Definition: pm_kind.F90:489
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 LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
Definition: pm_kind.F90:541
integer, parameter CK5
Definition: pm_kind.F90:420
integer, parameter CK4
Definition: pm_kind.F90:431
integer, parameter CK2
Definition: pm_kind.F90:453
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 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
This module contains classes and procedures for computing the properties related to the covariance ma...
character(*, SK), parameter MODULE_NAME
This module contains the types, classes, and procedures relevant to weights of random samples.
type(rweight_type), parameter rweight
This is a scalar parameter object of type rweight_type that is exclusively used to signify the Symmet...
type(fweight_type), parameter fweight
This is a scalar parameter object of type fweight_type that is exclusively used to signify the Symmet...
This is a concrete derived type whose instances are exclusively used to signify the fweight type of s...
This is a concrete derived type whose instances are exclusively used to signify the rweight type of s...
This is an abstract derived type for constructing concrete derived types to distinguish various proce...