下面的代码使用MKL函数库中的scal计算一个标量和向量的乘积
program MKL_dotc
use blas95
implicit none
integer, parameter :: n = 10
real(kind=8) :: x(n), a = 2.d0
call random_seed()
call random_number(x)
print*, 'before...'
print*, x
call scal(x, a)
print*, 'after'
print*, x
end program MKL_dotc
执行结果如下:
before...
0.961341174186205 0.694955912451842 0.352733661412429
0.717484595247632 0.784130511642941 0.160944410450884
0.256570282303017 0.979919252122348 0.665341874376897
0.858410968894571
after
1.92268234837241 1.38991182490368 0.705467322824858
1.43496919049526 1.56826102328588 0.321888820901768
0.513140564606034 1.95983850424470 1.33068374875379
1.71682193778914