rainbow_colormap Subroutine

public pure subroutine rainbow_colormap(map)

Creates a rainbow like colormap, from dark blue to red

Arguments

Type IntentOptional Attributes Name
integer, intent(out), dimension(:,:), allocatable :: map

Called by

proc~~rainbow_colormap~~CalledByGraph proc~rainbow_colormap rainbow_colormap proc~set Colormap%set proc~set->proc~rainbow_colormap proc~test_038 test_038 proc~test_038->proc~set proc~test_039 test_039 proc~test_039->proc~set proc~test_040 test_040 proc~test_040->proc~set proc~test_045 test_045 proc~test_045->proc~set proc~test_048 test_048 proc~test_048->proc~set proc~test_056 test_056 proc~test_056->proc~set proc~test_057 test_057 proc~test_057->proc~set proc~test_058 test_058 proc~test_058->proc~set proc~test_059 test_059 proc~test_059->proc~set proc~test_061 test_061 proc~test_061->proc~set proc~test_062 test_062 proc~test_062->proc~set proc~test_063 test_063 proc~test_063->proc~set proc~test_068 test_068 proc~test_068->proc~set proc~test_074 test_074 proc~test_074->proc~set proc~test_076 test_076 proc~test_076->proc~set proc~test_077 test_077 proc~test_077->proc~set proc~test_078 test_078 proc~test_078->proc~set proc~test_079 test_079 proc~test_079->proc~set proc~test_080 test_080 proc~test_080->proc~set proc~test_082 test_082 proc~test_082->proc~set proc~test_083 test_083 proc~test_083->proc~set proc~test_085 test_085 proc~test_085->proc~set program~demo demo program~demo->proc~set program~demo_reverse demo_reverse program~demo_reverse->proc~set program~extract extract program~extract->proc~set program~modify modify program~modify->proc~set program~check check program~check->proc~test_038 program~check->proc~test_039 program~check->proc~test_040 program~check->proc~test_045 program~check->proc~test_048 program~check->proc~test_056 program~check->proc~test_057 program~check->proc~test_058 program~check->proc~test_059 program~check->proc~test_061 program~check->proc~test_062 program~check->proc~test_063 program~check->proc~test_068 program~check->proc~test_074 program~check->proc~test_076 program~check->proc~test_077 program~check->proc~test_078 program~check->proc~test_079 program~check->proc~test_080 program~check->proc~test_082 program~check->proc~test_083 program~check->proc~test_085

Source Code

    pure subroutine rainbow_colormap(map)
        integer, dimension(:,:), allocatable, intent(out) :: map
        integer :: levels, last, i

        ! The user can not choose the number of levels:
        levels = 256
        last = levels - 1
        allocate(map(0:last, 1:3))
        ! We add three gaussians (red, green, blue):
        do concurrent (i = 0:last)
            map(i, 1) = nint(last * exp(-((206-i) / 70.0_wp)**2.0_wp))
            map(i, 2) = nint(last * exp(-((156-i) / 70.0_wp)**2.0_wp))
            map(i, 3) = nint(last * exp(-((106-i) / 70.0_wp)**2.0_wp))
        end do
    end subroutine rainbow_colormap