ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_arrayInsert.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
60
62
63 use pm_kind, only: SK, IK, LK
64
65 implicit none
66
67 character(*, SK), parameter :: MODULE_NAME = "@pm_arrayInsert"
68
69!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
70
165 interface getInserted
166
167 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
168 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
169 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
170
171 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
172
173#if SK5_ENABLED
174 PURE module function getInserted_D0_D0_SK5(array, insertion, index, positive, sorted) result(arrayNew)
175#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
176 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D0_D0_SK5
177#endif
178 use pm_kind, only: SKG => SK5
179 character(*,SKG) , intent(in) :: array
180 character(*,SKG) , intent(in) :: insertion
181 integer(IK) , intent(in) , contiguous :: index(:)
182 logical(LK) , intent(in) , optional :: positive, sorted
183 character(len(array,IK)+size(index,kind=IK)*len(insertion,IK),SKG) :: arrayNew
184 end function
185#endif
186
187#if SK4_ENABLED
188 PURE module function getInserted_D0_D0_SK4(array, insertion, index, positive, sorted) result(arrayNew)
189#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
190 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D0_D0_SK4
191#endif
192 use pm_kind, only: SKG => SK4
193 character(*,SKG) , intent(in) :: array
194 character(*,SKG) , intent(in) :: insertion
195 integer(IK) , intent(in) , contiguous :: index(:)
196 logical(LK) , intent(in) , optional :: positive, sorted
197 character(len(array,IK)+size(index,kind=IK)*len(insertion,IK),SKG) :: arrayNew
198 end function
199#endif
200
201#if SK3_ENABLED
202 PURE module function getInserted_D0_D0_SK3(array, insertion, index, positive, sorted) result(arrayNew)
203#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
204 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D0_D0_SK3
205#endif
206 use pm_kind, only: SKG => SK3
207 character(*,SKG) , intent(in) :: array
208 character(*,SKG) , intent(in) :: insertion
209 integer(IK) , intent(in) , contiguous :: index(:)
210 logical(LK) , intent(in) , optional :: positive, sorted
211 character(len(array,IK)+size(index,kind=IK)*len(insertion,IK),SKG) :: arrayNew
212 end function
213#endif
214
215#if SK2_ENABLED
216 PURE module function getInserted_D0_D0_SK2(array, insertion, index, positive, sorted) result(arrayNew)
217#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
218 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D0_D0_SK2
219#endif
220 use pm_kind, only: SKG => SK2
221 character(*,SKG) , intent(in) :: array
222 character(*,SKG) , intent(in) :: insertion
223 integer(IK) , intent(in) , contiguous :: index(:)
224 logical(LK) , intent(in) , optional :: positive, sorted
225 character(len(array,IK)+size(index,kind=IK)*len(insertion,IK),SKG) :: arrayNew
226 end function
227#endif
228
229#if SK1_ENABLED
230 PURE module function getInserted_D0_D0_SK1(array, insertion, index, positive, sorted) result(arrayNew)
231#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
232 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D0_D0_SK1
233#endif
234 use pm_kind, only: SKG => SK1
235 character(*,SKG) , intent(in) :: array
236 character(*,SKG) , intent(in) :: insertion
237 integer(IK) , intent(in) , contiguous :: index(:)
238 logical(LK) , intent(in) , optional :: positive, sorted
239 character(len(array,IK)+size(index,kind=IK)*len(insertion,IK),SKG) :: arrayNew
240 end function
241#endif
242
243 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
244
245 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
246 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
247 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
248
249 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
250
251#if SK5_ENABLED
252 PURE module function getInserted_D1_D0_SK5(array, insertion, index, positive, sorted) result(arrayNew)
253#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
254 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_SK5
255#endif
256 use pm_kind, only: SKG => SK5
257 character(*,SKG) , intent(in) , contiguous :: array(:)
258 character(*,SKG) , intent(in) :: insertion
259 integer(IK) , intent(in) , contiguous :: index(:)
260 logical(LK) , intent(in) , optional :: positive, sorted
261 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
262 end function
263#endif
264
265#if SK4_ENABLED
266 PURE module function getInserted_D1_D0_SK4(array, insertion, index, positive, sorted) result(arrayNew)
267#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
268 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_SK4
269#endif
270 use pm_kind, only: SKG => SK4
271 character(*,SKG) , intent(in) , contiguous :: array(:)
272 character(*,SKG) , intent(in) :: insertion
273 integer(IK) , intent(in) , contiguous :: index(:)
274 logical(LK) , intent(in) , optional :: positive, sorted
275 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
276 end function
277#endif
278
279#if SK3_ENABLED
280 PURE module function getInserted_D1_D0_SK3(array, insertion, index, positive, sorted) result(arrayNew)
281#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
282 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_SK3
283#endif
284 use pm_kind, only: SKG => SK3
285 character(*,SKG) , intent(in) , contiguous :: array(:)
286 character(*,SKG) , intent(in) :: insertion
287 integer(IK) , intent(in) , contiguous :: index(:)
288 logical(LK) , intent(in) , optional :: positive, sorted
289 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
290 end function
291#endif
292
293#if SK2_ENABLED
294 PURE module function getInserted_D1_D0_SK2(array, insertion, index, positive, sorted) result(arrayNew)
295#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
296 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_SK2
297#endif
298 use pm_kind, only: SKG => SK2
299 character(*,SKG) , intent(in) , contiguous :: array(:)
300 character(*,SKG) , intent(in) :: insertion
301 integer(IK) , intent(in) , contiguous :: index(:)
302 logical(LK) , intent(in) , optional :: positive, sorted
303 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
304 end function
305#endif
306
307#if SK1_ENABLED
308 PURE module function getInserted_D1_D0_SK1(array, insertion, index, positive, sorted) result(arrayNew)
309#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
310 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_SK1
311#endif
312 use pm_kind, only: SKG => SK1
313 character(*,SKG) , intent(in) , contiguous :: array(:)
314 character(*,SKG) , intent(in) :: insertion
315 integer(IK) , intent(in) , contiguous :: index(:)
316 logical(LK) , intent(in) , optional :: positive, sorted
317 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
318 end function
319#endif
320
321 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
322
323#if IK5_ENABLED
324 PURE module function getInserted_D1_D0_IK5(array, insertion, index, positive, sorted) result(arrayNew)
325#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
326 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_IK5
327#endif
328 use pm_kind, only: IKG => IK5
329 integer(IKG) , intent(in) , contiguous :: array(:)
330 integer(IKG) , intent(in) :: insertion
331 integer(IK) , intent(in) , contiguous :: index(:)
332 logical(LK) , intent(in) , optional :: positive, sorted
333 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
334 end function
335#endif
336
337#if IK4_ENABLED
338 PURE module function getInserted_D1_D0_IK4(array, insertion, index, positive, sorted) result(arrayNew)
339#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
340 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_IK4
341#endif
342 use pm_kind, only: IKG => IK4
343 integer(IKG) , intent(in) , contiguous :: array(:)
344 integer(IKG) , intent(in) :: insertion
345 integer(IK) , intent(in) , contiguous :: index(:)
346 logical(LK) , intent(in) , optional :: positive, sorted
347 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
348 end function
349#endif
350
351#if IK3_ENABLED
352 PURE module function getInserted_D1_D0_IK3(array, insertion, index, positive, sorted) result(arrayNew)
353#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
354 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_IK3
355#endif
356 use pm_kind, only: IKG => IK3
357 integer(IKG) , intent(in) , contiguous :: array(:)
358 integer(IKG) , intent(in) :: insertion
359 integer(IK) , intent(in) , contiguous :: index(:)
360 logical(LK) , intent(in) , optional :: positive, sorted
361 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
362 end function
363#endif
364
365#if IK2_ENABLED
366 PURE module function getInserted_D1_D0_IK2(array, insertion, index, positive, sorted) result(arrayNew)
367#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
368 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_IK2
369#endif
370 use pm_kind, only: IKG => IK2
371 integer(IKG) , intent(in) , contiguous :: array(:)
372 integer(IKG) , intent(in) :: insertion
373 integer(IK) , intent(in) , contiguous :: index(:)
374 logical(LK) , intent(in) , optional :: positive, sorted
375 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
376 end function
377#endif
378
379#if IK1_ENABLED
380 PURE module function getInserted_D1_D0_IK1(array, insertion, index, positive, sorted) result(arrayNew)
381#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
382 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_IK1
383#endif
384 use pm_kind, only: IKG => IK1
385 integer(IKG) , intent(in) , contiguous :: array(:)
386 integer(IKG) , intent(in) :: insertion
387 integer(IK) , intent(in) , contiguous :: index(:)
388 logical(LK) , intent(in) , optional :: positive, sorted
389 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
390 end function
391#endif
392
393 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
394
395#if LK5_ENABLED
396 PURE module function getInserted_D1_D0_LK5(array, insertion, index, positive, sorted) result(arrayNew)
397#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
398 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_LK5
399#endif
400 use pm_kind, only: LKG => LK5
401 logical(LKG) , intent(in) , contiguous :: array(:)
402 logical(LKG) , intent(in) :: insertion
403 integer(IK) , intent(in) , contiguous :: index(:)
404 logical(LK) , intent(in) , optional :: positive, sorted
405 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
406 end function
407#endif
408
409#if LK4_ENABLED
410 PURE module function getInserted_D1_D0_LK4(array, insertion, index, positive, sorted) result(arrayNew)
411#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
412 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_LK4
413#endif
414 use pm_kind, only: LKG => LK4
415 logical(LKG) , intent(in) , contiguous :: array(:)
416 logical(LKG) , intent(in) :: insertion
417 integer(IK) , intent(in) , contiguous :: index(:)
418 logical(LK) , intent(in) , optional :: positive, sorted
419 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
420 end function
421#endif
422
423#if LK3_ENABLED
424 PURE module function getInserted_D1_D0_LK3(array, insertion, index, positive, sorted) result(arrayNew)
425#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
426 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_LK3
427#endif
428 use pm_kind, only: LKG => LK3
429 logical(LKG) , intent(in) , contiguous :: array(:)
430 logical(LKG) , intent(in) :: insertion
431 integer(IK) , intent(in) , contiguous :: index(:)
432 logical(LK) , intent(in) , optional :: positive, sorted
433 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
434 end function
435#endif
436
437#if LK2_ENABLED
438 PURE module function getInserted_D1_D0_LK2(array, insertion, index, positive, sorted) result(arrayNew)
439#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
440 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_LK2
441#endif
442 use pm_kind, only: LKG => LK2
443 logical(LKG) , intent(in) , contiguous :: array(:)
444 logical(LKG) , intent(in) :: insertion
445 integer(IK) , intent(in) , contiguous :: index(:)
446 logical(LK) , intent(in) , optional :: positive, sorted
447 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
448 end function
449#endif
450
451#if LK1_ENABLED
452 PURE module function getInserted_D1_D0_LK1(array, insertion, index, positive, sorted) result(arrayNew)
453#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
454 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_LK1
455#endif
456 use pm_kind, only: LKG => LK1
457 logical(LKG) , intent(in) , contiguous :: array(:)
458 logical(LKG) , intent(in) :: insertion
459 integer(IK) , intent(in) , contiguous :: index(:)
460 logical(LK) , intent(in) , optional :: positive, sorted
461 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
462 end function
463#endif
464
465 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
466
467#if CK5_ENABLED
468 PURE module function getInserted_D1_D0_CK5(array, insertion, index, positive, sorted) result(arrayNew)
469#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
470 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_CK5
471#endif
472 use pm_kind, only: CKG => CK5
473 complex(CKG) , intent(in) , contiguous :: array(:)
474 complex(CKG) , intent(in) :: insertion
475 integer(IK) , intent(in) , contiguous :: index(:)
476 logical(LK) , intent(in) , optional :: positive, sorted
477 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
478 end function
479#endif
480
481#if CK4_ENABLED
482 PURE module function getInserted_D1_D0_CK4(array, insertion, index, positive, sorted) result(arrayNew)
483#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
484 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_CK4
485#endif
486 use pm_kind, only: CKG => CK4
487 complex(CKG) , intent(in) , contiguous :: array(:)
488 complex(CKG) , intent(in) :: insertion
489 integer(IK) , intent(in) , contiguous :: index(:)
490 logical(LK) , intent(in) , optional :: positive, sorted
491 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
492 end function
493#endif
494
495#if CK3_ENABLED
496 PURE module function getInserted_D1_D0_CK3(array, insertion, index, positive, sorted) result(arrayNew)
497#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
498 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_CK3
499#endif
500 use pm_kind, only: CKG => CK3
501 complex(CKG) , intent(in) , contiguous :: array(:)
502 complex(CKG) , intent(in) :: insertion
503 integer(IK) , intent(in) , contiguous :: index(:)
504 logical(LK) , intent(in) , optional :: positive, sorted
505 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
506 end function
507#endif
508
509#if CK2_ENABLED
510 PURE module function getInserted_D1_D0_CK2(array, insertion, index, positive, sorted) result(arrayNew)
511#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
512 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_CK2
513#endif
514 use pm_kind, only: CKG => CK2
515 complex(CKG) , intent(in) , contiguous :: array(:)
516 complex(CKG) , intent(in) :: insertion
517 integer(IK) , intent(in) , contiguous :: index(:)
518 logical(LK) , intent(in) , optional :: positive, sorted
519 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
520 end function
521#endif
522
523#if CK1_ENABLED
524 PURE module function getInserted_D1_D0_CK1(array, insertion, index, positive, sorted) result(arrayNew)
525#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
526 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_CK1
527#endif
528 use pm_kind, only: CKG => CK1
529 complex(CKG) , intent(in) , contiguous :: array(:)
530 complex(CKG) , intent(in) :: insertion
531 integer(IK) , intent(in) , contiguous :: index(:)
532 logical(LK) , intent(in) , optional :: positive, sorted
533 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
534 end function
535#endif
536
537 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
538
539#if RK5_ENABLED
540 PURE module function getInserted_D1_D0_RK5(array, insertion, index, positive, sorted) result(arrayNew)
541#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
542 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_RK5
543#endif
544 use pm_kind, only: RKG => RK5
545 real(RKG) , intent(in) , contiguous :: array(:)
546 real(RKG) , intent(in) :: insertion
547 integer(IK) , intent(in) , contiguous :: index(:)
548 logical(LK) , intent(in) , optional :: positive, sorted
549 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
550 end function
551#endif
552
553#if RK4_ENABLED
554 PURE module function getInserted_D1_D0_RK4(array, insertion, index, positive, sorted) result(arrayNew)
555#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
556 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_RK4
557#endif
558 use pm_kind, only: RKG => RK4
559 real(RKG) , intent(in) , contiguous :: array(:)
560 real(RKG) , intent(in) :: insertion
561 integer(IK) , intent(in) , contiguous :: index(:)
562 logical(LK) , intent(in) , optional :: positive, sorted
563 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
564 end function
565#endif
566
567#if RK3_ENABLED
568 PURE module function getInserted_D1_D0_RK3(array, insertion, index, positive, sorted) result(arrayNew)
569#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
570 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_RK3
571#endif
572 use pm_kind, only: RKG => RK3
573 real(RKG) , intent(in) , contiguous :: array(:)
574 real(RKG) , intent(in) :: insertion
575 integer(IK) , intent(in) , contiguous :: index(:)
576 logical(LK) , intent(in) , optional :: positive, sorted
577 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
578 end function
579#endif
580
581#if RK2_ENABLED
582 PURE module function getInserted_D1_D0_RK2(array, insertion, index, positive, sorted) result(arrayNew)
583#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
584 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_RK2
585#endif
586 use pm_kind, only: RKG => RK2
587 real(RKG) , intent(in) , contiguous :: array(:)
588 real(RKG) , intent(in) :: insertion
589 integer(IK) , intent(in) , contiguous :: index(:)
590 logical(LK) , intent(in) , optional :: positive, sorted
591 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
592 end function
593#endif
594
595#if RK1_ENABLED
596 PURE module function getInserted_D1_D0_RK1(array, insertion, index, positive, sorted) result(arrayNew)
597#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
598 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D0_RK1
599#endif
600 use pm_kind, only: RKG => RK1
601 real(RKG) , intent(in) , contiguous :: array(:)
602 real(RKG) , intent(in) :: insertion
603 integer(IK) , intent(in) , contiguous :: index(:)
604 logical(LK) , intent(in) , optional :: positive, sorted
605 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK))
606 end function
607#endif
608
609 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
610
611 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
612 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
613 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
614
615 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
616
617#if SK5_ENABLED
618 PURE module function getInserted_D1_D1_SK5(array, insertion, index, positive, sorted) result(arrayNew)
619#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
620 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_SK5
621#endif
622 use pm_kind, only: SKG => SK5
623 character(*,SKG) , intent(in) , contiguous :: array(:)
624 character(*,SKG) , intent(in) , contiguous :: insertion(:)
625 integer(IK) , intent(in) , contiguous :: index(:)
626 logical(LK) , intent(in) , optional :: positive, sorted
627 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion,kind=IK))
628 end function
629#endif
630
631#if SK4_ENABLED
632 PURE module function getInserted_D1_D1_SK4(array, insertion, index, positive, sorted) result(arrayNew)
633#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
634 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_SK4
635#endif
636 use pm_kind, only: SKG => SK4
637 character(*,SKG) , intent(in) , contiguous :: array(:)
638 character(*,SKG) , intent(in) , contiguous :: insertion(:)
639 integer(IK) , intent(in) , contiguous :: index(:)
640 logical(LK) , intent(in) , optional :: positive, sorted
641 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion,kind=IK))
642 end function
643#endif
644
645#if SK3_ENABLED
646 PURE module function getInserted_D1_D1_SK3(array, insertion, index, positive, sorted) result(arrayNew)
647#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
648 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_SK3
649#endif
650 use pm_kind, only: SKG => SK3
651 character(*,SKG) , intent(in) , contiguous :: array(:)
652 character(*,SKG) , intent(in) , contiguous :: insertion(:)
653 integer(IK) , intent(in) , contiguous :: index(:)
654 logical(LK) , intent(in) , optional :: positive, sorted
655 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion,kind=IK))
656 end function
657#endif
658
659#if SK2_ENABLED
660 PURE module function getInserted_D1_D1_SK2(array, insertion, index, positive, sorted) result(arrayNew)
661#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
662 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_SK2
663#endif
664 use pm_kind, only: SKG => SK2
665 character(*,SKG) , intent(in) , contiguous :: array(:)
666 character(*,SKG) , intent(in) , contiguous :: insertion(:)
667 integer(IK) , intent(in) , contiguous :: index(:)
668 logical(LK) , intent(in) , optional :: positive, sorted
669 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion,kind=IK))
670 end function
671#endif
672
673#if SK1_ENABLED
674 PURE module function getInserted_D1_D1_SK1(array, insertion, index, positive, sorted) result(arrayNew)
675#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
676 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_SK1
677#endif
678 use pm_kind, only: SKG => SK1
679 character(*,SKG) , intent(in) , contiguous :: array(:)
680 character(*,SKG) , intent(in) , contiguous :: insertion(:)
681 integer(IK) , intent(in) , contiguous :: index(:)
682 logical(LK) , intent(in) , optional :: positive, sorted
683 character(len(array,IK),SKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion,kind=IK))
684 end function
685#endif
686
687 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
688
689#if IK5_ENABLED
690 PURE module function getInserted_D1_D1_IK5(array, insertion, index, positive, sorted) result(arrayNew)
691#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
692 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_IK5
693#endif
694 use pm_kind, only: IKG => IK5
695 integer(IKG) , intent(in) , contiguous :: array(:)
696 integer(IKG) , intent(in) , contiguous :: insertion(:)
697 integer(IK) , intent(in) , contiguous :: index(:)
698 logical(LK) , intent(in) , optional :: positive, sorted
699 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
700 end function
701#endif
702
703#if IK4_ENABLED
704 PURE module function getInserted_D1_D1_IK4(array, insertion, index, positive, sorted) result(arrayNew)
705#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
706 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_IK4
707#endif
708 use pm_kind, only: IKG => IK4
709 integer(IKG) , intent(in) , contiguous :: array(:)
710 integer(IKG) , intent(in) , contiguous :: insertion(:)
711 integer(IK) , intent(in) , contiguous :: index(:)
712 logical(LK) , intent(in) , optional :: positive, sorted
713 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
714 end function
715#endif
716
717#if IK3_ENABLED
718 PURE module function getInserted_D1_D1_IK3(array, insertion, index, positive, sorted) result(arrayNew)
719#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
720 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_IK3
721#endif
722 use pm_kind, only: IKG => IK3
723 integer(IKG) , intent(in) , contiguous :: array(:)
724 integer(IKG) , intent(in) , contiguous :: insertion(:)
725 integer(IK) , intent(in) , contiguous :: index(:)
726 logical(LK) , intent(in) , optional :: positive, sorted
727 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
728 end function
729#endif
730
731#if IK2_ENABLED
732 PURE module function getInserted_D1_D1_IK2(array, insertion, index, positive, sorted) result(arrayNew)
733#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
734 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_IK2
735#endif
736 use pm_kind, only: IKG => IK2
737 integer(IKG) , intent(in) , contiguous :: array(:)
738 integer(IKG) , intent(in) , contiguous :: insertion(:)
739 integer(IK) , intent(in) , contiguous :: index(:)
740 logical(LK) , intent(in) , optional :: positive, sorted
741 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
742 end function
743#endif
744
745#if IK1_ENABLED
746 PURE module function getInserted_D1_D1_IK1(array, insertion, index, positive, sorted) result(arrayNew)
747#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
748 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_IK1
749#endif
750 use pm_kind, only: IKG => IK1
751 integer(IKG) , intent(in) , contiguous :: array(:)
752 integer(IKG) , intent(in) , contiguous :: insertion(:)
753 integer(IK) , intent(in) , contiguous :: index(:)
754 logical(LK) , intent(in) , optional :: positive, sorted
755 integer(IKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
756 end function
757#endif
758
759 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
760
761#if LK5_ENABLED
762 PURE module function getInserted_D1_D1_LK5(array, insertion, index, positive, sorted) result(arrayNew)
763#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
764 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_LK5
765#endif
766 use pm_kind, only: LKG => LK5
767 logical(LKG) , intent(in) , contiguous :: array(:)
768 logical(LKG) , intent(in) , contiguous :: insertion(:)
769 integer(IK) , intent(in) , contiguous :: index(:)
770 logical(LK) , intent(in) , optional :: positive, sorted
771 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
772 end function
773#endif
774
775#if LK4_ENABLED
776 PURE module function getInserted_D1_D1_LK4(array, insertion, index, positive, sorted) result(arrayNew)
777#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
778 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_LK4
779#endif
780 use pm_kind, only: LKG => LK4
781 logical(LKG) , intent(in) , contiguous :: array(:)
782 logical(LKG) , intent(in) , contiguous :: insertion(:)
783 integer(IK) , intent(in) , contiguous :: index(:)
784 logical(LK) , intent(in) , optional :: positive, sorted
785 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
786 end function
787#endif
788
789#if LK3_ENABLED
790 PURE module function getInserted_D1_D1_LK3(array, insertion, index, positive, sorted) result(arrayNew)
791#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
792 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_LK3
793#endif
794 use pm_kind, only: LKG => LK3
795 logical(LKG) , intent(in) , contiguous :: array(:)
796 logical(LKG) , intent(in) , contiguous :: insertion(:)
797 integer(IK) , intent(in) , contiguous :: index(:)
798 logical(LK) , intent(in) , optional :: positive, sorted
799 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
800 end function
801#endif
802
803#if LK2_ENABLED
804 PURE module function getInserted_D1_D1_LK2(array, insertion, index, positive, sorted) result(arrayNew)
805#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
806 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_LK2
807#endif
808 use pm_kind, only: LKG => LK2
809 logical(LKG) , intent(in) , contiguous :: array(:)
810 logical(LKG) , intent(in) , contiguous :: insertion(:)
811 integer(IK) , intent(in) , contiguous :: index(:)
812 logical(LK) , intent(in) , optional :: positive, sorted
813 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
814 end function
815#endif
816
817#if LK1_ENABLED
818 PURE module function getInserted_D1_D1_LK1(array, insertion, index, positive, sorted) result(arrayNew)
819#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
820 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_LK1
821#endif
822 use pm_kind, only: LKG => LK1
823 logical(LKG) , intent(in) , contiguous :: array(:)
824 logical(LKG) , intent(in) , contiguous :: insertion(:)
825 integer(IK) , intent(in) , contiguous :: index(:)
826 logical(LK) , intent(in) , optional :: positive, sorted
827 logical(LKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
828 end function
829#endif
830
831 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
832
833#if CK5_ENABLED
834 PURE module function getInserted_D1_D1_CK5(array, insertion, index, positive, sorted) result(arrayNew)
835#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
836 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_CK5
837#endif
838 use pm_kind, only: CKG => CK5
839 complex(CKG) , intent(in) , contiguous :: array(:)
840 complex(CKG) , intent(in) , contiguous :: insertion(:)
841 integer(IK) , intent(in) , contiguous :: index(:)
842 logical(LK) , intent(in) , optional :: positive, sorted
843 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
844 end function
845#endif
846
847#if CK4_ENABLED
848 PURE module function getInserted_D1_D1_CK4(array, insertion, index, positive, sorted) result(arrayNew)
849#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
850 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_CK4
851#endif
852 use pm_kind, only: CKG => CK4
853 complex(CKG) , intent(in) , contiguous :: array(:)
854 complex(CKG) , intent(in) , contiguous :: insertion(:)
855 integer(IK) , intent(in) , contiguous :: index(:)
856 logical(LK) , intent(in) , optional :: positive, sorted
857 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
858 end function
859#endif
860
861#if CK3_ENABLED
862 PURE module function getInserted_D1_D1_CK3(array, insertion, index, positive, sorted) result(arrayNew)
863#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
864 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_CK3
865#endif
866 use pm_kind, only: CKG => CK3
867 complex(CKG) , intent(in) , contiguous :: array(:)
868 complex(CKG) , intent(in) , contiguous :: insertion(:)
869 integer(IK) , intent(in) , contiguous :: index(:)
870 logical(LK) , intent(in) , optional :: positive, sorted
871 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
872 end function
873#endif
874
875#if CK2_ENABLED
876 PURE module function getInserted_D1_D1_CK2(array, insertion, index, positive, sorted) result(arrayNew)
877#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
878 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_CK2
879#endif
880 use pm_kind, only: CKG => CK2
881 complex(CKG) , intent(in) , contiguous :: array(:)
882 complex(CKG) , intent(in) , contiguous :: insertion(:)
883 integer(IK) , intent(in) , contiguous :: index(:)
884 logical(LK) , intent(in) , optional :: positive, sorted
885 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
886 end function
887#endif
888
889#if CK1_ENABLED
890 PURE module function getInserted_D1_D1_CK1(array, insertion, index, positive, sorted) result(arrayNew)
891#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
892 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_CK1
893#endif
894 use pm_kind, only: CKG => CK1
895 complex(CKG) , intent(in) , contiguous :: array(:)
896 complex(CKG) , intent(in) , contiguous :: insertion(:)
897 integer(IK) , intent(in) , contiguous :: index(:)
898 logical(LK) , intent(in) , optional :: positive, sorted
899 complex(CKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
900 end function
901#endif
902
903 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
904
905#if RK5_ENABLED
906 PURE module function getInserted_D1_D1_RK5(array, insertion, index, positive, sorted) result(arrayNew)
907#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
908 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_RK5
909#endif
910 use pm_kind, only: RKG => RK5
911 real(RKG) , intent(in) , contiguous :: array(:)
912 real(RKG) , intent(in) , contiguous :: insertion(:)
913 integer(IK) , intent(in) , contiguous :: index(:)
914 logical(LK) , intent(in) , optional :: positive, sorted
915 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
916 end function
917#endif
918
919#if RK4_ENABLED
920 PURE module function getInserted_D1_D1_RK4(array, insertion, index, positive, sorted) result(arrayNew)
921#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
922 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_RK4
923#endif
924 use pm_kind, only: RKG => RK4
925 real(RKG) , intent(in) , contiguous :: array(:)
926 real(RKG) , intent(in) , contiguous :: insertion(:)
927 integer(IK) , intent(in) , contiguous :: index(:)
928 logical(LK) , intent(in) , optional :: positive, sorted
929 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
930 end function
931#endif
932
933#if RK3_ENABLED
934 PURE module function getInserted_D1_D1_RK3(array, insertion, index, positive, sorted) result(arrayNew)
935#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
936 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_RK3
937#endif
938 use pm_kind, only: RKG => RK3
939 real(RKG) , intent(in) , contiguous :: array(:)
940 real(RKG) , intent(in) , contiguous :: insertion(:)
941 integer(IK) , intent(in) , contiguous :: index(:)
942 logical(LK) , intent(in) , optional :: positive, sorted
943 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
944 end function
945#endif
946
947#if RK2_ENABLED
948 PURE module function getInserted_D1_D1_RK2(array, insertion, index, positive, sorted) result(arrayNew)
949#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
950 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_RK2
951#endif
952 use pm_kind, only: RKG => RK2
953 real(RKG) , intent(in) , contiguous :: array(:)
954 real(RKG) , intent(in) , contiguous :: insertion(:)
955 integer(IK) , intent(in) , contiguous :: index(:)
956 logical(LK) , intent(in) , optional :: positive, sorted
957 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
958 end function
959#endif
960
961#if RK1_ENABLED
962 PURE module function getInserted_D1_D1_RK1(array, insertion, index, positive, sorted) result(arrayNew)
963#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
964 !DEC$ ATTRIBUTES DLLEXPORT :: getInserted_D1_D1_RK1
965#endif
966 use pm_kind, only: RKG => RK1
967 real(RKG) , intent(in) , contiguous :: array(:)
968 real(RKG) , intent(in) , contiguous :: insertion(:)
969 integer(IK) , intent(in) , contiguous :: index(:)
970 logical(LK) , intent(in) , optional :: positive, sorted
971 real(RKG) :: arrayNew(size(array,kind=IK)+size(index,kind=IK)*size(insertion))
972 end function
973#endif
974
975 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
976
977 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
978 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
979 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
980
981 end interface
982
983!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
984
1081 interface setInserted
1082
1083 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1084 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1085 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1086
1087 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1088
1089#if SK5_ENABLED
1090 PURE module subroutine setInserted_D0_D0_SK5(arrayNew, array, insertion, index, positive, sorted)
1091#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1092 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D0_D0_SK5
1093#endif
1094 use pm_kind, only: SKG => SK5
1095 character(*,SKG) , intent(in) :: array
1096 character(*,SKG) , intent(in) :: insertion
1097 integer(IK) , intent(in) , contiguous :: index(:)
1098 logical(LK) , intent(in) , optional :: positive, sorted
1099 character(*,SKG) , intent(out) :: arrayNew
1100 end subroutine
1101#endif
1102
1103#if SK4_ENABLED
1104 PURE module subroutine setInserted_D0_D0_SK4(arrayNew, array, insertion, index, positive, sorted)
1105#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1106 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D0_D0_SK4
1107#endif
1108 use pm_kind, only: SKG => SK4
1109 character(*,SKG) , intent(in) :: array
1110 character(*,SKG) , intent(in) :: insertion
1111 integer(IK) , intent(in) , contiguous :: index(:)
1112 logical(LK) , intent(in) , optional :: positive, sorted
1113 character(*,SKG) , intent(out) :: arrayNew
1114 end subroutine
1115#endif
1116
1117#if SK3_ENABLED
1118 PURE module subroutine setInserted_D0_D0_SK3(arrayNew, array, insertion, index, positive, sorted)
1119#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1120 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D0_D0_SK3
1121#endif
1122 use pm_kind, only: SKG => SK3
1123 character(*,SKG) , intent(in) :: array
1124 character(*,SKG) , intent(in) :: insertion
1125 integer(IK) , intent(in) , contiguous :: index(:)
1126 logical(LK) , intent(in) , optional :: positive, sorted
1127 character(*,SKG) , intent(out) :: arrayNew
1128 end subroutine
1129#endif
1130
1131#if SK2_ENABLED
1132 PURE module subroutine setInserted_D0_D0_SK2(arrayNew, array, insertion, index, positive, sorted)
1133#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1134 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D0_D0_SK2
1135#endif
1136 use pm_kind, only: SKG => SK2
1137 character(*,SKG) , intent(in) :: array
1138 character(*,SKG) , intent(in) :: insertion
1139 integer(IK) , intent(in) , contiguous :: index(:)
1140 logical(LK) , intent(in) , optional :: positive, sorted
1141 character(*,SKG) , intent(out) :: arrayNew
1142 end subroutine
1143#endif
1144
1145#if SK1_ENABLED
1146 PURE module subroutine setInserted_D0_D0_SK1(arrayNew, array, insertion, index, positive, sorted)
1147#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1148 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D0_D0_SK1
1149#endif
1150 use pm_kind, only: SKG => SK1
1151 character(*,SKG) , intent(in) :: array
1152 character(*,SKG) , intent(in) :: insertion
1153 integer(IK) , intent(in) , contiguous :: index(:)
1154 logical(LK) , intent(in) , optional :: positive, sorted
1155 character(*,SKG) , intent(out) :: arrayNew
1156 end subroutine
1157#endif
1158
1159 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1160
1161 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1162 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1163 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1164
1165 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1166
1167#if SK5_ENABLED
1168 PURE module subroutine setInserted_D1_D0_SK5(arrayNew, array, insertion, index, positive, sorted)
1169#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1170 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_SK5
1171#endif
1172 use pm_kind, only: SKG => SK5
1173 character(*,SKG) , intent(in) , contiguous :: array(:)
1174 character(*,SKG) , intent(in) :: insertion
1175 integer(IK) , intent(in) , contiguous :: index(:)
1176 logical(LK) , intent(in) , optional :: positive, sorted
1177 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1178 end subroutine
1179#endif
1180
1181#if SK4_ENABLED
1182 PURE module subroutine setInserted_D1_D0_SK4(arrayNew, array, insertion, index, positive, sorted)
1183#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1184 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_SK4
1185#endif
1186 use pm_kind, only: SKG => SK4
1187 character(*,SKG) , intent(in) , contiguous :: array(:)
1188 character(*,SKG) , intent(in) :: insertion
1189 integer(IK) , intent(in) , contiguous :: index(:)
1190 logical(LK) , intent(in) , optional :: positive, sorted
1191 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1192 end subroutine
1193#endif
1194
1195#if SK3_ENABLED
1196 PURE module subroutine setInserted_D1_D0_SK3(arrayNew, array, insertion, index, positive, sorted)
1197#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1198 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_SK3
1199#endif
1200 use pm_kind, only: SKG => SK3
1201 character(*,SKG) , intent(in) , contiguous :: array(:)
1202 character(*,SKG) , intent(in) :: insertion
1203 integer(IK) , intent(in) , contiguous :: index(:)
1204 logical(LK) , intent(in) , optional :: positive, sorted
1205 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1206 end subroutine
1207#endif
1208
1209#if SK2_ENABLED
1210 PURE module subroutine setInserted_D1_D0_SK2(arrayNew, array, insertion, index, positive, sorted)
1211#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1212 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_SK2
1213#endif
1214 use pm_kind, only: SKG => SK2
1215 character(*,SKG) , intent(in) , contiguous :: array(:)
1216 character(*,SKG) , intent(in) :: insertion
1217 integer(IK) , intent(in) , contiguous :: index(:)
1218 logical(LK) , intent(in) , optional :: positive, sorted
1219 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1220 end subroutine
1221#endif
1222
1223#if SK1_ENABLED
1224 PURE module subroutine setInserted_D1_D0_SK1(arrayNew, array, insertion, index, positive, sorted)
1225#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1226 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_SK1
1227#endif
1228 use pm_kind, only: SKG => SK1
1229 character(*,SKG) , intent(in) , contiguous :: array(:)
1230 character(*,SKG) , intent(in) :: insertion
1231 integer(IK) , intent(in) , contiguous :: index(:)
1232 logical(LK) , intent(in) , optional :: positive, sorted
1233 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1234 end subroutine
1235#endif
1236
1237 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1238
1239#if IK5_ENABLED
1240 PURE module subroutine setInserted_D1_D0_IK5(arrayNew, array, insertion, index, positive, sorted)
1241#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1242 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_IK5
1243#endif
1244 use pm_kind, only: IKG => IK5
1245 integer(IKG) , intent(in) , contiguous :: array(:)
1246 integer(IKG) , intent(in) :: insertion
1247 integer(IK) , intent(in) , contiguous :: index(:)
1248 logical(LK) , intent(in) , optional :: positive, sorted
1249 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1250 end subroutine
1251#endif
1252
1253#if IK4_ENABLED
1254 PURE module subroutine setInserted_D1_D0_IK4(arrayNew, array, insertion, index, positive, sorted)
1255#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1256 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_IK4
1257#endif
1258 use pm_kind, only: IKG => IK4
1259 integer(IKG) , intent(in) , contiguous :: array(:)
1260 integer(IKG) , intent(in) :: insertion
1261 integer(IK) , intent(in) , contiguous :: index(:)
1262 logical(LK) , intent(in) , optional :: positive, sorted
1263 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1264 end subroutine
1265#endif
1266
1267#if IK3_ENABLED
1268 PURE module subroutine setInserted_D1_D0_IK3(arrayNew, array, insertion, index, positive, sorted)
1269#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1270 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_IK3
1271#endif
1272 use pm_kind, only: IKG => IK3
1273 integer(IKG) , intent(in) , contiguous :: array(:)
1274 integer(IKG) , intent(in) :: insertion
1275 integer(IK) , intent(in) , contiguous :: index(:)
1276 logical(LK) , intent(in) , optional :: positive, sorted
1277 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1278 end subroutine
1279#endif
1280
1281#if IK2_ENABLED
1282 PURE module subroutine setInserted_D1_D0_IK2(arrayNew, array, insertion, index, positive, sorted)
1283#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1284 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_IK2
1285#endif
1286 use pm_kind, only: IKG => IK2
1287 integer(IKG) , intent(in) , contiguous :: array(:)
1288 integer(IKG) , intent(in) :: insertion
1289 integer(IK) , intent(in) , contiguous :: index(:)
1290 logical(LK) , intent(in) , optional :: positive, sorted
1291 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1292 end subroutine
1293#endif
1294
1295#if IK1_ENABLED
1296 PURE module subroutine setInserted_D1_D0_IK1(arrayNew, array, insertion, index, positive, sorted)
1297#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1298 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_IK1
1299#endif
1300 use pm_kind, only: IKG => IK1
1301 integer(IKG) , intent(in) , contiguous :: array(:)
1302 integer(IKG) , intent(in) :: insertion
1303 integer(IK) , intent(in) , contiguous :: index(:)
1304 logical(LK) , intent(in) , optional :: positive, sorted
1305 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1306 end subroutine
1307#endif
1308
1309 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1310
1311#if LK5_ENABLED
1312 PURE module subroutine setInserted_D1_D0_LK5(arrayNew, array, insertion, index, positive, sorted)
1313#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1314 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_LK5
1315#endif
1316 use pm_kind, only: LKG => LK5
1317 logical(LKG) , intent(in) , contiguous :: array(:)
1318 logical(LKG) , intent(in) :: insertion
1319 integer(IK) , intent(in) , contiguous :: index(:)
1320 logical(LK) , intent(in) , optional :: positive, sorted
1321 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1322 end subroutine
1323#endif
1324
1325#if LK4_ENABLED
1326 PURE module subroutine setInserted_D1_D0_LK4(arrayNew, array, insertion, index, positive, sorted)
1327#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1328 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_LK4
1329#endif
1330 use pm_kind, only: LKG => LK4
1331 logical(LKG) , intent(in) , contiguous :: array(:)
1332 logical(LKG) , intent(in) :: insertion
1333 integer(IK) , intent(in) , contiguous :: index(:)
1334 logical(LK) , intent(in) , optional :: positive, sorted
1335 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1336 end subroutine
1337#endif
1338
1339#if LK3_ENABLED
1340 PURE module subroutine setInserted_D1_D0_LK3(arrayNew, array, insertion, index, positive, sorted)
1341#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1342 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_LK3
1343#endif
1344 use pm_kind, only: LKG => LK3
1345 logical(LKG) , intent(in) , contiguous :: array(:)
1346 logical(LKG) , intent(in) :: insertion
1347 integer(IK) , intent(in) , contiguous :: index(:)
1348 logical(LK) , intent(in) , optional :: positive, sorted
1349 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1350 end subroutine
1351#endif
1352
1353#if LK2_ENABLED
1354 PURE module subroutine setInserted_D1_D0_LK2(arrayNew, array, insertion, index, positive, sorted)
1355#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1356 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_LK2
1357#endif
1358 use pm_kind, only: LKG => LK2
1359 logical(LKG) , intent(in) , contiguous :: array(:)
1360 logical(LKG) , intent(in) :: insertion
1361 integer(IK) , intent(in) , contiguous :: index(:)
1362 logical(LK) , intent(in) , optional :: positive, sorted
1363 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1364 end subroutine
1365#endif
1366
1367#if LK1_ENABLED
1368 PURE module subroutine setInserted_D1_D0_LK1(arrayNew, array, insertion, index, positive, sorted)
1369#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1370 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_LK1
1371#endif
1372 use pm_kind, only: LKG => LK1
1373 logical(LKG) , intent(in) , contiguous :: array(:)
1374 logical(LKG) , intent(in) :: insertion
1375 integer(IK) , intent(in) , contiguous :: index(:)
1376 logical(LK) , intent(in) , optional :: positive, sorted
1377 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1378 end subroutine
1379#endif
1380
1381 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1382
1383#if CK5_ENABLED
1384 PURE module subroutine setInserted_D1_D0_CK5(arrayNew, array, insertion, index, positive, sorted)
1385#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1386 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_CK5
1387#endif
1388 use pm_kind, only: CKG => CK5
1389 complex(CKG) , intent(in) , contiguous :: array(:)
1390 complex(CKG) , intent(in) :: insertion
1391 integer(IK) , intent(in) , contiguous :: index(:)
1392 logical(LK) , intent(in) , optional :: positive, sorted
1393 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1394 end subroutine
1395#endif
1396
1397#if CK4_ENABLED
1398 PURE module subroutine setInserted_D1_D0_CK4(arrayNew, array, insertion, index, positive, sorted)
1399#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1400 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_CK4
1401#endif
1402 use pm_kind, only: CKG => CK4
1403 complex(CKG) , intent(in) , contiguous :: array(:)
1404 complex(CKG) , intent(in) :: insertion
1405 integer(IK) , intent(in) , contiguous :: index(:)
1406 logical(LK) , intent(in) , optional :: positive, sorted
1407 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1408 end subroutine
1409#endif
1410
1411#if CK3_ENABLED
1412 PURE module subroutine setInserted_D1_D0_CK3(arrayNew, array, insertion, index, positive, sorted)
1413#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1414 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_CK3
1415#endif
1416 use pm_kind, only: CKG => CK3
1417 complex(CKG) , intent(in) , contiguous :: array(:)
1418 complex(CKG) , intent(in) :: insertion
1419 integer(IK) , intent(in) , contiguous :: index(:)
1420 logical(LK) , intent(in) , optional :: positive, sorted
1421 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1422 end subroutine
1423#endif
1424
1425#if CK2_ENABLED
1426 PURE module subroutine setInserted_D1_D0_CK2(arrayNew, array, insertion, index, positive, sorted)
1427#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1428 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_CK2
1429#endif
1430 use pm_kind, only: CKG => CK2
1431 complex(CKG) , intent(in) , contiguous :: array(:)
1432 complex(CKG) , intent(in) :: insertion
1433 integer(IK) , intent(in) , contiguous :: index(:)
1434 logical(LK) , intent(in) , optional :: positive, sorted
1435 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1436 end subroutine
1437#endif
1438
1439#if CK1_ENABLED
1440 PURE module subroutine setInserted_D1_D0_CK1(arrayNew, array, insertion, index, positive, sorted)
1441#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1442 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_CK1
1443#endif
1444 use pm_kind, only: CKG => CK1
1445 complex(CKG) , intent(in) , contiguous :: array(:)
1446 complex(CKG) , intent(in) :: insertion
1447 integer(IK) , intent(in) , contiguous :: index(:)
1448 logical(LK) , intent(in) , optional :: positive, sorted
1449 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1450 end subroutine
1451#endif
1452
1453 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1454
1455#if RK5_ENABLED
1456 PURE module subroutine setInserted_D1_D0_RK5(arrayNew, array, insertion, index, positive, sorted)
1457#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1458 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_RK5
1459#endif
1460 use pm_kind, only: RKG => RK5
1461 real(RKG) , intent(in) , contiguous :: array(:)
1462 real(RKG) , intent(in) :: insertion
1463 integer(IK) , intent(in) , contiguous :: index(:)
1464 logical(LK) , intent(in) , optional :: positive, sorted
1465 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1466 end subroutine
1467#endif
1468
1469#if RK4_ENABLED
1470 PURE module subroutine setInserted_D1_D0_RK4(arrayNew, array, insertion, index, positive, sorted)
1471#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1472 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_RK4
1473#endif
1474 use pm_kind, only: RKG => RK4
1475 real(RKG) , intent(in) , contiguous :: array(:)
1476 real(RKG) , intent(in) :: insertion
1477 integer(IK) , intent(in) , contiguous :: index(:)
1478 logical(LK) , intent(in) , optional :: positive, sorted
1479 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1480 end subroutine
1481#endif
1482
1483#if RK3_ENABLED
1484 PURE module subroutine setInserted_D1_D0_RK3(arrayNew, array, insertion, index, positive, sorted)
1485#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1486 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_RK3
1487#endif
1488 use pm_kind, only: RKG => RK3
1489 real(RKG) , intent(in) , contiguous :: array(:)
1490 real(RKG) , intent(in) :: insertion
1491 integer(IK) , intent(in) , contiguous :: index(:)
1492 logical(LK) , intent(in) , optional :: positive, sorted
1493 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1494 end subroutine
1495#endif
1496
1497#if RK2_ENABLED
1498 PURE module subroutine setInserted_D1_D0_RK2(arrayNew, array, insertion, index, positive, sorted)
1499#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1500 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_RK2
1501#endif
1502 use pm_kind, only: RKG => RK2
1503 real(RKG) , intent(in) , contiguous :: array(:)
1504 real(RKG) , intent(in) :: insertion
1505 integer(IK) , intent(in) , contiguous :: index(:)
1506 logical(LK) , intent(in) , optional :: positive, sorted
1507 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1508 end subroutine
1509#endif
1510
1511#if RK1_ENABLED
1512 PURE module subroutine setInserted_D1_D0_RK1(arrayNew, array, insertion, index, positive, sorted)
1513#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1514 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D0_RK1
1515#endif
1516 use pm_kind, only: RKG => RK1
1517 real(RKG) , intent(in) , contiguous :: array(:)
1518 real(RKG) , intent(in) :: insertion
1519 integer(IK) , intent(in) , contiguous :: index(:)
1520 logical(LK) , intent(in) , optional :: positive, sorted
1521 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1522 end subroutine
1523#endif
1524
1525 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1526
1527 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1528 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1529 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1530
1531 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1532
1533#if SK5_ENABLED
1534 PURE module subroutine setInserted_D1_D1_SK5(arrayNew, array, insertion, index, positive, sorted)
1535#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1536 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_SK5
1537#endif
1538 use pm_kind, only: SKG => SK5
1539 character(*,SKG) , intent(in) , contiguous :: array(:)
1540 character(*,SKG) , intent(in) , contiguous :: insertion(:)
1541 integer(IK) , intent(in) , contiguous :: index(:)
1542 logical(LK) , intent(in) , optional :: positive, sorted
1543 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1544 end subroutine
1545#endif
1546
1547#if SK4_ENABLED
1548 PURE module subroutine setInserted_D1_D1_SK4(arrayNew, array, insertion, index, positive, sorted)
1549#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1550 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_SK4
1551#endif
1552 use pm_kind, only: SKG => SK4
1553 character(*,SKG) , intent(in) , contiguous :: array(:)
1554 character(*,SKG) , intent(in) , contiguous :: insertion(:)
1555 integer(IK) , intent(in) , contiguous :: index(:)
1556 logical(LK) , intent(in) , optional :: positive, sorted
1557 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1558 end subroutine
1559#endif
1560
1561#if SK3_ENABLED
1562 PURE module subroutine setInserted_D1_D1_SK3(arrayNew, array, insertion, index, positive, sorted)
1563#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1564 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_SK3
1565#endif
1566 use pm_kind, only: SKG => SK3
1567 character(*,SKG) , intent(in) , contiguous :: array(:)
1568 character(*,SKG) , intent(in) , contiguous :: insertion(:)
1569 integer(IK) , intent(in) , contiguous :: index(:)
1570 logical(LK) , intent(in) , optional :: positive, sorted
1571 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1572 end subroutine
1573#endif
1574
1575#if SK2_ENABLED
1576 PURE module subroutine setInserted_D1_D1_SK2(arrayNew, array, insertion, index, positive, sorted)
1577#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1578 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_SK2
1579#endif
1580 use pm_kind, only: SKG => SK2
1581 character(*,SKG) , intent(in) , contiguous :: array(:)
1582 character(*,SKG) , intent(in) , contiguous :: insertion(:)
1583 integer(IK) , intent(in) , contiguous :: index(:)
1584 logical(LK) , intent(in) , optional :: positive, sorted
1585 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1586 end subroutine
1587#endif
1588
1589#if SK1_ENABLED
1590 PURE module subroutine setInserted_D1_D1_SK1(arrayNew, array, insertion, index, positive, sorted)
1591#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1592 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_SK1
1593#endif
1594 use pm_kind, only: SKG => SK1
1595 character(*,SKG) , intent(in) , contiguous :: array(:)
1596 character(*,SKG) , intent(in) , contiguous :: insertion(:)
1597 integer(IK) , intent(in) , contiguous :: index(:)
1598 logical(LK) , intent(in) , optional :: positive, sorted
1599 character(*,SKG) , intent(out) , contiguous :: arrayNew(:)
1600 end subroutine
1601#endif
1602
1603 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1604
1605#if IK5_ENABLED
1606 PURE module subroutine setInserted_D1_D1_IK5(arrayNew, array, insertion, index, positive, sorted)
1607#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1608 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_IK5
1609#endif
1610 use pm_kind, only: IKG => IK5
1611 integer(IKG) , intent(in) , contiguous :: array(:)
1612 integer(IKG) , intent(in) , contiguous :: insertion(:)
1613 integer(IK) , intent(in) , contiguous :: index(:)
1614 logical(LK) , intent(in) , optional :: positive, sorted
1615 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1616 end subroutine
1617#endif
1618
1619#if IK4_ENABLED
1620 PURE module subroutine setInserted_D1_D1_IK4(arrayNew, array, insertion, index, positive, sorted)
1621#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1622 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_IK4
1623#endif
1624 use pm_kind, only: IKG => IK4
1625 integer(IKG) , intent(in) , contiguous :: array(:)
1626 integer(IKG) , intent(in) , contiguous :: insertion(:)
1627 integer(IK) , intent(in) , contiguous :: index(:)
1628 logical(LK) , intent(in) , optional :: positive, sorted
1629 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1630 end subroutine
1631#endif
1632
1633#if IK3_ENABLED
1634 PURE module subroutine setInserted_D1_D1_IK3(arrayNew, array, insertion, index, positive, sorted)
1635#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1636 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_IK3
1637#endif
1638 use pm_kind, only: IKG => IK3
1639 integer(IKG) , intent(in) , contiguous :: array(:)
1640 integer(IKG) , intent(in) , contiguous :: insertion(:)
1641 integer(IK) , intent(in) , contiguous :: index(:)
1642 logical(LK) , intent(in) , optional :: positive, sorted
1643 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1644 end subroutine
1645#endif
1646
1647#if IK2_ENABLED
1648 PURE module subroutine setInserted_D1_D1_IK2(arrayNew, array, insertion, index, positive, sorted)
1649#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1650 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_IK2
1651#endif
1652 use pm_kind, only: IKG => IK2
1653 integer(IKG) , intent(in) , contiguous :: array(:)
1654 integer(IKG) , intent(in) , contiguous :: insertion(:)
1655 integer(IK) , intent(in) , contiguous :: index(:)
1656 logical(LK) , intent(in) , optional :: positive, sorted
1657 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1658 end subroutine
1659#endif
1660
1661#if IK1_ENABLED
1662 PURE module subroutine setInserted_D1_D1_IK1(arrayNew, array, insertion, index, positive, sorted)
1663#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1664 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_IK1
1665#endif
1666 use pm_kind, only: IKG => IK1
1667 integer(IKG) , intent(in) , contiguous :: array(:)
1668 integer(IKG) , intent(in) , contiguous :: insertion(:)
1669 integer(IK) , intent(in) , contiguous :: index(:)
1670 logical(LK) , intent(in) , optional :: positive, sorted
1671 integer(IKG) , intent(out) , contiguous :: arrayNew(:)
1672 end subroutine
1673#endif
1674
1675 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1676
1677#if LK5_ENABLED
1678 PURE module subroutine setInserted_D1_D1_LK5(arrayNew, array, insertion, index, positive, sorted)
1679#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1680 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_LK5
1681#endif
1682 use pm_kind, only: LKG => LK5
1683 logical(LKG) , intent(in) , contiguous :: array(:)
1684 logical(LKG) , intent(in) , contiguous :: insertion(:)
1685 integer(IK) , intent(in) , contiguous :: index(:)
1686 logical(LK) , intent(in) , optional :: positive, sorted
1687 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1688 end subroutine
1689#endif
1690
1691#if LK4_ENABLED
1692 PURE module subroutine setInserted_D1_D1_LK4(arrayNew, array, insertion, index, positive, sorted)
1693#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1694 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_LK4
1695#endif
1696 use pm_kind, only: LKG => LK4
1697 logical(LKG) , intent(in) , contiguous :: array(:)
1698 logical(LKG) , intent(in) , contiguous :: insertion(:)
1699 integer(IK) , intent(in) , contiguous :: index(:)
1700 logical(LK) , intent(in) , optional :: positive, sorted
1701 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1702 end subroutine
1703#endif
1704
1705#if LK3_ENABLED
1706 PURE module subroutine setInserted_D1_D1_LK3(arrayNew, array, insertion, index, positive, sorted)
1707#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1708 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_LK3
1709#endif
1710 use pm_kind, only: LKG => LK3
1711 logical(LKG) , intent(in) , contiguous :: array(:)
1712 logical(LKG) , intent(in) , contiguous :: insertion(:)
1713 integer(IK) , intent(in) , contiguous :: index(:)
1714 logical(LK) , intent(in) , optional :: positive, sorted
1715 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1716 end subroutine
1717#endif
1718
1719#if LK2_ENABLED
1720 PURE module subroutine setInserted_D1_D1_LK2(arrayNew, array, insertion, index, positive, sorted)
1721#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1722 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_LK2
1723#endif
1724 use pm_kind, only: LKG => LK2
1725 logical(LKG) , intent(in) , contiguous :: array(:)
1726 logical(LKG) , intent(in) , contiguous :: insertion(:)
1727 integer(IK) , intent(in) , contiguous :: index(:)
1728 logical(LK) , intent(in) , optional :: positive, sorted
1729 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1730 end subroutine
1731#endif
1732
1733#if LK1_ENABLED
1734 PURE module subroutine setInserted_D1_D1_LK1(arrayNew, array, insertion, index, positive, sorted)
1735#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1736 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_LK1
1737#endif
1738 use pm_kind, only: LKG => LK1
1739 logical(LKG) , intent(in) , contiguous :: array(:)
1740 logical(LKG) , intent(in) , contiguous :: insertion(:)
1741 integer(IK) , intent(in) , contiguous :: index(:)
1742 logical(LK) , intent(in) , optional :: positive, sorted
1743 logical(LKG) , intent(out) , contiguous :: arrayNew(:)
1744 end subroutine
1745#endif
1746
1747 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1748
1749#if CK5_ENABLED
1750 PURE module subroutine setInserted_D1_D1_CK5(arrayNew, array, insertion, index, positive, sorted)
1751#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1752 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_CK5
1753#endif
1754 use pm_kind, only: CKG => CK5
1755 complex(CKG) , intent(in) , contiguous :: array(:)
1756 complex(CKG) , intent(in) , contiguous :: insertion(:)
1757 integer(IK) , intent(in) , contiguous :: index(:)
1758 logical(LK) , intent(in) , optional :: positive, sorted
1759 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1760 end subroutine
1761#endif
1762
1763#if CK4_ENABLED
1764 PURE module subroutine setInserted_D1_D1_CK4(arrayNew, array, insertion, index, positive, sorted)
1765#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1766 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_CK4
1767#endif
1768 use pm_kind, only: CKG => CK4
1769 complex(CKG) , intent(in) , contiguous :: array(:)
1770 complex(CKG) , intent(in) , contiguous :: insertion(:)
1771 integer(IK) , intent(in) , contiguous :: index(:)
1772 logical(LK) , intent(in) , optional :: positive, sorted
1773 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1774 end subroutine
1775#endif
1776
1777#if CK3_ENABLED
1778 PURE module subroutine setInserted_D1_D1_CK3(arrayNew, array, insertion, index, positive, sorted)
1779#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1780 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_CK3
1781#endif
1782 use pm_kind, only: CKG => CK3
1783 complex(CKG) , intent(in) , contiguous :: array(:)
1784 complex(CKG) , intent(in) , contiguous :: insertion(:)
1785 integer(IK) , intent(in) , contiguous :: index(:)
1786 logical(LK) , intent(in) , optional :: positive, sorted
1787 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1788 end subroutine
1789#endif
1790
1791#if CK2_ENABLED
1792 PURE module subroutine setInserted_D1_D1_CK2(arrayNew, array, insertion, index, positive, sorted)
1793#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1794 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_CK2
1795#endif
1796 use pm_kind, only: CKG => CK2
1797 complex(CKG) , intent(in) , contiguous :: array(:)
1798 complex(CKG) , intent(in) , contiguous :: insertion(:)
1799 integer(IK) , intent(in) , contiguous :: index(:)
1800 logical(LK) , intent(in) , optional :: positive, sorted
1801 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1802 end subroutine
1803#endif
1804
1805#if CK1_ENABLED
1806 PURE module subroutine setInserted_D1_D1_CK1(arrayNew, array, insertion, index, positive, sorted)
1807#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1808 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_CK1
1809#endif
1810 use pm_kind, only: CKG => CK1
1811 complex(CKG) , intent(in) , contiguous :: array(:)
1812 complex(CKG) , intent(in) , contiguous :: insertion(:)
1813 integer(IK) , intent(in) , contiguous :: index(:)
1814 logical(LK) , intent(in) , optional :: positive, sorted
1815 complex(CKG) , intent(out) , contiguous :: arrayNew(:)
1816 end subroutine
1817#endif
1818
1819 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1820
1821#if RK5_ENABLED
1822 PURE module subroutine setInserted_D1_D1_RK5(arrayNew, array, insertion, index, positive, sorted)
1823#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1824 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_RK5
1825#endif
1826 use pm_kind, only: RKG => RK5
1827 real(RKG) , intent(in) , contiguous :: array(:)
1828 real(RKG) , intent(in) , contiguous :: insertion(:)
1829 integer(IK) , intent(in) , contiguous :: index(:)
1830 logical(LK) , intent(in) , optional :: positive, sorted
1831 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1832 end subroutine
1833#endif
1834
1835#if RK4_ENABLED
1836 PURE module subroutine setInserted_D1_D1_RK4(arrayNew, array, insertion, index, positive, sorted)
1837#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1838 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_RK4
1839#endif
1840 use pm_kind, only: RKG => RK4
1841 real(RKG) , intent(in) , contiguous :: array(:)
1842 real(RKG) , intent(in) , contiguous :: insertion(:)
1843 integer(IK) , intent(in) , contiguous :: index(:)
1844 logical(LK) , intent(in) , optional :: positive, sorted
1845 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1846 end subroutine
1847#endif
1848
1849#if RK3_ENABLED
1850 PURE module subroutine setInserted_D1_D1_RK3(arrayNew, array, insertion, index, positive, sorted)
1851#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1852 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_RK3
1853#endif
1854 use pm_kind, only: RKG => RK3
1855 real(RKG) , intent(in) , contiguous :: array(:)
1856 real(RKG) , intent(in) , contiguous :: insertion(:)
1857 integer(IK) , intent(in) , contiguous :: index(:)
1858 logical(LK) , intent(in) , optional :: positive, sorted
1859 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1860 end subroutine
1861#endif
1862
1863#if RK2_ENABLED
1864 PURE module subroutine setInserted_D1_D1_RK2(arrayNew, array, insertion, index, positive, sorted)
1865#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1866 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_RK2
1867#endif
1868 use pm_kind, only: RKG => RK2
1869 real(RKG) , intent(in) , contiguous :: array(:)
1870 real(RKG) , intent(in) , contiguous :: insertion(:)
1871 integer(IK) , intent(in) , contiguous :: index(:)
1872 logical(LK) , intent(in) , optional :: positive, sorted
1873 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1874 end subroutine
1875#endif
1876
1877#if RK1_ENABLED
1878 PURE module subroutine setInserted_D1_D1_RK1(arrayNew, array, insertion, index, positive, sorted)
1879#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1880 !DEC$ ATTRIBUTES DLLEXPORT :: setInserted_D1_D1_RK1
1881#endif
1882 use pm_kind, only: RKG => RK1
1883 real(RKG) , intent(in) , contiguous :: array(:)
1884 real(RKG) , intent(in) , contiguous :: insertion(:)
1885 integer(IK) , intent(in) , contiguous :: index(:)
1886 logical(LK) , intent(in) , optional :: positive, sorted
1887 real(RKG) , intent(out) , contiguous :: arrayNew(:)
1888 end subroutine
1889#endif
1890
1891 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1892
1893 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1894 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1895 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1896
1897 end interface
1898
1899!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1900
1901end module pm_arrayInsert ! LCOV_EXCL_LINE
Generate and return a new array containing the original array within which the input insertion has be...
Return a new array arrayNew containing the original array within which the input insertion has been i...
This module contains procedures and generic interfaces for inserting an insertion into the specified ...
character(*, SK), parameter MODULE_NAME
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter SK5
Definition: pm_kind.F90:326
integer, parameter LK1
Definition: pm_kind.F90:412
integer, parameter IK3
Definition: pm_kind.F90:368
integer, parameter RK5
Definition: pm_kind.F90:478
integer, parameter RK4
Definition: pm_kind.F90:489
integer, parameter SK1
Definition: pm_kind.F90:346
integer, parameter IK1
Definition: pm_kind.F90:382
integer, parameter LK5
Definition: pm_kind.F90:392
integer, parameter RK2
Definition: pm_kind.F90:511
integer, parameter CK1
Definition: pm_kind.F90:464
integer, parameter RK3
Definition: pm_kind.F90:500
integer, parameter LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
Definition: pm_kind.F90:541
integer, parameter LK2
Definition: pm_kind.F90:407
integer, parameter LK4
Definition: pm_kind.F90:397
integer, parameter CK5
Definition: pm_kind.F90:420
integer, parameter CK4
Definition: pm_kind.F90:431
integer, parameter SK4
Definition: pm_kind.F90:331
integer, parameter LK3
Definition: pm_kind.F90:402
integer, parameter IK2
Definition: pm_kind.F90:375
integer, parameter CK2
Definition: pm_kind.F90:453
integer, parameter SK2
Definition: pm_kind.F90:341
integer, parameter CK3
Definition: pm_kind.F90:442
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
Definition: pm_kind.F90:540
integer, parameter IK4
Definition: pm_kind.F90:361
integer, parameter IK5
Definition: pm_kind.F90:354
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
Definition: pm_kind.F90:539
integer, parameter RK1
Definition: pm_kind.F90:522
integer, parameter SK3
Definition: pm_kind.F90:336