Я знаю, что у Intel Fortran есть библиотеки с функциями и подпрограммами для работы с разреженными матрицами, но мне интересно, существует ли какой-то тип данных или автоматический метод для создания разреженных матриц в первом место.Автоматизированные разреженные матрицы в Fortran
СПРАВОЧНАЯ ИНФОРМАЦИЯ: У меня есть программа, которая использует 3 мерные массивы размером 3 &, которые могут быть очень большими в первых двух измерениях (от ~ 10 до ~ 100 тыс. Элементов в каждом измерении, возможно, больше). В первых 2 измерениях каждый массив в основном (95% или около того) заполнен с нулями. Чтобы программа была дружественной к машинам с «нормальным» объемом оперативной памяти, я бы хотел конвертировать в разреженные матрицы. То, как обрабатываются текущие обычные массивы &, обновленный по всему коду, в значительной степени зависит от приложения кода, поэтому я ищу способ преобразования в разреженное хранение матрицы без существенной модификации кода. В принципе, я ленив, и я не хочу пересматривать всю реализацию управления памятью или писать весь новый модуль, где мои массивы живут и управляются. Есть ли в Fortran библиотека или что-то еще, что бы реализовать тип данных или что-то еще, чтобы я мог использовать разреженное хранилище матриц без реинжиниринга каждого массива и как он обрабатывается? Спасибо за помощь. Приветствия.
Я боялся этого, но я не удивлен. Похоже, это будет просто большой проект и опыт обучения! Спасибо за ваш вклад. – whit