Перейти к содержимому

Таблицы в маткад прайм как в эксель

  • автор:

Импорт и экспорт данных в MathCAD

Продолжая публикацию избранных статей из готовящейся в издательстве «Новое знание» книги «Вычисления в MathCAD. Практическое руководство» и учитывая пожелания читателей «Компьютерной газеты», сегодня мы решили немного разобраться с таким небезынтересным с практической стороны вопросом, как взаимосвязь MathCAD и MS Excel в плане обмена данными между двумя этими системами, а также c принципами организации того же обмена, но уже в аспекте работы с обычными текстовыми ASCII-файлами.

Excel
В том случае, если вы хорошо владеете Excel, вам совершенно не обязательно осваивать многие разделы в MathCAD. К тому же, вопросы, связанные со статистической обработкой данных и всевозможными бизнес-задачами, решаются в нем гораздо проще (и возможности Excel в этих областях гораздо шире). С другой стороны, MathCAD обладает несравнимо более высоким потенциалом в сфере обработки экспериментальных данных (интерполяции, регрессии и экстраполяции), поэтому, даже если результаты ваших измерений были записаны в виде электронной таблицы, строить исходя из них графики и диаграммы все же лучше в нем.
Дело в том, что экспортировать данные из таблицы Excel в матрицу MathCAD можно просто скопировав их и вставив затем в пустую таблицу ввода. Однако провести обратную операцию (т.е. данные из матрицы MathCAD экспортировать в Excel) используя таблицу ввода (Input Table) не получится. Для выполнения этой задачи следует задействовать таблицу Excel как компонент MathCAD.
Компонентами в MathCAD называются приложения или объекты из других приложений, которые могут принимать непосредственное участие в работе создаваемого вычислительного алгоритма. Учитывая глобальность распространенности таких систем, как Excel или MatLab, возможность MathCAD осуществлять с ними согласованную работу просто неоценима, т.к. это значительно расширяет потенциал всех этих программ. Именно по этой причине создатели MathCAD посвятили целый раздел Центра Ресурсов (Extending MathCAD — подробно здесь мы его обсуждать не будем) примерам по использованию компонентов.
Для того чтобы установить один из компонентов, прежде всего вы должны открыть специальное диалоговое окно Component Wizard (Мастер компонентов). Сделать это можно при помощи команды Component (Компонент) меню Insert (Вставить) или, лучше, задействовав одноименную кнопку панели Standard (Стандартные).
В стандартной установке MathCAD компонентов совсем немного — около 10. Говорить обо всех мы не будем, а ограничимся освещением двух наиболее часто используемых. Необходимую информацию об остальных компонентах заинтересованный читатель сможет найти в справочной системе программы.
Чтобы вставить в документ MathCAD электронную таблицу Excel, выполните следующие операции:
— Запустите, задействовав соответствующую команду меню Insert (Вставить) или кнопку панели Standard (Стандартные), диалог Component Wizard (Мастер компонентов).
— В списке появившегося окна выберите строку Excel и нажмите кнопку Next (Далее).
— В открывшемся диалоговом окне Excel Setup Wizard (Мастер установки Excel) вы должны выбрать один из имеющихся параметров в зависимости от типа решаемой проблемы. Так, если вам требуется провести экспорт каких-то данных из MathCAD в Excel с целью их обработки, то активизируйте опцию Create an empty Excel worksheet (Создать пустой документ Excel). Если же вы собираетесь импортировать в MathCAD данные из существующего Excel-файла, то отметьте настройку Create from file (Создать из файла).
— Любой компонент может быть вставлен в документ MathCAD как в своем обычном виде (для Excel это будет таблица), так и в форме маленькой картинки — иконки (Icon). Никаких различий в работе с компонентом в этих двух формах не существует, поэтому выбор типа его вида должен определяться вашими предпочтениями и спецификой решаемой задачи (использование иконок позволяет значительно экономить место на документе). По умолчанию компонент вставляется в своем обычном виде. Для того чтобы представить его в форме иконки, задействуйте параметр Display as Icon (Отобразить как иконку) диалогового окна Excel Setup Wizard (Мастер установки Excel) (рис.1).

Рис.1. Иконка компонента Excel

— Когда все необходимые настройки в окне Excel Setup Wizard (Мастер установки Excel) будут сделаны, нажмите Next (Далее).
— При помощи опций появившейся второй страницы диалогового окна Excel Setup Wizard (Мастер установки Excel) вы должны определить, с какой ячейки будут читаться (или записываться) данные из документа Excel.
Практически это следует сделать с первой (A1) ячейки, так что вносить какие-либо изменения в принятые по умолчанию настройки вам почти наверняка не придется (рис.2).

Рис. 2. Настройка параметров компонента Excel

— Нажмите Finish (Готово).
В результате осуществления описанных выше действий в документе MathCAD появится таблица, очень похожая на обычную таблицу ввода (Input Table). В том случае, если вы вставляли пустой лист Excel, она будет содержать оператор присваивания (для того чтобы вы могли задать ей имя и работать в дальнейшем, как с обычной матрицей) и маркер, в котором вы должны прописать имя матрицы, данные из которой следует занести в таблицу.
Прочитав матрицу значений MathCAD в таблицу Excel, провести необходимые расчеты вы можете, просто выполнив по ней двойной левый щелчок мышью. При этом все рабочие панели MathCAD будут заменены инструментами Excel, и нужные преобразования можно будет сделать точно так же, как и при непосредственной загрузке программы. Выполнив затем щелчок мышью по рабочей области, вы вернетесь в нормальный режим.
В качестве примера согласованной работы MathCAD и Excel приведем расчет среднеквадратичного отклонения выборки, полученной при помощи генератора случайного равномерно распределенного числа rnd MathCAD с использованием специальной встроенной функции СТАНДОТКЛОН Excel. Результаты этого расчета представлены на рис.3.


Рис. 3. Работа с компонентом Excel

File Read or Write (Прочитать или записать файл)
Нельзя не согласиться, что MathCAD предоставляет замечательные возможности в области обработки данных. Множество встроенных статистических функций, функции интерполяции и регрессии, разнообразие графиков и поверхностей позволяют наилучшим образом представить полученные вами результаты измерений. Самая трудная задача при этом — перевод данных в доступный для MathCAD вид. Конечно, если измерений было проведено немного, то соответствующие матрицы и векторы можно создать и непосредственно, заполнив их вручную. Однако, если данных много, то такой способ может быть неэффективен.
Значительно облегчить задачу обработки данных может то, что MathCAD способен считывать информацию из текстовых, или ASCII-файлов. Вообще, ASCII-форматы очень распространены, и такого рода файлы создаются как при работе моделирующих алгоритмов на C или «Фортране», так и программами, управляющими всевозможными измерительными приборами. Кроме того, ASCII-файл вы можете создать, распознав при помощи специальной программы (например, FineReader) просканированный документ.
MathCAD способен читать как структурированные, так и неструктурированные ASCII-файлы. При этом в первом случае результатом будет стандартный для программы вектор, во втором — соответствующая матрица.
При помощи MathCAD можно не только прочитать, но и записать ASCII-файл. Кстати, практически любая широко используемая программа может как экспортировать, так и импортировать ASCII-файлы. Учитывая это, описываемая возможность MathCAD может оказаться весьма и весьма полезной.
Наиболее простым для восприятия системой форматом ASCII-файла является неструктурированный текстовый документ. Термин «неструктурированный» означает, что в приведенном документе важна лишь последовательность числовых значений, а не их принадлежность к тому или иному столбцу или строке. Такие ASCII-файлы генерируются, например, управляющими различными измерительными установками C или «Паскаль» программами, которые записывают данные в строчку последовательно друг за другом. Когда лимит длины строки оказывается превышен, ASCII-редактор автоматически осуществляет перевод на следующую. Открыв неструктурированный ASCII-файл, вы увидите простую последовательность чисел. Более сложным случаем является чтение структурированного текстового файла, т.к. при этом приходится учитывать принадлежность значения к определенным строке или столбцу. Структурированные ASCII-файлы встречаются на практике гораздо чаще, чем неструктурированные, поэтому особенности использования соответствующих специальных функций мы опишем исключительно на их примерах.
Для того чтобы прочитать данные из текстового документа, используйте специальную встроенную функцию READPRN(«file»), где file — это имя текстового файла (если он сохранен в том же каталоге, что и MathCAD) или путь к файлу (если он расположен, например, на Рабочем столе). При помощи этой функции можно импортировать данные не только из файлов с расширением .prn, но и из файлов любых других форматов, использующих кодировку ASCII: .dat, .txt и пр.
В предыдущих версиях программы для импортирования данных из неструктурированного текстового файла существовала специальная функция READ. Однако в настоящее время она считается устаревшей, и во всех случаях рекомендуется использовать функцию READPRN.
Для того чтобы в MathCAD было возможным импортирование данных из текстового файла, следует учитывать следующие правила:
— Числа в ASCII-файле должны быть разделены либо пробелами (одним или несколькими), либо запятыми (но ни в коем случае не точками), либо символами табуляции, либо (при использовании функции READ) управляющими символами перевода строки.
— Для отделения целой части числа от десятичной следует использовать точку, а не запятую. Особое внимание на этот факт стоит обратить в том случае, если вы собираетесь использовать данные, полученные в русифицированной версии Excel, т.к. в числах она использует принятый в странах бывшего СССР формат с запятой.
— Одинаково эффективно MathCAD может считывать как целые, так и десятичные числа. Однако следует помнить, что количество знаков в них не должно превышать 15. Числа со степенью должны быть представлены в инженерном формате (например, числу 1.234•10-6 в нем соответствует запись 1.234E-6). Для того чтобы записать в ASCII-файл комплексные числа, их действительные и мнимые части должны быть заданы по отдельности. Сформировать же затем по полученным при прочтении текстового файла векторам соответствующий вектор комплексных чисел можно довольно просто, организовав цикл при помощи оператора ранжированной переменной.
— В том случае, если вы собираетесь прочитать структурированный ASCII-файл, учтите, что число элементов во всех строках должно быть одинаковым. В противном случае система выдаст сообщение об ошибке: «Can’t understand something in this data file. If this file came from spreadsheet, make sure you saved it ASCII text only» — «Не все возможно распознать в этом файле данных. Если этот файл был получен из электронной таблицы, проверьте, что вы его сохранили только как текст ASCII» (рис.4).

Рис.4. Ошибка при импортировании данных

— Пустые строки и столбцы, содержащие ASCII-текст, при считывании игнорируются.
MathCAD может не только импортировать, но и создавать на основании матриц структурированные .prn-файлы. Для этого в систему встроена специальная функция WRITEPRN(«file»), где file — имя создаваемого файла. Интересной особенностью этой функции является то, что не она присваивается, а, наоборот, ей присваивается значение некоторой матрицы. Например, запись WRITEPRN(«C:\Samples\ M.prn»):=M означает, что соответствующий матрице M ASCII-файл M.prn будет создан в корневой папке Samples диска С:.
Работая с функцией WRITEPRN, нужно учитывать следующие факты:
— В том случае, если вы пропишете только имя файла без пути к нему, WRITEPRN сохранит его в каталоге программы.
— WRITEPRN может создавать файлы не только с расширением .prn, но и в любом другом ASCII-формате, например, .dat или .txt. Расширение создаваемого файла вы задаете, когда прописываете его имя в скобках рассматриваемой функции.
— Если файл с указанным для WRITEPRN именем уже существует, то он автоматически заменяется без обычного для Windows предупреждения.
— В записанном при помощи WRITEPRN текстовом файле значения будут разделены пробелами. В качестве десятичного знака будет использована точка.
— По умолчанию количество знаков импортируемых из MathCAD численных данных ограничено 4. Хотя это и соответствует обычным правилам отображения чисел в MathCAD, в ряде случаев подобный подход может быть неприемлем. В том случае, если вам надо экспортировать данные с более высокой точностью, вы можете увеличить количество сохраняемых знаков. Для того чтобы это сделать, обратитесь к закладке Builds-In Variables (Системные переменные) диалогового окна Math Options (Математические опции) меню Math (Математические). Здесь в окошке параметра PRNPRECISION задайте необходимый уровень точности. Очевидно, что наибольшая величина PRNPRECISION должна равняться 16.
— Увеличивая точность экспортируемых данных, вы должны учитывать, что по умолчанию ширина столбца создаваемого WRITEPRN текстового файла соответствует 8 знакам. Следовательно, если PRNPRECISION превышает это значение, то ширину столбца следует увеличить (если этого не сделать, данные не сольются, однако значения в соседних столбцах будут расположены вплотную друг к другу, что значительно снижает наглядность). Сделать это можно при помощи параметра PRNCOLWIDTH закладки Build-in Variables (Системные переменные). Величина ширины столбца в MathCAD не лимитируется.
— Соответствующие определения для PRNPRECISION и PRNCOLWIDTH можно сделать и непосредственно в документе (аналогично TOL и CTOl), что гораздо проще и техничнее, чем использование закладки Build-in Variables (Системные переменные) диалогового окна Math Options (Математические опции).
— В том случае, если в исходной матрице содержались элементы с порядком, то в созданном при помощи WRITEPRN файле они будут представлены в инженерном формате.

Рис.5. Запись данных в текстовый файл при стандартных настройках

Иногда требуется не создать новый текстовый файл, а лишь добавить новую информацию к уже существующему. В MathCAD задачи такого рода можно решать при помощи функции APPENDPRN(«file»), где file — имя файла (или путь к нему), к которому нужно дописать сведения. По особенностям своего синтаксиса функция APPENDPRN полностью соответствует функции WRITEPRN, поэтому останавливаться на этом вопросе мы не будем. Естественным условием при записи значений матрицы в конец некоторого текстового файла является то, что число их столбцов должно совпадать.
В предыдущих версиях MathCAD существовали специальные функции WRITE и APPEND, предназначенные для записи данных в неструктурированный текстовый файл. Однако начиная с версии программы 2001 года эти функции считаются устаревшими (что вполне оправданно, т.к. неструктурированный текст — это просто частный случай структурированного).
О функциях, предназначенных для чтения (и, соответственно, записи) данных из текстового файла (READPRN и WRITEPRN), мы довольно подробно говорили в предыдущей главе. Однако в MathCAD подобную работу можно выполнить и гораздо проще, обратившись к специальному компоненту File Read or Write (Прочитать или записать файл). Так, например, для того чтобы прочитать таблицу значений из .prn-файла в матрицу, следует:
— В окне Component Wizard (Мастер компонентов) выбрать строку File Read or Write (Прочитать или записать файл) и нажать Next (Далее).
— В появившемся диалоговом окне File Read or Write Wizard (Мастер записи или чтения файла) задействовать опцию Read from file (Читать из файла) и нажать кнопку Next (Далее).
— На следующей странице окна File Read or Write Wizard (Мастер записи или чтения файла) определить тип читаемого файла. Сделать это надо в списке File Format (Формат файла). В нашем случае нужно оставить определенный по умолчанию пункт Text Files (Текстовые файлы).
— Заполнить строку Enter the name of the file or data source which will be associated with this component (Введите имя файла или источника данных, который будет соединен с этим компонентом). В ней нужно прописать либо имя файла (если он сохранен в том же каталоге, что и MathCAD), либо путь к нему (для чего удобно использовать кнопку Browse (Обзор)).
— Нажать Next. При этом в документ MathCAD будет вставлен компонент в виде иконки с незаполненным оператором присваивания. Проименовав компонент, вы получите совершенно обычную матрицу, с которой можно будет проводить все допустимые в MathCAD преобразования (рис.6).

Рис.6. Чтение данных из текстового файла

Столь же просто, как и прочитать, вы можете записать текстовый файл, используя тот же компонент.
Кстати, при помощи компонента File Read or Write (Чтение или запись файла) вы можете считывать информацию из электронных таблиц, причем делается это даже легче, чем при использовании компонента Excel.

Компьютерная газета. Статья была опубликована в номере 02 за 2003 год в рубрике soft :: текст

Таблицы в маткад прайм как в эксель

Об интеграции PTC Mathcad и Microsoft Excel

Для взаимодействия с Excel в PTC Mathcad Prime предусмотрены следующие методы.

• READEXCEL, WRITEEXCEL — используйте эти функции для чтения из файлов Excel и записи в файлы Excel.

• Компонент Excel — выполняйте правку объекта Excel в документе PTC Mathcad Prime .

Копируйте ячейки непосредственно из Excel и вставляйте их в таблицу характеристик в документ PTC Mathcad Prime .

Таблицы в маткад прайм как в эксель

Компонент Excel представляет собой встроенную в документ PTC Mathcad таблицу Excel. Компонент Excel позволяет использовать внутри PTC Mathcad преимущества табличного представления данных Excel. Можно править и форматировать данные в документе PTC Mathcad , используя все средства Excel. В один документ PTC Mathcad можно вставить несколько компонентов Excel. При вставке компонента Excel создается один документ с именем Sheet1. Чтобы обратиться к другим документам, необходимо создать их в приложении Excel.

Компоненты Excel также позволяют в PTC Mathcad использовать возможности расчетов Excel. Можно встроить лист Excel, отправить значения в лист Excel и извлечь значения из него. Таким образом, расчеты Excel могут быть частью потока расчетов документа PTC Mathcad .

Поддерживаемые версии Excel см. в документе Platform Support (Поддержка платформ) .
Структура компонента Excel

Каждый компонент Excel содержит функцию предварительного просмотра таблицы Excel. Каждый блок компонента Excel состоит из трех областей. Это Ввод (Inputs) , таблица компонента и Вывод (Outputs) .

• Входные выражения указывают, какие данные отправляются в таблицу компонента. В качестве входных выражений можно использовать переменные, ранее определенные в документе PTC Mathcad . Можно также использовать скаляры, векторы, матрицы и строки. Можно указать одну ячейку или диапазон ячеек, содержащих входные выражения.

• Таблица компонента, отображаемая в документе PTC Mathcad , служит для предварительного просмотра полной таблицы компонента Excel. Дважды щелкните ее, чтобы открыть полную таблицу компонента Excel для правки.

• Выходные выражения указывают, какие данные из таблицы компонента назначаются переменным PTC Mathcad . Можно указать одну ячейку или диапазон ячеек, значения которых назначаются переменным.

Можно добавить любое количество входных и выходных выражений. Входные и выходные выражения по умолчанию ссылаются на ячейку A1 документа Excel. Однако если сначала открыть приложение Excel и выбрать ячейки, выражения по умолчанию будут соответствовать этому выбору.

Изменения, произведенные в Excel и в текущем листе Excel, немедленно отображаются в документе PTC Mathcad в соответствии с видимой областью таблицы компонента. Но пока приложение Excel открыто, расчеты входных и выходных выражений начать невозможно. Область прокрутки ячеек обновляется только при обновлении или закрытии Excel.

Microsoft Excel не поддерживает единицы измерения. При переносе в Excel выражений c единицами измерения значения преобразуются в соответствии с базовыми единицами, а единицы измерения удаляются. В следующем примере 1 тонна преобразована в килограммы.

Использование компонентов Excel

• Компонент Excel является встроенным объектом Excel, обеспечивающим доступ ко всем представлениям, функциям и форматам табличных данных Excel при работе в PTC Mathcad .

• Переменные PTC Mathcad легко связываются с файлом Excel, а данные встраиваются в документ PTC Mathcad .

• С помощью Excel данные компонента Excel можно сохранить как внешний файл. При этом связь между сохраненным файлом и компонентом Excel отсутствует. Изменение данных в файле Excel не приводит к изменению данных в компоненте Excel и наоборот.

Преимущества ведения вычислений в Mathcad перед электронными таблицами

Mathcad Prime 3.0 — это последняя версия Mathcad. Простые в использовании настоящие математические обозначения, мощные возможности обработки и передачи информации позволяют инженерам и организациям быстрее завершать важные процессы разработки и конструирования изделий. В отличие от программного обеспечения для создания электронных таблиц, редактирования текста и подготовки презентаций, Mathcad позволяет легко вводить формулы, текст, данные и изображения в одном документе, что упрощает сбор информации, повторное использование данных и верификацию проектов. В чем же преимущества проведения инженерных вычислений в Mathcad перед подобными вычислениями в электронных таблицах?

Наглядность вычислений

mathcad_1

Формулы в Mathcad всегда находятся в поле документа и имеют привычный для инженерного восприятия вид, что делает математику Mathcad более живой и наглядной, а также позволяет быстрее найти ошибки в рачетах. В таблицах, напротив, уравнения скрыты, их можно увидеть, только щелкнув по соответствующей ячейке. Кроме того, большинство функций в электронных таблицах имеют непривычные названия для человека, не знакомого со скриптовым языком. Таким образом, логика вычислений зачастую оказывается скрытой и неочевидной от пользователя.

Имена переменных

В Mathcad в вычислениях используются имена переменных в таком виде, в котором инженер привык их находить в документации и профильной литературе. В таблицах имена переменных — это ссылки на другие ячейки. Если этих ссылок в расчете очень много, то понять их, и, следовательно, понять источники ошибок, становится затруднительно.

Работа с физическими единицами измерения

mathcad_2

В Mathcad просто невозможно посчитать, используя неправильные единицы измерения. Изменения единиц ведут к немедленному изменению результатов вычислений. Кроме того, в Mathcad ведется проверка единиц измерения – программа не позволит сложить или вычесть выражения с единицами измерения разных, по смыслу, физических величин – например, Mathcad не позволит сложить длину и массу. В электронной таблице можно написать любые единицы измерений, но это будет всего лишь текст в соседней ячейке – его изменение никак не будет влиять на расчет, поэтому за возможными ошибками придется следить.

Средства документирования

Использование в Mathcad принципа «Что видишь, то и получаешь» (What You See Is What You Get) позволяет пользователю создавать максимально документированный расчет. Благодаря наличию в Mathcad мощного математического инструмента и средства обработки текстов инженер может документировать свои допущения, методы, источники данных, а средства форматирования использовать для того, чтобы акцентировать внимание пользователя документа на важных этапах расчета. Таким образом, текст и математика объединяются в одном документе с самого начала.

Использование шаблонов

Шаблоны обеспечивают стандартизацию документов, что позволяет придерживаться корпоративных или проектных требований к пояснительной документации. В шаблоне можно использовать средства форматирования, типовые выражения для расчетов и пользовательскую систему единиц – поэтому часто используемые данные не придется вводить каждый раз.

Интеграция Mathcad и Microsoft Excel.

Для использования преимуществ табличного представления данных, в PTC Mathcad реализована интеграция с Microsoft Excel посредством компонента Excel. Компонент Excel представляет собой таблицу, встроенную в документ Mathcad. Интеграция Mathcad и Excel устраняет необходимость преобразования данных.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *