Главная /
Оптимизация приложений с использованием библиотеки Intel MKL /
Используя подходящую функцию из библиотеки Intel® MKL, напишите программу, которая вычисляет с одинарной точностью выражение alpha * A * x + beta * y, где A - матрица, x, y - векторы, alpha, beta – скаляры. В файле содержатся данные для вычислений: значен
Используя подходящую функцию из библиотеки Intel® MKL, напишите программу, которая вычисляет с одинарной точностью выражение alpha * A * x + beta * y
, где A
- матрица, x
, y
- векторы, alpha
, beta
– скаляры. В файле содержатся данные для вычислений: значение вещественного скаляра alpha
, размер (size) вещественной подматрицы А
, позиция подматрицы А
в матрице М - индекс элемента матрицы М, соответствующего элементу A[0][0]
, размер вещественной матрицы М, значения элементов матрицы M, размер (size) вещественного вектора Х, шаг выборки (increment) элементов вектора x
, значения элементов вектора X, значение вещественного скаляра beta
, размер (size) вещественного вектора Y, шаг выборки (increment) элементов вектора y
, значения элементов вектора Y. В качестве ответа введите 5 значащих цифр (с учётом округления) суммы модулей компонент полного результата (для числа - его модуль, для вектора - сумму модулей координат, для матрицы – сумму модулей элементов, с учётом неизменившихся в процессе вычислений компонент). Используйте "точку" в качестве десятичного разделителя. (Общие пояснения: данные в файле заданы в той точности, в которой требуется решить задачу; индексация векторов и матриц начинается с 0, то есть первый элемент вектора имеет индекс [0], а матрицы - [0][0]; если шаг выборки (increment) не задан, то он равен 1 по умолчанию; если данные об обрамляющей матрице не заданы, то по умолчанию обрамляющая матрица совпадает с подматрицей, необходимой для решения задачи; выборка всегда начинается с первого элемента вектора с индексом [0] или матрицы с индексом [0][0], если не указано другое; заглавными буквами обозначаются вектора, из которых нужно сделать выборку подвекторов, обозначаемых строчными буквами
, для проведения вычислений, указанных в задаче; матрицы сохранены построчно; размер матрицы задан в формате количество строк на количество столбцов; выражение x^Т означает транспонирование; выражение А^(-1) означает обращение матрицы А; выражение А^(-T) означает транспонирование и обращение матрицы А; выражение x^H означает транспонирование и комплексное сопряжение; выражение A^(-H) означает транспонирование, комплексное сопряжение и обращение матрицы А.)
вопрос
Правильный ответ:
321.62
Сложность вопроса
63
Сложность курса: Оптимизация приложений с использованием библиотеки Intel MKL
49
Оценить вопрос
Комментарии:
Аноним
Какой студент ищет эти ответы с интуитом? Это же легко
02 июн 2020
Аноним
Я провалил зачёт, почему я не увидел данный сайт с решениями с тестами intuit до этого
26 янв 2017
Другие ответы на вопросы из темы программирование интуит.
- # Используя подходящую функцию из библиотеки Intel® MKL, напишите программу, которая вычисляет с двойной точностью выражение alpha * x + y, где x, y - векторы, alpha - скаляр. В файле содержатся данные для вычислений: значение вещественного скаляра alpha, размер (size) вещественного вектора X, шаг выборки (increment) элементов вектора x, значения элементов вектора X, размер (size) вещественного вектора Y, шаг выборки (increment) элементов вектора y, значения элементов вектора Y. В качестве ответа введите 8 значащих цифр (с учётом округления) суммы модулей компонент полного результата (для числа - его модуль, для вектора - сумму модулей координат, для матрицы – сумму модулей элементов, с учётом неизменившихся в процессе вычислений компонент). Используйте "точку" в качестве десятичного разделителя. (Общие пояснения: данные в файле заданы в той точности, в которой требуется решить задачу; индексация векторов и матриц начинается с 0, то есть первый элемент вектора имеет индекс [0], а матрицы - [0][0]; если шаг выборки (increment) не задан, то он равен 1 по умолчанию; если данные об обрамляющей матрице не заданы, то по умолчанию обрамляющая матрица совпадает с подматрицей, необходимой для решения задачи; выборка всегда начинается с первого элемента вектора с индексом [0] или матрицы с индексом [0][0], если не указано другое; заглавными буквами обозначаются вектора, из которых нужно сделать выборку подвекторов, обозначаемых строчными буквами, для проведения вычислений, указанных в задаче; матрицы сохранены построчно; размер матрицы задан в формате количество строк на количество столбцов; выражение x^Т означает транспонирование; выражение А^(-1) означает обращение матрицы А; выражение А^(-T) означает транспонирование и обращение матрицы А; выражение x^H означает транспонирование и комплексное сопряжение; выражение A^(-H) означает транспонирование, комплексное сопряжение и обращение матрицы А.)
- # Используя подходящую функцию из библиотеки Intel® MKL, напишите программу, которая вычисляет с одинарной точностью выражение alpha * x * y^(T) + alpha * y * x^(T) + A, где A - симметрическая матрица, x, y - векторы, alpha - скаляр. В файле содержатся данные для вычислений: значение вещественного скаляра alpha, размер (size) вещественного вектора Х, шаг выборки (increment) элементов вектора x, значения элементов вектора X, размер (size) вещественного вектора Y, шаг выборки (increment) элементов вектора y, значения элементов вектора Y, размер (size) вещественной матрицы А, значения элементов нижнего треугольника (включая главную диагональ) матрицы A. В качестве ответа введите 5 значащих цифр (с учётом округления) суммы модулей компонент полного результата (для числа - его модуль, для вектора - сумму модулей координат, для матрицы – сумму модулей элементов, с учётом неизменившихся в процессе вычислений компонент). Используйте "точку" в качестве десятичного разделителя. (Общие пояснения: данные в файле заданы в той точности, в которой требуется решить задачу; индексация векторов и матриц начинается с 0, то есть первый элемент вектора имеет индекс [0], а матрицы - [0][0]; если шаг выборки (increment) не задан, то он равен 1 по умолчанию; если данные об обрамляющей матрице не заданы, то по умолчанию обрамляющая матрица совпадает с подматрицей, необходимой для решения задачи; выборка всегда начинается с первого элемента вектора с индексом [0] или матрицы с индексом [0][0], если не указано другое; заглавными буквами обозначаются вектора, из которых нужно сделать выборку подвекторов, обозначаемых строчными буквами, для проведения вычислений, указанных в задаче; матрицы сохранены построчно; размер матрицы задан в формате количество строк на количество столбцов; выражение x^Т означает транспонирование; выражение А^(-1) означает обращение матрицы А; выражение А^(-T) означает транспонирование и обращение матрицы А; выражение x^H означает транспонирование и комплексное сопряжение; выражение A^(-H) означает транспонирование, комплексное сопряжение и обращение матрицы А.)
- # Используя подходящую функцию из библиотеки Intel® MKL, напишите программу, которая вычисляет с одинарной точностью выражение alpha * A * B^(T) + alpha * B * A^(T) + beta * C, где A, B, C - комплексные матрицы, C - симметрическая матрица, alpha, beta - комплексные скаляры. В файле содержатся данные для вычислений: значение комплексного скаляра alpha, значение комплексного скаляра beta, размер (size) комплексной подматрицы A, позиция подматрицы A в матрице M - индекс элемента матрицы M, соответствующего элементу A[0][0], размер комплексной матрицы M, значения элементов матрицы M, размер (size) комплексной подматрицы B, позиция подматрицы B в матрице Q - индекс элемента матрицы Q, соответствующего элементу B[0][0], размер комплексной матрицы Q, значения элементов матрицы Q, размер (size) комплексной матрицы C, значения элементов верхнего треугольника (включая главную диагональ) матрицы C. В качестве ответа введите 5 значащих цифр (с учётом округления) суммы модулей компонент полного результата (для числа - его модуль, для вектора - сумму модулей координат, для матрицы – сумму модулей элементов, с учётом неизменившихся в процессе вычислений компонент). Используйте "точку" в качестве десятичного разделителя. (Общие пояснения: данные в файле заданы в той точности, в которой требуется решить задачу; индексация векторов и матриц начинается с 0, то есть первый элемент вектора имеет индекс [0], а матрицы - [0][0]; если шаг выборки (increment) не задан, то он равен 1 по умолчанию; если данные об обрамляющей матрице не заданы, то по умолчанию обрамляющая матрица совпадает с подматрицей, необходимой для решения задачи; выборка всегда начинается с первого элемента вектора с индексом [0] или матрицы с индексом [0][0], если не указано другое; заглавными буквами обозначаются вектора, из которых нужно сделать выборку подвекторов, обозначаемых строчными буквами, для проведения вычислений, указанных в задаче; матрицы сохранены построчно; размер матрицы задан в формате количество строк на количество столбцов; выражение x^Т означает транспонирование; выражение А^(-1) означает обращение матрицы А; выражение А^(-T) означает транспонирование и обращение матрицы А; выражение x^H означает транспонирование и комплексное сопряжение; выражение A^(-H) означает транспонирование, комплексное сопряжение и обращение матрицы А.)
- # Используя подходящую функцию из библиотеки Intel® MKL, напишите программу, которая вычисляет с двойной точностью выражение alpha * A * B^(H) + B * (alpha * A)^(H) + beta * C, где A,B,C - комплексные матрицы, C - Эрмитова матрица, alpha - комплексный скаляр, beta - скаляр. В файле содержатся данные для вычислений: значение комплексного скаляра alpha, значение вещественного скаляра beta, размер (size) комплексной подматрицы A, позиция подматрицы A в матрице M - индекс элемента матрицы M, соответствующего элементу A[0][0], размер комплексной матрицы M, значения элементов матрицы M, размер (size) комплексной подматрицы B, позиция подматрицы B в матрице Q - индекс элемента матрицы Q, соответствующего элементу B[0][0], размер комплексной матрицы Q, значения элементов матрицы Q, размер (size) комплексной подматрицы C, значения элементов нижнего треугольника (включая главную диагональ) матрицы C. В качестве ответа введите 8 значащих цифр (с учётом округления) суммы модулей компонент полного результата (для числа - его модуль, для вектора - сумму модулей координат, для матрицы – сумму модулей элементов, с учётом неизменившихся в процессе вычислений компонент). Используйте "точку" в качестве десятичного разделителя. (Общие пояснения: данные в файле заданы в той точности, в которой требуется решить задачу; индексация векторов и матриц начинается с 0, то есть первый элемент вектора имеет индекс [0], а матрицы - [0][0]; если шаг выборки (increment) не задан, то он равен 1 по умолчанию; если данные об обрамляющей матрице не заданы, то по умолчанию обрамляющая матрица совпадает с подматрицей, необходимой для решения задачи; выборка всегда начинается с первого элемента вектора с индексом [0] или матрицы с индексом [0][0], если не указано другое; заглавными буквами обозначаются вектора, из которых нужно сделать выборку подвекторов, обозначаемых строчными буквами, для проведения вычислений, указанных в задаче; матрицы сохранены построчно; размер матрицы задан в формате количество строк на количество столбцов; выражение x^Т означает транспонирование; выражение А^(-1) означает обращение матрицы А; выражение А^(-T) означает транспонирование и обращение матрицы А; выражение x^H означает транспонирование и комплексное сопряжение; выражение A^(-H) означает транспонирование, комплексное сопряжение и обращение матрицы А.)
- # Используя функции Intel® MKL SPARSE BLAS API, напишите программу, которая вычисляет с двойной точностью выражение y = alpha * A^T * x + beta * y, где A - симметричная разреженная комплексная матрица, x, y - комплексные векторы, alpha, beta - комплексные скаляры. Исходные данные содержатся в файле. В ответ введите 8 значащих цифр (с учётом округления) суммы модулей компонент результата (для вектора сумму модулей всех координат, для матрицы – сумму модулей всех элементов). (Используйте "точку" в качестве десятичного разделителя.)