/
Author: Орвис В.Дж.
Tags: компьютерные технологии программирование информатика программное обеспечение excel
ISBN: 966-7323-09-9
Year: 1999
Text
EXCEL
FOR SCIENTISTS AND ENGINEERS
William J. Orvis
San Francisco • Paris • Diisseldorf • Soest
Вильям Орвис
EXCEL
для ученых,
инженеров и студентов
.
~
,.•
:с
Киев "ЮНИОР"
1999
ББК
32.973-01
0-63
УДК 681.3.06
Вильям Орвис
0-63
EXCEL для ученых, инженеррв и
1999. - 528 с. , ил.
студентов: Пер. с англ.
-
К.:
Юниор,
- ISBN 966-7323-09-9
Данная книга предстааляет популярную программу электрон
ных таблиц Excel с несколько неожиданной точки зрения - как
мощиое средство инженерных л научных расчетов. Для решения
сложных задач, таких как численное дифференцирование или ин
тегрирование, всегда использовались специализированные пакеты
нриклациых программ.
образом
и
-
программа
менеджерам,
Сегодня ситуация изменилась кореНJtым
Excel 97,
может,
хорошо известная всем бухгалтерам
оказывается,
стать
незаменимым
инстру
ментом ученых и инженеров. С помощью этой книги можно уз
нать, как использовать
Excel
и
VBA для
аппроксимации, суммиро
вания рядов, интегрирования и дифференцирования, а также ре
шения сисrем линейных и дифференциальных уравнений.
Книга рассчитана на инженерно-технический состав КБ и
проекгных организаций, научных работников, занимающихся мо
делированием и численным анализом, а также студентов и препо
давателей инженерных факультетов и факультетов прикладной ма
тематики высших и средних учебных заведений.
ББК
32.973-01
ISBN 966-7323-09-9 (YQ.)
Authorized translation f rom tbe
English Language Edition
@ 1996 SУВЕХ Jnc.
ISBN 0-7821-1761-9
© перевод на русский язык и
(авrл.)
оформление издательство
"Юниор'',
1999
For Pat and Wib.
Your dedication, perseverance,
and honesty show in the
character of your children.
1know,1 married one.
Предисловие
Несколько лет назад мною была написана книrа 1-2-3 for Scientists and
в которой я расхваливал удобство применения программы
электронных таблиц Lotus 1-2-3 для проведения численного анализа. Я
посвятил свою книгу Lotus 1-2-3 по причине тоrо, что именно к ней
Engineers,
имели в то время доступ болъшинсt:Во научных и инженерных рабоrnи
ков. Однако читатели были, вероятно, несколько удивлены, когда узна
ли, что многие из примеров, приведенных в ходе изложения, были раз
работаны на Macintosh с применением новой программы электронных
таблиц Excel, созданной Microsoft. С того времени Excel претерпела зна
чительные изменения, превратившись в мощнейшую среду для проведе
ния численного анализа, способную функционировать как на платформе
так и на Macintosh.
Спустя несколько лет я написал книгу, представляющую собой вер
сию упомянуrоrо выше издания, в переработке для Excel. С того момента
Windows,
программа таюке очень сильно изменилась, и наиболее значимым изме
нением было добавление к ней Visual Basic for Applications в качестве ос
новного махроязыка. Для ученых и инженеров очень важным является
то, что за последнее время к комплекту инструментов Excel прибавлен
целый ряд научных и инженерных функций. Новая версия Ехсе/ for Sci-
entists and Engineers
объединяет в себе все новые инструменты и методы,
сщданные при разработке предыдущих версий программы до
Excel 7
включительно (см. следующий раздел "Предисловие к русскому и.зданию" .прим. ред.) Так, например, пользуясь данной кииrой, не будут иметь про
блем ни пользователи Excel 5 (версии 6 этой программы не существует),
ни пользователи
Macintosh.
Надеюсь, что, наблюдая в процессе приме
нения в рабочих листах методов численного анмиза за тем, как эти ка
завшиеся
чем-то таинственным
методы
становятся
вполне понятными,
вы получите истинное удовольствие от этой книги.
Численный анализ, как правило, проводится с применением традици
онных языков программирования, таких как Fortпm или С. Вы вводите в
программу входные данные,
а она применяет к иим некое численное
волшебство и выдает результат. Пользуясь такой программой, вы видите
только начало и итог вычислений, но пропускаете промежуrочные дейст
вия. Применяя метод численного анализа в рабочих листах, можно уви
деть весь ход решения задачи. Произоодя итерационное реuiение диффе
ренциальных уравнений, вы имеете возможность отсле:живmъ значения
на каждом этапе решения задачи и сравнивать их соответствие (или не
соответствие) имеющемуся ответу. Это делает данный метод значительно
более nоняnrым, что в свою очередь способствует ето дальнейшей разра
ботке и более широкому применению.
Решение создать пересмотренный и исправленный вариант предыду
щего издания, добавив к нему ряд примеров и задач, зрело во мне долго
и напряженно, и я бы хотел выразить искреннюю блаrодариость Р»чардУ
_______
Предuсловuе
......;._:..;..
-
•
Миллзу (Richard Mills) за то, что он в конечном итоге позволил мне -это
сделать. Мне также хочется поблагодарить Чарльза Финна (Charles Finn)
из Северо-восточного университета за то, что он "подrолкнул" нас с Ри
чардом к этой работе; Джулию Келли (Julia Kelly) и Курта Хэмла (Kurt
Натре) за вычитку текста и обнар}'жение всех моих ошибок; а также
всех других сотрудников издательства SуЬех, внесших свой вклад в появ
ление эrого издания. И, наконец, я хотел бы выразить особую благодар
ность Би-Джею, Скаю, Сиерре и Шэйн за то, что они оставили меня в
по.кое и дали возм~жность выполнить згу работу, а также Джулии - за
то, что она не подпускала их ко мне.
Надеюсь, вы получите удовольствие от этой книги
-
мне она понра
вилась.
Предисловие к русскому изданию
С любезного разрешения издательства
Sybex\ по лицензии которого
Excel for Scientists and Engi-
публикуется русскоязычный перевод книги
neers, все примеры в книге Е:хсе/ для ученых, инженеров и ст}!дентов пре
работы в Excel 97 (пользуясь случаем, издательство
"Юниор" выражает блаrодарноСТh к.ф.-м.н. Бродовому В.Л., к.т.н. Кус
суль Н.Н., Медведь О.И" МУРашкину С.В., к.ф.-м.н. Ракитянскому Д.Г..
и Полонской ЕЛ. за помощь, оказанную при подготовке книги к изда
нию). Самым значительным изменениям подверпiась глава 4, посвящен
ная использованию Visual Basic f or Applications, в связи с изменением са
мой концепции этого языка в Excel 97. Кроме тоrо, было добавлено еще
образованы для
ор.но приложение, содержашее аналоги команд русскоязычных и англоя
зычных версий
Excel.
Пользователи англоязычной версии Excel 7 могут получить рассмот
ренные в книге примеры для эrой версии Excel на отдельно распростра
няемой дискете, а таюке с WеЬ-узла издательства "Юниор" по адресу
http://www.junior.ukrnet.net или ло электронной почте, прислав со
общение по адресу junior-mail@writeme.com.
&:Ли вы заметите недостатки в переводе и оформлении Книги, захо
тите высказать свое мнение о книге либо предложить свое сотрудничест
во в качестве переводчика, научного, литературного, техническоrо или
художественного редактора либо распространителя наших книг, лишите
нам по адресу:
Украина,
r.
252142
Киев-142.
ул.Стуса, 35-37,оф.111.
издательство ··~ониор"
Кроме того, в конце книги имеется регистрационная карточка, запол
нив й прислав которую, вы можете стать нашим зареmстрированн:Ым чи
тателем. ждем ваших писем!
Введение
Вычисления. выполняемые учеными и инженерами, могут быть как
совсем простые, так и очень сложные. С несложными задачами расчета
значений функций они сталЮtваются практичесЮI ежедневно, в то время
как дnя решения сложных задач, например, для численного интегриро
вания дифференциального уравнения, зачастую могут потребоваться це
лы~ недели напряженного труда. Таким образом, любой инструмент,
способный упростить численные расчеты, значительно повышает произ
водительность научного работника или инженера. И одним из таких ин
струментов является программа Excel, обеспечивающая средства для вы
полнения вычислений, построения графиков и диаграмм, а также воз
можности для
программирования в едином пакете,
пользоваться
кото
рым просто и удобно.
В прошлом основным инструменrом для численных расчетов была
логарифмическая линейка, а для наглядного отображения данных, как
правило, пользовались мИJUJиметровкой. С изобретением карманного
калькулятора логарифмическая линейка очень быстро была отправлена
на заслуженный отдЫХ (худа-нибудь в дальний ящик письмеююго стола),
но миллиметровая бумага применяется и поныне.
Пользователи, имевшие доступ к универсальным компьютерам, могли
для ВЪiчисленнй и отображения данных применять эти машины. обла
давшие огромной вычислительной мощиосrью. Многие такие компыоте
рЬl. были также оборудованы: приборами для создания графических ре
зультатов расчетов. Однако, как правило, ·для разработки необходимых
программ и создания сложных графических выкладок, нам приходилось
нанимать квалифицированноrо специалиста-компьютерщика (или сrу
дента университета). либо самим изучать.- языки программирования, на-
пример, FORТRAN или
ALGOL.
,
Изобретение микрокомпьютеров привело к тому, что мощные вычис
лительные средства стали доступны практически любому ученому или
инженеру, а компьютерный язык BASIC, поставлявшийся в комплекте
стаиnартноrо программного обеспечения большинства таких маwнн,
обеспечил Эффективную среду для многих видов числовых расчетов.
Многие микрокомпьютеры оборудованы также графопостроителями и,
затратив незначительные усилия, пользователь может с их помощью по
лучить высококачественный графический материал.
Одиако для того,
чтобы разрабатывать н создавать графики и диаграммы на основе чис
ленных данных, в этих компьютерах тоже должны быть установлены со
ответствующие программы.
Даже nри наличии персональных компьютеров многие научные и ин
женерные работники производили вычисления с применением инженер
ной расчеmой таблицы. Она представляет с~й разл.инованн.ый лист
бумаги, похожий на альбомный, разграфлеННьtЙ также по вертикали ли-
_,.
Введеиuе
киями, расположенными на расстоянии около трех санmметров друr от
друга. В ОТД_ельные столбцы вводятся этапы. ·вычиспения, а в последнем
столбце содержится итоr. Так:, например, если вы хотигс вычислить
фунхцию у
= 2х2 + 3х для ряда значений х,
то введете значения х в пер
вый столбец, вычиспите значения 2х2 во втором столбце, значения Зх - в
'IреТЬСМ, а сумма данных из столбцов 2 и 3 - то есть итоговый результат будет указана в столбце 4.
Интересно, что такие инженерные расчетные таблицы были очень по
хожи на те, которыми пользовались студенты бизнес-факультетов в те
времена, когда я еще учился в университете (должно быть, они стащили
эту идею у инженеров). Время от времеци мы пропускали кружку-дРуrую
пивка в компании этих студентов, но никогда особо не интересовались
их дисциминамн, поэтому это сходство между нами не дало никаких
значительных результатов. Наиболее веской причиной нашего безразли
чия к предметам, которые изучали студенты бизнес-специальностей, бы
ло, вероятно, то, что мы оперировали понятиями синусов, косинусов и
показаЮлей степеней, а они
- всего лишь действиями сложения, вычи
тания, умножения, деления и вычисления процентного сооmошения (и в
этом они действительно преуспели
-
вспомните только о процентных
штрафах, процентных гонорарах и процентных интересах).
Мноrо лет назад таблицы для целей бизнеса были 'автоматизированы
с помощью микрокомпьютерной программы VisiCalc. Некоторые нз спе
циалистов, работающих в сфере научных и инженерных разработок, сра
зу осознали потенциальную возможность приме}{ения этой программы в
качестве иистр'умента для своих разработок, особенно с тоrо момента,
как она "научилась" вычислять математические фунхции, такие как си
нусы, косинусы и показатели степеней. С этого времени программы
электронных таблиц стали намного мощиее и разносrороннее.
Одной нз наиболее мощных программ электронных таблиц на сего
дняшний день является Microsoft Excel, которая может работать как: на РС
под управлением Windows 3.х, 9х или NT, так и на Macintosh. Excel очень
хорошо nодходит для научных н инженерных расчетов, поскольку она
объединяет в себе мощные электронные таблицы , графW~еские средства,
возможность nроrраммирования с применением языка
BASIC
н возмож
ности доступа к базам данных. Добавьте ко всему этому послеmие раз
работки эффективнейших рабочих станций - и в вашем распоряжен_ии
окажутся внушительные вычислительные мощиости .
О чем рассказывается в этой книге
Прочтя мою книгу. вы узнаете о наиболее эффективном использова
нии методов, предлагаемых
Excel,
для решения ваших научных и инже
нерных задач. Вы научитесь не только вычислять и составлять графики
простых уравнений, но и производить аппроксимацию кривых; вычис
лять статнстичесюtе данные, цифровые произволные и интегралы; полу-
Еисеl дnя ученыи, uнженеров
u
студентов
чать доступ к внешним базам данных; решать системы уравнений, а так
же одно- и двухразмерные дифференциальные уравнен ия. В этой книге
вы также. найдете объяс нение того, как создаются nиаrраммы и графики
и как следует пользоваться языком программирования
Visual Basic for Ap-
plications с целью расширения возможt~остей рабочих листов Excel.
Версии
Excel
для
Windows
и
Macintosh
Данное издание может применяться как при работе с версией Excel
для Wiпdows, так и для Maci11tosl1. Файлы рабочих л истов беспрепятст
венно переносятся из одной этой версии в другую. Разница в нх исполь
зовании минимальна. Поскольку все графические изображения, вклю
ченные в эту книгу, иллюстрируют Ехсе] 97, пользователи Maci11tosh .за
метят некоторую разницу между этими рисунками и тем, что они увидят
на своих дисмеях, однако соDержимое окон будет оnним и тем же. Реа
лизация и методы работы с рабочими ли стам и (т. е. расположение и со
держимое ячеек) в вереи.их E:xcel для Wiпdows и для Muci11tosJ1 также не
отличаются. Пользов атели Excel, как мя платформы Wiпdows, так и для
Maciлtos h, не должны иметь никаких пробл е м при применении этих ме
тодов.
Разница между версиями Excel дЛЯ Wiпdows и Maciпtosh будет упоми
наться в тексте непосредственно при описании самого процесса. Основ
ная разнищ1 заключается в том. что в этих версиях ШIЯ выпо.1Jнения не
которых функuий программы применяются разные клави ши . Так, на
nример, на клавиатуре Maciпtosh имеется клавиша
<Cmd> (Command),
которой нет в РС. Таким образом, те функции программы, которые вы
пол няются в Maciпtosh нажатием этой клавиши , в РС акmвизируются с
ПО!\!ОЩЬЮ кл::шиш
<Ctrl>, <Alt>
и
<Shift>_
Наr1ример, преобразование фор
мулы в массив выполняется в Maci11tosl1 с помощью комбинации клавиш
<Cmd+Enter>, а на РС - <Ctrl+Shift+Enter>; вычисление - <Cmd+Enter> и
<Ctrl+=>
соответственн о.
Более ранние версии
Excel
Данное издание книrи Ехсе/ для ученых, инженеров и студентов созда
но на основе версии Excel 97. работающей пол Wiпdows 95. Однако при
работе с этой книrой читатель может пользоваться и Ехсе] 7. а также Excel 5 С точ:ки зрения большинства пользовате:1 ей , возможности этих вер
сий практически иден тичны. Читатели этой книги, являющиеся· пользо
вателями более ранних верt:ий Excel, при рассмотрении большинства
примеров не должны сто;ткнутьс.и с какими-либо проблемами. Самая су
97 н 7.0, а также более ранними
ExceJ , заключается в замене прежн~rо ~Jыка программирован ия
щественная разница между uерсиями
версиями
t1d 'l~rj:)uai Бd~'"-" fu1 A1-1v~j(,(ii; \н1.5~ ;.;з;\'iC·i'i\:..:i-i:i-itl .,:,GJiii~t и unv,iia. .d<ii-il-i'DiЛ. /1. таr.:.жс
в том, что более новые версии предлагают пользователю ряд сложных
функций. Однако методы. описываемые в этой книге, 1шшь в незначи-
111
Введенuе
тельной степени основаны на таких функциях, в их основе в большинст
ве случаев лежат методы рабоrы с рабочими листами, которые примени
мы в большинстве версий Excel, а также в друrих сложных программах
электронных таблиц.
Практические примеры
Данная книга написана ученым-инженером, занимающимся практи
ческими исследованиями, мя друrих ученых и инженеров, работающих в
этой же области. Она основывается на реальном использовании элек
тронных таблиц в качестве инженерного инструмента. Многие задачи,
вошедщие в эту книгу, решались мною в ходе практической рабоТhl, ли
бо являются адаптированными- вариантами задач, решенных с примене
нием каких-либо иных методов, то есть еще до того, как я в полной мере
осознал потенциальные возможности электронных таблиц. Во многих
случаях вместо того, чтобы иметь дело с упрощенными учебными зада
чами, вы будете решать практические задачи. Некоторые из них намного
объемнее, чем задачи, которые читатель привык встречать в учебниках,
поэтому ШIЯ того, чтобы все же проиллюстрировать соответствующие ме
тоды, я включил в книгу сокращенные варианты таких задач.
Поскольку в основе данной книги лежит моя практическая работа в
области научных и инженерных разработок, многие задачи связаны с
электроникой и проблемами физики твердого rела . Кроме того, ради
развлечения я добавил немного астрономической тематики. Приношу
свои извинения практикам, занимающимся разработками в других отрас
лях науки и техники, за то, что не включил задачи, связанные с их 'рабо
той, но ведЬ задачи в этой книге используются лишь мя того, чтобы
проиллюстрировать вычислительные методЬ1. Важны именно эти методы,
которые можно примениrь к любым отраслям, а вовсе не сами задачи.
Книга не обогатит ваших знаний в области науки и инженерии, но
научит практическому применению численных методов к задачам,
кото
рые приходится решать в этих сферах. Я не слишком 'Много внимания
уделяю обсуждению теоретических основ и математическому обоснова
нию большинства численных методов, описанных в данном издании, но
стараюсь сконuентрироваться на способах их применения при работе с
электронной таблиuей . Если вас заинтересовали какие-либо материалы
более конкретного характера, то на тему численных методов написано
немало хороших книг, способных уrолить ваше любопытство. При при
менении большинства численных методов я главным образом основы
вался на книгах Кертиса Ф. Джералда (Cшtis F). Gerald) Applied Numerical
Analysis и Уильяма Х. Пресса (William Н. Press) Numerical Recipes. По
скольку
FORTRAN
не сильно отличается от
BASIC,
что позволяет сде
лать проuесс преобразования математического алгоритма в язык
Dasic
Visual
срав:ю1тс;;ыю прастым , о !!рактич:е~кnм смысле 9чень удобна вер
сия этого языка программирования, описанная во нrорой упомянутой
lfi
Ексеl дм ученык, uнисенеров
u
студентов
мною выше книге. Перечень других книг и ссылок на источники, свя
занные с приведенными мною примерами, приводится в конце каждой
главы.
Примеры на дискете
Если вы не хотите сами вводить все данные примеров в таблицы, но
все :же хотели бы поработать с ними, вам может понадобиться отдельно
распросrраняемая дискета. содержашая практические примеры для каж
дой главы, а таюке решения Обзорных задач, которые предлагаются ва- _
шему вниманию в конце глав. Обратите внимание, что решений для уп
ражнений дискета не предлагает. Все примеры заархивированы в форма
те русскоязычной версии Excel 97, а таюке в формате англоязычной вер
сии Excel 7, эквивалентном Excel 5. Дискета имеет формат Windows, по
этому пользователям Macintosh придется воспользоваться Apple File Exchange, РС Exchange или каким-либо иным инструментом и скопировать
файлы на дискету для Macintosh. Более подробно об этом рассказывается
в Приложении Б.
Кроме того, все файлы с примерами и решениями обзорных задач
можно получить как в формате русскоязычной версии Excel 97, так и в
формате англоязычной версии Excel 7, через WеЬ-узел издательства
"Юниор'', обраmвшись по адресу http:/fwww.junior.ukrnet.net.
Подготовка пользователя
Для того чтобы пользоваться этой книгой, необходимо обладать спе
циальной научной mtбo технической подготовкQй, или иметь матемаm
ческое образование. Хотя она рассчитана на практических работников
этих областей, студенты соответствующих факультетов не должны им.етъ
каких-либо сложностей в ходе обсУЖдеНИЯ задач и их решений, и cмoiyr
с пользой применять эm знания для повышения эффективности процес
са обучения. В сущности, электронные версии численных методов в этой
книге носят намного более интуитивно понятный характер, чем такие же
методы, примен.Яемые в Fortran или С, что превращает электронные таб
лиuы в отличное средство обучения.
Необходимо таюке знать компьютер и основы Excel. Если вам не из
вестно, как включается машина, отложите 'Л"/ книгу, найдите хороший
учебник и какое-то время поупражняйтесь в работе на компьютере. Ко
гда почувствуете, что он вам более или менее понятен (например, вы
можете удалить файл, не замирая при этом от страха), вернитесь к этой
книге.
Если же вы не знаете, как приступить к работе с
Excel,
для начала
рассмотрите рабочий лист, введите любые данные в некоторые ячейки,
с,охраните файл, загрузите один иэ старых файлов, почитайте учебники и
справочные материалы, распространяемые вмесrе с программным обес-
111
Введенuе
печением . Чтобы узнать о типах фуюсций, дOC'J)'JIНblX в Excel, следует
также просмотреть справочные материалы по электронным функциям.
После всего этого, постигнув основы, вы сможете продолжать рассмат
ривать задачи, описанные в этой книге.
Способ изложения материала в данной книге позволяет сначала осво
иться с Excel, поэтому чиТатсли, знакомые с ЭТОЙ программой, мoryr
пропустить первый, наиболее простой пример, и начать сразу со второго.
С этого момента рабочие листы начинают быстро усложняться, но, как я
надеюсь, остаются вполне понятными.
Требования к аппаратным средствам
Если ваш компьютер не оборудован необходимыми аппаратными
средствами ,
Excel либо вообще не запусmтся, либо вы не будете иметь
возможности пользоваться некоторыми ее функциями. Для версии Excel
для Windows необходимо иметь машину, на которой может быть установ
лена Windows 3.0, т.е., как минимум, компьютер IВМ класса АТ (процес
сор 80286) с 2 Мбайт системной памяти и монитором EGA (или лучше).
Конечно, при большем объеме памяти и более мощном процессоре
(80386, 804&6 или Peпtium) скорость работы Excel будет выше, а функ
циональные возможности программы
Excel
-
намного шире.
может работать на любом компьютере
Macintosh
с
System 6.02
или более поздними версиями, включая 128 Кбайт, если вы увеличите
память машины до 1 Мбайт или более. В данном случае, опять же, рабо
та в программе будет намного эффективнее при большем объеме памяти
и при наличии более мощного процессора.
Примеры )J.ЛЯ этой книги .изначально были разработаны на компьюте
ре Today, 386SX-20, имевшем оперативную память (ОЗУ) 4 Мбайт и ме
сто на жестком диске, которого никогда не бывает достаточно. В системе
бши установлены DOS 5.0 и Windows 3.1 . Эти же примеры были протес
тированы на компьютере Macintosh SE с 4 Мбайт ОЗУ и с еще большей
нехваткой свободиого места на жестком диске. Для настоящего издания
все примеры были пересмотрены на Today 486DX2-80 с ОЗУ 16 Мбайт
(места на диске-все рав110 недостаточно), и на новом оборудовании рабо
тают намного быстрее. Если же вы намерены пользоваться Excel 97, то
для эффективного соответствия компьютера этому программному обес
печению нужна как минимум система класса Pentium.
Условные обозначения, используемые в этой
книге
На многих иллюстраuиях данного издания рабочий лист будет изо
бражаться не цсликuм, Ш.J~Колы..-у некоторые задачи зоош..·ш бы несколько
страниц. В большинстве таких случаев я размещаю наиболее важные
·
Енсеl дш1 ученын, uнженеров
u
студентов
итоги в верхнем левом углу рабочего листа, и на рисунке отображается
только этот фрагмент.
Ехсе] не реагирует на. изме нение регистра, поэтому функuии , имена
переменных и формулы можно вводить как строчными , так и прописны
ми буквами . В описаниях задач функции электронных таблиц печатаются
прописными буквами , поскольку именно в таком виде они появляются в
электрон ной таблице ; переменные показатели и назначенные имена да
ются в том регистре, в котором они были определены. Для элементов
в вода можно пользоваться и строчными , и прописными буквами, так как
Excel сама и зменит их надлежащим образом.
В описании примеров все то, что предлагается вводить пользователю ,
выделено полужирным шрифтом, а символы , вводимые самой програм
мой , напеч атаны обычным шрифтом .
~ На полях книги часто будет встречаться изображение кнопок
панелей инструментов (как это показано здесь). Эти кнопки
l!:!.I
соответствует тем , которые описываются в абзаце , рядом с которым на
ходится рисунок. Например, с помощью изображенной слева от данного
абзаца кнопки запускается Мастер диаграмм. Если же на полях находится
рядом две кнопки , они будут расположены в порядке , в котором оп исы
Rаются в абзаце.
В этой книге вы также увидите отдельные разделы, - примечания ,
- которые будут выделены
на фоне основного текста главы . В них содержится информация, не
предупрежден ия , экспресс - методы и врезки
имеющая непосредственного отношения к данной главе, но помогающая
объяснить или расширить описываемые в этом месте текста понятия .
\
Путь к пониманию
Теперь , когда все предварительные вопросы и счерпаны, настало вре
мя открыть рабочий лист и приступить к решению задач. Прочтя не
сколько последующих глав , вы увидите , как " оживают" численные мето
ды в электронных таблицах , а также начнете понимать то , что раньше
никогда до конца не понимали . Я желаю вам удачи и приятного путеше
ствия в страну числ енного анализа в рабочих листах
Excel.
Г11ава
Исnо11ьзование
1
Excel
в научных и
июкенерных nрипmкенивх
Вэтойтове...
./ Точност1t nредставпени• чисеп и чисnенный диапа~н в Excel
./ Са.шки на баэовую •чейку и на диаnаэон
./ Оnераторы Excel
./ Математические функции Excel
./ Научные и инженерные функции Excel
Программа
Microsoft Excel
создавалась в хачесrве конкурента уже
имеющимся на рынке программного обеспечения коммерческим про
граммам для различных целей бизнеса, поэтому у читателя вполне зако
номерно
может возникнуть вопрос:
подходит ли такая
программа для
вычислений в области науки и техники? Может ли программа, разрабо
танная для применения в сфере бизнеса, выполнять сложнейшие расче
ты, связанные с научными н инженерными исследованиями? Соо~
вует ли точность и диапазон обрабатываемых чисел потребностям вычис
лений технического характера? Имеются ли в программе все стандартные
математические функции? Можно ли в ней реализовать достаточно слож
ные алгорuтмы?
Как вы убедитесь,
Excel
не толъко предлагает точность, вполне срав
нимую с обеспечиваемой крупными компьютерными системами, но так
же включает в себя значительно больше математических средств и функ
ций, чем многие' языки программирования высокого уровня. Кроме того, в
Excel возможно программирование с применением языка высокого уровня.
Точность представления чисел и численный
диапазон в Excel
По всей вероятности, наиболее важным для пользователей-ученых яв
ляется вопрос, достаточны ли точность представления чисел н числен
ный диапазон, которые обеспечив~ Excel, для научных и инженерных
расчетов. При простых вычислениях точность представления чисел, как
правило, не имеет большого значения. Многие научные и июiс.енерные
задачи могут быть решены с помощью простой лоrарифмической линей
ки, которая, в лучшем случае, имеет всего три разряда точности. С дРУ-
"
\
'
~Olaнue Ea:el 1 наgчнwи
u
uнисенерныи npunOICВНWIК 111
гой стороны, многие численные алгоритмы довольно сильно реагируют
на точность представления чисел. Любой алгоритм, использующий ите
рацию, вернее всего будет весьма чувствителен к точности представле
ния, поскольку поrрешности вычислений будут расти с каждой итераци
ей и могуr исказить результат, если числа, использованные для расчетов,
были недостаточно точны . Особенно важна точность представле1D1Я чи
сел при примене~ии алгоритмов для решеЮIЯ задач в области динамики
нелинейных систе". поскольку решения таких задач смзаны с итераци
ей, а используемые формулы имеют сильно нелинейный характер.
Для вычислений, связанных с механикой небесных тел, также необ
ходимо большое количество разрядов точности. В дамной области иссле
дований объеКТhl зачастую привязаны ко многим тысячам орбит, распо
ложенных вокруr основной IUiанеты или солнца, и в случае недостаточ
ной точности чисел суммарная ошибка окруrления может сместить обь
екr совсем в друrое место относительно основной IUiанеты.
В табл. 1.1 указаны пределы точности предстамения чисел и числен
ного диапазона в Excel.
Таб.nица
1.1. Точносm
nредстаuени1 чисел и чмспеннwl диаnазон
•
Ехсе1
--··
1-' ·---Э'6
·ЕМ~
с:==15знаков
=1 ,798х1О+~
111
1
1
Точность представпения чисеп
Точность представления чисел в
ет rочносrъ
представления
Excel
во многих
соответствует и даже превыша
широко применяемых
средствах
для выполнеlDIЯ научно-технических расчетов. Эта программа обеспечи
вает внутреюоою (т.е. не выводимую на дисплей) точность числа до 15
знаков . Для сравне1D1Я скажу, что обычный калькулятор для науqных
расчетов отображает 10 знаков и способен с целью уменьшения погреш
ности окруrления сохранить еще один-два знака, не вьщодя их на дис
IUiей ; мини-компьютер VAX обеспечивает только 7 знаков для чисел с
нормальной точностью и IUiавающей заnятой, и 15 - для чисел сдвой
ной точностью; а супер:комnьютер CRAY 1 имеет 15 разрядов точности
при нормальной точности "чисел с IUiавающей запятой.
При выполнении вычислений
Excel
обеспечивает точность до
15
зна
ков, но при выводе их на экран окруrляет числа в соответствии с форма
том ячейки, в ,котором это число отображается. Однако вы можеrе со
хранmъ числа именно в том виде, в каком вцците их на экране, а не все
15 знаков. Для этого выберите команду Сервис
>- Пnрвwетры,
iцелхните
на вкладке Вычиспения и установите флажок Точность ~к нв экране.
Уменьшение точности чисел может быть удобно при работе с денежными
единицами, ее.пи вы не хотите получить дробные поКазатели копеек, од
нако при выполнении вычислений, связанных с научными и. инженер
ными исследованиями, понижать степень точности, как правило, неже-
11:1
Гnава
1
лате.льно. В приведенных в этой кинге ·примерах мы не будем использо
вать этот режим. Кроме того, прн уменьшении точности чисел фактиче
ски несколько замедляется скорость пересчета.
Численный диапазон
Численный диапазон в общем определяет чувствигельность электрон
ной таблицы к избыточным илн недостаточным погр~шностям.
Excel
со
храняет числа от -1 ,798х 1о+308 до 1, 798х 1о+308' чем обеспечивается чис
ленный диапазон ± 1О+308. Для сравнения: обычный карманный кальку
лятор способен рабслать с диапазоном 10~99; мини-компьютер VAX нме
ет диапазон 10±38 при нормальной точности н 10±308 - при двойной;
диапазон суперкомпьютера CRAY 1 достигает 10±2500_ Хотя самое боль
шое число, сохраняемое Excel, равно 1,798х 10+308, наибольшее чисзю,
которое можно ввести, составляет 9,999xJ0+307. Прн вводе большего зна
чения Excel будет трактовать его как строку.
Большинство нтоrов научных н технических вычислений представля
ют собой разумно ограниченные числа, чаше всего не выходящие за пре
делы от J0-40 до 10+40 (я нмею в виду, что они представляются разумны
ми ученым н инженерам). Но при использовании таких чнсел в уравне
ниях промежуточные результшы мo.ryr оказаться довольно большими.
Если промежуточНый результат превышает диапазон компьютера, вычис
ление "захлебывается " н возвращает ошнбку. Рассмотрите, например, это
простое выражение нз квантовой механики: ~
2т
h2
'
где h - постоянная Планка, деленная на 2я (l ,0546xI0-34), а т - масса
покоя электрона (9,l l xI0-31 кг.). В результате этого расчета мы получим
число l ,64xl О+38, которое является разумно ограниченным. Однако про-
межуточный итог, полученный в результате возведения в квадрат н об
ращения константы Планка, составил 8,99xJ0+67, что на 29 разрядов пре
вышает конечный итог. Возведение в куб единицы, деленной на r.~осто
янную Планка, является слишком объемным действием для любого кар
манного калькулятора н далекq выходит за пределы возможностей обра
ботки чисел с нормальной точностью на компьютере VАХ.
Избыточные размеры чисел зачастую свидетельС'I'Вуют об ошибке в
самой постановке задачн. В противном случае избыточный показатель
промежуточного значения легко можно исправить, перестроив формулу
или разделив ее на две отдельные части, что позволит ограничить размер
промежуточного значения. Так, например, в случае с приведенным выше
уравнением, вы можете настроить операции таким образом, чтобы сна
чала масt..а электрона делилась на постоянную Планка, а затем получен
ный результат - еще раз на постоянную Планка. Полученный результат
будет таким ж:е, но промежуточное значение -
намного меньше.
Испоnьзованuе Енсеl в научн1.1н
Имея диапазон JO±ЗOS,
u
uнженерн1.1н npunoиceнWIИ
Excel вряд лн будет иметь проблемы с нзбы
точнымн показателями. Еслн же вам действигельно удалось получить та
кое число, программа сохраняет ошнбочное значенне #ЧИСЛО!, с помо
щью которого помечает данную ячейку, а также все связанные с нею
ячейки, как некорректные. Еслн же число оказывается слишком малень
ким (т.е. меньше 2,225xJ0-308), Excel сохраняет это значение как нулевое.
Еслн такое чнсло оказывается в делителе дроби, то программа возвраша
ет ошибочное значение #ДEJVO!, в результате чего любая ячейка, содержи
мое которой завнсит от данного значения, помечается как некорректная.
Ошибочные числа
Кроме стандартных действительных чисел в
Excel
существует семь
ошибочных значений, трактуемых ею как числа:
#Дtл/О!
#ИМЯ?
деление на О;
-
не определено нмя переменной в формуле;
-
#Н/Д!
- нет доступных значений;
#ПУСТО! - итога не суmествует, либо используется пересечение диа
пазонов, которые на самом деле не пересекаются ;
#ЧИСЛО!
нзбыточное числ9 , либо неверное нспользование числа,
-
например, КОРЕНЬ(-1);
#ССЫЛКА!
-
неверная ссылка; JJЧейки, на которую она сделана, в ра
бочем лнсте не суmествует;
#ЗНАЧ!
-
неправильный тип аргумента; например,
использование
текста там, rде необходимо число.
Еслн в формуле нсполъзовано одио нз этих ошибочных значений , ре
зультат формулы также будет ошибочным. Ошибочные значения распро
страняются по всему рабочему лнсту, помечая все значения, зависящие
от ннх, как некорректные. Эrо позволяет гарантировать, что пользователь
не будет ПРН!оfеНЯТЬ числа, полученные на основе некоррекТных данных.
:V
Совет
Если вы хотите восnользоваться ошибочными значенt'IЯМИ для проверки
формул, обрабатывающих ошибки в рабочих листах, можете ввести эти
значения ПDямо в ячейкv Dабочеrо листв.
Основные сведения о ячейках и ссыпках
Ячейки в
Excel
могуr содержать текст, числа, указание даты и време
ни и формулы . Программа следит за тем, что вы вводите, н преобразует
содержанне ячеек надлежащим образом. Если в ячейке содержится чис
ло,
Excel
сохраняет
ero
как числовое значение, н вы сможете воспользо
~аться им д,'Iя своих вы•шс..'Iеннй. Ес..'IИ ячейха вх.лючам- к::нс rекст , так и
числа,
Excel
сохраняет ее ках текст; а если содержание ячейки начинает
ся со знака равенства {=), оно сохраняется Как формула. Если содержа-
Гnава
1
ние ячейки выглядит похожим на один из форматов, применяемых в
Excel
для указания даты и времени, оно сохраняется программой как по
1.1.1990 (или 1.1.1904, если на
рядковый номер даты с точкой отсчета
вкладке Вычисления диалогового окна Параметры, которая выводится на
экран командой Сервис>-- Параметры, установлен соответствующий фла
жок), а время указывается в виде доли дня.
С каждой ячейкой
значение. Содержание
значение
Excel связано две ее характеристики: содержа.чие
- это то, что вводится пользователем в ячейку,
и
а
то, что видно на экране . Форматирование ячейки не изменя
-
ет ее значения,
но изменяет вид,
в котором оно выводится
на монитор.
Для текста и чисел содержание и значение ячейки одинаковы. Что же
касается
вами,
а
формул, содержание представляет собой формулу,
значение
введенную
итог вычислений, произведенных с применением
данной формулы.
Ссылки на ячейки
Тип диапазона или ячейки
Пример
Строка
Стодбец
Число
Буква
Оrносительная ссылка
85
$8$5
$85 8$5
'D:\STATS\CARS.XLS'!85
85:87
Абсолютная ссьшка
Смешанная ссылка
Внешняя ссылка
Ссылка на диапазон
Значение какой-либо другой ячейки вводится в формулу с помощью
ссыл1ш на ячейку. Эта ссылка состоит из комбинации буквы и цифры, где
буква
соответствует
определенному
столбцу,
ячейка, на которую делается ссылка, а число
ячейку.
Так,
например,
в
-
котором
расположена
строке, содержащей эту·
ссылка С5 будет соответствовать значению
ячейке, которая располагается на пересечении столбца С и строюt
5,
в
как
это изображено на левом рисунке ниже. Этот тип ссьшки на ячейку из
вестен как стиль А 1. Ссылка на ячейку также может иметь вид пары ука
зателя строки и столбца, например, R5СЗ, как показано на рисунке спра
ва. Ссылка в данном случае сделана на ту же ячейку , что в первом при
мере, но в стиле ссылки
R1C1 .
----- ·····i'-·----- ..~Coll_C5
,.;
.•..•1
В стиле А1 столбцы помечены буквами.
8
стиле
R1C1
столбцы пронумерованы .
'-iтобы назначить или изменить стиль ссылки с А1 на R1C1, выберите
команду Сервис
Параметры, щелкните на корешке вкладки Общие и
>--
Испоnьзованuе Еисеl в научныи
установите флажок Стиль ссылок
u
uнженернын прunоженuян
R1C1.
Если вы создали рабочий лист,
применяя для этого один стиль, а затем изменили его, все ссылки будут
автоматически преобразованы в другой стиль.
Внешние ссылки на ячейки
Ссылаясь на ячейку, расположенную в другом рабочем листе (т.е. не в
том рабочем листе, в который вводится формула), вы должны включить в
ссылку имя рабочего листа, чтобы
Excel
знала, где ей искать нужную
ячейку. Такая ссылка известна под названием внешней. Чтобы получить
доступ к содержанию одной из ячеек какого-либо рабочего листа, содер
жащего внешнюю ссьшку, его не надо открывать. Для создания внешней
ссылки введите имя рабочего листа, затем восклиuательный знак, а за
- ссылку на ячейку. Если рабочий лист расположен в каталоге, от
тем
личном от каталога по умолчанию, вк..r1ючите в ссылку также путь к нему.
Например, если вам надо сделать ссьшку на ячейку Н7, расположен
ную в рабоче~ листе
CARS.XLS,
который находится в каталоге по умол
чанию, введите следующую ссылку:
CARS.XLS!H7
Чтобы сослаться на эту же ячейку в таком же рабочем листе, но нахо
дящемся в каталоге
D:\STATS,
который не является каталогом по умол
чанию, используйте такую форму:
'D:\STATS\CARS.XLS'!H7
l~ Совет
Самый
надежный
способ
обеспечения
правильного указания
адреса
ячейки, особенно если она находится в другом листе, заключается в том,
чтобы заставить саму программу создать ссылку. Откройте рабочий лист,
содержащий ячейку, на которую вы собираетесь сослаться, перейдите на
исходный рабочий лист и начните вводить формулу. Достигнув места, в
которое вы бы хотели поместить ссылку на ячейку, перейдите снова на
лист, в котором находится нужная вам ячейка, и щелкните на ней мышью, в
результате чего
Excel впишет в g,ормулу правильную ссылку.
Для ссылки, которая не является значимым именем
Excel,
как, на
пример, имя, включающее в себя путь к каталогу, требуются одинарные
кавычки .
Ссылки на диапазон
Можно также делать ссьшки и на группы ячеек, т. е. на диапазон. Диа
пазон ячеек представляет собой прямоугольную зону в рабочем листе.
Все ячейки, входяЩие в этот прямоугольник, включаются в данный диа
пазон (без каких-либо пропусков). Ссылка на диапазон представляет со
бой ссыл'ку на ячейку, расположенную в левом верхнем углу прямоуголь-
f }J
Гnава
1
ника, и на ячейку, находящуюся в правом нижнем углу прямоугольной
зоны, отделенные друг от друга двоеточием.
указывает на все ячейки ,
Например, ссылка
расположенные в прямоугольнике ,
верхнем углу которого находится ячейка Н4, а в правом нижнем
ка
J6
(т. е. ячейки Н4 , Н5, Н6 ,
14, 15, 16, J4, JS
и
J6).
H4:J6
в левом
-
ячей
Ссылка может быть
сделана и на очень маленький диапазон, состоящий, например , всего из
одной ячейки (Н2:Н2); а также на диапазон , включающий одну строку
(J2:M2)
или один столбец
(L2:L17).
.н
-
'
'1
t
,
,__ _
о
\
./
~ Экспресс-метод
Ссылки на диапазон быстро создаются с помощью мыши . Достигнув мес
та в формуле, в которое вь1 намерены вставить ссылку, щелкните на
ячейке , расположенной в одном углу ссылки, которую надо выделить, и
протяните по диагонали в противоположный угол диапазона. В результа- ·
те этого в вашу формулу будет вставлена ссылка на диапазон . Данны й
способ таюке годится для большинства диалоговых окон , в которых тре
буется делать ссылки на ячейки или на диапазоны ячеек.
-Разделив диапазоны запятыми, можно также объединить несколько
диапазонов в одной ссылке. Например, ссылка на четыре выдел енных
диапазона ячеек, изображенных на рисунке выше, может быть представ
лена следующим образом: H2:H2,H4:J6,J2:M2,L4:L7. В эту ссьmку входят
все ячейки, составляющие выделенные зоны (Н2 , Н4, Н5 , Н6 , 14, 15, 16,
J4, J5, J6, J2, 1<2, L2, М2 , L4, LS, L6 и L7).
Если п ри отделении двух диапазонов друг от друга воспользоваться
вместо запятой пробелом, то ссьmка будет относиться не к объединению
этих диапазонов, а к _зоне их пересечения . Например, изображенная на
рисунке сс ылка на два диапазона ВЗ : D4
на ячейки DЗ и
04,
D2:E6
является ссылкой только
поскольку именно эти две ячейки содержатся в обеих
выделенных прямоfrол ьных зонах .
F'
r
-
Исnоnьзованuе Еисеl в научным
u, uнженерныи nрunоженuяи
vf Совет
Чтобы выделить с помощью мыши зоны с несколькими диапазонами, вы
делите первую зону, нажмите
<Ctrl>
(для
Macintosh - <Cmd>)
и, удержи
вая Э!J.. клавишу в нажатом состоянии, выделите остальные диапазоны.
относительные и абсолютные ссылки
Ссылки на ячейки бывают относительными, абсолютными или с.ме
июнными. Относительная ссылка на ячейки указывает на ячейки, связан
ные с той, в которую введена данная ссылка. Абсолютная ссылка всегда
указывает на конкретную ячейку. Смешанная ссьmка объединяет абсо
лютную ссылку на столбец и относительную ссылку на строку, либо на
оборот, абсолютную ссылку на строку и относительную ссылку на столбец.
Относительные ссылки на ячейки
Все ссьmки, упоминаемые нами до сих пор, были относительными.
Они определяются относительно ячейки, в которой содержится введен-
,
ная пользователем ссылка.
Представим, например, что формула, находящаяся в ячейке
GS,
со
держит ссьmку на ячейку ЕЗ. ЕЗ фактически не ссылается на содержание
.
ячейки, расположенной в столбце Е строки З, она просто указывает на
ячейку, находящуюся на два столбца левее и на две строки выше от
GS,
ячейки
очевидным
GS
ячейки
которая в данном <;лучае и есть ЕЗ . Это различие становится
при
копировании ячеек.
в ячейку
18,
Если
вы
скопируете содержание
ссьmка на ячейку изменится на
G6, которая
18.
нахо
дится на два столбца левее и н~ две строки выше ячейки
F
.
G.
'
---L-·-·----·-·--! - ___;
=ЕЗ
-
·i·
-~ору .__
!
.1
---- .• -------
~
!
=G6
---·---
;-
...._;i
При стиле ссылок
R1C1
номер строки и столбца заключается в квад
ратные скобки, что делает их начальными номерами строк и столбцов. В
этой системе ссылок исходным является верхний левый угол рабочего
листа,
поэтому
положительным
считается
направление
вниз
и
вправо.
Например,
R[-2]C[2] представляет собой относительную ссьmку на ячей
ку, расположенную на две строки выше и на два столбца · правее ячейки,
содержащей данную ссылку.
Относительные ссьр~ки на яч~йки очень удобны, если вы хотите при
менить формулу к списку значений. Вместо того чтобы вводить формулу
для каждого значения, входящего в этот список, вы набираете ее с ис
пользованием относительных ссьmок и копируете по всему перечню. На
141
Гnава
1
пример, если вам понадобилось вычислить формулу для 50 значений в
одном столбце рабочего листа, введение ее 50 раз ()удст довольно уrоми
телъной и скучной работой. Вместо этого можно ввести формулу только
один раз в столбец, смежный с содержащим данные, а после этОго ско
пировать ее в 49 ячеек, располож.еЮiых под первой ячейкой. Excel откор
ректирует все опюсителъные ссылки с ~м. чтобы каждая ссылка указы
вала на соответствующее ей значение данных. Вы лучше поймете, как
это получается , поупражнявшись с рабочими листами, как описывается в
следующих главах.
Абсолютные ссылки нв ячейки
Аб~ая ссылха при копировании формулы остается неизменной .
Такая ссылка всегда указывает на конкретную ячейку независимо от то
го, в каком месте рабочего листа она расположена. Чтобы СJ(елать ccwiкy
абсолJ01Ной, следует перед координатами строки и столбца поставить
знак доллара. Например, $G$5 представляет собой абсолютную ссъmку
на ячейку G5.
При использовании сmля
R1 С1
ссылка будет абсолJ01Ной, если вы не
воспользуетесь квадратными скобками, в обратном случае ссылка счита
ется относительной. Например, R5C7 указывает на КОНКРетную ячейку,
расположенную на пересечении строки 5 и столбца 7.
Абсолютные ссылки удобны для указания констант в формулах, кото
рые вы собираетесь копировать в большое количество ячеек. Очень эф
фективный подход к написанию формул заключается в ухазании незави
симых перемеЮIЫХ в формулах с применением для этого относительных
ссылок на соседние ячейки, оформляя при этом постоянные элементы
формул как абсолютные ссылки. При копировании тахой формулы ниже,
в другие ячейки столбца, относительные ячейки изменяются и становят
ся ссЬIЛКаМи на соседние ячейки, но абсолютные ссылки всегда указы
вают на константы и не корректируются. В этом случае ЩtМ достаточно
будет иметь в рабочем листе только один коммект констант. Вы сможете
изменить значен:йе одной из констант, чтобы увидеть, 'ПО произойдет в
этом случае, и во всех местах, куда скопирована формула, будет отобра
жен результат этого изменения.
Смешанные ссылки не ячейки
Смешанные ссылки содержат абсолютную ссылку либо на столбец,
либо на строку, и абсолютную - на вторую хоординату. Для создания
такой ccliilЛКИ поместите перед координатой, которую вы намерены сде
лать абсоЛJ01Ной сс:ылкой, знак доллара.
Например, ссылка $G5 фиксирует конкретный столбец, но координа
та строки является относительной и изменится, если ячейка, на которую
де.лается ссылка, будет скопирована в другую строку. В ссылке
G$5,
-
оборот, абсолюnюй является коор~ната строки, а относительной
ордината столбца.
на
ко
Ис:поnьзованuе Eнtel в научньlИ
В стиле
R1C1
ссылка
R1C[4]
u
uнменернын ~unщненwас
явпяется абсолютной ссылкой на сrроку
и относительной ссылкой на столбец, находящийся на четыре столбца
правее от столбца, содержащего данную ссылку.
1
Имена диапазонов И ссыпок
Вместо тоrо чтобы пользоваiься в формулах и командах ссылками на
ячейку, можно присвоить имя ячейке или диапазону и использовать его с
этой целью: Чтобы назначить имя отдельной ячейке или диапазону яче
ек, выделите ячейку или диапазон, а затем в меню Вставка выберите ко
манду Имя
Присsоить . Введите в оохры.вшемся диалоговом окне имя
ячейки или диапазона и щелкните на кнопке ОК. Теперь ячейка или
диапазон имеет имя, которое можно использовать в формуле.
Чтобы присвоить имя списку ячеек в строке (или столбце), введите
>--
имена в соседнюю с ней (ним) строку (столбец), затем выделите ячейки,
для которых собираетесь назначить имя, а также ячейки, содержащие эти
имена. В меню Вставка выберите команду Имя
Создать, установите
флажок для указания места расположения имен и щелкните на кнопке
ОК. Все ячейки будуr поименованы с применением имен, введенных в
соседние с ними ячейки.
>--
"1"Экспресс-метод
Чтобы присвоить имя отдельной ячейке или дивпвзону ячеек, выделкте
эту ячейку или дивпвзон, введите имя в поле имен, рвсположенное спевв
от строки формул, и нажмите <Enter>. Не звбыввйте нажим.ать <Enter>,
посколькv в противном сnvчве имя ячейке не будет присеоено.
При нахождении численного значения формулы, в которую включены
имена, каждое имя заменяется Excel его определением, ·и затем вычисля
ется итог. Именованные диапазоны являются абсоmооными ссылками,
поэтому, когда. вы копируете ячейки, содержащие их, они остаются не
изменными.
Использование имен является эффекmвным методом, если делается
многократная ссылка на одну и ту же ячейку или диапазон. Кроме того,
имена делают ваши формулы более понятными. Например, если в ячейке
С5 содержится значение массы, ее можно назвать Мвсса. Формулы, ссы
лающиеся на эту ячейку, будуr содержать слово Мвсса, которое, несомненно, носит намного более описательный характер, чем С5.
' При вводе имени диапЗЭ._Она в формулу, для которой требуется только
одно значение,
Excel
испольЗует одну ячейку из этого диапазона. Выбор
ячейки зависит от относительного места расположения ячейки, содер
жащей ссылку, и диапазона , на который делается ссылка. Если ссылка
сделана на столбец ячеек справа или слева от ячейки, в котnрой находит
ся ссылка, то используется· ячейка, расположенная в той же самой сrро
ке, в которой содержится ячейка со ссылкой. Точно так же при ссылке
.
111
Гnава
1
на строку, находящуюся под или над содержащей ссьшку ячейкой, берет
ся одна из ячеек, расположенная в том же столбце, в котором находится
ячейка со ссылкой. Если у _вас имеется не одна (один), а большее коли
чество строк (столбцов) в ссылке в той же строке (столбце), в которой
содержится
ячейка со ссылкой,
значение #ЗНАЧ!
программа возвратит . вам
ощибочное
. Такой же результат будет и в том случае, если ни одна
ячейка в ссылке не располагается в той же самой строке или столбце, в
которой находится ячейка со ссылкой.
'
Предуп~еждение
Если вы используете имя диапазона в функции , способной принимать
множественные аргументы (например, функция И(
) ).
в ней будет задей
ствован весь именованный диапазон, а не отдельное значение, содержа
щееся в той же самой строке или столбце , где находится формула . Будьте
внимательны, иначе можно пол~ить самые неожиданные результаты.
Фактически, существует возможность присвоить имя практически лю
бому значению, включая числа или текст, не содержащиеся ни в одной из
ячеек, с помощь_ю команды Вставка>- Имя
трактовать
список
>-
Присвоить. При этом следует
именованных диапазонов
и
значений
как
простую
таблицу подстановок , в которой значение имени вставляется в формулу
перед тем, как вычисляется ее значение. Эта же команда также применя
ется для редактирования или удаления имен и ссылок. Выделите любую
ячейку и выберите команду Вставка
>-
Имя
>-
Присвоить. После этого в
появившемся диалоговом окне Присвоение имени выберите одно из гото
вых имен в списке Имя и просмотрите значение этого имени, которое
появится в поле Формула .
П рмсвоеttие ммеttи
П
Копирование и перемещение ссылок на ячейки
Как я уже объяснял выше, при копировании формулы из одной ячейки
в другую абсолютные ссылки остаются неизменными, а относительные
изменяются в зависимости от того , куда кnпигуетс~ данчм формула . На
приведенном рисунке формула была введеtщ в ячейку ВЗ, а затем скопи
рована в ячейки В4 : В6. Обратите внимание на то, что в каждой фор!-fуле
Исnоnьзованuе Енсеl в научным
u
uнженернын nрunоженuян
изменились только относительные ссылки на ячейки, содержащиеся в
столбце А, а абсолютная ссылка на ячейку
А
62
осталась без изменений.
с
в
=SBS2"A4
=S8S2"A5
=$852""6
•
Экспре~с-метод
Для копирова1:1ия формул в Другие ячейки таюке можно воспользоваться
командами Копировать и Вставить. Если ячейка, которую вы собирае
тесь вставлять ; расположена рядом с ячейкой, из которой она копируется,
выделите обе эти ячейки. выберите команду Правка>- Заполнить и вы
берите из подменю направление заполнения (Вверх, Вниз, Влево,
Вправо) . Еще более быстрым способом является применение маркера
заполнения (он представляет собой маленький черный квадрат в нижнем
правом углу выделенной ячейки или диапазона). Выделите ячейку, кото
рую хотите скопировать , щелкните на этом квадратике и перетащите ука
затель в конец диапазона , который намерены заполнить. При этом со
держание первой ячейки будет скопировано в весь .выделенный диапазон .
При пере.мещении содержания яЧейки
Excel
предполагает, что вы хоти
те изменить только макет своего, рабочего листа, но не математическую
логику. В этом аспекте ссылки в перемещенных ячейках, указывающие
на ячейки за пределами этих ячеек, остаются неизменными: после пере
мещения они указывают на те же ячейки . Любые ячейки, ссылающиеся
на перемещенные, корректируются таким образом, чтобы они указывали
на новые ячейки, которые имеют такое же содержание, какое имели те
ячейки ,
на
которые
они
ссылались
первоначально.
Перемещение
не
должно повлечь за собой каких-либо изменений итогов формул, если
только вы не удалите данные в ячейках, поместив в них новые данные.
Если ячейку
63,
изображенную на рисунке, переместить в ячейку С7, то
получится результат, отображенный на иллюстрации. Как видите, в фор
муле ничего не изменилось.
А
в
.
с
,3
-·;;,msтм
=S852"A5
4°852""6
=S8$2'АЗ
14:1
•
ffla8a 1
Эксп есс-мет
>--
Ячейки можно перемещать с помощью команд Правка
Копировать и
Правка
Вставить. Существует и еще один сnособ перемещения: выделите ячей , елкните на ее
нице и пе тяните а новое место.
>-
Использование операторов в вычислениях
Операторы являются базовыми структурными элементами математи
ческих формул. Их действие определяет, каким образом объединяются
числа (или строки текста) для получения численного итога.
лагает три
вида операторов:
математические,
Текстовый оператор существует только один
Excel
пред
текстовые и логические.
-
конкатенация
(&).
Он
служит для объединения даух строк текста в одну. В · табл. 1.2 вашему
вниманию прtдлаrается перечень всех операторов, Имеющихся в Excet
. Математические операторы
Математические операторы включают стандартный комплект, кото
рый можно найти в любом компьюrерном язЪ1Ке высокого уровня или
инженерном калькуляторе.
Процент и отрицание являются унарными (одноместными) операто
рами. Оператор процента делит число, расположенное слева от него, на
100 (/100). Если число с операrором процента является единствеИНЬIМ зна
чением в ячейке, формаr этой ячейки также изменяется на проценr. По
ложительного унарного операrора в Excel не существует; положительное
значеtD1е принимается по умолчанию при отсутствии какого-либо унар
ного оператора. На прахmке, если поставить перед значением или ФОрму
лой "+",то Excel удалит этот знак (за исJОIЮчением случаев, когда он яв
ляется показателем степени числа в экспоненциальном предсгавлении).
Группа математичесхих операторов включает сло:жение, вычитание,
умно:жение, деление и возведение в степень. Все OtDI работают как обЬIЧНо.
Логические операторы
Логические операторы (в учебниках их называют операторами срав
нения) применяются для сравнения дВух численных. значений или строк.
Результатом действия этих операций является либо значеtDlе Истина, ли
бо значение Ложь. При использовании логических результатов в матема
тических формулах Исrина имеет значеtDlе 1, а Ложь - значение О.
Когда Excel сравнивает с применением логических операторов стро
ки. регистр символов (прописные или строчныеj программой иrnориру
ется. Однако с помощью функции
Excel
строки текста с учетом регистра символов.
СОВПАД вы мо:жете сравнить
Иt~анuе Енсеl в научным u uнженерн1.1н npuflOlcettWIИ
iu
Приоритет операторов
Приоритетом операторов определяется порядок, в котором выполня
ется вычисление численного значенИJI формулы. В табл. 1.2 справа от
каждого оператора указано его место в этом порядке. При любых вычис
лениях действия операторов, имеющие приоритет
1,
будуг выполняться в
первую очередь, после этого будуr выполняп.ся действия операторов с
приоритетом
2
и т.д. При наличии в формуле
11JJYX
операторов с одинако
вым приоритетом вычисления будуг выполняться справа налево.
Если вы не уверены, в каком порядке будет вычисляться формула,
можно дополнительно указать правильный порядок вычислений , вос
пользовавшись 1Сруrлыми скобками, которые всегда имеют преимущество
по сравнению с приоритетом, указанным в табл. 1.2.
Табмtца
Опера-
1.2.
Onepaтopw Ехсе1 и nр11Ор1П'еТ п
Описание
"°".._.
...
Порядок при
тор
вычислениях
Унарные операторw
%
Оrрицание (относится к значению справа от него)
П~20цент {относ~тся к значению слева от него}
1
2
Математи"есКJtе операторw
*
/
+
Возведение в степень
Умножение
Деление
Сложение
Вычитание
з
4
4
5
5
Текстовwе оперtпоры
&
Конкатенация
=
<
Равно
6
ЛOl'lf'lecКJte операторw
>
<=
><>
7
7
7
7
7
7
Меньwе
Больwе
Меньwе или раено
Больwе или равно
Не 2авно
4'п
"
ение
Порядок выполнения операторов в формуле рабочего листа несколько
отличается от того, который применяется• Visual 8asic for Applications (он
описан а rлаве 4). В рабочем листе отрицание выполняется перед возве
дением а степень , а • V1Suвl Bвsic for Applications - наоборот. Например,
формула а рабочем листе -1А2 возвратит значение 1, а в Vlsuaf Basic for
Applications - значение -1. Поэтому, чтобы получить :желаемый результат,
о м
н
о записать а ел
ем аиде:
-1
А2.
11~1
Гnава
1
Использование функций рабочего листа
Весьма JШЖНЫМ фактором при планировании использования
Excel
для
научных и инженерных вычислений является то, что в программе дос
тупны все наиболее часто применяемые математические функции. Без
этих функций даже оrnосительно простые вычисления могуr стать до
вольно утомительным процессом. Например, пробовали ли вы когда
нибудъ рассчитать синус угла с помощью калькулятора, самым сложным
действием которого является извлечение квадратного корня? Задача, ко
нечно,
выполнимая, но занимает много времени и при этом довольно
легко в итоге получить ошибочный результат.
Excel обеспечивает 10 разных видов
функций:
математиче
ские/тригонометрические, инженерные, логические, текстовые, стати
стические, функции категории дата/время, функции для работы с базами
данных/списками, финансовые, информационные функции и функции
категории ссылки/массивы. Кроме того, вы сможете пользоваться боль
шим
количеством надстроечных функций,
которые применяются
для
создания компьютерных программ в Excel (принципы программирования
на Visual Basic for Applications описаны в главе 4). Если же для ваших це
лей окажется недостаточно внутренних и надстроечных функций и про
rрамм Visual Bзsic for Applications, можно создать свои собственные в
компилируемом языке, например, в С или в FORTRAN, и потом вызы
вать их в Excel (подробная информация об объявлении и использовании
внешних модулей предлагается в приложении Г).
В этой главе вы найдете описание функций, представляющий особый
интерес для ученых и инженеров. Полное описание всех этих функций и
оператороJJ,
справке
а
также
их
синтаксиса,
можно
получить
в
электронной
1
Excel.
Ввод функций
Функции
Excel
применяются в основном так же,
как функции в
большинстве компьютерных программ . Чтобы использовать в формуле
функцию, введите ее имя, поставьте левую круглую скобку, затем напе
чатайте аргументы, отделенные друг от друга запятыми, и закройте круг
лую скобку. Аргументами в данном случае могуr быть числа, строки,
ссылки на ячейки или друrие~функции (до семи уровней). Если аргумент
функции выходит за пределы аргументов, принимаемых этой функцней,
то она возвращает ошибочное значение #ЧИСЛО!. Если mп аргумента не
соответствует данной функции, ею возврашаетс~ ошибочное значение
#ЗНАЧ!.
В этой книге все имена функций даются прописными буквами, но вы
можете вводить их в любом регистре - Excel на изменение регистра не
реагирует.
Испоnьзованuе Ею:еl в научнык
u
uнженернык прunоженuяк
V Совет
Дпя того чтобы вставить функцию непосредственно в формулу,
пользуйтесь Мастером функций. Начните вводить формулу и, достигнув
точки, в которую вы хотели бы вставить функцию, щелкните на кнопке
Вставка функций, расположенной на панели инструментов, в результате
чего на экране появится диалоговое окно Мастер функций. В нем вы
увидите перечень функций. Выберите в нем нужную вам функцию, щелк
ните на кнопке Готово, и функция с ее аргументами будет вставлена в
-
формулу. Либо, щелкнув на кнопке Далее, откройте второе диалоговое
окно, кото ое поможет вам ввести а
менты.
Функции массива
Обычная функция возвращает одно значение, однако, некоторые из
функций Excel возвращают массив значений. Например, функция МОБР
(матрица) вычисляет обратную матрицу и возвращает матрицу значений
такого же порядка (по высоте и ширине), как матрица аргумента.
Функцию массива необходимо вводить в диапазоН ячеек, который
должен быть достаточно велик для того, чтобы в нем поместились все
элементы данного массива. Например, если вы пользуетесь функцией
мОБР для обращения массива ЗхЗ, то в итоге получите также массив ЗхЗ,
поэтому эту функцию надо вставлять в диапазон ячеек ЗхЗ.
Чтобы вставить функцию массива в диапазон ячеек, вьшелите эти
ячейки и nведите фунщию массира и ее аргументы в верхнюю левую
ячейку
этого _диапазона. После этого нажмите комбинацию клавиш
и, удерживая их в нажатом состоянии, нажмите <Enter> (в
<Ctrl+Shift>
Macintosh - <Cmd+Enter>) либо
щелкните на кнопке ввода (эта кнопка с
изображением зеленой галочки появится в строке формулы сразу после
того, как вы начнете набирать формулу). В результате этого в каждой
ячейке диапазона появится функция массива, заключенная в фигурные
скобки (О). Вам не придется вводить эти скобки
- Excel
вставит их сама,
чтобы пометить введенные данные как функцию массива.
·
Таким образом к массиву значений можно применить любую форму
лу. Например, приведенная ниже формула nычисляет сумму квадратов
набора значений и возвращает одно значение:
=СУММ((А7:А15-$8$1)"2)
Если вы
формулу и, удерживая нажатыми клавиши
(или щелкните на кнопке ввода), Excel сначала вычтет значение В 1 из всех значений в ячейках с А 7 по А 15, возве
дет показатели разностей в квадраты, а затем сложит их. Если же ввести
<Ctrl+Shift>,
введете
нажмете
эту
<Enter>
эту формулу, не нажимая при этом клавиши
<Ctrl+Shift>, Excel
использу-
·
ifi
Гnава
1
ет только одно из значений в диапазоне А 7:А 15 (то, которое находится в
той же самой строке, в которой расположена ячейка с формулой).
Функции массивов моrут быть очень полезны и эффективны, ведь с
их помощью можно выполнять сложнейшие расчеты в одной ячейке .
Однако с ними следует быть очень внимательным, поскольку иногда бы
вает трудно проверить их правильность и отладить их работу. Например,
приведенная ниже формула, введенная как функция массива, рассчитает
стандарrnое отклонение содержания ячеек А 1:А1 О:
=КОРЕНЬ((СУММ((А 1:А10-СРЗНАЧ(А 1:А10))"2))/(СЧЕТ(А 1:А 10)-1))
Математические функции
Математические функции используют числовые данные как аргумен
ты, каким-либо способом трансформируют их и выдают результат в виде
численного значения. Мэ:rематические функции делятся на четыре общих
типа : основные математические , логарифмические, тригонометрические и
маrричнъ1е. В табл.
1.3 перечислены
математические функции
ТабJ1ица
1.3.
Excel.
Математичес1СИе функции
Excel
Функция
Возвращает
ABS()
Абсолютное значение числа
ОКРВВЕРХ()
Число, округленное до ближайшего целого или до ближай
Основные математические функции
шего кратного указанного знfiчения
ЧИСЛКОМБ()
COUNTBLAN К(
СЧЕТЕСЛИ()
ЧЕТН( )
Количество комбинаций для Защiнного числа объектов
)
Количество пустых ячеек в диапазоне
Количество ячеек, удовлетворяющих заданному критерию
Число, округленное с- избытком до ближайшего четного це
лого
Факториал числа
Число, округленное до ближайшего меньшего по модулю
ФАКТР()
ОКРВНИЗ()
целого
НОД( )*
НОК( )*
ЦЕЛОЕ()
ОСТАТ()
ОКРУГЛТ(
Наибольший общий делитель списка чисел
Наименьшее общее кратное списка чисел
Число, округлежюе до ближайшего меньшего целого
Модуль (остаток двух чисел).
-
Число, округленное до числа , кратного заданному
)'
МУЛЫИНОМ()
НЕЧЕТ()
Мультиномиал списка чисел
Число, округленное с избытком до ближайшего нечетного
целого
СТЕПЕНЬ(
)
ПРОИЗВЕД()
Результат возведения в степень
Произведение аргументов чисел в списке
ЧАСТНОЕ()
СЛЧИС()
Частное от деления нацело
Случайное число между О и
СЛУЧМЕЖДУ(
РИМСКОЕ()
ОКРУГЛ()*
)*
1
Случайное число между двумя заданными числами
Число, преобразованное из арабского в римское
Число , округленное дР указанного количества разрядов
Испоnьзованuе Ексеl в научнын
u
uнженерныи npunoжeнWIИ
Функция
Возврвщает
ОКРУГЛВНИЗ( )
Число, округленное от О с недостатком до следующего це
лого
ОКРУГЛВВЕРХ()
РЯД.СУММ()
ЗНАК()
КОРЕНЬ()
КОРЕНЬПИ( )*
ПРОМЕЖУТОЧ
НЫЕ.ИТОГИ(
СУММА()
Число, округленное от О с избытком до следующего целого
Сумму степенного ряда
Значение 1 со знаком числа
Квадратный корень из числа
Квадратный корень из числа, умноженного на л
Промежуточные итоги по списку или базе данных
)
СУММЕСЛИ()
Сумму чисел в списке
Сумму значений в ячейках,
соответствующих заданному
критерию
СУММПРОИЗВ( )
СУММКВ( )
СУММРАЗНКВ( )
СУММСУММКВ( )
СУММКВРАЗН( )
Сумму
Сумму
Сумму
Сумму
Сумму
произведений элементов матрицы
квадратов чисел в списке
разностей квадратов элементов в двух массивах
сумм квадратов элементов в двух массивах
квадратов разностей значений в двух массивах
ОТБР( )
Число, усеченное до указанного количества знаков
ЕХР()
Число е, возведенное в степень (показатель степени числа е)
Логарифмические функции
ЕХР1()
Значение е
LN()
LOG()
LOG10()
Натуральный логарифм числа (основание е)
Логарифм числа по заданному основанию
Общий логарифм числа (основание 10)
COS()
SIN()
TAN( )
Косинус числа
Синус числа
Тангенс числа
(2,7182818284590)
Триrонометри'lеские функции
Обратные триrонометри'lеские функции
ACOS()
ASIN()
ATAN( )
ATAN2()
Арккосинус числа
COSH()
SINH()
TANH()
Гиперболический косинус числа
Арксинус числа
Арктангенс числа (от -л/2 до л/2)
Арктангенс двух чисел (от -л доп)
Гиперболи'lеские функции
Гиперболический синус числа
Гиперболический тангенс числа
Обратные rиперболи'fеСкие функции
ACOSH()
ASINH()
ATANH()
Ги[lерболический арккосинус числа
ПИ()
Значение :rt (З, 1415926535898)
ГРАДУСЫ()
РАДИАНЫ()
Показатель величины угла в градусах
Показатель величины угла в радианах
Гиперболический арксинус числа
Гиперболический арктангенс числа
Функции преобразования угла
ijl
Гnава
Функция
1
Возвращает
Матричные функции
МОПРЕД( )
Определитель матрицы
МОБР( )
матрицу, обратную заданной
МУМНОЖ( )
Произведение двух матриц
См. также ТРАНСП( ) в табл. 1.14
*
Функции, помеченные звездочкой, входят в надстройку пакет анаnиэа.
Основные математические функции
С помощью основных математических функций выполняются общие
вычисления. Например, функция ABS(x) возвращает абсолютное значе
ние числах.
Функции ОКРВВЕРХ(х,знач), ЧЕТН(х), ОКРВНИЗ(х,знач), ЦЕЛОЕ(х),
ОКРУГЛТ(х,знач), ОКРУГЛ(х,з1-1ач), ОКРУГЛВВЕРХ(х,знач), ОКРУГЛВНИЗ
(х,знач), НЕЧЕТ(х) и ОТБР(х,знач) преобразуют х в uелое, используя для
этого различные логические основания. Аргумент знач представляет со
бой значимость разряда, которая является значением, кратное которого
вы хотите округлить. В табл. 1.4 показаны результаты применения неко
торых из этих функций.
Таблица
1.4.
ОКРУГЛ- ОКРУГЛ-
ОКРВВЕРХ
х
n
(x.n)
Окруrление чисеп
ЧЕТН
(х)
1,5263
о
о
2
о
о
-2
-1,5263
о
2.48554
о
4
4
2.61756
о
о
-2,48554
о
о
-4
-2,61765
о
о
-4
1,5263
2
2
2
-1,5263
-2
-2
-2
132,4855
134 134
2
644 644
642,6176
2
-132,486
-2
-134 -134
-642,618
-2
-644 -644
1.5263
0,01 1,53 1,53
-1,5263 -0,01 -1,53 ·1,53
2,48554 0,01 2,49 2.49
2,61756 0,01 2,62 2.62
·2,48554 -0,01 ·2,49 ·2,49
-2.61765 -0,01 -2,62 -2,62
ОКРВНИЗ ЦЕЛОЕ ОКРУГЛТ ОКРУГЛ ОТБР
(x.n)
#DIVIOI
#DIVIO!
#DIVIOI
#DIVIOI
#DIVIO!
#DIVIOI
(х)
(x,n)
(x,n)
(x,n)
1
-2
2
2
-3
о
2
-2
2
·З
о
о
1
·2
132
642
-133
-643
2
·2
132
642
-132
-642
1,53
-1.53
2,49·
2,62
-2,49
-2,62
о
132
642
-132
-642
1,52
-1,52
2,48
2,61
-2,48
-2,61
-2
2
2
·З
-3
о
з
о
-2
-3
1,53
1
-1
2
2
-2
-2
1,52
о
о
о
о
Функuия ЗНАК(х) возвращает значение
132,49 132.48
642,62 642,61
-100
-100
-600
-600
2
-2
-1
2
2
з
2
-2
-2
з
-2
1,0
вниз
(x,n)
1
-1
2
2
ВВЕРХ
(x,n)
2
-2
3
з
-2
-з
-2
1,52
.3
1,53
-100
133,49
642,62
-200
-700
2
-2
о
132.48
642,61
-100
-600
1
-1
2
2
·2
-2
з
з
-З
-3
с тем же знаком, какой
имеет х, либо О, если х является О. Функuия ОСТАТ(х1,.х2) возвращает
Испоnьзованuе Еисеl в научныи
u
uнжеиерныи npunoжeнwnc
модуль или остаток от частного х1/х2. Она чаще всего используется для
пр~азования большого угла (х1 >2л) обраrно в единицу окружности
(О<х1<2л), как, например, в следующем примере:
ОСТАТ(2,70ЗхПИ( ),2х ПИ(
))= ,70Зя.
Функция ОСТАТ таюкс часто приМсняется в качестве части логиче
ской формулы для определения, в каком случае значение является чет
ным кратным некоего определенного числа, как, например, в следующей
формуле:
(ОСТАТ(Х, 1О)=О)=ИСТИНА для Х =...
, ·1 О, О, 1О, 20, ...
Функция КОРЕНЬ(х) возвращает значение квадратного корня из х.
КОРЕНЬПИ(х) возвращает квадратный корень из хя.
Функции
СУММ( список),
ПРОИЗВЕД(сnисок),
РЯД. СУММ(х,n,m,коэфф),
(список),
ЧАСТНОЕ(х1 ,х2),
СУММКВ
СУММКВРАЗН(матрица1,
СУММПРОИЗВ(матрица1 ,матрица2),
СУММРАЗНКВ(матрица1 ,матрица2),
матрица2), СУММСУММКВ(матрица 1,матрица2) выполняют разные виды
суммирования списков членов. Функции СЛЧИС( ) и СЛУЧМЕЖДУ(ниже,
аыwе) возвращают случайные числа.
Функция ЧИСЛКОМБ(n,отобран) вычисляет келичество способов. ко
торыми могут быть скомбиниро~ы отобранные из совокупности n объ
ектьr. Функции ФАКТР(n) и ДВ.ФАКТР(n) вычисляют факториал числа
(n!=1 x2x3x ... n)
и двойной фахториал числа (n!I). Функции нед и нок
вычисляют наибольший <>Рщий дел итель и наименьшее общее крагное
списка чисел.
Логарифмические функции
Логарифмические функции вычисляют натуральные и общие лога
LN(x) и ЕХР(х) вычисляют наwальный логарифм х и Пока
рифмы чисел.
затель степени х (ех) соответственно. Теоретически значение х в экспо
ненциальной функции может принимать любое значение ; однако значе
ние х более 709 приводит к численному переполнению и в этом случае
функция возвращает ошибочное значение #ЧИСЛО! .
Функция ЕХР(1) возвращает основание е натурального логарифма
(2,71828182845904). LOG10(x) возвращает общий логарифм (основание 10)
х. LOG(x,b) возвращает логарифм х для любого основания Ь.
Тригонометрические функции
Тригонометрические функции
SIN(x), COS(x)
и
TAN(x)
возвращают
синус, косинус и тангенс угла х соответственно. Угол х дол.жен бъпъ в
радианах, поэтому , следует преобразовать показатель величины угла в
градусах в показатель в радианах, для чего можно воспользоваться функ
цией РАДИАНЫ(), либо сделать это пуrем умножения на п/180. Напри
мер , если у выражен в градусах, формула для получения синуса у будет
следующей:
S/N(РАДИАНЫ(У))=SIN(УхПИ(
)/180)
111
rnaвa
1
Для обратноrо процесса и преобразования показателя угла в радианах
в rрадусы воспользуйтесь функцией ГРАДУСЫ( ) или умножьте на 180/п.
Вот, например, формула для получения арксинуса
ГPAДYCЫ(ASIN(Z))=ASIN(Z)x1 ВОЛlИ(
z
в rрадусах:
)
Точность эначенмй тригонометрических функций,
близких к нулю
-
Вследствие точности чисел
Excel,
синус или косинус я, 2л,
.",
или
косинус п/2, Зл/2 , ... не являются абсолютно нулевыми значениями, по
этому следует быть очень внимательным и не составлять уравнений, за
висящих от итоrов этих функций, принимая их равными нулю , как, на
пример, следующие:
SIN(ПИ( ))=1,22х10·16
16
SIN(2*ПИ( ))=·2,45х10·
СОS(ПИ( )/2)=6,12х10.17
ТАN(2*ПИ( ))=·2,45х10-16
В большин стве случаев эти значения достаточно близки к нулю, од
нако в некоторых формулах это может стать причиной проблем.
Тригонометрические функции для вычисления секансов, косекансов
и котангенсов .в Excel не доступны. Однако для получения этих показателей можно воспользоваrься другими фунхuиями пр0rраммы:
• для вычисления секанса угла х, SEC{x), примените формулу 1/COS(x);
•
для вычисления косеканса углах,
•
для вычисления котангенса углах, СОТ(х), примените формулу
CSC(x),
примените формулу
1/SIN(x);
1fТAN(x).
Обратные тригонометрические функции
Обраrnые тригонометрические функции
ASIN(x)
и
ACOS(x)
возвраща
ют арксинус и арккосинус соответственно в радианах х. Поскольку арк
тангенс ЯВJJяется многозначной функцией, Excel обеспечивает две разные
ее версии. Первая версия, ATAN(x), не несет в себе достаточного количе
ства информации для определения , в каком квадранте должен находить
ся итоr, поЭтому она возвращает значение в виде диапазона от -п/2 до
+п/2. Вторая версия, ATAN2(x,y), обладает достаточной информацией для
оп ределения правильного квадранта и возвращает значение в диапазоне
от -я до +я. Функция ПИ возвращает значение я (3,141592653589879).
Вычислить тригонометрические функции, отсуrствующие в Excel,
можно следующим образом:
·
•
для вычисления арксеканса х ддя х>О ,
мулой:
ATAN(KOPEHb(x"~-1 ));
ASEC(x),
воспользуйтесь фор
.
Испоnьзованuе Еисеl в научныи
•
u
uнженерныи прunоженW1И
для вычисления арксеканса х для х<О,
ASEC(x),
воспользуйтесь фор
мулой:
ATAN(KOPEHb(X"2-1 ))-ПИ();
•
для вычисления арккосеканса х для х>О,
ACSC(x),
воспользуйтесь
ACSC(x),
воспользуйтесь
формулой:
АТАN(1Л<ОРЕНЬ(Х"2-1));
•
для вычисления арккосеканса х для х<О,
формулой:
АТАN(1Л<ОРЕНЬ{Х"2-1)-ПИ(
•
);
для вычисления арккотангенса х, АСОТ(х), воспользуйтесь формулой:
ПИ( )12-ATAN(x).
Гиперболические функции
В Excel имеется три гиперболические функции: SINH(x), COSH(x) и
TANH(x). Эrи функции вычисляют гиперболический синус, косинус и
тангенс х соответственно. Остальные гиперболические функции могут
быть вычислены на основе этих трех функций следующим способом:
• для вычисления гиперболического секанса х, SECH(x), воспользуйтесь
формулой;
1/COSH(x);
•
для вычисления гиперболического косеканса х,
CSCH(x),
воспользуй
тесь формулой:
1/SINH(x);
•
для вычисления гиперболическоrо котангенса х, СОТН(х), воспользуй
тесь формулой:
1/ТАNН(х).
Обратные гиперболические функции
Обратными гиперболическими функциями в Excel являются ASINH(x),
ACOSH{x) и ATANH(x). На основе этих функций вычисляются обратный
гиперболический синус, косинус и тангенс соответственно. Друrие об
ратные гиперболические функции могут быть вычислены следующим
способом:
• для вычисления обраrного гиперболического секанса х (двузначного),
ASECH(x), воспользуйтесь формулой:
LN((±KOPEHb(1-X"2))/x);
•
для вычисления обратного гиперболического косеканса х (двузнач
ного), ACSCH(x), воспользуйтесь формулой;
•
для _рычисления обратного гиперболического котангенса х, АСОТН(х),
LN( (±КО РЕ НЬ(1 +Х"2))/х);
воспользуйтесь формулой:
0,5xLN((x+1 )/(х-1 )).
••
Гnава
1
Матричные функции
предлагает пользователям четыре матричные функции. Три из
элементами
множества
математических
функций:
МОПРЕД(матрица), МОБР(матрица) и МУМНОЖ(матрица1 ,матрица2) .
Excel
них
являются
.Четвертая матричная функция ТРАНСП(массив) относится к функциям
поиска по таблице и вектору (категории ссылки/массивы). Функция
МОПРЕД вычисляет определитель матрицы; МОБР рассчитывает матрицу,
обратную хранящейся в массиве; МУМНОЖ возвращает матричное произ
ведение двух матриц. Матричные функции главным образом применяют
ся для решения матричных уравнений, особенно тех, которые получают
ся в результате решения систем линейных уравнений.
МОБР и МУМНОЖ являются векторными функциями: они возвраща
ют не единичное значение, а массив значений. Чтобы ввести эти функ
ции не в одиу ячейку, а в массив, надо при их вводе удерживать нажа
тыми клавиши <Ctrl> и <Shift> (в Macintosh <Cmd+Enter>), :как я уже объ
яснял в разделе Функции массива выше в этой главе.
Функция ТРАНСП выполняет транспонирование аргументов матрицы,
т.е. заменяет строки столбцами и наоборот. Эта функция удобна для за
мены горизонтальных векторов вертикальными и вертикальных горизонтальными.
Инженернь1е функции
•
•
•
•
•
•
Известны следующие типы инженерных функций
функции Бесселя;
функции преобразования основания;
функции преобразования углов;
функции ошибок;
функции числового сравнения;
комrшексные арифмеmческие функции.
Exeel:
В табл. 1.5 перечислены инженерные функции Excel. Более полное
описание предлагается ващему вниманию в приложении В.
....... Примечание
Комплексные числа сохраняются как строки в форме
мнимую.
x+yj, где х представ
ляет собой действительную часть, а у -
Логические функции
Логическими называются функции, которые возвращают или опери
руют логическими значениями ИСТИНА и ЛОЖЬ. Кроме того. многие
функции информационной категории, перечисленные в табл. 1.13, также
Испоnьзованuе Енсеl в научнын
u
uнженернын прunоисеншш
возвращают логические значения в виде итогов тестов. Логические
функции Excel предлагаются вашему вниманию в табл. 1.6.
Логические значения ИСТИНА и ЛОЖЬ являются эквивалентами чис
ленных значений
1 и О соответственно. Это означает, что для всех значе
ний х, ИСТИНАхх=х, а ЛОЖЬхх=О. Функции, принимающие логический
аргумент, интерпретируют все ненулевые значения как ИСТИНУ , а все
нулевые - как ЛОЖЬ.
Таб.1111ца
Функция
1.5.
Иоенернlilе фуикцми
E:xcel
Возвращает
Функции Бессел11
БЕССЕЛЬ .J( )*
БЕССЕЛЬ . 1( )*
БЕССЕЛЬ. К( )*
БЕССЕЛЬ .У( )"
Функцию Бесселя
Jn(x)
Модифицированную функцию Бесселя
модифицированную функцию Бесселя
Функцию Бесселя (Вебера)
ln(x)
Kn(x)
Yn(x)
Функции прео6разоsани11 осноsани11
Двоичное число, преобразованное в десятичное число
Д8 . 8.ДЕС( )*
ДВ . 8.ШЕСТН( )*
Двоичное число, преобраЗQванное в шестнадцатерич
ДВ.8.ВОСЬМ( )*
Двоичное
ную строку
число,
преобразованное
в
восьмеричную
строку
ПРЕОБР(
Число, преобразованное из одной системы единиц в
)*
другую
ДЕС.8.ДВ( )*
ДЕС.8.80СЬМ( )*
Десятичное число, преобразованное в двоичную строку
Десятичное целое, преобразованное в восьмеричную
ДЕС.В.ШЕСТН( )*
Десятичное целое, преобразованное в шестнадцате
FACTDOU8LE( )"'
ШЕСТН . 8.Д8( )*
Двойной факториал
·
строку
ричную строку
Шестнадцатеричное число, преобразованное в двоич
ную строку
ШЕСТН.8.ДЕС(
)*
Шестнадцатеричное число, преобразованное в деся
тичное число
ШЕСТН .8.80СЬМ( )* Шестнадцатеричное число, преобразованное в вось
меричную строку
80СЬМ. 8 .Д8( )*
Восьмеричное
число,
преобразованное
в
двоичную
строку
80Сьм . 8 .ДЕС( )*
Восьмеричное число, преобразованное в десятичное
число
ВОСЬМ.8.ШЕСТН( )*
Восьмеричное число, преобразованное в шестнадцате
ричную строку
функции ошибок
ФОШ( )*
Функция ошибок
ДФОШ(
Дополнительная функция ошибок
)*
Функции 'IИСЛОSОГО срssнениR
ДЕЛЬТА()*
Дельта-функция ; возвращает
О если они разные
1,
если два числа равны и
; iвl
Гnава 1 /
----------------------------------------------------------;
Функция
Возвращает
ПОРОГ()*
Ступенчатая функция; возвращает 1, если число боль
ше порогового значения и О - если оно меньше или
равно пороговому значению
Комплексные врифмети"еские функции
КОМПЛЕКСН(
Действительный и мнимый коэффициенты, преобразо
)*
ванные в комплексное число в строке
"x+yj"
Абсолютное значение комплексного числа в строке
МНИМ.~ВS( )*
МНИМ.ЧАСТЬ(
)*
МНИМ.АРГУМЕНТ(
)*
Мнимый коэффициент комплексного числа в строке
Угол, выраженный в радианах, в комплексной плоско
сти комплексного числа в строке
МНИМ.СОПРЯЖ(
МНИМ.СОS( ) *
МНИМ .ДЕЛ( )*
МНИМ.ЕХР(
MHИM.LN(
)*
Комплексное сопряжение комплексного числа в строке
Косинус комплексного числа в строке
частное двух комплексных числе в строке
Экспоненту комплексного числа в строке
)*
Натуральный логарифм комплексного числа в строке
)*
MHИM.LOG2( )"
MHИM.LOG10( )*
.
Логарифм по основанию 2 комплексного числа в строке
Общий логарифм (основание 10) комплексного числа в
строке
МНИМ . СТЕПЕНЬ(
)*
Комплексное число в строке ,
возведенное
в
целую
степень
МНИМ.ПРОИЗВЕД( )*Произведение двух комплексных чисел, оохраненных в
строке
МНИМ.ВЕЩ(
)"
Действительный
коэффициент комплексного
числа
в
строке
MHИM.SIN(
Синус комплексного числа в строке
)*
МНИМ . КОРЕНЬ(
)*
Квадратный корень комплексного числа, сохраненного
в строке
МНИМ.РАЗН(
)*
Разность двух комплексных чисел, сохраненных в стро
ке
МНИМ.СУММ(
)*
Сумму двух или более комплексных ч11сел, ссхра11Gн
ных в строке
Функции, помеченные звездочкой(*), входят в надстройку Пакет анализа .
Функuия ЕСЛИ(лоrический,х,у~ тестирует логические значения, но не
обязательно возвращает логический результат. Если аргумент логический,
как это бывает в логических формуЛах, является ИСТИНОЙ или ненуле
вым значением,
логический
-
функция возвращает значение х.
Если же элемент
ЛОЖЬ или ноль, то возвращается значение у.
Чаще всего функuия ЕСЛИ применяеrся для отслеживания непра
вильных вычислений (таких как деление на ноль) и выбора альтернатив
ного пуги расчета. Если х или у являются формулами, они вычисляются
только в том случае, если в них есть необходимость. Например, для вы
числения значения SIN(x)/x для всех значений х можно воспользоваться
следующей формулой:
ЕСЛИ(х=О, 1,SIN(x)/x}.
При х равном О, функция возвращает правильное значение
тивном случае она вычисляет и возвращает значение
-1; в про
SIN(x)/x. Если не
u
Исnоnьзованuе Ексеl в научным
uнженерныи nрunоженuяи
воспользоваться функцией ЕСЛИ, то при х равном О вы получите оши
бочное значение #ДЕЛ/01, даже, несмотря на то, что
SIN(O)/O равно 1.
В группу логических функций включены также три булева оператора:
И(А,8}, ИЛИ(А, В) и НЕТ(А,В). Они комбинируют лоmческие значения в
соответствии с правилами булевой алгебры с целью получения логиче
ского результата. Булевы операторы обычно используются как двоичные
операторы, но
Excel предлагает их как
функции.
Таб.11ица
1.6. Лоrичес1С11е
фуищми Ехсе1
Функция
Возвращает
ИСТИНА()
ЛОЖЬ()
ИСТИНА или
ложь или о
ЕСЛИ()
Выбирает одно из трех значений, в зависимости от выпол
Функции логических значений
1
Логические функции проверки
нения условия
Булевы функции (операторы)
И(
)
Логическое умножение логических значений
НЕТ()
Логическое значение ИСТИНА при
ЛОЖЬ - при аргументе ИСТИНА
аргументе
ИЛИ()
Логическое сложение логических значений
ЛОЖЬ и
Полный комплект булевых операторов или функций должен также
включать XOR (исключающее ИЛИ), EQV (логическая равносильность) и
IMP (логическое предположение). Их можно вычислить на основе трех
функций. доступных в Excel:
• для вычисления функции XOR используйте формулу:
=ИЛИ(И(А, НЕТ (В}},И(В, НЕТ(А)));
• для вычисления функции EQV используйте формулу:
=ИЛИ(И(НЕТ(А),НЕТ(В}},И(А,В)};
•
Для вычисления функции
IMP используйте формулу:
=ИЛИ(НЕТ(ИЛИ(А,В )),В).
Табл.
1.7 представляет собой таблицу истинности для шести б)(Вевых
операторов.
Таб.11ица
1•7.
Таб.11ица 11сntн11ОС1И да бу.11евwх фуи1Щ11i
А
в
И(А,В)
ИЛИ(А,В)
НЕТ(А)
и
и
и
л
и
л
л
л
и
л
л
и
и
и
л
л
л
л
и
и
XOR(A,B) EQV(A,B) IMP(A,B)
л
и
и
л
и
и
л
л
л
и
и
и
ltj
rnaвa
1
Текстовые функции
Строкой называется упорядоченная последовательность текстовых
символов, например, слово или предложение . Текстовые функции при
меняются для создания и обработки строк. Список текстовых функций,
которые имеются в Excel, предлагается вашему вниманию в табл. 1.8.
Таб1111ца
Функция
1.8. Те1ССТО8Ые фун1Ц1111 Excel
Результат
Функции преобразоааниR чисел а текст
РУБЛЬ()
Число как текст в денежном формате
ФИКСИРОВАН
Число как текст, округленное до указанного числа десятич
ТЕКСТ()
Значение, преобразованное в текст
Число, преобразованное в строку с использованием указан
ЗНАЧЕН()
Текстовый аР.гумент, преобразованный в число
ПЕЧСИМВ()
Удаляет непечатаемые символь1 из текста.
СЦЕПИТЬ()
Объединение двух или более строк
НЫЙ()
Т( )
ных разрядов
ного формата строки
Функции обработки те1<Ста
НАЙТИ()
Определяет место нахождения подстроки в строке (с учетом
регистра)
ЛЕВСИМВ()
ДЛСТР()
Выделяет символы слева
Количество символов в строке
СТРОЧН()
Текст, преобразованный в строчные символь.1
ПСТР()
Выделяет подстроку
ПРОПНАЧ()
Делает прописной пераую букву в каждом слове в строке
ЗАМЕНИТЬ()
ПРАВСИМВ()
Заменяет подстроку
Выделяет символы справа
ПОИСК()
Определяет место нахождения подстроки в строке (без уче
та регистра)
ПОДСТАВИТЬ(
) Заменяет подстроки
СЖПРОБЕЛЫ ( ) Удаляет пробелы в конце и а начале текстовой строки
ПРОПИСН()
Преобразует текст в символы верхнего регистра
СИМВОЛ()
Символ, указанный кодом
Код ASCll символа
Функции соманк• строк
КОДСИМ~()
ПОВТОР()
ASCll
Повторяет строку
Функции сравнения строк
СОВПАД()
Функции
Сравнивает тек~товые строки с учетом регистра
РУБЛЬ(число,разряд)
и
ФИКСИРОВАННЫЙ(число,разряд,
без-запятой) округляют число до количества десятичных разрядов, а по
сле этого преобразуют его в строку символов . Если аргумент без-запятой
является истиной, функция ФИКСИРОВАННЫЙ не вставляет в итоговую
строку запятую. Разница между этими двумя функциями заключается в
'
Исnо"зованuе Ексеl в научным
u
uнженернын nрunоисенuян
том, что функция РУБЛЬ выдает число в денежном формате. Таюке, как
в функции ОКРУГЛ, отрицательные значения разрядов округляются в ле
вую сторону десятичной дроби. '
Функция ДЛСТР(текст) определяет длину текстовой строки текст.
Функции ПСТР(текст,начало,чисnо), ЛЕВСИМВ(текст,чисnо) и ПРАВС.ИМВ
(текст,чисnо) выделяют символы в етроке или в ее конце. Символы нуме
руются следующим образом: первый символ - 1, вrорой - 2 и так далее.
Функции ПОДСТАВИТЬ(текст,старый,новый,чисnо) и ЗАМЕНИТЬ (текст,
начало,чисnо,новый) замещают подстроки в составе текстовой строки.
Поиск, который выполняет функция ПОИСК, не реагирует на изменение
регисrра; при поиске функции НАЙТИ регистр символов учитывается.
Функции категории даты и времени
Функции даты и времени выполняют вычисления и трансформации
дат и времени, а также комбинирование этих элементов. В ExceJ такие
вычисления производятся путем преобразования дат в порядковый номер
даты. Порядковый номер даты - это номер дня при точке отсчета 1 ян
варя 1900 года (на Macintosh - 1904 года) . Все даты, независимо от того,
введены ли
они пользователем или возвращены
формулой, хранятся
именно в виде порядкового номера даты. Для того чтобЬJ увидеть фактИ
ческую дату,
представленную таким номером, надо отформатировать
ячейку, в которой содержится номер, как дату. ·
Значение времени также сохраняется как порядковый номер даты .
вычисляет время как дробную долю дня, при этом полночь обозна
чается О , полдень - 0,5, и так далее. Все показатели времени хранятся в
виде таких дробей . Чтобы отобразить на экране реальное время, выра
женное дробными числами, следует соответственно отформатировать
Excel
ячейку.
.
Поскольку и даты, и время выражаются в днях, вы можете объединять
их посредством простого сложения. Для определения разницы между
любыми двумя датами или показателями времени, вычтите одно число
даты-времени из другого, и пол~ результат, выраженный в днях и
дробных долях дней.
.
В табл. 1.9 представлен перечень функций категории даты и времени
Функции СЕГОДНЯ и ТДАТА возвращают текущую дату .и время,
ExceJ.
либо текущую дату в виде порядкового номера даты.
Функции категории даты
Функция ДАТА(rод,wесяц,день) преобразует конкретную дату в поряд
ковый номер.
Пользуйтесь этой
функцией для создания номера да
ты/времени на основе показателей года, месяца и дня.
Функция ДАТАЗНАЧ(текст) преобразует дату в тексwвом выражении в
порядковый номер.
•
111
rnaвa
Таблица
1.9.
1
Фунщии катеrор1111 да1111/•ремен11
Функция
Возвращает
ТДАТА()
Порядковый номер текущей даты и текущего времени
СЕГОДНЯ()
Порядковый номер даты дпя текущей даты
ДАТА()
ДАТАЗНАЧ()
Порядковый номер даты дпя года, месяца и дня
Функции текущей даты
Функции даты
Преобразует данные в текстовом формате в порядковы
номер даты
ДЕНЬ()
День месяца в соответствии с порядковым номером даты
ДНЕЙЗ60()
Количество дней между двумя датами, считая, что в год
дней
Порядковый номер даты, отстоящей от конкретной даты н
360
ДАТАМЕС(
)•
определенное количество месяцев
КОНМЕСЯЦА( )*
Порядковый номер даты последнего дня месяца, отстояще
го на указанное количество месяцев от конкретной даты
МЕСЯЦ()
ЧИСТРАБДНИ( )*
ДЕНЬНЕД()
НОМНЕдЕЛИ(
РАБДЕНЬ( )*
)*
ГОД()
ДОЛЯГОДА(
Месяц года в соответствии с порядковым номером дато1
Количество рабочих дней между двумя датами
День недели в соответствии с порядковым номером даты
суббота - 1, воскресенье - 7
Номер 1-iедели в году
Порядковый номер даты, отстоящей на заданное количеств
рабочих дней вперед или назад от начальной даты
Год в соответствии с гюрядкоВЫt-1 номером
)*
Долю года, представляющую собой общее количество дне
между двумя датами
Функции времени
ЧАС(
)
МИНУТА()
СЕКУНДЫ()
Час дня в соответствии с порядковым номером даты
Минуту в часу в соответствии с порядковым номером даты
Секунду в минуте в соответствии с порядковым номеро
даты
ВРЕМЯ()
ВрЕМЯЗНАЧ()
Порядковый номер даты для часа, минУты и секунды
Преобразует время в текстовом формате в порядковый но
мер даты
Функции, помеченные звездочкой(•), входят в надстройку Пакет внапиэа.
Excet также преобразует в порядковый номер приведсщные ниже две
строки при условии, 'ПО они захлючены в кавычки :
•
•
"месяц/день/год", где месяц, день и год выражены числами;
"день-месяц-год", где день и год указаны числами, а месяц
-
полным
или сокращенным названием месяца в виде текста.
ФунХЦИIО ДАТАЗНАЧ или текстовую строку можно приспособить к
конкретной ситуации.
Функции ГОД(чисnо), МЕСЯЦ(число) и ДЕНЬ(чисnо) возвращают чис
.lениое значение года, месяца в году и дня в месяце даrы, указанной
числом, т.е. выполняют функции, обратные функции ДАТА. Функция
ис:по18tзовакuе Ексеl в наgчнын u uнженернын прuоожеНW1Нl&J
ДЕНЬНЕД(число) преобразует дату в числовом формате в номер дня неде
ли. В этой функции субботе соответствует число
1,
а воскресенью
- 7.
Функции времени
Функции времени оченъ похожи на функции даты, за исключением
того, что они оперируют временем дня, а не датой. Функция
ВРЕМЯ(час,минуrа,секунда} возвращает время в ВИде дробной доли дня.
Обратите внимание, Что аргументы должны быть целыми числами. Лю
бые дробные доли этих аргументов программой игнорируются . Таким
образом, наименьшей единицей времени, которой можно воспользоваться для этой функции, является секунда.
Функция ВРЕМЗНАЧ(текст} преобразует время, сохраненное в ВИде
строки, в порядковый номер. Можно также исполъзова'ГЪ следующие
•
строки, заключив их в кавычки:
"час:минута:секунда" - для 24-часовоrо времени, rде год, минута и
секунда выражены целыми числами.
• "час: минуrа:секунда РМ" - для 12-часового времени, rде год, минута
и секунда выражены целыми числами.
Функции ЧАС(число}, МИНУТА(число} и СЕКУНДА(число) являются
обратными функции ВРЕМЯ. Они преобразуют порядковый номер в ча
•
сы , минуты и секунды соответственно.
Excel
округляет все числа до бли
жайших секунд.
Статистические функции
Статистические функции , как правило, применяются к наборам чисел
и возвращают специальные статистические значения. Такие значения
включают не только суммы и отклонения, но также ряд простых линей
ных и экспоненциальных аппроксимаций кривой. Некоторые из этих
функций возвращают в итоге массив. Статистические функции
речислены в табл.
Таб1111ца
Функция
Excel
пе
1.10.
1.1 О.
СтаntС111ческие фуlщии
Excel
Возвращвет
Базовые статистические$ункции
СРЗНАЧ()
Средний nоказатель сnиска значений
СЧЕТ()
Количество значений в списке
Количество незаполненных ячеек в списке
Сумму квадратов отклонений значений в сnиске от сред
СЧЕТЗ()
КВАДРОТКЛ(
СРГЕОМ()
СРГАРМ()
МАКС()
МЕДИАНА()
МИН()
)
него значения
Среднее геометрическое чисел в списке
Среднее гармоническое чисел в списке
Максимальное значение в списке
Медиану для заданных чисел
Минимальное значение в списке
,,,
•
111
Гnава
Функция
Возвращает
СТАНДОТКЛОН( )
СТАНДОТКЛОНП(
Стандартное 0Т1СЛ0Нение значений в списке
1
) Стандартное отклонение значений в списке, считая, что
данный список является генеральной совокупностью
ДИСП()
ДИСПР()
диспероию чисел в списке
Дисперсию чисел в списке, считая , что данный список
является генеральной совокупностью
Сложные стаnют11Ческне фунщии
#
Среднее значение абсолюrnых величин отклонений то·
СРОТКЛ()
чек данных от среднего
КОРРЕЛ(
Коэффициент корреляции между даумя наборами данных
)
ДОВЕРИТ()
Доверительный интервал генеральной совокупности
КОВАР()
Ковариацию, т.е . среднее произведений отклонений дпя
каждой пары точек данных
ФИШЕР()
Преобразование Фишера числа
ФИШЕРОБР()
Обратную функцию к преобрезованию Фишере числа
ЧАСТОТА()
Частоту распределения значений в списке
ЭКСЦЕСС()
.
НАИБОЛЬШИЙ( )
Эксцесс значений в списке
МОДА()
ПИРСОН()
ПЕРСЕНТИЛЬ(
Наиболее часто встречающееся значение в списке
п-ное наибольшее значение в списке
Коэффициент корреляции Пироона двух массивов
Значение из n-ой nероентили в списке
)
ПРОЦЕНТРАНГ( )
ПЕРЕСТ()
Процентное содержание конкретного значения rсписке
Количество перестановок значений, выбранных на опре
деленный момент из указанного числа значений
ВЕРОЯТНОСТЬ(
)
Вероятность того , что значения в списке находятся меж
ду наименьшим и наибольшим числами
КВАРТИЛЬ(
РАНГ(
Квартиль списка чисел
)
)
НАИМЕНЬШИЙ( )
НОРМАЛИЗАЦИЯ(
Ранг числа в списке чисел
n-oe меньшее значение в списке
) · Число, нормализованное средним значением и стан
дартным отклонением
УРЕЗСРЕДНЕЕ( )
Среднее списка с указанными проценrnыми точками ,
удаленными от концов распределения
Функции аппроксимации крнаой
ПРЕДСКАЗ()
Экстреполирует значение с применением линейной ап
РОСТ()
Экстраполирует значение с применением
ОТРЕЗОК()
альной аппроксимации
у-отрезок на линии линейной регрессии
проксимации
ЛИНЕЙН( )
экспоненци
Параметры линейного приближения по методу наимень
ших квадратов
ЛГРФПРИБЛ(
КВПИРСОН()
)
Пареметры экспоненциальной аппроксимации кривой
Точность аппроксимации ; значение
ной регрессии
Наклон пинии линейной регрессии
НАКЛОН()
СТОШХУ()
r2
для линии линей
Стандартную ошибку предсказанного значения у для ка
ждого значения х в пинии линейной регрессии
ТЕНДЕНЦИЯ(
)
Список предсказанных значений из линейной аппрокси
мации кривой
испо"зованuе Ексеl в научным
ФункциR
u
uнженернык прu11оженwвс
Возвращает
Фу_н1ЩИи распределений
БЕТАРАСП()
БЕТАОБР()
Интегральную функцию ruютности бета-вероятности
Функцию, обратную
интегральной функции
плотности
бета-вероятности
БИНОМРАСП(
Отдельное значение биноминального распределения
)
Одностороннюю вероятность для хи-кsадрат (х 2 ) распре
ХИ2РАСП()
деления
ХИ20БР()
Обратную функцию к односторонней вероятности для
ЭКСПРАСП()
Экспоненциальное распределение
FРАСП(
хи-квадрат (х2) распределения
)-
F-распределение вероятности
FРАСПОБР()
ГАММАРАСП(
Обратную функцию F-распределения вер0ятности
Гамма-распределение
Обратное гамма-распределение
Натуральный ло гарифм гамма-функции
)
ГАММАОБР()
ГАММАНЛОГ( )
ГИПЕРГЕОМЕТ(
ЛОГНОРМОБР(
Гипергеометрическое распределение
)
)
Обратную функцию логарифмического нормального рас
пределения
ЛОГНОРМРАСП()
ОТРБИНОМРАСП(
НОРМРАСП()
НОРМОБР(
Логарифмическое нормальное распределение
)
" Отрицательное биноминальное распределение
Нормальное кумулятивное респредеnение
9братная функция нормального кумулятивного распре
)
деления
НОРМСТРАСП(
Стандартное нормальное кумулятивное распределение
Обратная функция стандартного нормального кумулятив
)
НОРМСТОБР()
ного распределения
ПУАССОН()
Распределение Пуассона
Асимметрию распределения , представленную числами в
СКОС()
списке
СТЬЮДРАСП( )
СТЬЮДРАСПОБР(
ВЕЙБУЛЛ()
)
t-респределение Стьюдента
Обретную функцию t-расnределения Стьюдента
Распределение Вейбулла
Функции проаерюr значимости
хи-квадрат (х2) тест на независимость двух распределе
ХИ2ТЕСТ()
ний
КРИТБИНОМ(
)
Наименьwее зн.ачение, для котсрого кумулятивное би
номинальное распределение
ному критерию
ФТЕСТ()
ТТЕСТ()
ZТЕСТ()
меньwе или
равно задан-
)
F-тест для даух распределений
t-тест Стьюдента для значимости коэффициента
Двустороннее Р-значение z-теста
Базоаая статистика
Функции СРЗНАЧ(список чисел) и СЧЕТ(список чисел) оперируют спи
сками значений и возвращают среднее значение и количество значений в
списке чисел соответственно. Функции МИН (список чисел) и МАКС(список
чисел) просто указывают место нахожnен.ия и возвращают минимальное
11:1
Гnава 1 ·
и максимальное значение в списке чисел. Ячейки, содержащие текстовые
и логические значения, а также незаполненные ячейки игнорируются.
Кроме среднего значения можно с помощью функции СРГЕОМ(сnисок
чисел) вычислить среднее геометрическое списка, а с помощью функции
СРГАРМ(сnисок чисел)
-
среднее гармоническое. Значение медианы рас
пределения возвращается функцией МЕДИАНА(список чисел).
·
Фующш СТАНДОТКЛОН(список чисел) вычисляет стандартное опою
нение по выборке в списке чисел. Это означает, что функция выдает наи
более точный показатель стандарrnого отклонения в совокупности для
конкретной выборки в списке чисел. Это значение вычисляется с при
менением следующего уравнения:
/N
/I(x;- х)2
v
i =I
N- 1
где х является средним показателем n-нoro количества значений х..
Если список чисел представляет собой всю совокупность, а не выбор
ку нз нее, следует воспользоваться функцией СТАНДОТКЛОНП. Это зна
чение можно рассчитать следУЮwим уравнением:
1±
(х, - i)2
/
~
N
i"I
Функция ДИСП(сnисок чисел) представляет собой квадрат стандарг
ноrо отклонения. Таким образом, она оценивает дисперсию выборки
конкретной совокупности. Чтобы получить значение дисперсии совокуп
ности при условии , что список чисел равен всей совокупности, восполь
зуйтесь функцией ДИСПР(сnисок чисел), которая является квадратным
корнем значения стандарТНоrо отклонения совокупности.
Сложные статистическиа функции
Статистические функции
Excel
включают ряд более сложных функ
ций, предназначенных для тестирования соотношения между списками
чисел. Так, например, ф}'НЮ.U:{я КОРРЕЛ(сnисок1 ,сnисок2) вычисляет ко
эффициент
корреляции
между
двумя
списками
чисел,
а
функция
КОВАР(список1,сnисок2) возвращает ковариацию, т.е. среднее попарных
произведений отклонений.
Некоторые из сложных статистических функций Excel работают с
классифицированными
списками
значений.
Например,
функции
НАИБОЛЬШИЙ( список чисел, k) и НАИМЕНЬШИЙ (список чисел, k) выби
рают
k-oe
наибольшее и
k-oe
наименьшее значение в списке чисел соот-
Испоnьзованuе Енсеl в научным
u
uнженерныи npunoжeнWlи
ветсrвенно. Функция ПРОЦЕНТРАНГ(список чисел,чисnQ,энач) возвращает
процентное содержание нового значения в списке чисел.
Функции аппроксимации криаой
Excel
обеспечивает два типа аппроксимации кривой: линейную и экс
поненциальную. Функции ЛИНЕЙН(умассив,хмассив), ТЕНДЕНЦИЯ (умас
сив, хмассив,хсписок) и ПРЕДСКАЗ(х,умассив,хмассив) вычисляют мето
дом наименьших квадратов линейную аппроксиманту кривой для данных
х и у в хмассивах и умассивах.
Функция ЛИНЕЙН возвращает состоящий из двух элементов горизон
тальный массив, содержащий угол наклона
(m)
и у-отрезок (Ь) прямой:
y=mx + Ь. Функции ТЕНДЕНЦИЯ и ПРЕДСКАЗ возвращают значения у,
полученные методом подставки значений х из хсписка (или из хмассива,
если хсnисок -отсутствует) в приведенное выше уравнение прямой. Функ
ция ТЕНДЕНЦИЯ возвращает массив значений у; ПРЕДСКАЗ возвращает
,только одно значение. В обеих этих функциях, если хмассив отсутствует,
принимается, что он соответствует списку значений: 1, 2, 3... . Так же,
как в других функциях, возвращающих массивы значений, для того, что
бы поместить данную функцию в список итоговых ячеек, а не в одну
ячейку, необходимо нажать и удерживать в нажатом состоянии .клавиши
<Ctrf> и <Shift>.
Экспоненциальная аnпроксиманта кривых вычисляется с помощью
функций ЛГРФПРИБЛ(умассив,хмассив) и РОСТ(умассив,хмассив,хсписок).
Эти функции действуют почти также, как функции линейной аппрокси
мации кривой, за исключением того, что они вычисляют не линейную
аnпроксиманту кривой, а экспоненциальную:
y=bmx.
Рост коэффициентов кривых вычисляется следующим образом: берет
ся
натуральный
логарифм
данных
умассива,
применяется
функция
ЛИНЕЙН, а затем берется экспоненциальный показатель итога коэффи
циентов
m
и Ь:
ЕХР(ЛИНЕЙН(LN(умассиа),умассив))
Данную формулу необходимо вставить в две ячейки как функцию
массива. Она выдает такой .же итог, как функция РОСТ.
Однако, если диапазон значений умассива велик (с отклонением ме
жду наименьшим и наибольшим значениями), то аппроксиманта кривой
будет иметь перекос. Меньшие значения будуr иметь больший вес (их
аппроксимация более точна), чем большие. Причиной этому служит то,
что аппроксимируется логарифм данных-)(, а не сами данные у.
Метод наименьших квадратов минимизирует остаточную погрешность
(разницу ме.жду данными и аппроксимантой кривой). В данном случае
формула предельно уменьшает разницу логарифмов данных у , а не самих
данных у. Поскольку логарифм является нелинейной функцией, остаточ
ная погрешность будет больше у больших значений данных у. С другой
стороны, относительная погрешность будет приблизительно постоянной
величиной для всех значений данных у.
11~1
Гnава
1
Функции распределения и тестирования значимости
Функции распределения
Excel
генерируют значения для наиболее
распространенных видов распределения, которые применяются для тес
тирования значимости значений, а также для прогнозирования срока
службы или частоты повреждений какой-либо продукции.
следующие
типы
квадрат
распределений:
распределения
биномиальные.
(ХИ2РАСП),
Различают
(БИНОМРАСП),
F- распределения,
хи
гамма
распределения (ГАММАРАСП), гипергеометрические (ГИПЕРГЕОМЕТ),
нормальные (НОРМРАСП) , распределения Пуассона (ПУАССОН), Т
ра<;пределения и распределения Вейбулла (ВЕЙБУЛЛ).
Кроме функций распределения на распределениях хн-квадрат,
F
и Т
также основываются функции для тестирования значимости. Тестирова
ние , осуществляемое с помощью таких функций, позволяет проверять
значимость значений, коэффициенты регрессий и зависимость либо не
зависимость разных типов распределения значений.
Функции дли работы с базами данных
Вычисления функций , предназначенных для работы с базами данных,
практически не отличаются от вычислений базовых статистических
функций, одншсо первые применяются к значениям, отобранным из ка
кой-либо базы данных на основе определенного критерия отбора. База
денных представляет собой прямоугольную область ячеек в рабочем лис
те. Каждая строка базы данных при этом является записью, а каждый
столбец
-
В табл.
полем .
1.11
перечислены функции
Excel
для работы с базами данНЫХ.
Все они имеют три одинаковых аргумента: имя базы данных, имя по
ля или номер столбца поля-; с которым производатся действия, и крите
рий . Функциями, предназначенными для работы с базами данных, обраба
тываются только те записи, которые соответсrвуют заданному критерию .
Таб11мца 1.11. Функции Excel дm1 рабо1111 с базаМll AlftHWX
Функция
Возвращает
ДСРЗНАЧ()
Среднее значение епементов базы данных, соответст
вующих заданному критерию
БСЧЕТ()
Количество записей в базе данных, соответствующих
заданному критерию
БСЧЕТА()
Количество записей в ба~е данны)t, соответствующих
заданному критерию и содержащих значения в полях,
БИЗВЛЕЧЬ()
исключая незаn011ненные ячейки
Извлекает единичную запись, соотаетствующую за
данному критерию
ДМАКС()
Максимальное значение
заПисей,
соответствующих
критерию, заданному в поле
ДМИН()
Минимальное
значение
записей,
критерию, заданному в поле
соответствующих
Испо"зованuе Енсеl в наgqиын u IАtженериыи npunOlletlWIН iil
Функция
БДПРОИЗВЕД(
Возвращает
Перамнож:ает значения записей, соответствующих зв
)
данному критерию
ДСТАНД0Т1<ЛОН(
)
Стандартное отклонение выборки значений залисей,
соответствующих критерию, заданному в поле
ДСТАНДОТКЛОНП()
Сtвндартное
откпонение
генеральной
совокупности
значений записей, соответствующих критерию, задан
ному в поле
БДСУМ()
Суммв значений записей, соответствующих критерию,
заданному в поле
БДЦИСП()
Диспероия выборки значений записей , соответстаую
щих критерию, заданному в поле
Excel
может обеспечить доступ не только к базам данных своих рабо
чих листов, но и к внешним базам, что достигается с помощью специ
ального средСтва
JET,
позволяющего запросить базы данных всех наибо
лее распространенных форматов.
Финансовые функции
Финансовые функции очень удобны ДJIЯ отслеживания инвестирован
ных сумм или вычисления стоимости пролонгирования кредитов. Под
робное описание этих функций можно найти в любой хорощей книге,
посвященной бухгалтерскому учету или теории менеджмента.
Методы
вычислений с их применением таюке описываются в специальной лите
ратуре. Финансовые функции Excel перечисляются в табл. 1.12.
ТабJ111ца
Функция
ОБщплдт()
ОБШДОХОД()
1.12.
Фмна11СОIW8 фунщм11
Excet
Возвращает
Общий процент, выплаченный между указанными на-
чальным и конечным периодами
·
Общую основную выплату по займу, произведенную
между указанными начальным и конечным периодами
БЗ()
БЗРАСПИС()
Будущее значение вклада на основе периодических по-"
стоянных платежей и постоянной процентной ставки
Будущее знвчение основного капитале после начис
ления сложных процентов
ПЛПРОЦ()
Платежи по процентам за данный период на основе
периодических nосrоянных выплат и постоянной про
центной ставки
КПЕР()
Общее количество периодов
выплаты для данного
вклада на основе периодических постоянных выплвт и
ППЛАТ()
постоянной процантной ставки
Величину выплаты за один период годовой ренты нв
основе периодических постоянных выплат и
ной процентной ставки
постоян
ifl
Гnава
Функция
1
Возяращает
ОСНПЛАТ()
Величину/выплаты на данный период на основе пе·
риодических постоянных выплат и
центной ставки
ПЗ()
постоянной
про·
Текущий объем вклада
Процентную ставку для полностью инвестированных
процен1:ных бумвг
НОРМА()
Функции, саnанные с ннаестироuнием
НАКОПДОХОД()
Накопленный доход по ценным бумагам с периодиче·
ской вьi'платой процентов
АМОРУМ()
Величину амортизации дnя каждого периода
Величину амоJ)Тмзации для каждого периода (реэница
АМОРУВ()
между АМОРУВ и АМОРУМ указана в спревочной сие·
теме
Excel)
НАКОПДОХОДПОГАШ( ) Накопленный процант по цанным бумагам, процент по
"
которым выплачивается в срок вступления в силу
ДНЕЙКУПОНДО( )
Количество дней от начала действия купона до даты
соглашения
ДНЕЙКУПОН( )
Количество дней в периоде действия купона, содер
ДНЕЙКУПОНПОСЛЕ( )
жащем дату соглашения
Количество дней от даты соглащения до срока сле
дующего купона
ДАТАКУПОНПОСЛЕ( ) _ Следующую дату купона после даты соглашения
ЧИСЛОКУПОН(
Округленное до ближайшего цалого количеств.о куnо·
нов, которые могут быть оплачены между датой со
)
глашения и сроком вступления в силу
ДАТАКУПОНДО( )
Предыдущую дату купона перед датой соглашения
СКИДКА()
Норму скидки дnя цанных бумаг
ДЛИТ()
Ежегодную продолжительность действия ценных бу·
маг с периодическими выплатами по процентам
ЭФФЕКТ(
Действующие ежегодные процантные ставки, если за·
)
даны номинальная годовая процентная стаека и коли·
чество периодов, состааляющих год
.ИНОРМА()
Процантную ставку для полностью инвестированных
цанных бумаг
МДЛИТ()
Модифицированную длительность Макалея для цен
ных бумаг с предполагаемой нарицательной стоимо·
стью 100 руб
НОМИНАЛ()
Номинальную годовую
процентную стевку,
вестна фактическая ставка и
если из·
количество периодов,
составляющих год
ЦЕНАПЕРВНЕРЕГ(
)
Цену за 100 руб, нарицательной стоимости ценных
бумаг для нерегулярного (короткого или длинного)
первого периода
ДОХОДПЕРВНЕРЕГ( )
Доход по цанным бумагам с нерегулярным (коротким
ЦЕНАПОСЛНЕРЕГ(
или длинным) первым периодом
Цену за 100 руб. нарицательной
)
стоимости ценных
бумаг для нерегулярного (короткого или длинного)
ДОХОДПОСЛНЕРЕГ( )
последнего периода купона
Доход по ценным бумвгам с нерагулярным (коротким
или длинным) последним периодом
Исnо"зованuе Ексеl в наgчныи
u
uнженерныи прunmкенuяи
Функция
Возвращает
ЦЕНА()
Цену за
ЦЕНАСКИДКА(
бумаг для казначейского чека
Цену за 100 руб. нарицательной стоимости ценных
ЦЕНАПОГАШ(
)
100
руб. нарицательной стоимости ценных
бумаг, на которые сделана скидка
Цену за 100 руб. нарицательной стоимости ценных
бумаг, по которым доюд выnлачиваете11 в срок вступ
)
ления в силу
ПОЛУЧЕНО()
Сумму, полученную в срок вступления в силу полно
РАВНОЧЕК()
• Эквивалентный облигации доход по казначейскому
стью обеспеченных ценных бумаг
чеку
Цену за
ЦЕНАЧЕК()
100
руб. нарицательной стоимости дт1 казна
чейского чека
ДОХОДЧЕК()
ДQ~<од по казначейскому чеку
ДОХОД()
Доход от цанных бумаг, состааляющий периодические
процентные выплаты
ДОХОДСКИДКА(
)
Годовой доход по ценным бумагам, на которые оде
лана скидка
ДОХОДПОГАШ()
Годовой доход от цанных бумаг, который составляет
доход в срок вступления в силу
Функции ДЛR начислен,,,. аморти311ции
ДОБ()
величину амортизации имущества на заданный пери
од, используя метод постоянного учета амортизации
ДЦОБ()
Величину амортизации имущества для указанного пе
риода, используя метод двукраmого учета амортиза
ции или иной явно указанный метод
Величину непосредственной амортизации имущества
АМР()
за один период
АМГД()
Годовую амортизацию для указанного периода
Вели~ину амортизации имущества за данный период,
ПДОБ()
включая конкретные периоды, используя метод двой
ного процента со снижающегося остатка или иной яв
но указанный метод
Другие функции, сп3llнные с дело...,ми операЦJtвМи
РУБЛЬ.ДЕС(
Преобразует цену в рублях, вы~нную в виде дро
)
би, в цену в рублях, выраженную дасятичным числом
РУБЛЬ.ДРОБЬ(
ВНДОХ()
)
Преобразует цану в рублях, выраженную десятичным
числом, в цену в рублях, выраженную в виде дроби
Внутреннюю скорость оборота для ряда последова
тельных операций с наличными, предстааленными чи
словыми значениями
Модифицированную
МВСД()
средств
для
ряда
внутреннюю
скорость
последовательных
оборота
периодических
операций с наличными
НПЗ(
Чистый текущий объем вклада, вычисляемый на осно
)
ве ряде последовательных
поступлений
наличных и
нормы амортизации
ЧИСТВНДОХ(
)
Внутреннюю ставку обороте для рвсписаиия денежных
поступлений
iil
г11ава
1
Функция
Возв'ращавт
ЧИСТНЗ()
Чистую текущую стоимость инвестиции, вычисляемую
на основе периодических nостуnлений наличных
Функции информационной катеrории
Функции информационной категории можно использовать в сово
купности с логическими функциями с целью исследования содержания
ячейки, проверки ее типа или определения места нахождения ячейки или
ссылок на нее. Функции информационной категории
втабл. t . 13.
Табпица
Excel
перечислены
1.13. Фун1Щ11111111формацмон1Оi uтerop1111 Excel
Функциg
ВозвращвеУ
ЯЧЕИКА()
Информацию о содержании, форматирован.ии
или месте
расположения ячейки
ТИП.ОШИБКИ(} Номер, соответствующий типу ошибочного значения данной
ошибки
ИНФОРМ()
Информацию об операционной среде
Е:ПУСТО()
Логическое
значение
ИСТИНА,
если
аргумент
яаляется
ссылкой на незаполненную ячейку
Логическое значение ИСТИНА, если аргумент является лю
Е:ОШ()
Е:ОШИБКА()
Е:ЧЕТН(
бым из ошибочных значений Excel, за исключением #Н/Д!
Логическое значение ИСТИНА, если аргумент является лю
бым из ошибочных значений Excel (#Н/Д!, #ДЕЛ/О!,
#ЗНАЧ!, #ИМЯ!, #ПУСТО!, #ССЫЛКА! Или #ЧИСЛО!)
Логическое значение ИСТИНА, если аргумент яаляетсЯ чет
)
ным числом
Логическое значение ИСТИНА; если аргумент является ло
ЕЛОГИЧ()
ги..,еским значением
Е:НД(
Логическое значение ИСТИНА, если аргумент является оши
)
бочным значением #Н/Д!
ЕНЕrЕКСТ()
Лоrичесtсое значение ИСТИНА, если аргумент не является
ЕЧИСЛО()
Логическое значение ИСТИНА, если аргумент является чис
текстовой строкой
лом
Е:НЕЧЕТ()
Логическое значение ИСТИНА, если аргумент яаляется не
четным числом
Е:ССЫЛКА(
ЕТЕКСТ(
}
}
Логическое значение
ссылкой на ячейку
ИСТИНА,
если
арrумент
является
Логическое значение ИСТИНА, если аргумент яаляется · текстовой строкой
Ч()
Значения, преобразованные в числа
НД()
Ошибочное значение #Н/Д!
ТИП()
Информацию о типе числа, хранящеrося в значении
Функции, помеченные звеадочкой (*),входят в надстройку Пакет анапиаа .
u
Испоnьзованuе Енсеl в научнын
uнженернын пpunoжeнwuc
ФунЮJ,ИЯ ТИП(значение) возвращает тип значения: 1 - для числа, 2 дЛЯ текста, 4 - для логического значения, 16 - для ошибочного значе
ния и 64 - для масси~. Вы можете воспользоваться функцией ТИП для
того, чтобы перед выполнением операций со значениями удостовериться
в том, что они нужного вам типа.
Другие
функции
логического
ЕОШИБКА и так далее
-
значений
типа.
конкретного
тестирования
-
ЕПУСТО,
ЕОШ,
применяются для тестирования содержания
Они
возвращают
логическое
значение
ИСТИНА, если данное значение соответствует указанному типу, и ЛОЖЬ
-
если не соответствует.
Функции категории Ссылки/массиаы
Функции категории Ссылки/массивы позволяют управлять областями
рабочего листа или исследовать их. Эти функции перечислены в табл. 1.14.
Табnмца
Функция
1.14.
Функции
Excel
катеrор1111 CcwnajМacc118111
Возвращает
Функции просмотре по табпице и по направлению
Отбирает значение из набора значений, основываясь на з.на-'
ВЫБОР()
_,
чении индекса
Осуществляет поиск значения в горизонтальном массиве
ГПР(}
Отбирает значение из указанной строки, столбца или области
Определяет место расположения значения в массиве
ИНДЕКС()
П?ОСМОТР(
)
ПОИСКПОЗ()
Определяет
место
расположения
значения
в
одномерном
массиве
ТРАНСП()
Массив, транспонированный а матрицу
ВПР()
Осуществляет поиск значения в вертикальном массиве
АДРЕС()
Ссылку в виде текста на ячейку, расположенную на пересече
ОБЛАСТИ()
Количество областей в ссылке на ячейку
Номер столбца. на который указывает ссылка, rю одному на
каждый столбец в ссылке
Функции характеристики ссыпок
нии указанных строки и столбца
СТОЛБЕЦ()
ЧИСЛСТОЛБ(
ДВССЫЛ(
СМЕЩ( )
СТРОКА(
)
)
ЧСТРОК()
)
Количество столбцов в массиве
Содержание ссылки на ссылку
Ссылку, смещенную относительно указанной ссылки
Номер строки, на которую указывает ссылка, по одному на
каждый столбец в ссылке
Количество строк в ссылке
Функции просмотра по таблице и направлению
Функция ВЫБОР(индекс,эначение1 ,значение2" .. ) использует значение
индекс
для
того,
чтобы
значение2, .... При индексе
выбрать
значение
из
списка
эначение1.
1 возвращается значение1, при индексе 2 -
111
Гnава
1
значение2 и так далее. При индексе менее 1 или более количества значе
ний, функция возвращает #ЗНАЧ!.
Функциями просмотра по таблице являются ГПР, ВПР и ПРОСМОТР.
Пользуйтееь ими для поиска табличной функции или таблиц данных
конкретных значений. Если nросмотр_диаnазона является ИСТИНОЙ или
отсуrствует, функции mР(значение,массив,указатель,просмотр_диаnазона)
и
ВПР(значенИе,массив,указатель,nросмотр_диаnазона)
ищуr
первую
строку или столбец в массиве для наибольшего значения, которое мень
ше или равно значению. Послt этого они перемещают эту строки или
столбец вниз на количество ячеек, равное индексу, и возвращают значе-
"
ние в этой ячейке. Значение может быть численным значением, тексто
вой строкой или логическим значением. ГПР просматривает слев~ напра
во , поэтому значения в первом ряду массива должны быть расположены
в порядке возрастания . ВПР осуществляет поиск сверху вниз, и значения
в первом столбце массива должны располагаться в столбце сверху вниз по
возрастающей. В порядке возрастания первыми будут идти числа, затем
текст, затем логические значения ЛОЖЬ, а затем
-
логические значения
ИСТИНА Если nросмотр_диаnазона является Ложью, значения могут рщ::
полагаться в любом порядке, и эти функции возвращают значение, толь
ко если находят точное соответствие,
а во всех остальных случаях они
возвращают #Н/Д.
Если просм0тр_диаnазона является. истиной или отсуrствует, функция
ПРОСМОТР(значение,вектор1 ,вектор2,nросмотр_диаnазона) просматривает
вектор1 с целью нахождения наибольшего значения, которое бъшо бы
меньше или равно значению, и возвращает соответствующее значение из
вектора2. Также как в ГПР и ВПР, значения в векторе1 должны распола
гаться в порядке возрастания, если только nросмотр_диаnазона не явля
ется Ложью; в этом случае значения могут быть расположены в любом
порядке, и ПРОСМОТР возвращает значение #Н/Д.
С целью обеспечения совместимости Excel с Microsoft Multiplan в -лу
группу также включена дополнительная версия функции ПРОСМОТР.
Эта функция ПРОСМОТР(значение, массив) проематривает первую строку
или столбец массива с целью нахождения наибольшего значения , кото
рое было бы меньше или равно значению, и возвращает соответствующее
значение в последней строке или столбце массива. Поиск осуществляет
ся с более длинной стороны массива. Если в массиве больше столбцов,
чем строк, то просматриваться будет его первая строка. Если в массив
имеет квадратную ф0рму, поиск осуществляется вдоль первого столбца.
Функция ПОИСКПОЗ(значение,вектор,тиn) очень похожа на функцию
ПОИСК, за исключением того, что она возвращает индекс найденного
значения . Аргумент тмп указывает, каким образом значение сравнивается
со значением в векторе с целью определения их соответствия. При типе 1
опрсщеляется место нахождения наибольшего значения, меньшего или
равного значению; а при типе О - значения, равного значению. Помечай
те
текстовую
строку,
содержащую
конкретную
подстроку,
с
помощью
Испоnьзованuе Еисеl в научным
подстановочных знаков х и
?.
u
uнженерныи npunoиceнwuc
Функция определяет соответствия только в
первый раз, когда оно встречается в строке или подстроке.
Одной
из
наиболее
полезных
функций
просмотра
является
ИНДЕКС(ссыл,строка,столбец}, возвращающая значение на пересечении
строки и столбца ссылки. Пользуйтесь этой функцией для отбора значе
ний в массиве в соответствии с индексами строки и столбца. Если аргу
мент ссыл. содержит несколько областей, добавьте четвертый аргумент
область, который применяется для определения, какая именно область
ссылки должна быть использована. Если ссыл. представляет собой про
стой вектор, понадобится только один индекс. Все индексы имеют одно
основание, поэтому первая строка имеет номер
1,
вторая
-
номер
2 и так
далее. Если строка или столбец, на которые сделан запрос, отрицательные,
функция возвращает #ЗНАЧ!. Если номер запрошенной строки или столб
ца слишком велик, ИНДЕКС возвращает ошибочное значение #Н/Д! .
Функции характаристики ссылок
Функция ОБЛАСТИ(ссыл) возвращает количество областей в ссыл.
Областью называется единая прямоугольная зона рабочего листа.
Функции
СТОЛБЕЦ(ссыл),
ЧИСЛСТОЛБ(массив),
СТРОКА(ссыл}
и
ЧСТРОК(массив) возвращают информацию о строках и .столбцах в ссылке
на ячейку. СТОЛБЕЦ возвращает вектор, содержащий ссылки на каждый
столбец в ссыл. СТРОКА возвращает вектор, сод~ржащий ссылки на каж
дую
строку
в ссыл.
ЧИСЛСТОЛБ
и ЧСТРОК
возвращают
количество
столбцов и строк в массиве.
Функции
Visual Basic for Applications
Язык програМмирования Visual Basic for Applications встроен в про
грамму Excel. С его помощью можно разработать практически любую чи
словую функцию и сделать ее дос1)'Пной для ячейки в рабочем листе
Excel. Visual Basic for Applications
обсуждается в главе
4.
Надстроечные функции и инструменты
Обратите внимание на то, что в последней версии
личество
инструментов доС1)'Пно
в
.качестве
Excel
надстроек,
большее ко
которые
перед
применением должны быть подключены к программе. Чтобы это сделать
воспользуйтесь командой Сервис~ Надстройки, в результате чего на эк
ране появится диалоговое окно Надстройки, изображенное нюке. Устано
вите флажок нужного вам файла надстройки и выбериrе ОК. После под
ключения файлов надстройки вы сможете пользоваться подключаемыми
функциями и инструментами. Наибольший интерес Д11Я ученых и инже
неров представляет надстройка Пакет анализа, в который входят все ин
женерные функции плюс некоторые функции из других таблиц, вклю
ченных в Пакет, и который добавляет к Excel ряд дополнительных стати
стических функций (табл. 1.15).
41:1
Гnава
1
Внешние функции
Кроме внутрен них фун кций и функций , закодированных в макролис
тах,
Excel
может обеспечивать доступ к подпрограмм ам , хранящим ся во
внешних библиотеках динамической компоновки , или динамически свя
зываемых библиотеках ( Dупашiс Li11k Libraries - DLL). Она также спо
собна с помощью методов динамического обмена данными (Dy нamic
Data
Ex chaпge
- DDE), Visual Basic for Applicatioпs и связывания и вне
(Object Li11ld11g апd E mbeddiпg - OLE) передавать значе
дрения объектов
ния и з п рограмм в програм мы . П рименяя эти возмож н ости , вы м ожете
созда вать допол нительные функции в других программах и после этого
получать доступ к ним из
Табnица
1. 15.
Excel.
Программы-надстройки, входящие а Пакет анализа
Excel
Программа
Описание
Однофакторны й дисперси онн ы й
Двухфа кторн ый дисп ерс ионн ы й
В ыполня ет однофакто рны й дисперсион
н ы й анализ
В ыполняет двухфакторны й ди сперс ион
а нализ с по вторе н ием
ный анал из с повторением
анализ
Двухфа кторный дисперсионный
Вы полня ет двухфакторный дисперсион
ан ализ без повторения
нь1 й анализ без повтор ен ия
Корреляция
Вычисляет коэффициенты корреляции
Вычисляет ко ва риацию
Генери рует статистически е дан ные по
Ко вариация
Описател ьная статистика
выборке
Экспон енци альное сглаживан и е
Осуществляет прогнози рование с пр име
Двухвыборочны й F-тест для дис
нен ием анаЛиза оши бо к
Проводит двухвыборочный F-тест
перс ии
Ан ал из Фурье
Гистограмма
С кол ьзя щее среднее
Генерация случайн ых чисел
Анализ трансфор мант Фурье
Вычисля ет данные для гистограм м
Вычисляет скользя щее среднее выборки
Генерирует случайные числа по выбран
ным распределен иям
Ран г и nерсентил ь
Создает класс ифи кацион ную таблицу н а
боров данных
Испоnьзованuе Енсеl в научнын
u
uнженернын npunoжeнWJн
Программа
Описание
Регрессия
Оп ределяет множественн ую ли ней ную
ре грессию
Выборка
Произ водит выборку данных
Парный двухвыборочный t·тест
для средних
Проводит двухвы борочный t -тест
Стьюдента для средних
Двухвыборочный t-тест с одинако - Проводит двухвыборочный t-тест Стьювой дисперсией
двнта для одинаковых дисперс ий
Двухвыборочный t-тест с различ-
Проводит двухвь1 бороч ный t- тест Стью-
ными дисперсиями
дента для различных дисп ерсий
Двухвыбороч ный Z- тест для сред-
·
них
Проводит двухвыбо рочны й Z -тест для
средних и из ве стных перемен ных
Для того , чтобы воспользоваться внешней функцией, объявите ее в
модуле Visual Basic for Applications или восп ользуйтесь функцией
ЗАПРОС(файл ,функция ,ти п ,арг), где файл - имя файла DLL, функция название функции в файле
чения , а эрг.
-
DLL,
тип
-
тип данных возвращаемого зна
аргументы , которые должны быть переданы функции .
-.__ Примечание
В
Macintosh
для получения доступа к внешней функции надо получить
доступ к содержимому ресурса
CODE.
Чтобы сделать запрос и воспользоваться внешней функцией , следует
знать , как эта функция работает. В сущности , необходимо протестиро
вать значения , которые вы собираетесь передавать , чтобы убедиться в
том , что они правильные и соответствующего типа. При использовании
некорректных аргументов программа может зависнуть во внешней биб
лиотеке и испортить всю вашу систему . Преимуществом внешних функ
ций является то , что они работают намного быстрее функций , внедрен
ных с помощью Visual Basic for Applications.
Solver
Программа Solver представляет собой инструм ент для нахождения то
чек экстремум~ функций с применением метода п оследовательного спус
ка. Будьте внимательны при составлении формул
-
и сможете восп оль
зоваться этой программой для решения уравне ний .
Резюме
В этой главе мы кратко обсудили возможности п рименения
Excel
в
качестве вычислительного средства для решения н аучных и инженерных
задач. Как вы могли убедиться ,
Excel
очень хорошо оснащена п.ля ис
пользования этой программы с целью выполнения вычислений в области
науки , техники , математики и статистики . Численная точность и диала-
iфi
Гnава
1
зон этой программы сравнимы с показателями других вычислительных
средств, применяемых ш~я научных и инженерных расчетов.
Кроме чисто вычислительных возможностей любая программа, пред
назначенная ШIЯ выполнения научных ц технических вычислений должна
преш~агать пользователям минимальный набор встроенных функций , по
зволяющих ускорять процесс этих вычислений. Ехсе1 обладает всеми
стандартными матемаrnческими функциями, доступными в компьютер
ных языках высокого уровня, плюс ряд дополнительных функций, кото
рые обычно можно найти только в библиотеках дорогостоящих инже
нерных подпрограмм. Более подробную информацию о функциях Excel и
их аргументах мо:жно получить в электронной справочной системе Exc~l.
:-.j Совет
Если вы не уверены в том, как рвботавт функция, поэкспериментируйте с
ней в рвбочем листе: попробуйте nодстввить в качестве врrументов рвз
ные знвчения и посмотреть, каковы будут результвты. А еще лучше де
лвть зто двже в том случве, если вы вбсолютно уверены в том, что знае
те, квк рвбответ функция, поскольку в любой документвции могут быть
ошибки . Квк в любом нвучном или техническом исследоввнии, окончв
тельным доказательством в двнном случве является эксперимент.
Дополнительная литература
Матаматнческие формулы
S.M. Selby, CRC Standard Math
1970).
ТаЫеs,
(Cleveland,
ОН:
Chemical Rub-
Ьer Со.,
Статистичаскиа формулы
С. Lipson and N.J. Sheth, Statistica1 Desigп and Ana1ysis of Engineering
Experiments (New York: McGraw-HЦl, 1973).
R.M. Вethea, B.S. Duran, and T.L. Вoullion, Statistica1 Methods for Sci·
entists and Engineers (New York: Marcel Dekker, 1975).
Обзорнь.е задачи
1.
Ячейка G5, содержащая ссылку на ячейку Н2, копируется в ячейку J7.
а. Каким образом будет откорректирована эта ссылка при копирова
Ь.
нии ячейки G5 в другую ячейку?
Как должна быть написана ссылка на ячейку Н2, чтобы в результа
с.
те ее копирования она никак не изменялась?
Как nолжна быть написана ссылка на ячейку Н2 , чтобы корректи
ровался только номер строки, а номер стол бuа оставался неизмен
ным?
Испоnьзованuе Ексеl в научнын
u
uнженернын прunоженuян
Как должна быть написана ссылка на ячейку Н2, чтобы корректи
ровался только номер столбца, но не строки?
е. Как изменяется ссылка на ячейку при перемещении, а не при ко
пировании содержимого ячейки?
С какого символа должна начинаться формула?
Если ячейка G5 содержит формулу со ссылкой на ячейку Н2, и. вы
копируете ее в ячейку 825, на какую я<Iейку будет указывать данная
ссылка?
На какие ячейки делается ссылка при указании ди'апазона 84:С8?
d.
2.
3.
4.
S.
При А1=Истина и 81=Ложь, каковы будуг итоги следующих формул:
= И(ИЛИ(И(А1,А1),А1)81),
= ИЛИ(И(А1,А1),И( А181))?
6.
Напишите строчную формулу, объединяющую строки "Меня зовут" и
"Билл".
7.
8.
9.
Напишите формулу, вычисляющую общий логарифм (основание
значения в ячейке А7.
Напишите формулу, вычисляющую секанс угла
1О
10)
градусов.
Напишите две разные формулы, чтобы обе они добавляли содержание
ячеек 81, 82, 83, 84 и 85.
условии, что ячейка А1 содержит строку
10. При
"Excel
для ученых и
инженеров":
а.
ь·.
Напишите формулу, извлекающую из ячей1<И А1 строку "Excel".
Напишите формулу, извлекающую из ячейки А1 строку "для ин
женеров"
с. Напишите формулу, извлекающую из ячейки А1 строку "ученых"
d. Напишите формулу, заменяющую строку "ученых" строкой
"собак", а строку "для инженеров" - "для лошадей".
Упражнения
1.
В ячейке R34 содержится
=P34*3+$R$7*N34
а.
Как изменится эта формула, если скопировать данную ячейку в
ячейку
Ь.
F40?
Как изменится эта формула, если данная ячейка буnет вырезана и
вставлена в ячейку
2.
формула:
F40?
В ячейке DЗ содержится формула:
=4*$СЗ+З*8$2
а.
Ь.
Какая формула будет в каждой из ячеек диапазона
данная ячейка будет скопирована в эти ячейки?
D4:D6,
если
Какая формула будет в каждой из этих ячеек, если скопировать
данную ячейку в ячейки ЕЗ:GЗ,?
с.
Какая формула будет находиться в .э.той ячейке, если скопировать
данную ячейку в ячейку Gб,?
rnaвa
ifj
3.
4.
5.
6.
1
Если у меня в ячейке ВЗ содержится формула, и я намерен скопировать ее в ячейки ·В4:В15, как зто можно сделать~ помощью мыши?
Напишите формулу Excel для вычисления тангенса 37 rрадусов.
Напишите формулу Excel для вычисления арксеканса 8,5 радиан.
Ячейки А1:А4 имеют следующее содержание:
А1: "Excel";
А2.: "для" ;
АЗ: "ученых";
А4: "инженеров".
Напишите формулу ячейки , находящую численное значение названия
этой книги, используя для этого значения в ячейках А1 :А4.
7.
Напишите формулу для вычисления стандартного отклонения для
диапазона незаполненных ячеек. Проиmорируйте незаполненные
ячейки. Сравните полученный результат с итогом, вычисленным с
применением функции СТОТКЛОН( ).
8.
Опишите два способа присвоения имен единичным ячейкам. Опиши
те, каким образом присваивается имя всем ячейкам в rруппе, если
имена для ячеек расположены слева от них.
9.
Напишите формулу для следующего уравнения:
дх2+ву2
Напишите формулу таким образом, чтобы ее можно было скопиро
вать в прямоугольную область, расположив значения х в верхней
строке этого прямоуrоm>ника, значения у
-
сверху вниз в его левом
:крайнем столбuе, а два коэффициента А и В
-
в двух ячейках вне
этого прямоугольника. Напишите формул'у таким образо~. чтобы ее
можно было скопировать в любое место в данной прямоугольной об
ласти, и чrобы она всегда ссылалась иа правильные .яЧейки, составляющих таблицу значений х и у адоль rраниu.
_
10. Что
происходит при вводе данных в формулу в виде строки? Напри
мер, каков будет результата следующей формулы:
=· 111195"+5 ?
Каков будет результат, если ячейка, содержащая данную формулу, бу
дет отформатирована как дата?
Гпава
2
Июкенерные расчеты
В этой таве...
./ Э.11ементь1 уnраВ11ениt1 Excel
./
Однокротный расчет
./
./
Вычиспенме сnиско зночений
./
Вычиспение та611иц с помощью nодсrановки
./
Вычисление функций
Вычисление та611иц с копируемыми форму11ами
Первая глава была посвящена описанию потенциальных возможно
стей
Excel,
делающих программу незаурядным средством для инженер
ных расчетов. В этой главе вы познакомитесь с реализацией этих воз
можностей. Начав с вычисления простых аналитических выражений, мы
перейдем затем к более сложным инженерным таблицам. С каждым
примером арсенал методов моделирования будет расширяться , позволяя
полнее использовать мощные средства
Excel.
Инженерам и ученым часто приходится вычислять аналитические вы
ражения, подставляя в них числа. Справиться с этой задачей нетрудно,
дQстаточно воспользоваться обычным .калькулятором. Вряд ли стоит
приобретать дорогую программу обработки элеюронных таблиц, чтобы
время от времени вычислять значение юiкого-нибудь выражения. Обыч
но в таких случаях не успевает компьютер загрузиться, а карманный
калькулятор уже выдает результат. Однако если нужно подставить в одну
и ту же формулу много различных наборов параметров, а полученные ре
зультаты занести в rаблицу, идея использовать .калькулятор выглядит не
столь привлекательной. Напротив, элеюронные таблицы предназначены
специально для этих целей и выполняют подобные задачи быстрее, про
ще и точнее.
Элементы управления
Excel
Чтобы начать новый расчет, откройте чистый лист в новой рабочей
•
книге. Запустите Excel или, если это уже сделано, закройте
текущую рабочую книгу с помощью команды Фвйл
Звкрытъ или кноп
ки закрытия окна , расположенной в верхнем правом углу окна рабочей
книги. Если последнее развернуто на весь экран, кнопка закрытия рас
положена в правом конuе строки меню (пользователям Macintosh следует
>-
iфl
Гnава
2
воспользоваться стандартной кнопкой закрыти я окн а). Если в рабо чей
книге содержится тюлезная информация , сначала сох раните ее с помо
щью команды Файл
>-
Сохранить , и только потом закр ойте соответст
вующее окно. Чтобы открыть новую рабочую книгу, воспользуйтесь ко
мандой Файл
ОК ( ри с .
>- Создать ,
выберите элемент Книга и щелкните на кнопке
2.1).
Лист рабоч ей книги
Строка формул .
Кнопка закрытия окна
Стро ка имен
Ст рока меню
Кноп ка восстановлени я размеров окн а
Пиктограмм а системного мен ю
Кнопка минимизации окна
Ярлычки л истов
Строка состояния
Рис .
2.1. Чистый
лист
Excel
В верхн ей части экрана поп строкой загол овка расположена панель
м е ню, а еще ниже
панели
-
панель инструм ентов Стандартн ая_. Каждая кнопка
инструментов соответствует команде мен ю ил и одн ого из диало
говы х о кон . С помощью кн оп ок панели ин струментов Стандартная ( рис.
2.2)
можно открывать и закрывать рабочие книги, вырезать , копировать
и вставлять объекты , отменять вы п олненные пействия . выпол нять проце-
•&i
Инженерные расчеты
дуры настройки и изменЯть масштаб отображения текущей книги. Чтобы
узн ать о назначении конкретного и нструмента, поместите на него указа
тель мыши . На экране появится краткое описание соответствующей
функции. Более подробная информация выводится в строке состояния,
распол оженной вдоль нижиеrо края окна Excel (над панелью задач Windows 95). Чтобы выполнить команду, достаточно щелкнуть на соответст
вующей кн опке панели инструментов. Под панелью инструментов
Стандартная расположена панель инструментов Форматирован ие. С по
м о щь ю ее кнопок можно н астраивать параметр ы отображения текста и
чисел .
"'
:s:
~
о
:::i;
о
с:
П анель и нструментов Стандартная
(1)
а.
~
ф
::r
ilf~{f:,=:: :J[~]J;-fi-'f~
~~bM·~~ l,lew!'pel
Па нел ь инструментов Форматирование
Рнс.
2.2.
Встроенные па нел и инструментов
Excel 97
•at
Гnава
2
Рабочие книги и рабочие листы
Пользователи ранних версий
ExceJ,
наверное , уже обратили внимание
н а п еренос ос н овного акцента с рабочих листов на рабочие к н иги. В вер
сиях , предшествующих Excel 5, основным объектом считался рабоч и й
л ист, которому соответствовал отдельный файл. П ри желании можно бы
ло создать р <tбочую книгу и встав ить в нее листы . Н ачиная с версии
5
на
передний пл ан выдв игается рабочая книга. Рабочая :кн ига , создаваемая
по умолчанию , состоит из 3 листов. Чтобы открыть лист, необходимо
щелКнуть на его я рл ыке в нижней части окна. Все листы рабочей юrиги
со храняются в одном файле.
В сего в
( ри с .
2.3).
Excel
насчитывается
встроенных панели инструментов
22
В основном они со ответствуют определенным ти пам листов и
поя вляются на экране только когда активен лист данного типа" Напри
мер , панель и нструме нтов
Visual Basic
по умолчанию отображается в том
случае, если активизируется лист м одуля. Однако с помощью команды
>
Вид
Панели инструментов можно открыть любую панель в люб ой мо
мент . Кроме того, можно создавать дополнительные панели инструмен
тов
с
кноп кам и ,
соответствующими
новым , написанным на макроязыке
M1r1osoft
Рис.
как стандартным
t- «"4 к,... d1
2.3. В строенн ые
командам ,
Yisual Basic fo r Applicatio11.
l!lr.JD
па нел и и нстру ме нтов
Excel
так
и
lifl.
Инжен ерные расчеты
Под панелями инструментов располагается стр ока форм ул (рис .
2. 1),
в которой выводится содержимое выдел енной в настоящий момент (ак
тивной) ячейки . В этой строке можно вводить и редактировать числа и
формулы. Все, что содержится в строке формул, вставляется в активную
я чейку листа.
М
При редактировании ~ыражений в левой части строки формул
~ появляются три кнопки . С помощью кнопки с крестиком можно
г:;л отменить
внесенные
измене!"1ия
и
вернугься
к
первоначальному
L!iJ
варианту
~
" птичкой", то внесенные изменения будут учтены, и содержимое
строки
содержимого
ячеики .
формул перепишется
результату
приводит
нажатие
Если
щелкнуть
в активную
кл авиши
ячейку.
<Enter>.
на
киопке
К
с
такому же
Третья
кнопка
запускает мастер функций , в окне которого выводится список имеюuiих
ся функций и их аргументы . Если щелкнуть на кнопке ОК, выбранная
функция будет вставлена в формулу.
В начале строки формул расположено поле Имя . В нем выбирается
им я текуше го выделенного фрагмента, а если таковой отсутствует
-
но
мер активной ячейки. Чтобы ввести в этом поле имя выделенного фраг
ме нта, выделите одну или несколько ячеек, введите их название в поле
Имя и нажмите клавишу
<Enter>.
41) Внимание
Если после ввода информации в поле Имя не нажать
<Enter>,
а щелкнуть
!:!З_дf?.l'ГО~ ячейк~,_ то ~~я .ОУ[J.е_т ~О!~РЯН_О .
... /
.!.Эк<?,!1Р~~~:.~ето_д .
Чтобы перейти к именованной ячейке или группе ячеек, выберите нужное .
имя из раскрывающего~я списка в поле имен . Ячейки с этим именем сра
зу _~~~делят~я .
..
Решение простого аналитического уравнения
от
З ависимость теплопроводности кремния от температуры в интервале
до 700 К описывается следующей формулой:
200
К(Т) =
Ко
(Т- Т0 ) ,
где ~=350 Вт/см, а Т0 =68 К .
Эта формула достаточно проста для карманного калькулятора , однако
многократные расчеты для разных температур потребовали бы много
в ре мени и вызвали бы ошибки. На этом примере мы рассмотрим раз
л ичные методы вычи сления аналитических выражений в Ехсе! .
iфl
Гnава
2
Однократный расчет
Вначале вычислим одно значение теплопроводности при комнатной
температуре. Для этого выполните следующие операции.
1.
2.
Откройте чистый лист.
С помощью мыши или клавиш управления курсором сделайте актив
ной ячейку
85.
3. Введите в строке формул следуюшес выражение: =350/(300-68)
- ..
\=З50!~) . . -
4. Нажмите клавишу <Enter>.
В ячейке 85 сразу появится число 1,508621
-
теплопроводность
кремния при комнатной температуре . Можете проверить результат с по
мощью калькулятора (ил и логарифмической линейки , если она у вас
есть) .
Использование в формулах ссылок на другие
ячейки
В· формулу теплопроводности можно подставить и другие значения
температуры . Для этого нужно вЬlделитъ ячейку
85,
изменить значение
температуры в строке формул и нажать клавишу <Enter>. Excel вычислит
формулу Ш1Я нового значения аргумента. Этот метод расчета может пока
заться несколько громоздким . Чтобы упростить подстановку, переместите
значение температуры из формулы
в смежную
ячейку ,
а в формулу
вставьте ссылку на эту ячейку:
·./Совет
Если не нажимать клавишу
<Enter>,
а щелкнуть в строке формул на кноп
ке с ~птичкой•, ячейка, расположенная под текущей, не станет активной .
1.
Вьщелите ячейку
85.
lфl
Инженерные расчеты
2.
Замените в формул е число
300
на ссылку А5. Формула в ячейке
85
должна принять следующий вид:
=350/{А5-68)
3.
4.
Выделите ячейку
Введите число
AS.
300 и нажмите
клавишу
<Enter> .
Экспресс-метод
•
Чтобы быстро вставить в ячейку
ней число
85
ссылку на параметр
300,
выделите в
300 и щелкните на ячейке AS. В формулу будет вставлена
ссылка на ячейкv А5.
В ячейке 85 по- прежнему содержится число 1,508621. Однако теперь
можно легко подставить другое значение температуры. Стоит ввести
нужную величину в ячейку А5 , и она тут же заносится в формулу. Ис
пользовать ссьшки на ячейки гораздо удобнее, чем редактировать форму
лу каждый раз , когда нужно изменить значение арrумента. Такой тип
формул является основным при построении в
Excel
инженерных таблиц.
Вычисление списка значений
Допустим , что необходимо рассчитать значение теплопроводности для
ряда температур. Можно последовательно вводить значения температуры
в ячейку А5 и записывать результаты каждого вычисления , однако на то
и существуют электронные таблицы, чтобы обрабатывать списки данных.
Давайте рассчитаем с помощью Excel теплопроводность кремния в
интервале от 200 до 700 К с шаrом 50 градусов. Вначале необходимо соз
дать список значений температуры, которые будуr подставляться в фор
мулу. Для этоrо выполните следующие операции .
I.
2.
3.
Выделите ячейку А5 .
Введите •rисло 200 и нажмите клавишу <Enter>.
Выделите ячейку Аб, введите число 250 и снова нажмите <Enter>.
Чтобы не вводить остальные значения , заполните нижележашие ячей
ки нужными величинами с помощью маркера заполнения (черный квад
ратик в нижнем правом углу актИвной области) .
4. Выделите ячейку А5. Нажмите комбинацию клавиш <Shift+..l.>.
·~·
5.
Выделите маркер запол нения и перетащите его вниз до ячейки А 15.
П устые ячейки зап олнятся числами , каждое из которых будет больше
п редыдущего на велич ину разности значений в яче йках А5 и А6 . Таким
образом , в выделенн ом диапазоне образуется последовательность <tисел
от
200
до
700
с шагом
50.
Скопи руйте формулу и з ячейки
85 в ячейки ,
смежные с теми , в кот орых содержатся значе ния тем пе ратуры.
6.
Выделите ячейку В5 и п еретащите м аркер заполнения вниз до ячейки
815.
Формула и з· ячейки
85:815,
этом
85
будет скопирована во все ячейю1 диапазона
посл е чего будут выполнен ы соответствующие вычисления . При
и спользованная
отн осительная ссылка в
каждом
случае и зменится
"'
Инженерные расчеты
таким образом , чтобы указывать н а ячейку, прилегающую сл ева к той,
что содержит формулу.
Выделение коэффициентов
П редположим , ч:то нужно проверить, как повлияет на теплопровод
н ость измене ние коэффициентов формулы. Кnнечно, можно изменить их
в ячейке 85 и скопировать новую формулу в остал ьные ячейки (копиро
вание в ячейку с данными приводит к их зам ене новыми данными) . Од
нако этот метод н еудобе н , есл и необходимо проверить несколько раз
.
личных значений
коэффициентов .
Лучше вынести
коэффициенты за
пределы формулы и зам ен ить их абсолютными ссылками .
/
~:
Эксп
ресс- метод
·-·-·
~
"
~
,
·~·
.
Чтобы быстро заменить в ф о рмуле число
350 на абсолютную ссылку , вы
82. В формулу будет вставлена
относительная ссылка . Чтобы сделать ссылку на 82 абсолютной ($8$2),
нажмите клавишу <F4>. Если нажать· <F4>, когда точка вставки находится
дел ите это число и щелкните н а яч ейке
в ссылке , то ей будет п о С.ледовательно присваиваться один из четы рех
в озможных типов .
1.
В ячейку
85
введите форм улу =$8$2/(А5-$ В$3 ) и нажмите клавишу
<Enter>.
2.
3.
В ячейку
82
введите число
350
В я чейку
83
введите ч и сл о
68
и снова нажмите
и нажмите
<Enter>.
<Enter>.
Теперь , когда коэффициенты зам енены абсолютными ссылками на
ячейки
с
соответствующими
формулу в ячейки диапазо на
числ ами ,
86:815.
можно
просто
скопировать
Абсолютные ссыл ки будут пере
несены без изменени й , по - прежнему указывая н а коэффици ентЬr в
4.
ячейках 82 и 83.
Выделите ячей ку
85
и п еретащите маркер зап олн ения вниз до ячейки
815.
П олученная таблица изображена на рис.
2.4.
В ячейках
82 и 8 3 мож
но ввести другие значе ния парам етров Ко и То, которые сразу будут под
ставлены в форм ул ы ячее к диапазо на
85:815.
Оформление рабочего листа
К сожалению , ни.кто, кроме н ас самих , не поймет смысла таблицы ,
и зображенной на ри с.
2.4,
а через месяц-другой и мы не сможем вспом
нить , о чем шла речь . Чтобы любой пользователь, включая автора , знал ,
что же вычисляется н а этом листе , необходи мо добавить несколько заго
ловков и м еток .
Вы уже знаете , что для завершения ввода данных в ячейку и выпол
нения команд необходимо нажать клавишу
<Enter>
или одну из кл авиш
"'
Гnава
2
управления курсором или же щелкнугь на расположенной в строке фор
мул ююпке с "птичкой". В дальнейшем изложении инструкция нажать
клавишу <Enter> будет присутствовать только в тех случаях, где это не
очевилно.
Рис.
2.4.
Подстановка набора данных в формулу теплопроводности с пере
менными коэффициентами
Ввод меток. Начнем с ввода информационных меток.
1. В ячейку А1 введите следующий
2. В ячейку А2 введите КО.
3. В ячейку АЗ введите то .
заголовок: Теплоп роводность кремния.
...
200. 2.Б51515
Выравнивание меток. Заrодовки в ячейках А2 и АЗ необходимо
выровнять по правому краю . Параметры форматирования ячеек, та.кие
как шрифт,
размер шрифта и
цвет определяются
в диалоговом окне
Формат ячеек, открываемом с п омощью команды Формат>- Ячейки . Для
большинства типичных атрибутов форматирования на панели инстру
ментов Форматирование есть соответствующие кнопЮf (рис .
1.
2
2.2).
Выделите ячейки А2 и АЗ.
liiiJ
· · ·
Щелкните на кнопке По правому краю на панели инструментов
или выберите команду Формат>- Ячейки, перейдите на вклашсу
Выравнивание , из списка по горизонтали выберите элемент По правому
краю и щелкните на кнопке ОК.
'1' ' " Те~аоеодиость qiewн'(A
-
l<DI
ЭSJ
68,,
~
'
200
2,Б5t515
Инженерные расчеты
В)
Центрирование заголовков. Теперь необходимо ввести и выров
нять п о uентру заголовки двух столбuов данных .
1.
В ячейку А4 введите Т(К) .
..... Примечание
, В Excel для Windows 95 появилась новая функция -
Автозаnолнение . В
этом режиме ввод дан ных в ячейках завершается автоматически на ос
новании значений . введенных ра н ее в том же столбце. В данном случае
r после ввода Т программа добавит о . поскольку в этом столбце уже есть
ячейка со значением ТО . Продолжайте ввод . не обращая внимания на ав
томатическое заполнение . Если такое поведение программы действует
ва м н а нервы , выберите команду Сервис>- Параметры , в появившемся
диалоговом
окне перейдите на вкладку Правка и отключите
режим
Автозаполнение значений ячеек.
2. В ячейку 84 введите
3. Выделите ячейки А4
4. •
Щелкните на
К(Вт/( см*К))
и
84.
кнопке
По
центру
на
панели
инструментов
Форматирование .
ТеплоnроводwосlЪ IQ!SMHИ\:\'
14)
..
"Т1J
Т (!<)
.
350
!iЗ
,<(Вт/сw-К)
200 2.651515
Расширение столбцов и округление их содержимого . Содер
жимое ячейки В4 не помешается в ней целиком, а у чисел в столбце В
че ресчур много знаков после запятой .
Необходимо уВеличить ширину
столбца и отформатировать числа так, чтобы в них бьшо меньше деся
тичных знаков .
1.
Поместите указатель мыши на линию , разделяющую заголовки столб
цов В и С . Он примет вид вертикальной черты с двумя rоризонталь
ными стрелками , указывающими в разные стороны .
~ .ffi:.~~ " i1!f.;IO!t
350: .
ВМОП РDВ ОДНО&ТЬ кpe r.. Htlfl
.....
iФ.
m·
Т (К)
' -~
2.
-
re·
.
<(Вт/ом-К)
200 2.651515'
Удерживая нажатой левую кнопку мыши , перетащите правую границу
заголовка столбца В примерно на 1 см . Во время этой операции зна
чение ширины столбца будет выводиться в левой части строки формул .
Сделайте ширину столбца такой. чтобы в нем бьш виден весь текст.
Гnава
fjl
3.
Выделите группу ячеек
85:8 15.
2
Выберите команду Формат>- Ячейки и
п ерейдите на вкл адку Число .
4.
И з сп иска Числовые форматы выбери те элемент Числовой . В строке
Числ о десятичн ых зна ков введите значение
._/
'
2
и щелкните на кнопке ОК.
~К.~~:11~~~9-~етод
f~J .~ 1'щ:,;;фУ 1г-. J
~ФОl><О"''
l!lo.\
1 '-":• \
~
Аме)t.1"111>.1
~оеь-1
Д4fО
г р.,,. '""'f.'I!> t:i>)'!'r1 """'~"" ( )
Bpe:NR
Проu.е"Т"'-IЙ
Q.tpi.JЦ~~~~:
ДроМ.Н
:жt~~nы--...1
Тtжсrоеь~
~cw;o=~ .:J
...,,__..фq>о<о• _,,.~"""
....
crio<o&..•.act-..ce". Aflt et.COA4 ;а.~~ t.cnor.))'JOТ'CA t~ ~~
·~"-~.
.
?).
1
9n-
1
Обрамление и отключение сетки. Чтобы улучшить внешни й вид
табл иuы , добавьте обрамление некотор ых ячеек и погасите л инии сетки
рабочего л иста.
1.
Выделите ячей ки А4 и
А.
1
,2
в
1
Q.
84.
(}_
Теn.nоnроводносrъ кремни~
~
.• 1
.5
. 1
m
350
66
:.:001
2.651
1<1)
т (К)
2 Г1"J 1[В1 Щелкните . на стрелке вниз рядом с кнопкой Границы на
L==lJ ·,. .
панели инструментов Форматирован ие и выберите из
п ояви вшейся пали тры элемент внеш него обрамления .
3.
Выдел ите группу ячеек А5 : 8 1 5 и щелкните на кнопке Границы . П о
скол ьку активным ти п о м рамки является обрамление, этот элем ент
отображается н а кн опке Гра н ицы .
4.
В ыдел ите диапазон ячеек В4 : В 15 и щелкните на кнопке Грани цы.
M;J
Инженерные расчеты
>
Параметры ,
сетка ,
после чего
Ч тобы скрыть л ин ии сетки, выбер ите ком анду Сервис
5.
перейдите н а 1ЗJ9IадКу Вид и
отключите режим
щелкните на кнопке ОК .
,t__ .., f!~,..,~ Q.. -...'Ь: L
..
"!'"'"""
1 • Теn.1\О"роводносn.
2
кn
эsо
ТО
3
4
ЕВ
т
5
6
71
6"
9
10
!1 '
12
'з
ц
15 -----'=.r..---"'=
16
Рис.
2.5. Готовый
рабоч ий л и ст для простого ур ав не н ия теплопроводности
Готовый рабоч ий лист должен выглядеть так, как п оказан о на рис .
Все ячей ки данных по мечены и взяты в рам ку. Смы сл такой табл и
2.5.
цы понятен любому. Е ще м ожно было бы вставить формулу в качестве
заголов ка (ввести фор мулу с одиночной к авыч кой перед знаком равенст
ва), чтобы пол ьзователь мог видеть , что именно вычи сля ется , не загля
ды вая в ячейки, содержащие формулы . А теперь, если хотите сохранить
рабо ч и й лист, выберите ком а нду Файл
>
Сохранить или щелкните на
кнопке Сохранить на пан ел и инструм енто в Стандартная .
Н а р ис.
таблице
2.6
по казан о содержимое всех ячеек листа. Чтобы вы вести в
формулы
П араметры ,
вместо их
перейди те
на
зн ачен и й,
вкладку
Вид ,
выберите ком анду
включите
щел кните н а кнопке ОК.
!
,.;,_ : ·,;л..;.-~.........'._....._."-"'""'"'"""'"'"
Тем0<1роводносто <1>е ....и•
2
l<IJ 350
m~~----~=""'......,..,.._---.
iз~·----------Т fК1
К (Вт/с... К)
· 5 1200
=SBl21(A5-$BS3)
1!, ~250
1 ЗОD
•SBS21(;1ИBH)
=SBS21(A7·1BIЗ)
•$8$2/(АВ·SВSЗ)
=$ВS21(АСНВ$3)
!1 .1350
О 400
. !!~1 450
1.1 1JSOO
l i 550
=$8S2/(д10-$ 8SЭ)
=$8$2/(д1НВSЗ)
•IBS2/(д12-S8SЗ)
1Э1sоо
= 18S2t(д13-18S3)
15 700
=IBS2/IA1!>-18$3)
'1.J. ~650
~SBS2/(д14-IBSЗ)
16'
Рис .
2.6.
Содержимое ячеек на листе Те пл опроводность
режим
Сервис
>
формулы
и
.
ill
Гnава
2
/
Экспресс-метод
Для быстрого переключения между формулами и значениями исп ользуй
те ком бин ацию клавиш
К[lавишей <ТаЬ>).
<Ctrl+'> (символ ударения , расположенный над
_
Создание таблиц пуrем копирования формул
Предыдущий раздел бьm посnящен созданию инженерной таблицы
значений теплопроводности кремния . Создание подобных таблиц являет
ся , видимо , второ й по популярности вычислительной задачей среди уче
ных и инженеров (на первом месте стоит вычисление отдельных значе
ний функции с помощью калькулятора) . Существует два способа создать
табл ицу в Excel: путем копирования формулы или с помощью команды
Данные
>-
Таблица подстановки. Для уравнения теплопроводности мы
воспользовались первым из них. Это , наверное, наиболее универсальный
способ создания таблиц значений на листе.
В последующих разделах
описан ряд инженерных таблиц, созданных подобным образом . Исполь
зование команды Дан нь1 е >- Таблица подстановки обсуждается позже .
Построение таблиц с одним аргументом
Начнем с создания таблицы с одним аргументом. Такие таблицы об
разованы одной или несколькими формулами , каждая из которых имеет
один переменный параметр и возвращает один результат.
Прецессия северноrо полюса мира
В астрон омии для оп.ределения положения небесных тел принято ис
пользовать
(рис .
две
системы
координат:
экваториальную
и
эклюпич~скую
2.7).
Экваториальная систе.ма координат основана на ориентации оси вра
шения Земли . Представьте себе глобус с нанесенны ми на него линиями
широты и долготы , но без материков , и с такой же ориентацией , как у
Земли. Если }1iеличитъ размер глобуса до бесконечности , получим небес
ную сферу в экваториальной системе координат.
Плоскость земного экватора также является плоскостью экватора не
бесной системы координат,
и называется небесным экватором.
Если
продолжить ось вращения З емли сквозь северный и южный полюсы за
пределы небесной сферы, они образуют полюса мира . Северный полюс
мира находится вбл изи Полярной звезды , которая веками использовалась
в качестве навигацишшоrо ориентира.
Положение светила (точка Р на ри с.
2. 7)
в экваториальной системе
определяется так же, как и точки на поверхности З емли
-
координатами
широты и долrоты . Подобно широте, склонение небесного тела
-
это
,,,
Инженерные расчеты
величина дуги от положения тела до небесного экватора к северу или к
югу (дуга от В до Р на рис. 2.7). Экватор лежит на нулевом градусе, а се
верный и южный полюса мира - на 90 градусах северного и южного
склонения .
Вторая координата подобна долготе и называется прямым восхожде
нием. Прямое восхождение тела измеряется в часах , минутах и секундах
от точки весеннего равноденствия (точка А , в созвездии Овна , рис.
2.7)
к
востоку до меридиана, проходящего через светило (дуга из А в В на рис.
Меридианом называется линия, соединяющая небесный экватор и
полюс мира , подобно ме.ридиану на поверхности Земли .
2.7).
_.Полярная звезда
Линия прецессии
,
северного полюса 1
1
Экли птика
Небесный экватор
Точка весен него
Линия перемещения
равн оденствия
1
точки весеннего
равноденствия
Рис.
2.7.
Ориентация экваториальной и эклиптической систем небесных ко
ординат. Перемещение экваториальной системы вследствие прецессии оси
вращения Земли
Эклиптическая система координат подобна экваториальной , но бази
руется не на плоскости земного э кватора, а на плоскости орбиты Земл и
вокруг Солнца. Если спроецировать орбиту Земл и на небесную сферу,
она образует большой круг , называем ы й эклиптикой . На девяносто гра
дусов выше или ниже эклиптики находятся эклиптически е полюса . Ко
ординатами являются эклиптические долгота и ш ирота (дуrи АС и СР ,
соответственно ,
см .
рис .
2.7).
Эта система
координ ат
также
п одобна
долготе и широте на земной поверхности , но ориентир ован а относитель
но эклиптики , а не э кватора.
Большие круги , образуемые эклиптикой и небесны м экватором , пере
секаются в точках весеннего и осеннего равноденствия под углом около
·23
градусов . Это хорошо известный 2 3-rрадусный наклон Земли п о от-
rnaвa
2
ношению к плос~ости ее орбиты, называемый наклоном эклиптики к
экватору.
Экваториальная система координат полезна при астрономических на
блюдениях с Земли, а эклиптическая - при расчетах небесной механики
относительно Солнца. Эrи системы взаимозаменяемы, достаточно учесть
простой 23-rрадусный поворот. К сожалению, на самом деле не все так
про~о. Зависимость между двумя системами не постоянна, а изменяется
во времени.
Воздействия Солнца и Луны вызывают отклонения во вращении Зем
ли. Так бывает, если подтолкнуть сбоку вращающийся волчок. Эти коле
бания называются прецессией , в результате которой северный полюс
Земли , а значит и северный полюс мира, перемещается по небольшой
окружности с радиусом в 23° вокруг северного эклиптического полюса.
Поскольку плоскость эклиптики постоянна, то изм еняется положени е
точки весеннего равноденствия, которая является точкой отсчета пря
мого восхождения и эклиптической долготы.
Воздействие планет также вызывает прецессию в эклиптике, в резуль
тате чего эклиптический полюс также перемещается. Если вы не астро
ном, то эти системы координат, колеблющиеся вокруг вселенной, мoryr
показаться вам воистину ужасными. Но период колебаний составляет
приблизительно 26 ООО лет, так что эти смещения вполне терпимы. Сле
дующие две формулы позволяют вычислить годовое изменение эклипrn
ческой долготы (Х) и значение наклона эклиптики к экватору (Е)
х
= 50.2564 + 0.00222('1
1
'
Е = 23°27'8.26 11 - 0.4684"t,
где
t -
количество лет, прошедших после 1900-го годв. Эти изменения
не сильно влияют на координаты светил, но их необходимо учитывать в
каждой обсерватории, находящейся на Зем.zrе , поскольку она фиксирова
на оmосительно блуждающей системы координат планеты .
Сейчас
мы
создадим таблицу годовых изменений
эклиптической
долготы и наклона эклиптики к экватору для каждого десятилетия, про
шедшего между 1900-м и 2000-м годом.
Настройка рабочего листа. Начнем с выбора ширины столбцов и
вв~дв заголовков. Обычно ширину столбцов подбирают после вводв дан
ных, однако в данном случае будет проще сделать это в начале.
1.
Откройте новую рабочую
книгу или
чистый лист существующей
книги. Дважды щелкните на ярлыке текушего листа, из~ените его
имя на рис. 2.8 и нажмите клавишу <Enter>. Можно также щелкнуть
на ярлыке правой кнопкой мыши и воспользоваться командой
2.
Переименовать.
Измените ширину сто}\бцов А-Р в соответствии со следующим спи
ском:
-~·
инженерные расчеты
Столбец
А
в
с
Ширина
з
5
8,43
9,57
3
3
D
Е
F
Столбец
Ширина
Столбец
Ширина
7
1
м
н
7
N
1
1
о
J
5,43
р
к
2
1
G
L
2
8,43
4,57
3. В ячейку А1 введите текст Прецессия северного полюса мира.
4. В ячейку СЗ введите текст Годовая прецессия.
5. В ячейку С4 введите текст по долготе.
6. В ячейку Е3 введите текст Отклонение.
7. В ячеjiiку Е4 введите текст эклиптики.
8. В ячейку В4 введите текст Дата и выровняйте текст по правому краю.
9. В ячейку JЗ введите текст Годовая прецессия по долготе.
1О. В ячейку J6 введите текст Отклонение эклиптики.
11. В ячейку М9 введите текст За t лет, начиная с 1900г.
Ввод уравнений. Чтобы любой, взглянув на рабочий лист, мог по
нять, что здесь вычисляется, необходимо ввести формулы в виде текста.
При этом коэффициенты в текстовом представлении выражений должны
быть реальными величинами, на которые ссЪIЛаются формулы рабочего
листа.
>
1.
2.
3.
4.
5.
В
В
В
В
ячейку J4 введите текст Х= (без пробелов).
ячейку М4 введите число 50,2564.
ячейку N4 введите текст"+ (без пробелов).
ячейку 04 введите число 0,000222.
В ячейку Р4 введите текст
"*t
(без пробелов).
В следуЮщую ячейку необходимо ввести символ градуса
(0 )
из расши
ренного набора DOS. На большинстве компьютеров для вводв подобного
символа необходимо набрать m. цифровой панели его код ASCll (в дан
ном случае 0176), удерживая нажатой клавишу <Alt>. В Windows 95 мож
но вставить символ градуса с помощью утилиты Таблица символов. Для
этого щелкю_J:те на кнопке Пуск и выберите из меню Программы команду
Стандартные~ Таблица символов. Дважды щелкните на символе", затем
на кнопке Копировать, перейдите в Excel, выделите нужную ячейку и
вставьте в нее этот символ с помошью комбинаuии клавиш
6.
7.
В ячейку
J7
<Ctrl+V>.
введите текст е=23° (без пробелов).
В ячейку К7 введите число
27.
В ячейку L7 введите два символа ' (одинарные кавычки). Первая из
них используется в Excel как символ выравнивания (д11я совместимо
сти с
Lotus 1-2-3),
а вторая свидетельствует о том, что величина в
ячейке К7 измеряется в минутах.
8. В ячейку L7 введите два символа' (одинарные кавычки).
9. В ячейку М7 введите число 8,26.
10. В ячейку N7 введите символ'' (двойные кавычки).
11. В ячейку 07 введите число -0,4684.
12. В ячейку Р7 введите текст "*t (без пробелов, двойные кавычки).
IФI
Гnава
2
Ввод значений. Далее необходимо ввести даты , которы е будуr под
ставляться в формул ы .
1.
2.
3.
4.
В я чей1'.--у 85 введите число 1900.
В ячейку 86 введите число 191 О .
Выделите ячейки 85:86.
С помощью мыши перетащите маркер заполнения вн из до ячейки В 15.
Все ячей ки диапазона 85:615 будут заполнен ы последовательностью
чи сел от
до
1900
2000
с шагом
1О.
Ш аr определяется разностью чисел в
первых двух ячей ках.
Ввод формул прецессии и отклонения . Введем теп ерь форм улу
годово й прецессии п о долготе .
l.
2.
В ячейку С5 введите формулу =$М$4+$0$4*( 85-1 900) .
В ячейку 05 введите символ " (двойные кавыч ки).
П осле этого нужно ввести формулу отклон ения экл ипти ки. За такой
коротки й п ромежуток вр емен и ч исло гр адусо в этой вел ичин ы не изме
нится, и поэтом у лучше ввести его один раз, \Jе м постоя нно вычислять.
3.
В я чей ку Е5 введите чи сл о
23°.
П оскольку число м и н ут должно и змениться, необходимо вычисл ить
количество секунд и раздел ить
ero
на
60.
И скомое число минут равн о
целой части от полученного результата.
4.
В яче йку
введите формул у
FS
=( $ К$7)+ЦЕЛО Е (( $М$7 +$0$7*(85-1900)/60)).
5.
В ячей ку
G5
введите два символа ' (одинарные кавычки).
Ч исло се1'.")'Нд рав но остатку от дел ени я обшего количества секунд на
поскольку частное переходит в столбец ми нут.
В ячейку Н5 введите формулу =ОСТАТ($М$7+$0$7"(85- 1900)+60, 60) .
60,
6.
7.
В яче йку
О сталось
15
введите си мвол
скопировать
''
(двой ные кавычки).
содержимое
зап олне1IНых
ячеек
в
нижние
ячей ки таблицы . Для это го выдел ите ве рхн юю строку чи сел и перета
шите вни з маркер за п ол н ения .
8.
9.
Выделите rpyпn y ячеек С5 : 15 .
П еретащите маркер заполнен ия , расположенный в нижнем пр авом
углу выделенной области , вниз до ячейки
11 5,
и omycrnтe кноп ку мы
ши . Формулы и числа будут скопированы в оставшуюся часть таблицы .
Форматирование рабочего листа. Теперь нужно определить числ овой фо р мат ячеек с четырьмя десятич ным и знаками , разграфить таб
л ицу и отключить сетку.
1.
Выделите ячейки Н5 : Н 1 5 и, удерживая нажатой клавишу
<Ctrl> , выде
л ите яч ей ки С5 : С15 .
2.
Выберите команду Формат>- Ячейки . В открывшемся диалоговом окне
перейдите н а в кладку Ч исло. Выберите из сп ис ка форматов элемент
Ч исповой и установите количество дес ятич ных знаков п осл е запятой
равным ч етырем. Щелкните на кн оп ке ОК.
3.
Выделите ячейки С5 : 11 5 . Удерживая нажатой клавишу
те ячей ки
83:8 15, 83:14
и
J3:P9.
<Ctrl>, выдели
1:11
Инженерные расчеты
.....
Примечание
Чтобы единообразно отформатировать несколько несмежных яч еек. нуж
но выделить эту несвязную группу, удерживая нажатой клавишу <CtrJ> и
щелкая последовател ьно на каждой из ячеек, а затем в ыбрал·, нужный
формат. Можно поступить и по-другому: выделить и отформатировать
одну ячейку , затем выделить следующую ячейку или их груп пу и восполь
зоваться командой Правка
комбинацией клавиш
>- Повторить
<Ctrl+Y> ..
форматирование ячеек или
4. ~ На панели инструментов Форматирование раскройте палитру
~ Линии рамки и щелкните на кнопке внешней границы . Вокруг
выделенных групп ячеек появятся рам ки .
5.
Выделите группы ячеек СЗ:D4 и ЕЗ : 14 (поскольку диапазоны не связ
ны е, используйте кл авиш у
6.
7.
<Ctrl>).
rmJ Щелкните иа кнопке Центрировать
ll:!!I инструментов Форматирование.
по столбцам
на панели
Выберите команду Сервис>- Параметры . В п оявившемся диалоговом
окн е п ерейдите на вкладку Вид и отключ ите режим сетка . Щелкните
на кн опке ОК.
8. rt=ij Сохраните
L!!!J Сохранить.
рабочую
книгу
на
диске,
Полученный рабочий лист изображен на рис
дан
1900
1910
1920
193J
1940
1950
1960
1970
1 9е)
1 9'.Ю
2!Ш
Годоеа• nрвцесси•
Оtкпонеt1ие
no .n Q.1'roт~
з~ и mи~си
ГGдова• nрецесси•
Х=
•
3.5760.
23•
Э5.
•
ZJ'
Э5.
50 ;261]1 •
5С,2SЗ1 •
23•
23•
Э5.
56,В!Ш .
Э5.
54,21:В:J
50~·
50 .25ВБ
50.2663 .
50,"675 .
50;2697 •
50Д19.
50,2742 •
50.2764 .
50,2783 .
щелкнув
на
Кнопке
2.8.
no до~rt>те
50~+
ощ:r:т ...,
6 .2&.'О
Отк.nо~~1·н1е экnиmики
В,"6.
IF23' '17'
.Q,4684 -,
•
34 . 49,5240 .
34 . Ц .6400.
34 . 40.15Ю •
34 . 35.(?д!.
34 . 13.7800.
34 . 26,1040.
2J'
23'
2J'
ZJ'
23'
ZJ'
23' 34. 21 4;'\JJ.
За t
.ner
начми.аА с
19CIOr
Рис . 2.8. Таблицы годовой прецессии небесной долготы и отклонения эк
липтики в п ериод с 1900 по 2000гг.
Зависимость концентрации собственных носителей
заряда в кремнии от температурь~
Концентрацией собственных н осителей заряда в полупроводнике н а
зывают концентрацию электронов или дь1рок в собственном полупро
водни ке ,
находящемся
в
состоянии
термодинамического
равновесия .
,,,
Гnава
2
Этот параметр играет важную роль при математическом моделировании
полупроводниковых приборов. Собственным называют полупроводник,
концентрация электронов в котором равна концентрации дырок, когда
он находится
в состоянии равновесия.
Такая ситуация соответствует
очень чистому кремнию при комнаrnой температуре или менее чистому
-
при более высокой. Дыркой называют незанятое электроном "свободное
место" в атомной структуре полупроводника. Дырку представляют в виде
элементарной частицы с положительным зарядом, равным по модулю заряду электрона.
·
Следующая формула описывает зависимость концентрации собствен
ных носителей заряда в кремнии (п;) от температуры.
n,: 4M,(2::ok).
3) 1/2 (
(
•
. Т'12е-Е,/1kТ
• ) 3/4
m~7·
.
Ее коэффициенты имеют следующие значения.
КоЭффициент
Значение
Описание
Мс
6
Количество эквивалентных электрон
то
О,91095х10-зо кг
1,38066х 1о-2з Дж/К
ных долин в кремнии
·
k
h
6,62618х1Q·З4 Дж·С
о,зз т0
0,56 т0
Масса покоя электрона
Постоянная Больцмана
Постоянная Планка
Эффективная масса электрона
Эффективная масса дырки
Температурная зависимость ширины запрещенной зоны в кремнии
Eg
с хорошей точностью описывается следующей формулой:
Е
g
==(EGO- EG1·T2)
T+EG2 q'
где EGO=I,17 эВ, EG1=4,73xl0-4 эВ/К, EG2=636 К, а q=l,60219xJO·l9 Кл
-
заряд электрона.
Выражение, описывающее ширину запрещенной эьны, можно вста
вить в уравнение концентрации собственных носителей заряда непосред
ственно, и получить единую формулу для расчетов. Однако она бьmа бы
слишком сложна. Проще рассчитать эту величину отдельно, а получен
ный результат использовать для определения концентрации собственных
носителей.
В формуде концентрации собственных носителей есть сложный ко
эффициент, состоящий из множества констант. Вычислять его значение
заново при каждом обращении к формуле
-
значит понапрасну тратить
ресурсы компьютера и замедлять расчет рабочего листа. Чтобы повысить
эффективность расчетов, объедините все константы в одну и поместите
ссЬUiку на нее во все ячейки с ·вычисляемой формулой. Кроме того, не
обходимо присвоить используемым константам имена, упрощающие по
нимание их смысла.
l:jl
Инженерные расчеты
Создадим таблицу значений концентрации собственных носителе"й за
ряда в кремнии.
Ввод значений. В первую очередь необходимо ввести параметры
уравнения.
1. Откройте новый рабочий лист и назовите его рис. 2.9.
2. Заполните ячейки и выровняйте их содержимое следУЮщим образом.
Выравнивание
Ячейка
Значение
А1
Концентрация собственных носителей
заряда в кремнии
А5
EGO=
EG1=
EG2=
А7
Конц.=
83
84
85
4,7ЗЕ-4
АЗ
А4
По правому краю
По правому краю
По правому краю
1,17
636
Далее следУет вычислить коэффициент правой части уравнения кон
центрации собственных носителей и изменить его размерность с 1/м3 на
1/смз.
3.
-
В ячейку В7 введите следующую формулу:
=КОРЕНЬ(4*6*(2*ПИ()*О, 91095Е-30*1,38066Е-2З/(6,62618Е-34}"2}"3)*
(О,33*0,56)"(0, 75}*1,ОЕ-6
Вычислив это выраженне, можно заменить формулу ее значением.
Однако лучше этого не делать, чтобы другие пользователи (да и вы сами
через некоторое время) смогли определить, что здесь вычисляется.
./Совет
Чтобы заменить формулу или ее часть соответствующим значением, вы
делите соответствующую ячейку и перейдите в строку формул. Выделите
часть формулы, которую нужно заменить и нажмите комбинацию клавиш
<Ctrl+=> (на Maciпtosh - <Cmd+=>). Чтобы заменить выражение его зна
чением, щелкните на кнопке с изображением "птички" или нажмите кла
вишу <Eпter>, а чтобы вернут~ исходную формулу- щелкните на кнопке
х или нажмите клавишу
<Esc>. Данный метод удобен,
если нужно увидеть
не формулу, а ее значение, а таюке во время отладки рабочего листа, ко
гда нvжно определить значение части mоомvлы.
Присвоение имен ячейквм и дивпазонвм. Теперь введем имена
ячеек, которые впоследствии будут использоваться в формулах. Это мож
но сделать с помощью команд Вставка ~ Имя ~ Создать -и Вставка ~ Имя
~ Присвоить. Первая служит для создания имен из заголовков строк или
столбцов выделенного диапазона, а вторая позволяет присвоить имя от
дельной ячейке или диапазону ячеек. При вычислении по формуле
Excel
вначале заменяет использованные в ней имена соответствующими число
выми значениями, а затем производит вычисления.
Гnава
fjl
1.
2
Выделите группу ячеек АЗ : В7 и выбер ите команду Вставка )о> Имя )о>
Создать .
Co:utdJь ммettdl
2.
ПIЗ
В появившемся диал оговом окне Создать имена включите реж.им В
столбце слева и щелкните на кнопке ОК.
./Совет
Команда Вставка
,...
Имя )о> Присвоить позволяет присвоить имя кон
кретной вел ичи не . В строке Формула появившегося диалогового окна
Присвоить имя введите ч и сло . определите его имя в строке Имя и
щелкн ите
на
1 , 0546Е-З4 имя
кноп ке
h_c
Добавить .
Например,
можно
присвоить
числу
чеf?ТОЙ (постоянная Планка , .подел~нная на 2п) .
Теперь выделенным ячейкам столбuа В при сFоены имен а, со ответст
вующие содержимом у стол бца А , но без знаков равенства. Спи сок имен
вы во.11.ится в диало говом окне Присвоить имя , открываемом с помощью
команды Вставка )о> Имя )о> Присвоить. Если вьщел ить некоторое имя , его
определение будет отображено в строке Формула . Чтобы увидеть имя
ячейки , вьщел ите ее.
Имя (если таковое существует) появится в поле
имен в левой части строки формул .
Обратите внимание , что ячейкам
EG2_,
а не
EG1
и
EG2.
черкивания ,
поскольку
(столбец
строка
EG,
1)
84
и В5 присвоены имена
EG1_
и
Программа автоматически добавила с имвол под
EG1
является допустимой
ссылкой на ячейку
и не может использоваться в качестве имени . При
использовани и в алгебраических выражениях таких переменных , как
Al
или С7, также нужно использовать символ подчеркивания или какой
нибудь друтой , чтобы имен а н е выглядели как ссылки . Есл и вам не нра
вится подчеркивание , выбирайте другие им ен а.
Ввод заголовков и знвчений температуры. Чтобы сделать таб
лицу бол ее лонятной , нужно ввести н еобходимы е надписи.
l:fJ
Инженерные расчеты
l.
Заполните ячейки рабочего листа и выр овняйте их содержимое , как
указано ниже . Чтобы создать верхни й индекс в ячейке . F3, выдел ите
число. -З и воспользуйтесь командой Формат>- Ячейки . В появи вшем
с я диалоговом окне пере йдите на вкладку Шрифт и включите режим
Верхний индекс .
2.
3.
Ячейка
Содержимое
Выравннвание
DЗ
Т(К)
По центру
ЕЗ
Еg(эВ)
FЗ
ni(cм·)
П о центру
П о центру
В ячейку D4 введите числ о 300, а в ячей.ку D5 - число 350.
Выделите ячейки D4:D5 и переташите маркер заполнения, располо
женный в нижнем прав ом )ТЛУ выделенного фрагмента, вниз.до я чей
ки
D14.
Ввод формул. Теперь нужно ввести формулу ширины запрешенной
зоны . Если в форм ул у входит и мя, его можн о ввести л ибо с клавиатуры ,
л ибо с п омошью команды Вставка>- Имя>- Вставить . В последн ем случае
откроется диал оговое окн о Вставка имени , в котором нужно выбр ать од
но из определенны х р анее име н .
Ш§fЧt• }Щ!
?lxl
v' Совет
Можно ввести формулу с несуществующим именем и определить его
позже. Пока имя н е определено , в ячейке с формулой буде• выводиться
строк~ #~ИМЯ?.
J.
_.
В ячей.ку Е4 введите формулу
;;;EGO-EG1_ *D4л2/( D4+E2_) .
Далее нуж.чо ввесrn выражение для конuентраuи и собстве нных н ос и
телей заряда с учетом темпера1уры и ш ирины запре шен н ой зоны .
2.
В ячейку F4 введите следующую формулу:
== Cons*(KOPEHb(D4)Л3)*EXP(-E4*1 ,60219E- 19/(2*1 , 38066E-23*D4))
Осталось ли шь скопировать фо р м улы в п усты е яче йки табл иuы .
3.
Выделите ячейки E4:F4 и перетащите маркер заполнения вниз до
ячейки
F14.
Форматирование
ячеек. Для повышения
наглядности создайте
л и н ии рамки и отформ атируйте ячейки с результатами вычислений .
1
Отформ атируйте указ ан ны е ниже ячей ки с помощью команды Формат
>-Ячейки .
l:fj
Гnава
2
Формат
Ячейки
Е4: Е14
Чи слово й , 2 десятичных знака
Экспонен циальны й , 2 десятичных знака
F4:F14
С помощью кнопки Линии рамки создайте обрамлен ие ячеек таблицы
(рис. 2.9). Ч тобы скрыть л инии сетки, выберите команду Сервис
2.
>-
Параметрь1 , в появившемся диалоговом окне перейдите на вкладку
Вид и отмен ите режим сетка .
fiil·}Сохраните рабочую книгу.
3.
1
Окончательный вариант рабочего листа изображен на рис .
. i\.
1
2
З
~
С
f:!
_.]'..;! Q_,~J~:...E
ili' .• E.• -.з.;...,.G..:d
Концентрация со~теенныr носнтелек заряда а ~q>еwннн
--~--~
EGO=
1,17
..\ -~Е""'G1'--=1--....;;4"'"7"'
ЗЕ,_,
·0~4
.5
EG2~
6Зб
тоо
1i"'""
' ---'""""--'-----"""=
7
2.9 .
Конц:( 3.ЗЗ414 Е + 15I
!
в"
9
10
lk
:m
350
400
450
1,00
2.79Е+13
!:{()
1,07
1,58Е+1 4
550
1,05
6,70Е+14
600
1,DЗ 2,28Е+15
6бО
1,01
1,00
0 .98
12
700
~
750
600
1~
Eq (э8J "' rсм")
1 12 6)1Е..о9
1.11 2 ,18Е+11
1,10 З,28Е+12
os.;
6,44Е+15
1,60Е+1б
З,54Е+1б
7,1ВЕ+1 6
lli 1
·~t1
li
• •1
Рис.
2.9. Температурная
зависимость концентрации собственных носителей
заряда в кремнии
Гиперболические функции
В главе
1
говор ил ось о том , что не определенные в
Excel
гиперболи
ческие функци и можно с ко нструировать из встроенных гиперболических
и логарифмических функций . В сл едующем примере н еобход имо подста
вить
различные значения аргумента в
фун кций
и
рассчитать обратные
форм ул ы для
гиперболических
гиперболические функции,
а затем
сравнить полученные результаты с и сходными вел ичинами .
Арксе.крнс гиперболич еский и арккосеканс гип ерболический являют
ся н еоднозначными функuиями , и в каждом случае нужно вычислять оба
их значения .
1.
Откройте новый рабочи й лист и н азовите его рис.
2.
Заполните указанны е ячейки следующими значе ниями:
Ячейка Содержимое
ГиперболичесА1
Ячейка Содержимое
А10
о
2. 10.
Ячейка
Содержимое
82
Sech(x)
С2
ASech+
ASechCsch(x)
кие функции
А2
АЗ
А4
х
А11
-5
А1 2
-4
А1З
0,1
0,5
1
02
Е2
1:11
Инженерные расчеты
Ячейка Содержимое
.3
А5
Ячейка
Содержимое
А1 4
2
3
4
5
А6
-2
А1 5
А7
·1
А1 6
АВ
А9
·0,5
А 17
Ячейка
F2
G2
Н2
12
Содержимое
ACsch+
ACsch·
Ctanh(x)
ACtanh
-0,1
3. В ыдел ите ячейки АЗ:А1 7 и выберите команду Вставка >- Имя >Присвоить . Прис войте п.анном у диапазону имя х.
4.
Введите в указанных я чейках следующие формулы :
Ячейка
Содержимое
83
=1/COSH(x)
сз
•LN((1+KOPEHb(1-B3"2))/BЗ)
оз
GЗ
•LN((1-KOPEHb(1·B3"2))1B3)
•1/SINH(x)
=LN((1 +КОРЕНЬ(1 +E3"2))/E3J
•LN((1-KOPEHb(1 +Е3"2))/Е3)
нз
.a1 fТANH(x)
13
•0,5*LN((H3+1 )/(НЗ-1))
ЕЗ
FЗ
5.
Чтобы скопи ровать формулы в оставшуюся часть таблиuы, выделите
яч ейки В3: 1 3 и пер етащите маркер зап олнения в н из до ячейки
117.
7.
Расчертите таблиuу , как показано на рис. 2.10.
В ыберите команду Сервис>- Параметры . На вкладке Вид появившего
8.
Сохр аните раб очую книгу .
6.
ся д иалогового окна отключите режим сетка.
Окончательн ы й вари ант рабочего л и ста изображен на р и с.
2.1О.
Не
с м отря на то , что имя х было п р исвоено группе ячеек А3 :А17 , при вы
ч ислении формул н а его место каждый раз п одставляется содержимое
я<1ейки , рас положенной в той же строке, что и фор мула.
'ii\:бо.114t1.tескме
. ~=
· "'"'"'"r"""'~
· ..,,,....,......-""=·li
,_ г~nе
"i-~x
·{ 1
.4).1
~i
6
Т;3
:li
.:!J ~
10 '
1:h
·12 •
Sech х
ASoch+ ASeth·
Csch х
AC•th+ AcschCtanh •
·5 0,013475
5
-5 {),01З48 ll'jИCЛOI
.5
-4 О,ОЗ6Б19
4
.4 .Q,03'64 ~ИСЛОI
.4
·З 0 ,099326
З
·З {),099В2 ~ИСЛО!
·З
·2 0,2651112
·1 0.64ЭО54
2
1
0,5
0,1
·2 <J;E572 ~ИСЛОI
·1 -0,65092 ~ИCIIOI
-0.5 ·1 ,9 1ЮЭ /NИСЛО!
·2
·1
{),5
-0,1 -9,98335 ~ИСЛОI
-0,1
-0,5 О,ЕО;Э1Э
·0.1 0.995021
1
О
0.1 0.995021
О
0.1
o,eoos19
o.s
o.s
1 0,6.4805(
2
З О ,099326
Э
4 О.DЗ6Б19
5 0,013475
Рис.
1
2 0.26511J2
2.10.
функций
О il,!J,EЛ.01
{).1 9 ,983353
-0.s 1.919035
-1 О.В51JЭ18
·2 0)75721
·3
О ,o9re22
~ О.ОЭ6644
·5
0.ОIЗ.177
11,QEМJI
#ДEIWI
ACtanh
·1
.(),5
-10.ОЗЗЗ
-0.1
#ДEJW! f/ДEJ\QI
0.1 ~исло• 10.оззз1
О.5 ~исrо 2.1Б3953
1 ~ИСЛОI 1,Э1ЭJ35
~ИСЛО! 1,CrJ7315
1.00497
4 ~исло• 1,аn;т1
5 /NИCflOI 1 ОСОО91
0.1
o.s
1
2
2
З #ЧИСЛО!
З
•
5
Таблица з начений гиперболических и обратных гиперболических
iфi
Гоава
2
Многие ячейки содержат сообщения об ошибках. Это значит, что со
ответствующие функции для данных значений не определены. Функции
и Ctaпh стремятся к ±оо при х~О и не определены в точке О. При
Csch
этом в ячейках с вычисляемыми на их основе обратными функциями
и ACtaпh также появляется сообщение об ошибке. Кроме того,
rрафик функции ACsch состоит из двух ветвей, и положительные значе
ния нужно подставлять в одну формулу, а отрищ1тельные - в другую.
ACsch
4' П
ед п еждение
Вычисляя значения подобных неоднозначных функций, следите за тем,
чтобы исnользоаалась соответствующая формула. В протианом случае
можно получить неверный результат. Из таблицы видно, что некоторые
м лы возв ащают значения исходноrо а
мента с точностью до знака.
~Совет
Для выбора нужной формулы в зависимости от значения арrумента
функций Asech и ACsch можно использовать функцию ЕСЛИ, например:
ACsch= ЕСЛИ(х>О,LN((1 +КОРЕНЫ1 +ЕЗА2))/Е3),LN((1-КОРЕНЫ1 +ЕЗА2))/Е3)
Создание таблицы значений функции двух
аргументов
Во всех предыдущих при~ерах рассматривались формулы, в которых
одна переменная (аргумент) была независимой, а остальные
-
зависи
мыми (функции или значения выражений). Однако встречаются форму
лы с несколькими аргументами, не зависимыми друг от друга. При по
строении таблицы значений функции двух аргументов можно воспользо
ваться одним из следующих способов.
• Разместить значения аргументов в двух соседних столбцах.
• Использовать прямоугольную таблицу, в которой значения одной пе
ременной содержатся в левом столбце, значения другой - в верхней
строке, а результаты вычислений
-
в остальных ячейках.
Следующие два примера иллюстрируют оба варианта.
Ураанениа Ван-дер-Ваапьса
Состояние идеального rаза описывается взаимной зависимостью его
давления, объема н температуры, которая имеет вид р V=µRТ. Здесь
количество молей газа, а
R-
µ -
универсальная газовая постоянная. Данная
формула справедвива лишь в тех случаях, когда объемом молекул газа и
силам11 межмолекулярного взаимодействия можно пренебречь. Таким
образом, она хорошо описывает состояние газов низкой IUiооности, од
нако с увеличением IUiотности газа точность падает. Молекулы реального
-
iфi
Инисенерные расчеть1
газа занимают определенный объем, а зона сил межмолекулярного взаи
модействия не ограничивается размерами молекул.
Попытавшись создать модель, которая бы лучше описывала бы пове
дение реального газа, Дж. Д. Ван-дер-Ваальс модифицировал уравнение
состояния идеального газа с учетом ВЬIШеизло.женных соображений. В
результате уравнение состояния реального газа приобрело следующий
вид:
(р+4)(v-b) = RT
v
'
где v - молярный объем газа (ед. объема/моль), а а и Ь - постоянные,
определяемые экспериментально. Их значения для двуокиси углерода:
а
3,591 л2·атм./моль2
0,0427 л/моль
Ь
Соэдание таблицы с параллельными столбцами
значений аргументов
Рассматриваемое уравнение содержит три переменных, каждую из ко
торых можно выразить через две другие. В следующем лримере вычисля
ется давление различных объемов rаза при разных температурах.
1. Оrкройте новый рабочий лнст и назовите его рис. 2. 11.
2. Установите ширину столбца А равной 5 символам (перетащите пра
вую границу заголовка).
3.
4.
В ячейку А1 введите текст Уравнение Ван-дер-Ваальса.
Заполните и отформатируйте ячейки рабочего листа следующим обра
зом.
Содер)IСИмое
Формат
а=
Выравнивание по правому краю
3,59
л2 -атм/моль2
Выравнивание по левому краю
А4
Ь=
Выравнивание по правому краю
В4
С4
0,0427
ЯчеАка
5.
6.
АЗ
вз
сз
л/моль
Т(К)
Выравнивание по левому краю
Е1
F1
G1
v(л/моль)
Р(атм.)
Выравнивание по левому краю
Е2
F2
264
0,05
F3
0,1
Выравнивание по левому краю
Выравнивание по левому краю
Числовой, два десятичных знака
Числовой, два десятичных знака
Выделите ячейки АЗ:В4 и выберите команду Вставка ~ Имя~ Создать.
В диалоговом окне Создать имена включите режим в столбце слева,
после чего шелкните на кнопке ОК.
Скопируйте содержимое ячейки Е2 в ячейки ЕЗ:Е8, выделив ее и пе
ретащив маркер заполнения вниз до ячейки Е9.
lнl
7.
г11ава
Выделите ячей ки F2 : FЗ и перетащите мар кер запол н ен ия
2
вниз до
яч ей ки F9.
Введите уравнени е В ан- дер- Ваал ьса, разре шенное отн осительно дав
лени я . Измените размерность универсал ьной газовой постоянной с
8.
Дж/моль·К на л·атм./моль · К , раздели в ее на 101,3.
В ячейку G2 введите указ анную ниже формулу и из мените формат
ячейк и на Ч исловой с одним дес ятичным з н аком.
=(8 , З 1 4З/10 1 , З)*Е2(F 2-Ь)-а/(F2л2)
9.
10.
С копируйте содержимое ячей ки G2 в ячейки GЗ: G9.
В ячейку Е10 введите чи сло 304 и скопируйте его в яч ей ки Е11 : Е17 .
После этого необходим о ско п и р овать данные из столбца F и формулы
из столбuа
G
в группу ячеек
F10:G17.
Не вводите нужную ин форм а
цию заново , а и спользуйте команды копирования и вставки .
., /
а Эк,_~_~ресс-м_~.!Од ...
· Чтобы
быстро скопир о вать содержи мое о пределенных я чеек , нужно вы- ~
депить их и, уд ерживая н ажато й клавишу
в н ужн ое ;
место. (Если не нажимать клавишу
будет пе- 1
ремещена.!-~ __н_~ ,скопиро_ва~а)_._
11 . Выделите
12.
ячейки
<Ctrl>, пе р етащить
<Ctrl>, выделенная обл асть
.. " .". ""-"." .
i
F2:G9.
П оместите указатель мыши на rр аниuу выделе н ной области (н о н е на
м аркер заполнения) и, удерживая н ажатой клави шу
те содержимое груп пы яче е к в область
<Ctrl>,
п еретащи
F1 0:G17.
В нчейку Е1 8 введите число 344 и скопируйте его в ячей ки Е 1 9 : Е25 .
14. Скопи руйте содержи мое я чее к F10:G17 в ячей ки F18:G25.
15. Закл ючите груп п ы ячеек в рамку, как показано н а р ис . 2.11.
16. Отключите отображени е лини й сетки .
17. Сохран ите р абочую книгу.
13.
Чтоб ы н а э к ране поместилось больше информаuи и, воспользуйтесь
командой Вид>- Во весь экран (рис.
2.11).
Такие верти кал ьн ые таблиuы удобны , есл и расчетов не очень мноrо .
С увел и че нием их кол ичества он и становятся слиш ко м ми нными и ма
лопонятн ы м и , и тогда для фун кuий двух пер еменных лучш е испол ьзо
вать табли цы , в которых з начен ия одного аргумента содержатся в левом
столбuе , а другого
-
в верхней строке . Та кая табшща дем он стри руется в
слепуюшем пример е .
Абсолютная звездная величина
В астро н омии види м ая яр кость звезд изм еряется в звездн ых велич и
н ах. Эта си стема и змерения была введен а еше древнегреческим астрон о
мом Гиппархо 11-1 . Самые яр ки е светила он назвал звезда ми первой вели
ч ины , а самые тусклые
-
шестой. Двум зве:ша:-.1 соответствовал и разные
звездные величины . если ч еловечес кий гл аз разл ичал их яр кость.
,,,
Инженерные расчеты
264
264
.~~.[~
0 ,10
0 ,15
264
0,2()
:[)]
264
0,25
l 'J
264
264
0,35
26~
v,"<W
n •n
зе.2
31).\
19132,О
ЗQ.\
0,05
0,10
0,15
68.9
~
-·~~
'
~O·i
О,:Ю
;;1,1]
304
ЗQ.\
0,2()
·~$j
31).\
О,25
62,9
31).\
31).\
0,3'
0,35
57,1
51 ,9
47,4
2431,7
133,7
1ffi,6
69,7
•12;i
Чоi
:lli
~1'1
76,4
73,0
ЗQ.\
0 ,40
'fIO
344
344
0.()5
0 ,10
344
0,15
lli
344
·~:]
0,20
0 ,25
344
О,:Ю
69,8
зн
0,35
62,Б
-~
1s,
~~
'22'!
:~?
li
344
~
н'
Рис.
78,8
..
2.11. Таблица
значений уравнения Ван-дер-Ваа п ьса
Есл и разл ичие яркости звезд было едва заметным , считалось , что он и
отли,1ал ись на одну звездную величину. П озже шкала звездных вел и чин
была фо рм ализована с помощью матем атических м етодов, что позволил о
изме.рять яркость звезд с большей точ ностью. Теперь разность в пять
звездных величин соответствует стократному изменению яркости . Таки м
образо м , относительную звездн ую величину двух звезд м ожно выразить
через значени я их яр кости с помощью следующей п р остой формул ы :
т2 т1 )
{
-
где т 1 и т 2 -
::;; -
1Log(~)
0.4
Ь, '
~ .
звездн ы е вели чины двух звезд, а Ь 1 и Ь2 -
их яр кость. Ес
ли п р инять за точ ку отсчета я ркость одной и з звезд , можно выч исли ть
звездные величи ны всех остал ьн ых .
Звездн ые величины видимых с Земли объектов лежат в nи апазоне от ( Солнце) до +23 ( п редел для 200 -дюймового телескопа Хейла) и
26,7
дальше (некоторы е из современ ных мноrозеркал ьных теле скопов позво
ляют н аблюдать еше м енее яркие объекты ). Двум самым ярким звездам
Сир иусу и Веге
-
соответствуют звезДJ-J ые вел ичины
-1,58
-
и +О , 14. После
того, как астрономы выбрали нулевую точку системы звездных вел ичин ,
выяснилось , что некоторые звезды обладают большей я р костью. В от по
чему звездная величин а Сол нца и некоторых д руги х я рких зnезд я вл яется
отри uательной .
Я ркость наблюдаем ых с Земли звезд о nисывается види.мой звездной ве
личиной, которая зави сит от их реал ьной яркости и удаленности от Зем
ли . Видимая звездная величина не дает представления о характеристиках
'**
Гnава
2
звезды , и вряд ли имеет смысл сравнивать звезды по данному параметру.
Чтобы исправить этот недостаток, астрономы ввели абсолютную звездную
величину, соответствующую величине звезд, удаленн ых от Земли н а
парсеков (3,086x lOl4 км).
Яркость звезд,
выраженную
1О
в абсолютных
звездны х величинах, можно сравн ивать . Видимая и абсолютная зве здные
величины связ аны соотношением M= m+5- 5Log(r), где М - абсолютная
звездная вел ичина , т
В
сеш1
191 Зг.
-
видимая , а
r-
расстоя ние до звезды в парсеках .
немецкий ученый Герцшпрунг и американс кий ученый Рас
сравнили абсолютную
звездную вел ичи ну и
сп ектральный кл асс
(почти то же , что и цвет) звезд и получили почти линейную зависимость.
Ставшая классической диаграмма Герцшпрунrа-Расселла позволяет оп
ределить абсолютную звездную величину по спектральному классу ( цве
ту) звезды. Зная абсолютную и вилимую звездные величины , можно вы
ч ислить р асстояние до звезды с помощью при веденного выше уравнения .
В следующем примере создается табли ца расстояний до звезд в зав и
симости от их абсолютной и относитель ной звездны х вел ичин . П ервым
делом н еобходимо р азре шить фор мул у абсол ютной звездн ой величины
относительно расстояния :
(5+т-М)
r = 10~
5
Создание прямоугольной таблицы значений функции
двух переменных
Создадим таблицу расстояний со значе ниями видимой звездной вел и
чины в левом столбце и абсол ютной звездно й вели чи н ы
в верх ней
-
строке.
1.
Если полноэкранны й р ежим просмотра все еще включен , снова выбе
рите команду Вид ~ Во весь экран или щелкните на кио пке Вернуть
обычный режим на панели ин струментов Во весь э кран .
2.
3.
4.
Откройте новый р абочий лист и назовите е го рис.
Установите ширину столбца А равной
8,57,
2.12.
а столбца В
-
р авной
3.
Введите в указанных ячейках следуюшие зн ачения:
Slчейка
А1
Содержимое
Расстояние до звезды в зависимости от
ее абсолютной
и видимой
заездных вел ичин
5.
82
Расстояние в парсеках
GЗ
Абсолютная звездная вел ичина
А9
Видимая
А 1О
Звездная
В ячейку С4 введите числ о
(1 парсек равен
-5,
а в я чейку
З , 26 световым годам)
04 -
числ о - З. Выделите и х
и перетащите маркер до ячей ки М4 . Диап азон С4 : М4 заполнится це
лыми числ ами от
6.
-5
до
15
с шагом
2.
Таким же образом заполните )!чейки В5: В 18 целыми числами от
21
с шагом
2.
-5
до
IJJ
Инженерные расчеты
7.
В ячейку С5 введите следующую формулу и присвойте ей экспонен
циальный формат с одним десятичным знаком .
=1ОЛ((5+$ 85-С$4)/5)
Использование смешанных ссылок в данном выражении гарантирует
п одстановку в формулу нужных значений аргумента после ее копиро
вания в остальные ячейЮI таблицы .
8.
Выделите ячейку С5 и перетащите маркер заполнения до ячейЮI С 1 8 .
Выберите маркер снова и перетащите его до ячейЮI М 18. Во все
ячейки диапазон а С5 : М18 будет скопирована формула, введенная ра
нее в ячейку
CS.
Поскольку маркер заполн е ния можно п еретаскивать
либо в горизонтальном , либо в вертикальн ом направлении , выделение
п рямоугольной области происходит в два этап а.
9. Добавьте обрамление ячеек, как показано
10. Отключите отображен и е л иний сетЮI .
11. Сохраните рабочую книгу.
на рис.
2.12.
Щелкните на указывающей вн из стрелке рядом с окном Масштаб на
панели инструментов Стандартная и установите масштаб, равный 75%.
Окончательный вариант рабочего листа изображен на рис.
4,ОЕ:.о:2
,,еЕ.о2
·З :.1:~Е+01
1DE-Ot
4,01:.()2
- 1 ~.ЭE<rO't :2'.~Е+О1
·~
1.ОЕ•О1
4,l}E+i)O 1.tl&OO 8,ЭЕ.01 :2~Е.01 t.OE·01
1.(}Е.01 4.QE-tOO 1 .eEIOD е..эЕ.01 2.3E·D1
1'.0 Е+01 4.0E+O:I 1,С Е-600 е.ЭЕ·О1
1 1.CIE•0'2 О.ЭЕ+Оt 2Af+01 1,0&+01 4,Ое-оо 1.~~(Ю
:.~::-01
1.ОЕ.01
4,01!!.Q'l
.,,,.,11:-02
е.ЗЕ-ОЗ
0,ЭЕ-01
2,бl:.01
1.ОЕ.О1
4.ОЕ-02
t.8E-D2
2.12.
2.!IE.03
е.ЭЕ.ОЭ
~ ~~~~ ~:~~~ ~~~ ~:;::: ;:~::: :~:.~ ~~~= ~;:~ ~~~~~ ;~~~ ~~~:~~ #
7
2.!!iЕ+ОЭ 1.ОЕ+ОО
.qJ)f.+02
1 .ОЕ+С2 &.3Е:.01 2~E-t0'f
"i.OE+O'f
4.ОЕ.00
1,ile+oo
e.'3E.-lJ1
2,е:е-01
~
3
~ ~:~::: ~:~~:: ~~= ~:~~= ::~~~ ~~~:~ ~~~~:~ ~~~~ ~:~~~ ~:~~ 1~ёеЕ~ ~~
1
1З 4,ОЕ•СМ 1.l!IE~ 15.ЗЕtОЗ 2,бЕЮЭ
1.0Et<l3
'4,0~02 нsе.+ег.: l'J.ЗE-1-01 2.бе.+о1
4.ОЕ•СО
~
1.еЕ+О1 О.3Е•О1
t'!f
1.CIE.Ot
~~ ;~::: ~:~::: :~= ~:=~~ ::~~ ;~~:: ~~:~ ;~:: :::~ ~~~:~ ~:~~~ ~
1Q &,31:•Q5
21 , е е"ое
2.!IE~
1.О е.о5
4,0E'f'04
е эе+оs
2 .!IE~
i ое+ое 40f-+04 1 11~04 азЕ-юз 2.5t+ОЭ 1 D'e+0'3 4tJE+02 1 ~е·02
1,&Е.404 е ,3Е-tОЗ
2:,5Е+ОЭ
1.ОЕ-tОЗ
4,0:e+m:
Рис. 2.12. Таблица расстояний до звезд в зависимости от их абсолютной и
относительной звездных величин
Расчет функций многих переменных в таблицах с
большим количеством столбцов
Бывают функции с более чем двумя аргументами . Их значения нельзя
вывести в простой таблице прямоутолъноrо формата, как в предыдущем
примере. Однако в этом случае можно п оместить различные переменные
в следующие друт за друтом столбцы , а в последнем вычислять значения
функции . Подобная таблица будет более компактной , если разместить
одну из переменн ых в верхней строке . Выбор nша таблицы зависит от
вычисляемой функции и способа просмотра результатов .
,,,
Гnава
2
подвижность электронов в кремнии
В
следующем примере рассчитывается подвижносn. электронов в
кремнии
для
разных
значений
напряженности
электрического
поля,
концентрации примеси и температуры. Каждой -тройке значений арrу
ментов соответствует одно значение функции. Для этого будет создана
таблица с тремя столбцами независимых переменных, двумя столбцами
промежутсiчных значений и одним столбцом результатов.
Приведенная ниже формула подвижносm используется в сложной
компьютерной модели эффс:ктов, связанных с прохождением в полупро
водниковых приборах моI..ЦНЫХ одиночных импульсов. В ней учитывают
ся
аппроксимирующие
зависимости
подвижности
от
напряженности
электрического поля, концентрации примеси и температуры:
µО
_ µlfUIX - µmin +
- 1 +(N/ Nr у" µmin
Е .::::
2.319Vm
с
(1+0.8ехр( Т/600 ))µ 0 ( Т/То )
6
µо (T/1;i )-Б
µ :::: ( 1 + ( Е /Ее )Р )1/р
Коэффициенты имеют следующие значения:
µ/llltt
!!мiп
Nr
V,,.
где
N -
О, 1330 м2/В·С
0,0065 м2/В·С
8,5х1О22 м·З
1, 1х105 м/с
а
JJ
8
То
0,72
2
2,42
300 к
суммарная концентрация примесей, равная разноети кон
центраций доноров и акцепторов и измеряемая в 1/мЗ, Т- температура в
градусах КельвШiа, Е - напряжеШiостъ электрического поля в В/м, а µ подвижность электронов в м2/В·с.
Создание таблицы. Формула состоит нз 1рех частей, которые при
желании можно объединить. Однако гораздо проще распределить их по
разным столбцам таблицы.
1.
2.
•
Огкройте новый рабочий лист и назовите его рис. 2, 13.
Установите ширину сто,/Iбцов от А до F равной 10.
Экспресс-метод
Чтобы быстро изменить ширину нескольких столбцов, выделите их с по
мощью мыши, а затем измените ширину любоrо. Для всех столбцов будет
vстановлена о.nна и та же шиоина.
iJ8j
Инженернь1е расчеты
3.
-Заполните ячейхи рабочего листа и выровняйте их содержимое , как
указано ниже. Символ µ принадлеЖhт шрифту SymЬol. Выберите этот
шрифг из списка на панели инструментов Форматирование и нажмите
клавишу
<m>.
Я-tеАка
Содержимое
Выравнивание
А1
Подвижность электронов в
АЗ
По правому краю
А4
µmax
µmin
А6
Концентрация
А7
Примесей
По центру
По центру
кремнии
А8
83
84
В6
88
4.
.
По правому краю
.!Jo центру
(м°1
0,133
0,0065
Температура
По центру
(К)
По центру
По правому краю
С2
сз
Nr
Vm
С4
С6
то
Электрическое
По правому краю
По правому краю
По центру
С7
rюпе
По центру
С8
(8/м)
По центру
02
03
04
06
08
8,5Е22
1,1Е5
300
По центру
Е2
~/В-с
alpha
По правому краю
ЕЗ
Ьеtа
По правому краю
Е4
Е6
delta
По правому краю
Ее
По центру
Е8
(8/м)
По центру
F2
0,72
FЗ
2
F4
F6
F8
2,42
µ
·
(м2/В-с)
Выделите ячейку
По центру
По центру
84, выберите команду Вставка >-- Имя
oIOie введите имя umin
>-- Присвоить
и
в появившемся диалоговом
••
Примечание
Поскольку
µmin не является именем переменной, допустимым в Excel, в
u на u .
диалоговом окне Присвоить имя спедvет заменить символ
5. Присвойте ячейке ВЗ имя umax.
6. Выделите tpynny ячеек C2:D4, выберите команду встаВка
>--
Имя
>--
Создать, включите режим В столбце слева и щелкните на кнопке ОК.
Повторите эти действия для ячеек
E2:F4.
ILi
Гnава
2
Ввод данных в таблицу. Теперь, когда таблица готова, осталось
ввести в нее данные.
1.
2.
3.
4.
5.
6.
В ячейку А9 введите число 1,ОЕ19 и скопируйте его в ячейки А10 :А16.
В ячейку 89 введите число 300 и скопируйте его в ячейки 810:812.
В ячейку 813 введите число 600 и скопируйте его в ячейки 814:816.
В ячейки С9 , С10 , С11 и С12 введите соответственно числа 1Е4 , 1Е5 ,
1Е6 и 1Е7.
Скопируйте содержимое ячеек С9 : С12 в ячейки С1З:С16.
В ячейку 09 введите следующую формулу:
=(umax-umin)/(1 +(A9/NrY alpha)+umin
и скопируйте ее в ячейки 010:016.
7.
В ячейку Е9 введите следующую формулу:
=2,319*Vm/((1 +0 ,8*EXP( B9/600))*D9*( B9fТO)лdelta)
и скопируйте ее в ячейки Е10 : Е16 .
8.
9.
В ячейку F9 введите следующую формулу:
=(D9*(89fТO )лdelta)/(1+(С9/Е9)л beta)л( 1/Ьеtа)
и скопируйте ее в ячейки F10:F16.
Присвойте ячейкам А9 :А16 и С9: С16 экспоненциальный формат без
десятичных знаков .
10. Присвойте
ячейкам D9:F16 э кспоненциальный формат с тремя деся
тич ны ми знаками .
11 . Скопируйте содержимое
12. В ячейку А17 введите
ячеек
A9:F16 в ячейки A17:F24.
число
1 ,ОЕ21
и
скопируйте
его
в
ячейки
А18:А24 .
13. Заключите группы ячеек в рамку, как показано на рис. 2.13.
14. Отключите отображение сетки рабочего листа.
Закрепление заголовков. При просмотре данных с помощью по
лос прокрутки заголовки часто исчезают из поля зрения . Чтобы этого из
бежать , следует зафиксировать строки заголовков . Выдел ите строку, сле
дующую после строки заголовков, и выберите команду Окно>- Закрепить
области . Вся область рабочего листа, находящаяся выше выделенной
строки, будет зафиксирована. При использовании полосы прокрутки бу
дут перемещаться только строки , лежащие ниже закрепленной области .
Можно также зафиксировать один или несколько столбцов с заголовка
ми в левой части экрана или закрепить одновременно несколько столб
цов слева и н есколько строк сверху.
1.
2.
Выделите сТроку
9,
щелкнув на ее заголовке в левой части экрана.
С помощью команды Окно >Закрепить области зафиксируйте строки ,
лежащие выше выделенной.
3.
Сохраните рабочую книгу.
Окончательный вари ант рабочего листа изображен на рис.
2.13.
По
ск ольку окно разделено , а области закреплены , можно переключаться
между двумя блоками таблицы , щелкая на полосе прокрутки выше или
ниже
бегунка (бегунком
называется прямоугольный
элемент полосы
,,,
Инженерные расчеты
прокруrки , при перемещении которого изменяется содержимое э крана) .
Можно создать дополн ительные бл оки таблицы для различн ы х значени й
концентрации п римесей . При их просмотре загол овки столбцов по
п режнему будуr закреплены в верхней ч асти экрана. Чтобы отменить за
крепление , воспользуйтесь командой Окно >- Снять закрепление областей .
~---- :п~f1"·
Nr
6,50Е+22
Vm
1,10E.OS
·t:
?i
..~
:m
то
·'
Ее
µ1
w'i1Э-t'
1.326Е.01
":
~
"
..",
"
1.326Е.01
,.
1.З28Е.01
1 ,З28Е-01
..
1 ,З28Е-О1
1,326Е-01
н
1.328Е-01
1.326Е~.
2.13
.
Nf
Vm
~max
Te11neparypa
.
..
°'~
:m
ЭAtl<'tpи•et•oe
6
Ее
µ1
Попе
npt'.MICIЙ
".,
Рис .
8,SOE+22
1.10E.OS
то
min
КDнце11Траци•
.· .
'"·
""
11116-t )
м'IВ-с
fВ/w
1,2ЮЕ.01
1 ,Е+21
1,Е+21
1,Е;{М
1,2ООЕ.О1
1 ,Е.а5
1,200Е-01
8,591E.OS
8,591E.OS
1,Е+21
1 ,Е+21
1,Е+21
1,Е+21
1,Е <\Е
1,2IOE.Q1
8,591Е.а5
1,E;{J7
1 ,200Е.01
1,200Е-01
8,591E.OS
1,D96Е.Щ
1 ,1 7ЗЕ<\Е
6,82ВЕ.01
1,Е +О4
1,272Е-01
8,34~E.Q2
1,E.OS
1,26'JE.01
1 .1 7ЗЕ<\Е
5,21~E.Q1
1 ,Е+21
1,Е<\Е
1,200Е.01
1 Ет21
1 Е•::?
1
1.17ЗЕ.ОS
1 17ЗЕ.ОS
7,981 E.Q2
Е.QЗ
8
..
E·Q1
, ·ti
<
~~
'?
::~
..f.-~
:~·;
:"'
:~ ~-
2.13. Табл и ца значен ий подвижн ости
электро н ов в крем н и и
Создание таблиц с помощью команды
Данные>- Таблица подстановки
Ком анда
Excel
Дан ные
>-
Таблица подстанов ки п озволяет создавать
таблицы функций одной и двух переменных , имея лишь один экземпляр
формулы , который не нужно :копировать в другие ячейки. Кроме того,
таким образом можно рассчитывать несколько функций одного аргумента,
значения которых будут выводиться в соседних столбцах таблицы. В случае
двух переменных можно вычислять значения только одной функции .
Команда Данны е
>-
Таблица подстановки имеет ряд п реи муществ п о
сравнению с копированием формул .
Во- первых, упрощается создание
таблиць~, поскольку достаточно ввесrn лишь олин экземпляр формулы .
Гnава
11:1
2
Во-вторых, в формулу можно быстро внести изменения и сразу просмот
реть результаты. Кроме того, можно отключить режим автоматического
вычисления таблицы при изменении содержимого ячеек рабочего листа.
Чтобы все формулы рабочего листа, за исключением таблиц данных, пе
ресчит.ывались автоматически, выберите команду Сервис > Параметры,
перейдите
на
вкладку
Вычисления и
включите
режим
автоматмчески
кроме таблиц. После этого для повторного вычисления таблиц нужно бу
дет нажать клавишу <F9>.
Недостаток команды Данные > Таблица подстановки заключается в
невозможности определить разные формулы для различных частей таб
лицы. Например, нельзя использовать команду данные > Таблица
_ подстановки для создания таблицы, предусматривающ~й особые формулы
для интервалов, на которых аргументы равны нулю. Данный недостаток
можно обойти, поместив в формулу логическое выражение выбора. Дру
га.я сложность возникает при использовании нескольких функций . для
вычисления значения формулы. Можно вычислять только одну формулу,
а не их последовательность, как это было в предыдущем примере.
Использовать команду Данные> Таблица подстановки или нет - дело
вкуса. На построение таблицы путем копирования формулы уходит при
мерно столько же времени, 'ПО и на построение таблицы с помощью
этой команды. Скорость вычисления табJJИЦЫ также одинакова в обоих
случаях. Если вам часто приходится изменять отдельные формулы или
группы формул для лучшей обработки части диапазона входных значе
ний, придется прибегнуrъ к копированию формул, поскольку команда
Таблица подстановки не допускает под~ных операций. Иногда лучше
использовать копирование, если вычисляемые формулы нельзя предста
вить в виде единого выражения, а являются набором, каждый элемент
которого вычисляет промежуrочное значение, используемое при опреде
лении окончательного результата. Преобразовать их алгебраически в одну
формулу обычно можно, но это потребовало бы дополнительной работы,
и выражения получились бы громоздкими.
Таблица функции с одним аргументом, созданная
с помощью команды Данные,,.. Таблица подстановки
Чтобы создать таблицу функции с одним аргументом с помощью ко
манды Данные> Таблица подстановки, сначала нужно настроить рабочий
лист, следуя следующим общим правилам:
• Поместите список входных значений в столбец, расположенный слева
от таблицы результатов и смежный с ней .
•
Выберите удобную ячейку за пределами таблицы для использования
ее в качестве ячейки ввода. Используйте ссылку на эту ячейку в каче
стве арrумента во всех формулах.
•
Поместите формулу, по которой проводятся вычисления, в ячейку,
расположенную на одну строку выше тела таблицы и в том же столб
це. Можно вычислять сразу несколько таблиц функций с одним
apry-
1µ1
инженерные расчеты
ментом, если в них используется один и тот же набор входных дан
ных. Для эт~rо достаточно разместить формулы в соответствующих
•
столбцах.
Выделите прямоугольную группу ячеек, в которых содержатся вход
ные данные ·И формулы .
•
./Совет
Чтобы использовать несколько формул для вычисления одного результа
та, постройте такую же таблицу, как и в случае с одной формулой, и раз
местите промежуточные формулы ·за пределами таблиць1. У данного ме
тода есть ограничения: окончательный результат должен вычисляться в
верхней ячейке таблицы, а формуль1 должны ссылаться только на себя
или на ячейкv ввода.
>-
По окончании настройки рабочего листа выберите команду Данные
Таблица подстановки. Появится диалоговое окно Таблица подстановки.
Укажите в нем ячейку ввода. После этого Excel заполнит таблицу, под
ставляя входные значения в ячейку ввода и проводя вычисления соглас
но формуле. Результаты заносятся в столбец, расположенный под "фор
мулой, каждый
-
против соответствующего входного значения. Можно
создать и горизонтальную таблицу, с входными данными в верхней стро
ке и формулой слева.
Напряжения и деформации в балке, закрепленной
-
одним концом
Расчет напряжений и деформаций балки является типичной задачей
технической механики. Обычно стандартные балки описываются систе
мой простых аналитических уравнений. Эти уравнения приводятся во
многих справочниках для разных балок и опорНапряжение (S) балки в точке х, за:креrтенной одиим концом и с
нагрузкой, приложенной в одной точке (рис.
2.14)
описывается следую
щим уравнением:
w
S=-(l-x) (forx<l)
где
W-
z
'
приложенная нагрузка,
/-
положение нагрузки, а
Z -
rтощадь
поперечного сечения балки. Прогиб балки (у) вычисляется по следую
щим формулам:
Wx 2
у= -(31-х)
6EI
w12
у= бЕ/(3х -/)
где Е -
модуль упругости, а
(forx ~ l)
{forx;::: l)
I-
момент инерции.
llФI
Гnава
2
Длина
L
w
х
Рис.
2.14.
Бапка, закреппенная одним концом, с нагрузкой в одной точке
Рассмотрим балку, закрепленную одним конuом, длиной
нагрузкой в
70
кг, приложенной на расстоянии
0,4
3,6
м и с
м от свободного кон
uа балки. Нужно вычислить возникающее в балке напряжение и прогиб
в каждой точке. Тип балки: 1-образная, шириной 0,3 м и с линейной
плотностью 80 кг/м. Площадь сечения балки (Z) равна 2 мЗ, момент
инерции(/) равен 3,68 м4 и модуль упругости (Е) равен 5,3 кг/м2.
Создадим инженерную таблиuу напряжений и прогиба балки, закреп
ленной одним конuом, по всей ее длине через каждые 0,3 м. На самом
деле это две таблицы, для которых в команде Таблица подстановки ис
пользуется общий набор входных данных. В первой таблиuе вычисляют
ся напряжения, а во второй
1.
2.
прогибы.
-
Оп<ройте новый рабочий лист и назовите его рис.
Установите следующую ширину столбцов от А до
А:
В:
3. , Заполните
Ячейка
А1
9
4
С:
10
D: 11
Е:
3
2.15.
G:
G: 9
Н:
F: 19
5
и отформатируйте ячейки следующим образом:
Содержимое
Формат
Балка, закрепленная По центру
ОДНИМ КОНЦОМ
\
Ячейка
F12
А6
А7
А10
А11
1\1\ЯЧеЙКЗN\
По центру
GЗ
ввода
G4
Расстояние
По центру
По центру
отсrены
По центру
А12
(М)
По центру
сз
Напряжение
По центру
G5
G7
G8
G9
Содержимое
Модупь упругости
3,6
2,6
70
I-образная
о,З
80
Инженерные рас:четьr
ячейка
Содер...мое
С4
(кr/м2)
DЗ
Прогиб
(м)
Длина балки
04
FЗ
F4
F5
F7
F8
F9
F10
F11
Формат
Ячейка
Содержимое
2
По центру
По центру
G10
G11
G12
5,3
По центру
3,68
Нз
м
Поrюжение наrруэки
Вес наrрузки
Н4
Н5
м
кг
Тиn балки
на
м
Ширина
Н9
кr/м
Линейная мотность
Ппощадь сечения
Момент инерции
Н10
Н11
Н12
3
м
4
м
кr/м2
Выделите ячейку ввода, чтобы подчеркнуrъ ее особый статус и пре
дотвратить ее заполнение посторонней информацией. В этом нет необхо
димости , если включить режим защиты ячеек таблиu с помощью коман
ды Сервис>- Защита.
4. Выделите ячейку
AS и присвойте ей светло-серое заполнение. Ис
пользуйте вкладку Вид диалогового окна Формат ячеек, появляющего
ся по команде Формат>- Ячейки.
5.
Присвойте ячейкам следующие имена:
G4
G5
G8
G9
G10
6.
L
W
Z
1
Е
Введите исходные данные для вычислений. Нужно вычислить напря
жение и прогиб балки через каждые 30 см .
В ячейку 86 введите О, а в ячейку 87 - число 0,3. Выделите ячейки
86
и
87
и перетащите маркер заполнения до ячейки
818.
В данной задаче используются две формулы для вычисления напря
жения и две
-
для вычисления прогиба: одпа для расстояния от точ
ки закрепления до точки приложения нагрузки, а друrая
-
для рас
стояния от точки приложения нагрузки до свободпоrо конца балки.
Выбор нужной формулы осуществляется с помощью логического опе
ратора ЕСЛИ в зависимости от входпых значений.
7.
В ячейку С5 введите следующую формулу:
=ECЛИ(AS<L,CW/Z)*(L-AS),O)
8.
В ячейку
DS введите следующую формулу:
=ECЛИ(AS<L,CW*A5"2)*(З*L-A5)/(6*E*l).CW*ASЛ2)*(З*A5-L)/(6*E*I))
Теперь можно применить команду Данные >- Таблица подстановки.
Таблиuа состоит из столбца выходных данных и формулы. Ячейка
ввода в нее не входит.
9.
Выделите ячейки
B5:D18 и выберите команду Данные >- Таблице
подстановки .
1О. В
диалоговом окне Твблица подстановки поместите точку ввода в
строку Подставпять значения по строкам в и затем щелкните на ячейке
••~rJ
AS.
Гnава
2
В о кне появится ссыл ка на ячей ку ввода. Для создания табл ицы
щел кн ите н а кнопке О К.
Т .абnм11.а nnAcY аиом.м
П
13
11 . Присвойте ячейкам CS:C18 числовой формат без десятичных знаков .
12. Присвойте ячейкам 05:018 числовой формат с 4 десятичными знаками .
· 13. Разграфите таблицу , как показ<lно H<l рис. 2.15.
14. Отключите л инии сетки .
Осталось скрыть значения , вычисленные по формулам и распол ожен -
ные в верхних ячейках столбцов .
·
15. В ыдел ите ячейки С5 : 05 . Вы берите ком анду Формат>- Ячей ки и п ер ей
дите на вкладку Число. Выберите категорию (все форматы) и введите
код форм атирования ;;; в стро ке Тип . Щел кните на кнопке ОК. Дан
ный формат позволяет скрыть содержимое яч ейки. Есть и другой спо
соб . Если вы планируете защитить рабочий ли ст, можно скрыть со
держимое ячеек, включив режим С кр ыть фо рм улы на вкладке Защита
диалогового окн а Формат ячеек. На ли сте , защищенном с помощью
команды Сервис>- Защита , содержимое таких яч еек не отображается .
16. Сохраните
рабочий л и ст.
Тепер ь рабочий ли ст должен вы глядеть , как показано на рис.
2.15.
Если посмотреть на любую формулу в теле таблицы, видно , что все они
ямяются формулами массива и заключены в фигур_ные скобки . Эти зна
чения могут быть использованы в других формулах , но изменить значе
ние какой -либо одНой ячейки в таблице независимо от остальных нельзя .
Нап р яжение
(кrlri)
о
0 ,З
(м)
0 ,6
0,9
1,2
1,5
1.8
2,1
2 ,4
2.7
"
Дnина бал""
З,6 м
Положени е нагруз)Си
2.6"
Вес на грузки
0 .4038
1.5505
Ширина
60
З ,3432
ЛинеИная плотность
49
39
28
18
7
з.з
3.6
о
70"'
0,(ХЦJ
91
81
70
о
о
о
з
Пр о r иб
5.6850
8 ,4790
11,6284
15 ,0361 ... -·18,6054
23,9835
34 .4545
47,5526
63 5685
Ф орма бал1Оt
~образн а •
0 ,3"
fO кr/м
2 "з
П.nощадь сечения
З ,68 м 4
Моuвнт инерции
Ммvль v n ov ro cти
5
ЗОЕ..m "''"
2
Рис. 2.15. Таблица с одним аргументом для вычисления напряжения и про
гиба в балке , закрепленной одним концом
••~11
Инженерные расчеты
Таблица функции двух аргументов, соЗданная с
помощью команды Данные~ Таблица подстановки
Таблицы функций двух аргументов создаются с помощью команды
Таблица подстановки аналогично таблицам функций одного аргумента.
Значения первой переменной нужно поместить в столбец, расположен
ный слева от тела ·таблицы и смежный с ним. Значения второй перемен
ной помещают в строке, расположенной непосредственно над телом таб
лицы.
Формула размещается в ячейке,
находящейся на пересечении
строки и столбца входных да~ных. Необходимо определить две ячейки
ввода за пределами таблицы и указать ссылку на них в диалоговом окне
Таблица подстановки .
Линейный переменно-дифференциальный
трансформатор
В состав национальной программы ядерной безопасности входит про
в едение испытаний, в ходе которых ядерные реакторы и их компоненты
выводятся из строя . Так определяют возможные последствия сбоя. При
нагреве и остывании графитовых стержней изменяется их длина. Кроме
того, при разруillающих испытаниях стержни часто ломаются, отчего их
длина также значительно изменяется . Для измерения изменений длины
применяется линейный переменно-дифференциальный трансформатор
(ЛПДТ).
ЛПДТ состоит из двух одинаковых катушек вторичной обмотки, сим
метрично расположенных вокруг первичной катушки. Вторичные катуш
ки образуют последовательно-противоположное соединение. Когда пер
вичная обмотка возбуждается источником постоянного тока, магнитное
поле передается во вторичную обмотку через подвижный сердечник. Ес
ли сердечник расположен в центре устройства, напряженность магнит
ного поля во вторичных катушках одинакова. Поскольку они подключе
ны
последовательно-противоположно,
результирующее
электрическое
напряжение равно нулю . Если переместИ:ть сердечник в каком-либо · на
правлении, возникает переменное электрическое напряжение. Последо
вательно-противоположная
конфигурация
помогает
также
уменьшить
шумы, вызванные термо- и радиоизлучением.
Калибровку ЛПДТ производят при нескольких различных температу
рах . Затем строят кривые зависимости напряжения от смещения . После
этого коэффициенты кривой можно подставить в линейную функцию
температуры и получить температурную чувствительность. Результаты
обобщения кривых калибровки выражаются следующей формулой :
х= а0
где х
-
+ a 1 V+
а 2 (Т-
608) + a3 V(T- 608),
удлинение топливного стержня в миллиметрах,
вольтметра и Т
-
V-
показания
· показания термометра в градусах Кельвина. Предпо
ложим, что коэффициенты имеют следующие значения:
liфl
Гnава
а0
0,3347
о2
о3
-2, 19701х10-з мм/К
а1
2
мм
10,6592
мм/В
-б,32622х 10~ 4 мм/К.В
Воспользуемся этими значениями дпя создания таблицы зависимо
сти уллинения топливных стержней от напряжения и температуры, со
гласно показаниям приборов.
1.
Создайте новый рабочий лист и назовите его рис.
2.
Присвойте столбцам от А до
3.
G
2. 16.
следующую ширину:
Столбец
Ширина
Столбец
Ширина
А
В
С
о
15
12
14
Е
9
9
9
F
G
9
Введите в таблицу и отформатируйте следующие значения:
Формат
Ячейка
Содержимое
А1
АЗ
Таблица калибровки лnдт
А4
в миллиметрах
А8
"Ввод столбца
По центру
А10
"Ввод строки
По центру
А12
Показания
По центру
А13
вольтметра
По центру
А14
(В)
По центру
С2
Коэффициенты
01
02
0,3347
Е1
а1
Е2
10,6592
F1
F2
G1
G2
G4
Удлинение топливного стержня
ао
а2
По центру
По центру
-0,00219701
аз
По центру
-0,000632662
Показания термометра (К)
С5
300
05
ES
400
500
600
F5
По центру
Теперь выделите ячейки ввода, чтобы пояснить принцип работы
таблицы. Воспользуйтесь для этого командой Формат>- Ячейки. Для за
полнения ячеек выберите на вкладке Заполнение появившегося диалого
вого окна светло-серый цвет.
4.
Выделите ячейку А7, выберите команду Формат>- Ячейки, перейдите
на вкладку Заполнение, выберите светло-серый цвет и щелкните на
кнопке ОК. Повторите эту операцию для ячейки А9.
Введите. в левом столбце таблицы значения первого аргумента.
Инженерные расчеты
5.
В ячейку
ячейки
86 введите числ о 1,2, а в ячейку 8 7 - чи сло 1,0. Выделите
86:87 и перетащите маркер заполнения до ячейки 8 18.
Последний шаr настройки
ввод в таблицу функции двух аргумен
-
тов на пересечении строки и столбца , соде ржащих входные данные.
Помните , что формула должна обращаться к обеим ячейкам ввода.
6.
Введите в ячейку
85
следующую форм улу:
=D2+E2*А7+F2*(A9-608)+G2"(A9-608)*А7
Осталось выполнить подстановку и отформатировать готовую табли
цу. Нужно скрыть содержимое ячеек с формулами , чтобы они не вы
давались на фоне остальн ой таблицы (с помощью кода форматирова
ния;; ; ).
7.
Выделите ячейки
B5:F18
и
выберите команду Данные
>-
Таблица
подстановки . В появившемся диалоговом окне Таблица подстановки
перейдите в строку Подставлять знач ения п о столбцам в и щелкните
н а ячейке А9, чтобы определить ссылку на ячейку ввода в строке. Пе
рейдите в стр оку Подставлять значения по строка м в и щелкните на
яч ейке А7 , чтобы определить ссьmку на ячейку ввода в столбце.
8. Присвойте ячейкам 86:81 8 числовой формат с 1 десятичным .знаком.
9. Присвойте ячейкам C6:F1 8 числовой формат с 2 десятичными знака
ми .
10. Присвойте
ячей ке
85
произвольный формат с кодом
ее содержимое .
11. Разграфите
таблицу, :как показано на рис.
"
2.16.
·-
Покаэ аw~" т1рwоwетр~ ('К)
300
..
! ,2 .. .
. . 1.о . ...
о:е
о,б
·
"
Рис.
11,67
.. '9$•
7 ,41
5,26
0,2
З,14
о.а
(8) .
ЩЮ ......
0,4
-С,2
8 0.flь тм еrр.а
....
9,10;
!i.iie
7,19
6,97
• .84
6 ,75
4,62
2,48
:1)7
·З,25
-С.В
-7,52
:.1.,CI
·12
·11,78
·9,&;,
2.70
2,92
О/~
-5..эе .
600
5 ,1);
· 1,34
-3,47
-5,60
-7,74
-9,87
-12 00
<J.6
500
..9,32
1.•01
-С,4
2. 16. Таблица для
.соо
4
13,58 . .. 1З ,36 : ... · 13,1
11,01
__11"45
1 1~:.
..
..
0!>7 "
-1,56:.
.
[1,З5
.1)е
-3,69 .
-Э,91
·5,Bi
-6 ,04
-7,'16 -8,18
-10))9 " .. . :1.0.31
-12 44
· 1222
калибров ки ЛПДТ
;;;,
чтобы скрыть
Гnава
12. Отключите отображение линий
13. Сохраните рабочий лист.
2
сетки.
Готовый рабочий лист должен выглядеть, как показано иа рис. 2.16.
Если теперь изменить одно из входных значений в строке или в столбце
или формулу, таблица будет пересчитана автоматически. Так происходит
до тех пор, пока на вкладке Вычиспения диалоtовоrо 0Ю1а Параметры
включен режим автоматически. Его можно отменить, воспользовавшись
командой Сервис
>
Параметры и выбрав друтой режим
-
автоматически
кроме таблиц или вручную. Чтобы обновить таблицу, которая не пересчи
тывается автоматически, нажмите клавишу
<F9>.
Чтобы добавить строки внизу таблицы или столбцы справа, нуА<Но
выделить данные и включить их в таблиuу с помощью команды Данные
>Таблица подстановкИ. Если нужно вставить строки или столбцы в сере
дину таблицы, необходимо сначала выделить и очистить всю таблицу (но
не входные значения или формулы), потом вставить новые строки, выде
лить новую таблицу и снова вызвать команду Данные > Таблица
подстановки.
Создание и использование
калькуляторов функций
Калькуляторы функций
-
это специальные листы-шаблоны, играю
щие роль специализированного микрокалькулятора. Туда вводят одно
или несколько чисел и на их основе производят вычисления. Вообще го
воря, калькулятор функции не вычисляет таблицы ее значений, а только
отдельные значения.
Обязательный атрибуг калькулятора функции
-
область ввода, куда
пользователь вводит входные значения, и область вывода, где появляется
результат. Можно также защиrnть остальные ячейки листа, чтобы пользо
ватели могли вводнть значения только в область ввода и никуда больше.
Создание калькулятора простой функции
Калькулятор функции не обязательно должен быть сложным. В этом
первом примере мы создадИм калькулятор, имеющий одно входное зна
чение и одно выходное, и проводящий вычисления по одной простой
формуле.
Калькулятор юлианских дней
_
Запись дат и времени астрономических событий, измерений и наблю
дений является одной из принципиальных задач. Хотя даты можно обо
значать обычными днями , месяцами и годами, неравномерная продол
жительность месяцев и лет усложняет расчеты . При определении вели
чины временного интервала между двумя событиями приходится учиты
вать продолжительн ость лет (сколько прошло обычных и сколько
сокосных) и продолжительность месяцев.
-
ви
11~0
Инженерные расчеты
Астрономы не желают проводить время за подсчетами продолжитель
ности месяцев и лет, когда над головой чистое ночное небо и хорошая
видимость (частота мерцаний звездного света: чем меньше, тем лучше).
Поэтому они используют систему измерения времени, называемую юли
анскими днями
и предложенную Джозефом
Юлианский календарь
дней, начиная с
Скэлинджером в
1582 г.
состоит из последовательно пронумерованных
1 января 4713 r .
до н.э. (Совершенно непонятно, почему
он выбрал такую дату, но она намного опережает все достоверные лето
писи .) Чтобы определить разницу во времени между двумя событиями,
нужно просто вычислить разность их юлианских дней.
В юлианских сутках
1О
часов. Поскольку астрономы в оси овном рабо
тают по ночам, юлианские дни отсчиты.ваются не от полуночи до полу
ночи, а от полудня до полудня. Поэтому полночь с 31 декабря
на 1 января 1980 года - это юлианский день 2 444 239,5.
Способ хранения даты и времени в функциях
1979
года
Excel очень похож на
Excel rtачало отсчета
юлианские дни. Различия заключаются в том, что в
приходится на 1 января 1900 года и используется более традиционное
определение времени суток - от полуночи до полуночи. Таким образом,
чтобы преобразовать дату Excel в юлианский день, достаточно прибавить
постоянное смещение.
4' Внимание
Для совместимости с
29.02.1900.
та
Lotus 1-2-3
в
Excel учитывается
Если ограничиться периодом после
возникнет. Кроме того, в
Macintosh точкой
отсчета
несуществующая да
01.03.1900, проблем не
является 01.01.1903. Не
забывайте об этом п и пе еносе п ог амм с одной пла
ю.
В следующем примере мы создадим простой калькулятор функции,
преобразующий стандартную дату в юлианский день.
1.
2.
3.
Создайте новый рабочий лист и назовите его рис. 2.17.
Установите ширину столбца А равной 16, В - 15, и D Введите и отформаm:руйте следующие значения:
11.
Формат
Ячейка
Содержимое
А1
Калькулятор юлианских дней
АЗ
А4
Введите дату и время.
Дата должна находиться в диаnазоне между
А6
Март 1900 и 31Декабрь2078.
Стандартные дата и время
А?
Дата:
С?
Время:
А9
А11
Юлианский день:
Юлианские дни
А12
а не от полуночи до полуночи. Сутки делятся на
А1З
часов. Сутки делятся на 10 часов.
Юлианский календарь отсчитывается от
471Зr. До н.э.
01
По правому краю
По правому краю
По правому краю
отсчитываются
ог
nолудня
до
nолудня
1
10
января
llФI
Гnава
2
Юлианский день для 01.01.1980 после полудня обозначается как
ЮД 2 444 240. Используйте эту дату для синхронизации юлианского ка
лендаря с функuиями даты и времени Excel. Не нужно применять функ
цию ДАТАЗНАЧ() к содержимому ячейки
07,
87
или функцию ВРЕМЗНАЧ() к
поскольку преобразование даты и времени, введенных как текст, во
внутренний формат осуществляется автомаrически.
4.
В ячейку
89
введите следующую формулу:
=В7+07-ДАТАЗНАЧ("1/1/80")+2444239,5
5. Заключите в рамки ячейки 87, 07 и 89.
6. Присвойте ячейке 87 формат Дата типа 16 Апрель 1997; а ячейке 07 формат Время типа 13:30.
7. Присвойте ячейке 89 числовой формат с двумя десятичными знака
ми. На вкладке Число диалогового окна Формат ячеек установите флаг
Разделитель групп разрядов.
Текст в ячейках А 11:А13 выглядит несколько неаккуратно . Команда
Правка >- Заполнить >- Выровнять позволяет сформировать компактный
абзац. Выравниваемый текст должен находиться в одном столбце. Выби
раемый диапазон ячеек определяет ширину текста после выравнивания.
8.
Выделите ячейки А11:015 и выберите команду Правка>- Заполнить>
9.
Отключите отображение линий сетки.
Выровнять.
Осталось установить защиту рабочего листа, чтобы другие пользовате
ли не смогли разрушить плоды ваших трудов. Необходимо защитить все
ячейки, кроме предназначенных для ввода времени и даты, пересчиты
ваемых в юлианские дни. Воспользуйтесь командой Формат>- Ячейки. На
вкладке Защита диалогового окна Формат ячеек отключите для этих яче
ек режим Защищаемая ячейка. Затем с Помощью команды Сервис >Защита
>- Защитить
лист установите защиту рабочего листа. Если пользо
ватель попытается изменить защищенную часть листа,
Excel
выдаст зву
ковой сигнал и сообщение, объясняющее, что данная ячейка не подлежит
изменению. Для защиты документа можно использовать пароль. В этом
случае пользователь не сможет снять защиту и внести изменения, не зная
пароля. Если включить ре)!ЩМ Скрыть формулы на вкладке Защита диало
гового окна Формат ячеек, пользователь не сможе.т также увидеть формулы .
10. Выделите ячейку В7, выберите команду Формат>- Ячейки, перейдите
на вкладку Защита, отмените режим Защищаемая ячейка и щелкните
на кнопке ОК. Повторите эту операцию для ячейки 07.
Инженерные расчеты
11.
1iфJ
>
>
Выберите команду Сервис
Защита
Защитить лист. Появится диа
логовое окно Защитить лист. Флажок содержимого должен быть уста
новлен. Щелкните на кнопке ОК.
12. Сохраните рабочуЮ книгу.
Введите в ячейку 87 дату, а в ячейку 07 - время, используя форматы
Excel. В ячейке 89 появится эта дата в юлианских днях. Например, если
ввести в ячейку 87 дату 19 Январь 1997, а в· ячейку 07 - время 16:00, ра
бочий лист будет выглядеть как на рис. 2.17.
ведкте дпу и еремя.
ата доJ1ЖНа на•одитъся е диапазоне между
Стандартмые дата и врем11
Даn: ,..!""'1э,...,R<=-е-ар-ь.'""199=11
01 Март 1!0J и 31
Декабрь
2076.
Вреwя: ~l1в_оо""----'
2 450 468 ,17J
Рис.
2.17.
Калькулятор функции вычисления юлианских дней
Если вместо юлианского дня в ячейке
ке #ЗНАЧ!
,
89
nQявилось сообщение об ошиб
возможно, был использован нестандартный для
мат даты и в емени ~ П ове ьте соде жимое ячеек
Excel
фор
аты и времени.
Создание калькулятора сложной функции
Калькулятор функции не всегда столь прост, как на рис.
2.17.
У него
может быть несколько входных и выходных данных. Процесс создания
калькулятора сложной функции мало отличается от создания простого
калькулятора. Ячейки ввода по-прежнему являются единственными не
защищенными на листе, а в ячейках вывода содержатся формулы, по ко
торым вычисляются значения на основании входных данных. Сложные
калькуляторы удобны при инженерном анализе и оптимизации. При раз
работке новой системы или устройства, вычисленные оптимальные зна
чения
по
некоторым
показателям
часто
оказываются
непрактичными .
Например, шины меньшего размера по левой стороне автомобиля позво
ляют ему лучше выполнять повороты влево . Возможно , такое решение
оптимально , но оно, безусловно, неприменимо на практике, разве что
для гоночных машин для езды по круговой трассе . Если использовать
rnaвa
2
оптимальное зиачеиие невозможно, необходимо найти компромиссное
зиачеиие, несколько меньшее оптимального, которое было бы примени
мо в реальной жизни и одновременно позволяло бы достичь удовлетво
рительной
производительности. Для достижения такоrо компромисса
весьма удобен калькулятор сложной функции .
.
Термоэлектронный редиатор
Термоэлектроииый радиатор - это твердотельное устройство для от
вода тепла. Ои представляет собой полупроводниковый прибор, в кото
ром для передачи тепла из одной части в друrую используются электро
ны. Когда иа термоэлектронный радиатор подается напряжение , одна его
часть нагревается, а другая
ли,
-
охлаждается, в отличие от термопары. Ес
наоборот, охладить одну сторону термоэлектроиноrо радиатора и
нагреть дРуrую, ои иачииает генерировать электрический ток Если из
менить направление прило.жеииого к радиатору иапряжеиия, "холодная"
и "горячая" стороны меняются местами.
Долгое время термоэлектроииые радиаторы применялись для охлаж
дения маленьких объемов в ограиичеииом пространстве, таких как не
большая изолированная электрическая цепь иа большой или средней
плате. С иедавиего времени такие радиаторы стали применяться для ох
лаждения или подогрева емкостей для храиеиия пищевых
продуктов ,
чтобы можно было взять иа пикник горячую еду или холодное пиво.
В следующем примере мы создадим калькулятор усложнеииой функ
ции для расчета термоэлектроииого радиатора. Калькулятор будет вычис
лять все необходимые коиструктивиые и рабочие параметры .
Входные параметры для расчета термоэлеiсrроииого радиатора де
лятся иа две группы: параметры материала и параметры прибора. В чис
ло первых входят коэффициент Сибека (а), сопротивление (р) , и оце
ночное число (Z) для полупроводников n- и р-типа , из которых состоят
два плеча радиатора. Параметры для двух полупроводниковых материа
лов,
чаще всего используемых
в термоэлектроииых
радиаторах,
приво
дятся в следующей таблице.
Параметр
nолупроаодннк n·тнпа
nолуnроаодннк р-тнnа
Состав
75% Вi 2Тез
25% Bi 2Seз
25% Вi2Тез
75% SЬ2Тез
КоэффициентСибека (а)
Сопротивление (р)
Оценочное число
(Z)
-1,65х1О· 4
1,О5х10·Э
2,10 х 1О· 4 В/К
9,8х10·4 Ом.см
2,Ох 1о·Э
Э,Sх 1о·з (К)· 1
Теплопроводность материала (Л.) вычисляется по формуле:
а2
Л =рZ
Коэффициент Сибека иа рn-переходе вычисляется по формуле :
1111
Инженерные расчеты
Перейдем к параметрам прибора. Начнем с оrnошеиий площади к
длине
n-
и р-областей термозлектроииого радиатора
- 'fn
и 'Ур· Это кон
структивные параметры. Следующее выражение позволяет оптимизиро
вать иа основании этих параметров коэффициент полезноrо действия
([3):
(p)-.PJ
У
у Р = р РА"
11
Оценочное число для рn-перехода вычисляется по формуле:
2
z = !!:__
RК
rде
R-
сопротивление прибора, а К
-
его теплопроводность.
R=p"+PP
Л"
Лр
К= 'А"Уп +'Ару р
Оптимальное оценочное число вычисляется по формуле:
•
Z
а2
= [ (р п Л" ) 1/2 + ( рр Ль ) i;2]
Друrой коиструктивиый параметр - ток источника. Его зиачеиие, оп
тимальное для коэффициента полезного действия, получается из формулы:
!=
1
аЛТ
R [ ( + z• I:v)
где
Tav ( Th)
нагретой
112
-
1]
средняя температура, а
LI Т -
разница температур между
и охлаждеииой областями (Те).
Количество отводимой от охлаждаемой области теплоты вычисляется
по формуле:
q
= aTJ-{1
2
R-KЛT
Коэффициент полезного действия
-
зто оrnошеиие колнчества теп
лоты, отведеииой от охлаждеииой области, к количеству электрической
энергии, требуемой для отвода:
f3
=
aTJ - ~ 1 R - КЛТ
2
2
а1ЛТ+1 R
Гnава
llrj
2
Чтобы найти максимальное значение \3, нужно подставить в эту фор
мулу оптимизированные зиачеиия J, К и R:
~[(1 + z•та\1 )1
=
ЛТ
13 max
(
1+ Z
•
12
-
т;,;т::]
I:v )1/2 + 1
Наконец, формула для расчета входной мощности прибора имеет ВИд:
Р=а.!ЛТ+/ 2 R
Если устройство оптимизировано полностью, эта величина будет рав
на оптимальной входной мощности:
P=-q-
13 max
На основании
приведенных
выше
формул
создадим
калькулятор
функции, определяющий все параметры прибора. Мы вычислим два на
бора зиачеиий: один для входных параметров устройства, а другой
-
для
оптимизироваииых значений параметров устройства. Начнем с ввода ти
па и параметров материала, описанных выше.
1.
2.
Создайте новый рабочий лист и назовите его рис.
Установите ширину столбцов от А до Е:
Столбец
Ширина
Столбец
А
16
12
12
D
12
Е
9
В
с
3.
4.
Ширина
В ячейку А 1 введите текст Расчет термоэлектронного радиатора.
В ячейку А2 введите текст:
n-тип:
5.
2.18.
75% Bi2Тез 25% Bi2Seз р-тиn: 25% Bi2Seз 75% S~Тез
Введите в указанные ячейки следуюшие значения:
ЯчеАка
Содержимое
а=
Ячейка
С5
Содержимое
АЗ
А4
р=
DЗ
2,1Е-4
А5
вз
В4
В5
сз
С4
Z=
D4
D5
9,8Е-4
3,5Е-3
ЕЗ
В/К
Е4
Ом-см
Е5
1/К
-1,6Е-4
1 ,05Е-3
2,ОЕ-З
В/К
Ом-см
1/К
Теперь иужно ввести формулы для расчета теплопроводности и тем
пературы нагретой и охлажденной областей. Предположим, что иужно
подцерживатъ температуру холодной поверхности иа точке замерзания
воды
(273
К), а горячей
-
при температуре 327К, чтобы средняя темпе
ратура равнялась комнатной (ЗООК). Введем также отношения плошади к
длине. Оптимизированное значение 'Ур будет вычисляться в ячейке D11 .
,,,,
Июненерные расчеты
6.
Введите следующие значения в указанные ячейки:
Ячейка
А6
Содер)IСИМое
Л. =
Ячейка
Содер...мое
D7
273
В6
=83А2f(В4*85)
Е7
К
С6
Вт/см-К
А8
у=
D6
D3A2f(D4"D5)
88
1
Е6
А7
Вт/см-К
Т-rоряч., Т-хол.=
С8
см
DS
1
87
327
Е&
см
С7
К
Теперь вычислим все оценочные числа, количество отводимой теп
лоты и силу тока. Поместите, расчеты оптимальных величин в правом
столбце таблицы, а реальные значения - в левом, чтобы пугем подбора
последних можно было максимально приблизиться к оптимуму. Обычно
использовать оптимальные значения нельзя. Например, нельзя иа прак
тике сделать "горячее" и "холодное" плечи разной длины, даже если
этого требуют оптимальные параметры. Данный калькулятор позволяет
оценить, насколько изменяется эффективность прибора, если не исполь
зовать оптимальных зиачеиий.
7.
Введите следующие значения в указанные ячейки:
Ячейка
А9
Содержимое
89
Tav=
=(87+D7)12
С9
Ка=
D9
810
D10
=АВS(ВЗ)+А8S(DЗ)
Общи_е значения
Оптммальные значения
А11
уроптмм.
D11
=КОРЕНЬ{D4"86/(В4*D6))
=
Е11
см
А12
Z=
=09"2/(813*814)
812
С12
D12
1/К
=D9A2/((KOPEHb(В4*В6)+KOPEHb(D4*D6))A2)
Е12
А13
1/К
К=
813
=В6*88+D6*D8
С13
Вт/К
D13
=86*88+D6*D11
Е13
А14
R=
814
=В4/В8+D4/D8
Е14
А15
Вт/К
Ом
815
1=
29
С15
А
D15
=D9*(87-D7)/(D 14*(KDPEH Ь{1+D 12*89)-1))
Е15
А
1111
Гnава
Ячейка
Содержимое
А16
qc=
В16
=09*07*В 15-0, 5*815"2*В 14-В 13*(87-07)
С16
Вт
016
=09*07*015-О,5*015"2*014-013*(87-07)
Е16
Вт
А17
/3=
2
=(09*07*В 15-0,5*В15"2*814-В 13*(В7-07))/(09*В 15*(87-07)
817
+В15"2*В14)
=(07/(В7-07))*(КОРЕНЬ(1+012*B9)-B7/D7)/(KOPEHb(1+012*В9)+1)
017
8.
А18
Р=
818
С18
=09*В 15*(В7-07)+В 15"2*814
Вт
018
=016/D17
Е18
Вт
Выровняйте ячейки АЗ:А 18 по правому краю и присвойте следующим
ячейкам числовой экспоненuиальный формат с
3
десятичными зна-
ками.
В3:В6
В12:В14
.
03:06
09
012:014
/
Экс~ есс-метод
~
.,,
Процесс форматирования нескольких групп ячеек можно ускорить,
воспользовавшись
функцией
копирования
формата.
Отформатируйте
первую группу, затем выделите ее и щелкните на кнопке Формат по
образцу. Если теперь выделить любую другую группу ячеек, им будет
п
9.
исвоен тот же
Присвойте следующим ячейкам числовой формат с
3
десятичными
знаками:
10.
815:818
011
015:018
, ,Jc, ~ Снимите защиту со сл~дующих ячеек. Для
.·
.р команду Формат ~ Ячеики,
этоrо
выберите
в появившемся диалоговом
окне
перейДите на вкладку Защита и отключите режим Защищаемая ячей
ка. Затем измените шрифт в этих ячейках 11а полужирный, щелкнув
на кнопке с буквой Ж на панели инструментов Форматирование.
А2
815
83:85
03:05
87:88
07:08
il&i
Инженерные расчеты
11. Оrключите отображение линий сетки.
121 ~ Вьще1!ите ячейки A2:F2 и подчерюште их, используя жирную
·~
J
нижнюю границу обрамления из палитры Границы на панели
инструментов ·Форматирование.
Повторите эту операцию для ячеек
A9:F10.
Запомнить, какие величины обозначены какими буквами в столбце А,
не так-то просто. Поэтому давайте создадим серию примечаний к ячей
кам,
в которых укажем
полные названия содержащихся в них
величин.
Чтобы создать примечание к ячейке, нужно вьщелить ее и воспользо
ваться командой Вставка
>- Примечание.
Рядом с ячейкой появится окно
кадра, в котором вводится текст. Если текста слишком много, можно из
менить размеры кадра, перетаскивая расположенные по его углам и сто
ронам маркеры. По окончании ввода щелкните на любом месте за преде- .
лами кадра в правом верхнем углу ячейки, у которой есть примечания,
появляется маленький красный треугольный индикатор .
•
(.х=
С~ТИ8АfМ'е
р=
"<IТеокам!
Z=""
А='
Т- горя~ .• Т- хол. =' 6,,,;"""'""11?'!"'"""'!!13
\
-у="
см
Tav='
ЗООК
а=
Об
ие зна~ения
'когда указатель мыши попадает на ячейку, содержащую примечания,
текст примечания "всплывает", как показано на следуЮщем рисунке.
,_
.а
·
o.=u-
о~:.
А='
• T·ropfN., Т- хол. ='
у='
Tov ='
13. Дополните
Ячейка
АЗ
--.
1 Cll
:nJ К
а=
указанные ячейки следующими примечаниями.
А12
Примечание
Коэффициент Сибека для материала
Сопротивление материала
Оценочное чисnо для материала
Темопроводность материала
Температуры горячей и холодной областей
Отношение площади области к ее длине
Средняя температура
Коэффициент Сибека для рп-перехода
Оптимальное отношение площадь/длина для р-области при
заданном отношении площадь/длина для n-области
Оценочное чисnо для рn-перехода
А13
Теплопроводность прибора
А4
А5
А6
А7
А8
А9
С9
А11
(
1111
,
Ячейка
Примечание
А14
Соnротивление nрибора
А15
А16
Ток, nротекающий через прибор
А17
А18
Коэффициент полезного действия
Входная мощность
Гnава
2
Количество теплоты, переданное с охлажденной nоверхности
14. Установите
Защита
защиту листа,
>- Защитить лист и,
воспользовавшись
командой
Сервис
>-
шелкнув на кнопке ОК в диалоговом окне
Защитить лист.
15. Сохраните
рабочую книгу.
Теперь рабочий лист должен выглядеть, как пока.Зано на рис. 2.18.
Незащищенные ячейки (те, значения в которых можно изменять) вьще
лены полужирным шрифтом. Можно сделать их цветными с помощью
команды Формат ~ Ячейки, воспользовавшись вкладкой Шрифт диалого
вого окна Формат ячеек.
Расчет тepuoэne"'Jloннoro ре,цматора
n-тмn:
75'11. в~.тез 25'11. в~s"
а=
.1,650Е.114 В1К
р='
1,1150E.Q3
2.ОООЕ.ОЗ
1,296Е-02
3П
Z ='
А='
Т-rор~ч. , Т-хоп. ='
у='
..,. оmим.
3,500Е.ОЭ 1/К
111<
300 К
Об
25% BI,Те, 75'!1 SIJ:Te,
2, 100Е.114 В1К
9,ВООЕ.114
cu
o...
Ом-сu
Вт/сu-К
К
, см
Tav='
р.пn:
1.2!1;Е-02 Вт/сu-К
273
а='
ме эначениfll
Опntмапьные эна,,,енм"
2 ,68ЗЕ.ОЗ 111<
2.68ЗЕ.ОЗ 111<
2,544Е-02 Вт/К
0,970
11
Z="
К•"
R:"
=.
.""
q,
f,='
Р="
к
, cu
3750E.Qol
2.582Е-02 Вт/К
2,l!JJE-03 Ом
29,llOO А
0,721 Вт
·2.WJE.OЗ
28,614
0,712
Ou
А
Вт
О.З14
О.З14
2,294
см
2.266
Вт
Вт
8
Рис.
2.18.
Калькулятор функции анализа термоэлектронного радиатора
С помощью данного листа можно подобрать конструктивные значе
ния в незащищенных ячейках и оценить степень влияния изменений в
конструкции радиатора на эффективность · и требования к мощности.
Можно также сравнить конструктивные параметры с оптимальными и
определить, нас~s..олько реальная конструкция отличается от оптимальной.
Резюме
Данная глава охватывает, по крайней мере,
50
процентов приемов ра
боты с электронными таблицами, ежедневно используемых на практике
учеными и инженерами . Большая часть вычислительной работы заключа
ется в подстановке простых чисел в относительно простые формулы и
вычислении результатов. Как видно •. формат электронных таблиц очень
11 Q
Инженерные расчеты
удобен для работ такого рода. Единственное, чего недостает, -
это rpa- -
фическое представление данных, о котором мы поговорим в следующей
главе.
В этой главе бьши использованы различные методы создания инже
нерных таблиц и калькуляторов функций в Excel. Инженерные таблицы
позволяют вычислять одно или несколько значений по научным и инже
нерным формулам. Калькуляторы функций вычисляют значения по на
бору сложных формул; они позволяют создать модель сложной системы,
провести экспериментальный анализ системных параметров и немедлен
но получить результат. При создании таблиц и калькуляторов бьши ис
пользованы многие команды и приемы, упрощающие работу с таблицами
и определяющие их внешний вид. По мере использования
Excel
для ре-·
шения собственных задач и накопления опыта в построении электрон
ных таблиц вы обнаружите множество других способов вычисления и
представления полезных результатов.
Дополнительная литература
Теплопроводность
L. Heasell, "The Heat Flow ProЫem in
Dev., ED-25, 12 (Dec. 1978):1382
Silicoп,"
IEEE Trans.
оп Е/ес.
Прецессия северного полюса мира
А
1969),
Е. Roy,
р. 53.
The Foundations
о/
Astrodynamics (New York:
Macmillaп,
.
Зависимость концентрации собственных носителей от
температуры
S. М. Sze, Physics
1981), р. - 19.
о/
Semiconductor Devices, 2nd. ed. (New York: Wiley,
.
Уравнение Ван-дер-Ваальса
D. Halliday, R.
Resпick,
Physics (New York: Wiley, 1967),
рр.
611-615.
Абсолютная звездная величина
D. S. Bimey, Modem Astronomy (Boston: Allyn and Bacon, 1969),
174.
рр.
168-
Подвижность электронов в кремнии
W. J. Orvis, Semiconductor Device Modeling with BURN42; а OneDimensional Code for Modeling Solid State Devices, UCID-20602 ·(Livermore,
СА: Lawrence Livermore National Laboratory, 1985), р. 8.
111:1
Гоава
2
D. М. Canghey, R. Е. Thomas, "Carrier MoЬilities in Silicon Empirically
Related to Doping and Field," Ргос. /ЕЕЕ (Dec. 1967):2192.
С. Jacoboni, С. Canali, G . Ottaviani, А. А. Quaranta, "А Review of Some
Charge Transport Properties of SiJicon," So/id State Electronics, 20 (1977):77.
Напряжание и деформация 6алки, закрепленной одним
концом
Е. Oberg, F. D. Jones, Н. L. Horton, Machinery s HandЬook, 20th ed.
(New York: lndustrial Press, 1978).
Т. Baumeister, Е. А. Avallone, Т. Baumeister 111, Standard Handbook for
Mechanical Engineers (New York: McGraw-Hill, 1979).
Юлианские дни
G. OtteweJJ, Тhе Astronomical Companion (Greenville, SC: Furman
versity, 1979), р. 23.
Uпi
Тармоэлектронные радиаторы
S. W. Angrist, Direct Energy Conversion, 4th ed.
1982), рр. 148-153.
(Вoston :
AJlyn and Bacon,
Обзорные задачи
1.
Создайте таблицу синусов, косинусов, тангенсов, арксинусов, аркко
синусов и арктангенсов для углов от О до
180
градусов с шагом
1О
градусов. Углы измеряются в градусах, а не в радианах.
2.
Создайте таблицу логарифмов с произвольным основанием
туральных логарифмов
ln(x);
log(x);
1ох
экспоненты ех; степеней десяти
на
для
значений о, 0,1, 0,3, о,5, о,9, 1,0, 2,0, 5,о, 8,0 и 10,О. Используйте про
верку на. нулевой аргумент логарифмической функции с помощью
оператора ЕСЛИ и автоматическую вставку текста Н/О для log(O) и
ln(O).
3.
Создайте :калькулятор простой функции, вычисляющий для данного
угла в градусах все шесть тригонометрических функций (синус, коси
нус, тангенс, секанс, косеканс, котангенс) и их логарифмы.
4.
Лемниската
Бернулли,
известная
также
под
названием
"двухлепестковая роза" - это кривая в виде восьмерки, симметрич
ной относительно оси х. Она определяется уравнением
(х 2 + у 2 ) = а 2 (х 2 -у 2 )
Пусть а=2. Вычислите таблицу
5.
or
r2
= а 2 cos(28)
50 значений х и у для построения
полной кривой (то есть для ев диапазоне от о до 2n).
Создайте таблицу для сравнения давления при заданных температуре
и объеме газа, исnользуя уравнение Ван-дер-Ваальса для азота, ам-
110)
Инженерные расчеты
миака и гелия. В таблице должно быть
1О
различных комбинаций
температуры и объема.
6.
Газ
а, л2 ·атм./моль2
Ь, л/моль
N2
1,39
0,0391
0,037
0,0237
NНз
4,17
Не
{},0341
Создайте калькулятор функции для термоэлектронного радиатора, в
котором используются 75%-РЬТе
75%-РЬТе
7.
25%-SnTe и AgSbTe2.
25%-SnTe
AgSbTe2
~n
N
Р
а
80
240
µВ/К
р
0,8х 1о·З
4,3х 1о·3
Ом-см
Z
о,ах10· 3
1,ах10-з
к- 1
Изгиб (напряжение
и деформаuия)
равномерно нагруженной
(0,5
кг/ед. длины) балки, закрепленной одним концом, описывается урав
нениями
S= W (Z-x)2
2Zl
у=
Wx2
24Ell
(1z2 + (2/ - х )2)
Используйте ту же балку, что и в примере с нагрузкой, приложенной
в одной точке. Создайте с помощью команды Данные
>-
Табпица
подстановки таблицу с одним аргументом для расчета напряжения и
деформаuии
по длине
балки для различных
суммарных нагрузок.
Массу балки включите в нагрузку.
8.
Создайте калькулятор функции, преобразующий эклиптические коор
динаты (эклиптическую широту
ториальные
координаты
!} и эклиптическую долготу А.) в эква
(прямое
восхождение
а и
склонение
Б).
Входными данными являются дата и ~клиптические координаты, а
выходными - экваториальные координаты. При вводе прямого вос
хождения не забудьте преобразовать градусы в часы. (Используйте
функцию
ATAN2
для получения правильного квадранта.)
8 = arcsin[ sin(J3) cos( Е) + cos(J3 )sin(e )sin('A)]
cos ( а ) = [
cos(J3 )cos('A)]
соs(Б)
. ( ) [ cos(J3 )cos(E )sin('A )- sin(J3 )sin(E )]
s1n а =
.
соs(Б)
П4~м
Гоава
2
а. = arctan( sin (а. ) )
cos(a.)
9.
Скорость убегания
v
2
= G( т 1 + т 2 )
(v)
вычисляется по формуле:
2
r,
где:
G - гравитациоииая постоянная (6,67xl0-11 Н·м2/кr2);
ml - масса планеты (кг);
т2- масса убегающего тела (кг);
радиус планеты (м).
Создайте таблицу скоростей убегания для винтовочной пули, убегаю
щей от следующих тел (ml>>m2 и, следовательно, зиачеиием т2
r-
можно пренебречь).
Солнце
Меркурий
Венера
Земля
Луна
Марс
Юпитер
Сатурн
Уран
Нептун
Плутон
10. Создайте
тронов в
Радиус (км)
Масса (кr)
695 300
2 439
6 050
6 378
1 738
1,97х1030
2,39х102з
4,91х1024
3 396
5,98х1О24
7,35х10 22
6,58х1023
71 398
60 330
25900
24 750
1 500
5,70х1026
8,80х1025
1,04х1026
1,41х1022
1,90x1Q27
таблицу дрейфовой скорости (v) и подвижности
GaAs,
(Е) с иапряженн0С1ЪЮ, изменяющейся от О до
µ 1E(l +BFt)
v=------
I+Fk
v
µ=Е
F= __§__
Ео
•
где:
ЕО =
4
ООО В/см;
µ1 = 8 ООО см2/В-с;
k= 4;
0,05.
В=
(µ) элек
двигающихся под воздействием электрического поля
10 кВ/см.
Инженерные расчеты
Упражнения
1. Цистерна диаметром 3 м вмещает 115 ОООл воды. Создайте таблицу
зависимости уровня воды от времени для скоростей иаполиения 20,
и 200 л/мин.
Координата камня, падающего под дс:йсrвием силы тяжести, описыва
40
2.
ется выражением
t -
1/'JX!2, а скорость -
времени для первых
3.
выражением
gt,
rде
g = 980 м/с2, а
время. Создайте таблицу зависимости коордИНаТhl и скорости от
20
секунд.
Создайте топографический калькулятор функций. Топограф проводит
лииию базиса и измеряет угол, образованный двумя точками базиса и
вершиной возвышенности. По двум углам и раСстояиию между точ
ками, в которых оии были измерены, нужно вычислить расстояние от
лииии базиса до вершииьr холма.
4.
Средняя скорость молекул идеалъиоrо газа (с) вычисляется по формуле:
с=~
где: Р
давление, а р
-
=
-
плотность. Создайте таблицу скоростей для
молекул водорода (р
0,09 кr/мЗ) при давлениях 100, 10, 1, 0,1, 0,01 и
0,001 атм. (1 атм. = l,01325xl0s Н/м2).
5.
Создайте калькулятор функции, вычисляющий среднюю скорость мо
лекул идеальиоrо газа (см. упр.
сти
6.
и
давления,
вводимых
4)
при различных зиачеииях плотно
пользователем
в
миллиметрах
JYIYFНOГO
столба (1 атм. = 760 мм рт. ст.)
По закону Пуазейля, уравиеиие для вязкой жидкости, текущей по
трубе радиусом а, выглядит следующим образом:
4
7ta
P
Q = 811/
где Q - скорость истечения (мЗ/с), Р// - разность давлений вверху и
внизу трубы (Н/мз) и ТJ - вязкость жидкости (кr/м·с). Создайте таб
лицу с двумя аргументами, используя копирование формул, для воды
(ТJ = lOOx lo-s ХГ/м·С), для 10 труб с диаметрами от 0,5 см до 5 см и
для 10 разностей давлений между los и 106 Н/мЗ (от 1 до 10 атм. при
длине трубы
7.
1 м).
6 для
Решите задачу
масла (ТJ=8400xl0-5 кrfм·с), используя команду
Данные ~ Табпица подстановки.
8.
Средняя скорость вязкой жидкости в трубе (см . упр.
ется по формуле:
_
а2 Р
V= -
-
811/ ,
6
и
7)
вычисля
Гnава
2
число Рейнольдса равно:
Re = 2vap
11
где: р - плоrnостъ (для воды - 1000 кr/м3, для масла - 900 кг/м3). В
задачах 3 и 4 скорость истечения вычислялась для ламинарного тече
ния в трубе. Если число Рейнольдса больше 2000, течение турбулент
ное, и нужны другие формулы. Вычислите число Рейнольдса при дав
лениях и диаметрах труб, использованных в задачах 3 и 4, чтобы про
верить, все ли расчеты верны.
9.
Создайте калькулятор функции для термоэлектронного генератора, в
10.
котором используются 75%-РЬТе 25%-SпТе и AgSbTe2. Параметры
материалов возьмите из задачи для повторения 6.
Прогиб в центре балки, закрепленной обоими концами, с нагрузкой в
центре, вычисляется по формуле:
W/ 3
f = 48Е/
Используйте ту же балку, что и в рассмотренном примере и рассчи
тайте прогиб при разных массах нагрузки. Какова должна быть на
грузка, чтобы прогиб составил 2,5 см?
Гпава
3
Диаrраммы и rрафики
В этоtй таrвг...
./ Типы диаrрамм Excel и их исnопьзование
./ Мастер диаrрамм
./ Составление диаrрамм na данным таблицы
./ Присвоение и изменение меток
./ Рисование "от руки"
./ Рисование no точкам
Следующая задача после создания списка чисел
-
это их анализ.
Простейщей формоii анализа является построение графика и исследова
ние получившейся кривой. Таким путем было сделано немало научных
открытий. В этой главе мы займемся изучением возможностей построе
ния графиков с помощью Ехсе] и использования их в научных и инже
нерных целях.
Создание диаграммы
В Ехсе] есть два типа диаграмм: внедренные в табтщу и расположен
ные на отдельном листе. Внедренные диаграммы присоединяются к ра
бочему листу. Оии являются его частью, подобно таблице значений. Лист
диаграммы
-
это отдельный лист рабочей книrи , на котором, кроме
диаграммы, ничего нет. В обоих случаях точки на диаграмме соответст
вуют ячейкам таблицы рабочего листа. Выбор типа диаграммы зависит от
тоrо, для чеrо она пред1шзначается.
Для анализа данных иа рабочем листо больше подойдет маленькая
внедренная диаграмма. Ее можно разместить там же, рядом с данными ,
на основе которых она построена. Внедренные диаграммы обычно слиш
ком малы для демонстрации , но более чем достаточны для аналитиче
ских целей. Диаграмму, предJiазначенную для презентации или докумен
та лучше расположить на отдельном листе, чтобы обеспечить нужный
размер и качество печати.
Внедренные диаграммы
Для создания диаграммы в
Excel
обычно используются четыре-пять
команд: создание базовой диаграммы, выбор типа, присвоение меток и
т.n . Для упрощения этой процедуры можно воспользоваться мастером
lfJI
Гnава ~
г.tiJ диаграмм . Чтобы вызвать его. достаточно воспользоваться кнопкой
LНJ на панели инструментов Стандартная или командой Вставка
>-
Диаграмма , предварительно выделив группу ячеек, на основании которых
будет построена диаграмма.
Выбор типа диаграммы
В первом диалоговом окне мастера диаграмм выбирается тип диа
граммы. Диаграммы делятся на две группы - стандартные и нестандарт
ные . Этим группам диаграмм соответствуют вкладки окна мастера. В Exстандартных и 20 нестандартных типов диаграмм. Из них для
l:el 97 14
инженерных
и
исследовательских
целей
пригодны,
пожалуй,
только
Точечная и Поверхность.
Точечная диаграмма
-
это обычный график функции на координат
ной плоскости . Это единственная диаграмма, оси которой могут быть
как линейными, так и логарифмическими. В остальных типах диаграмм
ось х используется д.т~я комментариев , и ее масштаб всегда равномерен,
независимо от того, что является аргументом функции . Такие диаграммы
применимы для
инженерных и
исследовательских целей только в тех
случаях , когда данные в таблице упорядочены и имеют постоянный шаг.
Диаграмма Поверхность
-
это поверхность , образованная сеткой с
прямоугольными ячейками и выведенная в трехмерной системе коорди
нат. Значения координат по осям х и у располагаются в таблице соответст
венно выше и левее оси
z.
z.
В масштабе выводятся только значения по оси
Оси х и у являются равномерными и используются для комментариев.
У каждой стандартной диаграммы есть несколько разновидностей. Их
образцы представлены справа от списка Тип.
Выбрав тип диаграммы ,
шелкните на той его разновидности , которая вам больше подходит . Что
бы увидеть, как будет выглядеть диаграмма, построенная по выделенным
данным , воспользуйтесь кнопкой Просмотр результата.
Под образцами
Дuаграммы
u
lffi
графuкu
диаграмм находится информационное окно, из которого можно почерп
нугь полезные сведения о диаграмме данного типа и вида. Выбрав диа
грамму, щелкните на кнопке Далее .
....
ПримечаJiие
Мастер предлагает лишь наиболее распространенные виды диаграмм.
Все они могут быть впоследствии изменены. Выбирайте тот, который
больше всего удовлетворяет вашим замыслам. Более точную настройку
можно буд~т произвести впоследствии .
Выбор источника данных
Данные мя точечной диаграммы обычно располагаются в смежных
ячейках. Если данные организованы по столбцам, то в первом из них
чаше всего содержатся
координаты
по оси х,
а в остальных
-
по
оси у
для одного или нескольких графиков . Последние рассматриваются на
диаграмме как наборы данных , в состав которых могут входить коорди
наты по то оси х и информация для легенды. Если координаты по то оси
х отсугствуют, они заменяются значениями
В этом диалоговом окне две вкладки
вая
из них предназначена для
-
l, 2, 3 и
т.д.
Диапазон данных и Ряд. Пер
определ ения
группы ячеек,
на основании
которой будет построена диаграмма. Сюда входят как значения функций,
так и их аргументы.
Если эта группа ячеек была выделена до обращения к мастеру диа
грамм, в строке Диапазон уже содержится необходимая информаuия . В
противном случае перейдите в строку Диапазон, а затем выделите необ
ходимые данные на листе с помощью левой кнопки мыши . Расположен
ная в правом конце строки кнопка свертывания диалогового окна позво
ляет временно убирать диалоговое окно с экрана, чтобы были видны вы
деляемые ячейки. Чтобы по окончании выделения диапазона вернугъся в
окно мастера, нажмите эту кнопку снова .
Если потребуется изменить
данные , уже введенные в строке Диапазон, сначала выделите всю строку,
а потом выделите новые данные на листе . Если ячейки, в которых нахо
дится информация мя графика, не являются смежными, удерживайте
нажатой клавишу
<Ctrl>
при их вьщеленИи. Если заголовки столбцов
(строк)
также
названиями
являются
создаваемых
графиков,
вьщелите
также и содержащие их ячейки. Затем с помощью переключателя Ряды в
выберите
способ
расположения
наборов данных:
по
строкам
или
по
столбцам .
~~~i11f'1ii~~~~-~~~
Графи_•) .
рафик 2
1
4
5
2
5
9
7
9
2
8
10
iз
ri
з
"
Представление о том, как будет вы
глядеть
готовая диаграмма с
учетом
вы
бранных параметров, можно получить на
основании
образца,
центре окна.
расположенного
в
Гnава
На вкладке Ряд нужно определить,
3
какие из выделенных наборов
данных будут отображены на диаграмме.
Названия
наборов данных содержатся
в списке
Ряд.
Этот список
можно сокращать и расширять, не изменяя данные на листе. Каждый
набор данны х хар актеризуется тремя параметрами: именем, диапазоном
значений аргумента и диапазоном значений функции.
По умолчанию
считается, что значени я аргумента одинаковы для всех функций и распо
ложены в левом столбце или в верхней строке выделенного диапазона .
Чтобы
добавить
к диаграмме
новый
набор
данных ,
щелкните
на
кнопке Добавить . В списке Ряд появится новый эл емент со стандартным
Дuаграммы
u
именем РядN, где
появится
и
в
ifil
rpaфuкu
N-
легенде
порядковый номер набора данных . Это же имя
диаграммы
в
окне
предварительного
просмотра .
Перейдите в строку Имя и введите имя нового графика или выделите с
помощью мыщи ячейку с этим именем на листе . Затем подобным обра
зом определите в строках Значения Х и Значения У диапазоны ячеек , в
которых
содержатся
значения
аргумента
и
функции,
соответственно.
Чтобы изменить содержимое любой из этих строк, воспользуйтесь мето
дом, описанным выше для строки Диапазон .
Если потребуется удалить один из наборов данных, воспользуйтесь
кнопкой Удалить. Добавление и удаление наборов данных в окне мастера
диаграмм не приводит к изменению данных на листе.
Для остальных рассматриваемых типов диаграмм эта вкладка имеет
несколько другой вид. Строка Значения Х отсутствует. Ее заменяет строка
Подписи оси Х. Содержимое ячеек, указанных в этой строке, является не
аргументом функuИи, а только подписями под элементами диаграммы .
Поэтому все диаграммы , отличные от точечных, допускают только рав
номерную ось абсuисс. Если строка Подписи оси Х пуста , под осью Х вы
водится последовательность чисел О,
1, 2
и т.д.
Организаuия трехмерной диаграммы несколько отличается от двумер
ной . Каждое ее вертикальное сечение в плоскости
плоскую
диаграмму
соответствующего
набора
xz представляет
данных
с
собой
равномерной
осью абсцисс. По оси у откладываются имена наборов данных, вводимые
в строке Имя . В случае отсутствия имен делениям оси у присваиваются
стандартные метки Р1, Р2 , РЗ и т . д .
Выбр ав располо.Жение данных для диаграммы , щелкните на кнопке
Далее.
lfJ:i
Гnава
3
Оформление диаграммы
Внешний вид следующего окна мастера несколько различается в за
висимости от выбранного типа диаграммы. Обычно оно состоит из шес
ти вкладок: Заголовки, Оси, Линии сетки, Легенда, Подписи данных и
Таблица данных.
Первая вкладка предназначена для ввода названий осей координат и
всей диаграммы. Все внесенные изменения отражаются в расположенном
справа от строк ввода окне предварительного просмотра.
На вкладке Оси можно определить, какие метки будуг выводиться
возле делений координатных осей. Если сбросить флаг ось Х {категорий)
или ось У {значений), то соответственно ось абсцисс или ординат оста
нется без подписей. Для всех диаграмм, кроме точечной, возможно ото
бражение следуюших данных на оси х.
•
автоматически. Если данные оси х имеют формат даты, то ось абсцисс
автоматически становится осью времени. В противном случае исполь
зуется стандартный формат оси х.
~
FfiiiOiill
l:::.!l!!!!.3
"
"
Дuаграммы
•
lf41
графuкu
u
категории . Исп ользование стандартного фор~1ата оси х, даже если со
ответствующие данные имеют формат времени .
•
ось времени . П о оси х в любом случае откладываются единицы вре
мени.
На вкладке Линии сетки можно включить или отменить вывод линий
координатной
сетки
промежуточных
-
вертикальных
и
горизонтальных,
основных
и
.
. ~.-1. ~-··
с~~~~11 ~-• 1;..,АIЖ"д~, ··~•~ .
;.i, .. ,....
'
. .
~-·~
~ -·."·
(J>roro
На вкладке Легенда
определяется
1
место
распол ожения
леген ды
-
внизу, в правом верхнем углу , справа или слева от диаграммы . Можно
также отказаться от вывода легенды
.
. ;;:,.~,:.;; { -~~~1 '~~~.::;.:·i.~.:.....11 "°",...;"_;_~··1 •. ''i .;. :
: - - ~~;:· ·; :~~~~~~i~~~J;i~1~~~~j~~ir.~
На вкладке Подписи данных можно включить ил и отменить режим
подписи значений под каждой точкой диаграммы . В роли таких подпи
сей могут выступать либо значения аргумента , л ибо значения функции в
данной точке .
Режим подписи данных доступен только для двумерных
диаграмм .
По окончании настройки щелкните на кнопке Далее .
Гnава
3
Размещение диаграммы
В последнем диалоговом окне мастера диагр11м м нужно определить
способ размещения диаграммы в рабоче й книге : со здать для нее отдель
н ы й лист или ра с пол ожи ть на то м же л исте, что и да н н ы е , и спользован
ные для ее построения . В ы берите второй вариант и из расположенного
рядом раскрывающегося списк11
-
оди н из сущес твующих в книге рабо
чих лисов, на котором размести тся диаграмма .
Работа мастера окончена . Щелкните на кнопке Готово .
Тестовая диаграмма
15
> 10
~
о
о
5
10
О сь Х
15
-+-- Граф и к
1
• ··· Гр а ф ик
2
Дuаrраммы
"''
rpaфuкu
u
Вас не устраивает расп оложение диаграммы на листе? Щелкните в
любой точке в пределах окна диаграммы и перетащите ее на друтое ме
сто, удерживая нажатой левую кнопку мыши. Не нравится размер? Из
мените его, перетащив один из угловых или боковых манипуляторов . Ре
зультат показан на рис .
4
7
9
2
3.1.
5
Тестовая ,1,маrра11ма
в
1 ~1
..
о
10
15
ос" х
Рис.
3.1. Диаграмма ,
внедренная в рабочий лист
Изменение диаграммы
Отдельные элементы готовой диаграммы можно изменять , что позво
ляет улучшить ее внешний вид. Для редактирования уже созданной диа
граммы нужно щелкнуть на ней. Эта операция активизирует диаrрамму и
делает ее элементы доступными для изменения.
диаграммы, изображенной на рис .
3.1,
В частности, легенда
расположена неудачно , и коорди
натная плоскость используется нерационально . Щелкните на л егенде и
п ерегашите ее вверх и влево. Затем щелкните на координатной плоско
сти и измените ее размер. используя боковые и угловые манипуляторы .
Вновь активируйте рабочий лист, щелкнув в л юбо.м его месте за предела
ми окна диаграммы . Результат внесенных изменений показан на рис.
·в1x~~э:.~~rO'i~~~~wщ1~.J1! fflLE~:~~-fuiillilt1~9!~1?'~Ji!~:
.1
Г а нк 2
4
5
7
в
g"
1Q
з
2
о
;
Тестов а.я дмаrрамuа
12
10
о
10
о
On X
~ис.
3.2.
Законченная диаграмма
tS
3.2.
IFfJ
Глава
Чтобы изменить параметры любого элемента диаграммы
натной плоскости, оси координат, легенды и т . п.
-
3
коорди
-
достаточно дважды
щелкнуть на нем и внести необходимые изменения в появившемся диа
логовом окне.
Создание высококачественных диаграмм
Для большинства исследовательских uелей диаграммы
Excel
более чем
достаточны, но в большинстве журналов их не публикуют. Чтобы диа
граl\~ма подошла для журнала, ее нужно либо отредактировать с помошью
графического редактора, либо использовать вспомогательную программу,
создающую диаграммы покрасивее .
Вообще говоря, диаграммы
Excel
подошли бы и здательствам, если бы
не их оси координат и .'vtетки данных . Изменить метки с помощью гра
фического редактора просто
-
достаточно удалить старые и поместить
на их ме. сто новые.
Хорошей утилитой построения диаграмм на основе данных
ляется программа
DeltaGrapl1® Pro.
Excel
яв
Чтобы создать диаграмму с помощью
этого приложения, достаточно скопировать содержимое ячеек рабочего
листа в буфер, перейти в DeltaGrapl1® Pro и вставить туда данные. Диа
граммы в DeltaGraph® Pro гораздо разнообразнее, а числовые метки вы
водятся либо в экспоненuиальном (2.ЗхIО5), либо в инженерном
(230.ОхlОЗ) формате вместо используемого в Excel компью~ерного стан
дарта (2.ЗЕ5) .
Компани я
DeltaPoiпt
Iпс.
предлагает версии
DeltaGraph® Pro
для
платформ М ае и РС. Более подробная информаuия содержи тся в прило
ж ении А.
Создание диаграммы на отдельном листе
Рис.
3.3. Диаграмма,
созданная на отдельном листе
Дuаграммы
u
ПJJ
графuкu
Процесс создания диаграммы на отдельном листе мало чем отличает
ся от создания внедренной диаграммы. Разница состоит лишь в том
что
в последнем диалоговом окне мастера диаграмм необходимо выбрать ре
жим
создания
отдельного листа диаграммы.
строке введите название нового листа (рис .
В
расположенной
рядом
3.3).
Создани е диагра ммы по результата м р а счетов
В следующем примере демонстрируется создание диаграммы по ре
зультатам инженерных расчетов.
Вначале мы проведем вычисления по
формулам, а затем создадим двумерную диаграмму для иллюстрации по
лученных результатов .
Сопроти вление крем ни я
Зависимость сопротивления кремния от температуры описывается на
бором кривых для различных концентраций примеси. Точки максимума
этих кривых располагаются в диапазоне от
бенность
обязательно
учитывается
при
до
300
создании
l ООО
К. Данн ая осо
полупроводниковых
приборов, поскольку, 'Iем дальше от точки максиМУ?->Ш сопротивления
находится р аб очая точка, тем выше вероятность отказа.
При низких значениях температуры сопротивление кремния возраста
ет с ее увеличением. В таких условиях прибор устойчив к разогреву то
ками большой силы
-
рост сопротивления приводит к уменьшению теп
ловыделения. Однако если температура превышает пороговое значение,
при ее дальнейшем росте сопротивление прибора начнет уменьшаться.
Это приведет к возрастанию тока, увели чению нагрева и дальнейшему
снижению сопротивления. Температура будет увеличиваться экспоненци
ально, п ока прибор не расплавится . Эффект температурного разгона по
лупроводниковых приборов называют вторичным тепловым пробоем.
Сопротивление кремния вследствие движения электронов (если пре
небречь движением дырок) описывается следующей формулой:
1
p=-
qnµ
где р
-
удельное сопротивление в Ом ·м,
концентрация электронов, а
траци я
электронов
в
q -
заряд электрона, п
-
их подвижность. Равновесная концен
µ-
легированном
кремнии
описывается
следующей
формулой :
п = ~ [ N + ~N
где
N -
2
+ 4п; ]
концентрация примеси в м-3, а n ; -
ных носителей заряда. В глаl!е
2
концентрация собствен
была рассчитана концентрация и под
вижность собственных носителей заряда для различных значений напря-
"''
Гnава
женности электрического поля,
концентрации примеси
и
3
температуры.
Однако в данном примере значения первых двух параметров будут низ
кими, и для расчета подвижности можно воспользоваться следующей уп
рощенной формулой:
_ (-т)-2.42
µ-µо
То
которая гораздо проще формулы из предъщущей rлавы. Если вы не
удалили рабочую книгу, в которой вычислялась концентрация собствен
ных носителей, можете использовать результаты сделанных в ней расче
тов для данн ого примера. В противном случае придется вводить все за
ново.
Создание таблицы
Рассчитаем сопротивление кремния для разных температур при трех
значениях концентрации легирующей примеси: 1,ОхlО'З, 1,SxlQIЗ и
J,Ох 1Ql4 см-3. Для этого необходимо выполнить следующие операции.
1.
Откройте новый рабочий лист и назовите его рис.
2.
Заполните ячейки рабочего листа, как указано ниже. Чтобы ввести
символ
µ,
измените щрифт на
Symbol
3.4.
и нажмите клавишу
m.
Ячейка
Соде ржи мое
Ячейка
СоДержимое Ячейка
А1
Зависимость
С2
EG2•
F2
СЗ
FЗ
1330
G2
Е2
Cons•
636
Q•
GЗ
ТО•
GАММА•
ЕЗ
µО•
Н2
300
нз
2,42
Содержимое
1,бЕ-19
сопр0тиаnения
кремния от
температуры
А2
АЗ
82
ВЗ
3.
EGO•
EG1•
1,17
4,73Е-4
Введите в ячейке
02
03
следующую формулу:
=КОРЕНЬ( 4*6*{2*ПИ(}*О,91095Е-30*1,38066Е-23/{6,62618Е-34)л2)"3)*
{О,33*0 ,56)л(О, 75)*1 Е-6 .
4.
Вьщелите ячейки А2:ВЗ, выберите команду Вставка>-- Имя>-- Создать ,
включите режим в столбце слева и щешщите на кнопке ОК. Содер
жимому ячеек В2 и В3 будут присвоены имена EGO и EG1_ соответст
венно. Символ nодчеркивания в имени
EG1 . Повторите
E2:F3 и G2:H3.
на ячейку
С2:03 ,
EG1_
отличает его от ссьmки
процедуру присвоения
имен для
ячеек
5. ' Вьщелите ячейки А2:АЗ, С2:С3, Е2:ЕЗ и G2:G3 и выровняйте их со
держимое по правому краю.
6.
В состав имен ячеек не могуг входить буквы греческого алфавита.
Поэтому в имени ячейки FЗ программа заменит
кивания. Выделите ячейку
F3
µ символом подчер
и выберите команду Вставка
>--
Имя
>--
Дuаграммы
u
lifi
графuкu
Присвоить. В появившемся диалоговом окне введите имя
uO,
затем
удалите имя _о.
Введите в указанных ячейках следующие величины:
7.
Ячейка
Содержимое Ячейка Содер- Ячейка Содер - Ячейка Содержимое
85
Концентрация Е5
жимое
1Е13
F5
(см·3)
жимое
G5
1,5Е13
примеси:
Н5
(см·3 )
15
1Е14
J5
(см-3)
А6
т
86
Eg
С6
06
~1
Е6
n
F6
nl
rho
А7
(К)
87
(38)
С7
(см-3)
07
(см 2/В-с)
Е7
(см·3)
F7
(Ом-см)
8.
9.
Выровняйте содержимое ячеек F5, Н5 , J5 и A6:F7 по центру, а содер
жимое ячеек А2:А3, С2:С3, Е2:Е3 и G2:G3 - по правому краю.
Скопируйте содержимое ячеек E6:F7 в ячейки G6:H7 и 16:J7.
_-Экспресс-метод
Чтобы быстрее выполнить п.9, выделите ячейки Еб : F7 и, удерживая на
жатой клавишу
<Ctrl> (<Cmd>
на
Macintosh),
перетащите их содержимое в
ячейки Gб:Н7, а затем- в ячейки lб:J7.
10. Введите
11.
в ячейке А8 число 300, а в ячейке А9 - число 320. Выделите
ячейки А8:А9 и перетащите маркер заполнения вниз 'до ячейки А 18.
Введите в ячейке 88 формулу:
=EGO-EG1_*A8"2/(A8+EG2_)
12. Введите в ячейке С8 формулу:
=Cons*(KOPEHb(A8"3)*EXP(-88*1,60219E-19/(2*1,38066E-23*A8))
13. Введите в ячейке D8 формулу:
=uO*(A8fТO)"(-GAMMA)
в ячейке Е8 формулу:
14. Введите
=0 ,5*(Е$5+КОРЕНЬ(Е$511 2+4*$С811 2))
15. Введите в ячейке 88 формулу:
=1/(Q*E8*$D8)
16. Присвойте содержимому ячейки 88
числовой формат с двумя деся
тичными знаками.
17. Присвойте
содержимому ячеек
C8:F8
экспоненциальный формат с
одним десятичным знаком.
18. Скопируйте содержимое ячеек E8:F8 в ячейки G8:H8 и 18:J8.
19. Выделите ячейки 88:J8 и перетащите маркер заполнения вниз до
ячейки J18. Все формулы будут скопированы в нижележащие ячейки
таблицы.
20. Заключите группы ячеек в рамку, как показано на рис. 3.4.
21. Отключите отображение линий сетки.
Готовый рабочий лист изображен на рис. 3.4. Теперь нужно
диаграммы для этих трех наборов данных.
построить
Пiii
Гnава ~
Создание диаграммы
Прежде чем обратиться к м астеру диаграмм для создания диаграммы
трех температурных зависимостей сопротивл ения, необходимо освобо
дить место на листе. Выполните для этого следующие операции:
1. Откройте рабочий лист, изображенный на рис . 3.4.
2. Выделите ячейки A5:J18 и перетащите верхнюю границу выделенной
обл асти вниз так, чтобы ее верхний левый угол переместился в ячейку
А18. Таким образом, вся таблица будет смешена вниз .
.·_ ;~~~-д~~w:.J.~-52tU..-~:q,-: -·1 : :,.~p~~,_ш_s;,d.:~ii.!J.:~1~i;i:::.(R~:~"~.:.:1~d;:.:;~~}~ -t-:.·.j~;:i' -.
о..1 r. З е1в ис иu остkl
,, ~j
con
отие n е н ия r р ем ни я от тем п е ратуры
EGO=
1,17
EG1= 4 7 3 Е- 0 4
:.ч
~'5 ;
EG2=
636
О=
1 , 60Е·19
Т О=
Cons=
3 ,ЗЕ + 15
µО=
1330
GAIA МA=
Конценrрация п ри мес и .
(с "
1 , О О Е •1 3
т
Eg
ni
µ
n
mo
-7' 1
(К)
(ЭВ)
(с "..,
(см'IВ·с)
(С "..,
(0 1.1-С М)
;~
300
320
340
360
380
400
420
440
460
480
500
J -1
12 ,
JЭj
J,.,/j
1s··
'iiIJ
.11~
181
1,12 6 , 2 Е •О9
1,12 2,9E•I O
1,11 1,2 Е•1 1
1,1 1 4 ,ОЕ •1 1
1,10 1 , 2Е • 12
1,10 З ,З Е+ 12
1,09 В ,2 Е•1 2
1,08 1 , 9Е +1 3
1,08 4 , 1 Е• 1 З
1,07 8 , 2 Е• 13
1,07 1,6Е •14
~:.i f~I J;iГ ···:v·~:s.:z·- ·
Рис.
. -: э:-э
(с м
1 . 50 Е• 1 3
j:_;:;
n
(см")
1 О О Е• 1
4
n
(с м"!
rho
(0 " ·С М)
(с м
rho
(О м- с U)
1 ,3 Е•О 3
1 .О Е• 1 3
4 .7 Е• 02
1 , 5Е• 13
3 , 1Е• О2
1 , О Е+ 14
4 ,7Е •01
1 , 1Е• ОЗ
1 , О Е• 13
5 ,5 Е• 02
1 , 5Е•1З
3 ,7Е• 0 2
1, О Е • 14
5 , 5Е•О 1
9 , 8Е • 02
1 , ОЕ •1 3
6, 4Е• О2
1, 5 Е•1 З
4 , 2 Е• 0 2
1 , ОЕ • 14
6, 4 Е • 01
В ,6 Е + О2
1 , ОЕ •1 З
7 , 3 Е• О2
1 , 5 Е• 1 З
4 , 9Е• О 2
1 , ОЕ• 14
7, З Е + 0 1
7 . 5 Е• О 2
1 , О Е• 1 З
8 ,2 Е • О2
1 , 5Е • 1 3
5 . 5Е • 02
1 , ОЕ •14
8,3Е • О 1
6 ,6Е• О2
1 , I E•I Э
8,6Е •О 2
1 , 6 Е• 1Э
6, О Е• 02
1 , О Е• 1 4
9 , 4Е• 0 1
5 ,9Е • 02
1 , 5 Е• 1 3
7 , ЗЕ • О2
1 , 9 Е• 1 3
5,7 Е• 02
1 ,О Е • 14
1,1 Е• О2
5 , ЗЕ • 0 2
2 , 4 Е • 13
4 , ВЕ • О2
2,В Е • 1 3
4 ,З Е• 02
1 ,О Е • 1 4
1 , 1Е • 0 2
4 ,7 Е • 02
4 , 6Е•13
2 . 9 Е • О2
4 , 9Е•13
2,7Е • О2
. 1 ,1 Е • 1 4
4 , ЗЕ• 02
8 , 7 Е•1 3
1 ,7 Е• О 2
9 ,О Е • 13
1,б Е• О 2
1 ,5 Е• 14
1,О Е•О 2
3 , 9Е • О2
1 , 6Е •1 4
9 , 9Е• О 1
1 ,7Е •14
9 7E• OI
2, 2Е • 14
7
' "": '$~$'"
'"'"'3.6:
.
- :зг
.
- :.~ -~
"" -·
1 , 2 Е• О2
5 Е •0 1
~с~-
~
3.4. Таблица .температурных зависимостей сопротивления кремния
Чтобы быстро выделить группу неnустых ячеек, выделите одну из них и,
удерживая нажатой клавишу <Shift>, дважды щелкнИте на той границе
выделенной области, в направлении которой хотите ее расширить . Пря
моугольная область будет расширена до первой пустой ячейки . В частно- '
сти, чтобы выделить ячейки в п . 2 , достаточно выделить ячейку А5 и,
удерживая нажатой клавишу
<Shift>,
дважды щелкнуть на ее нижней гра
нице. Область выделения продлится до первой пустой ячейки в столбце
А . Продолжая удерживать клавишу
<Shift>,
дважды щелкните на правой
границе ячейки А5. Область выделения расширится вправо до первой
пустой ячейки. Таким образом будет выделена вся таблица . Данный ме
тод особенно полезен при выделении больших групп ячеек , не поме
щающихся на экране .
3.
Выделите ячейки А21 :АЗ1 (значения аргумента) . Затем, удерживая на
жатой клавишу
<Ctrl>,
выделите ячейки
F21 :F31
(значения первого
набора функций).
4.
~ Запустите м астер диаграмм , щелкнув на одноименной кнопке
Ll:!J панели
инструментов Стандартная .
Мастер диаграмм (шаг
На экране
1 из 4): тип диаграммы .
появится
окно
Выберите из списка
Дuаграммы
u
IFu
графuкu
Тип элемент Точечная, а из палитры Вид -диаграмму, на которой
значения соединены отрезками. Щелкните на кнопке Далее.
5.
2
На шаге
вся необходимая информация уже содержится в строках
мастера. Убедитесь, что на вкладке Диапазон данных включен режим
Рядьi в столбцах и щелкните на кнопке Далее.
6. На вкладке Заголовки следующего диалогового окна мастера введите в
строке Название диаграммы следующий текст: Сопротивление ·крем
ния .
в
строках
названий
осей
х
и
у
введите
соответственно '
Температура (К) и Сопротивление (Ом-см). Шелкните на кнопке Далее
7.
В
последнем
окне
мастера
выберите
режим
создания
внедренной
диаграммы и щелкните на кнопке Готово. Готовая диаграмма появит
ся на рабочем листе .
8.
Переместите диаграмму с помощью мыши вверх, так чтобы она рас
положилась над таблицей данных, и немного уменьшите ее размер
(рис.
3.5).
При
изменении любого
из коэффициентов
все
формулы
рабочего
листа будут автоматически пересчитаны, а диаграмма перестроена.
Не расслабляйтесь: мастер закончил работу, но диаграмма еще не го
това. Нужно изменить точку пересечения осей координат, добавить две
кривые и переместить легенду в более подходящее мес;го. Все эти недос
татки будут исправлены в ходе краткого знакомства с методами редакти
рования диаграмм
1-
Excel.
1 .ОЕ-tОЭ
8.0 E+Q2
~ ~ О ,ОЕ>О2
~ ~ 4,ОЕ>О2
в
2.О Е•О2
О.О Е+ОО
о
Рис.
3.5.
Рабочий лист с диаграммой зависимости сопротивления кремния
от температуры
Редактирование диаграмм
Если вновь созданная внедренная диаграмма нуждается в изменениях,
щелкните на ней, чтобы перейти в режим редактирования . Закончив ре
дактирование, щелкните в любом месте рабочего листа, и диаграмма об
новится.
нужно.
Включать режим
редактирования для диаграммного листа не
IF1:1
Гnава
3
Следующие элем енты диаграммы или ди агр аммного л и ста можно вы
дел ять и и зм енять по отдел ьн ости :
•
Точки (метки данных) ди аграммы . Дважды щел кнув н а них , м ожно
изменить источн ик данных, си мвольi, линии ил и связанны й с ними
текст .
•
Оси диаграммы~ Дважды щелкнув на них , можно изменить стиль,
диапазон и формат меток .
•
Чтобы и зменить м естоположение легенды или одной и з меток, п ере
та щите ее с по м ощью мы ш и .
•
Если нужно изменить разм ер обл асти п остроения в предел ах окна
ди аграмм ы, щелкните н а ней и перетащите один из м аркеров обрам
л е ни я .
В режиме редактир ован ия диаграммы или на диаграммн ом л исте в
главн ом м еню появляется
н овы й элем ент
ко м а нды реда ктирован и я диагра м м
.....
Диаграммы ,
содержащий
.
1'1ЕИМ..~~~-ние
Если вы не помн ите , ка кой элемент диаграммы выделили , взгляните на
поле име н в л ево й части стро ки формул . В не м в ы водится и мя в ыделе н
ного объ е кта . Если какой-либо из эл ементов диаграммы не удается вы
делить , выделите любой другой и перейдите к нужн о му элементу с по-
, мо щью клави ш уп равл е ния курсором . Стрелки <t > и <..!.> п озволяют пе
реходить от одного объекта к другому, а стрелки<~> и <f-> - от одной
части объек_та ~-.Аf~У.Г()Й .
Создание и изменение элементов диаграммы
Пер вые
ч етыре
ком анды
м еню
Диаграммы
-
Исходные данные , Параметры диаграммы и Размещение
Тип
-
диаграммы ,
с оотв етствуют
четы ре м о кнам масте ра диаграмм. Особенно часто при редактир овании
и спольз уют ком анду Параметры диаграммы . При это м откр ывается одно
им енн ое диалоговое о кно , позволяю щее с оздавать и и з менять следующие
эле м е нты офо рмлени я диаграммы .
•
На вкл адке Заголовки м ожно создавать, изменять и удалять названия
осей коорди нат и все й ди агр амм ы.
•
Н а вкладке Оси м ожн о включить или отм енить режим п одп и си дан
ных п од ося ми координат .
•
Вкладка Линии сетки п редн азн ачена для настр ойки отображения сетки
в области по строения .
•
На вкладке Легенда можно включить . или отм енить режим вы вода
л е генды, а также о п р едел и ть е е ме стопол ожен и е.
•
Н а вкладке П одписи данных м ожно включить режим вывода возле ка
ждой точки ди аграммы ее значение по оси х или по оси у.
Команда Диаграмма
>
Добавить да н ные позволяет добавлять в диа
грам му н ов ы е набо р ы данны х .
дuаграммы
18%1
графuкu
u
Чтобы ввести в ди аграмму комментар ии, н е связанн ы е ни с одним из
ее эл ементов,
щел кните н а диаграмм е , в веди те нужный текст в строке
формул. Новый текст п оявится в виде свободного, " плавающего " объек
та , который можно переместить в л юбое место окна диаграмм ы. Чтобы
и зменить метки оси координ ат ил и имя набор а данных , дважды щелЮiи
те на этом объекте и отредактируйте его с помощью появи вш егося диа
л огового окна.
Форматирование диаграммы
С
помощью
ком анды
Выделенный м еню
Формат можн о изм енять
формат ил и стил ь выделенного элемента ди аграммы . Точное названи е
этой команды зависит от того, ка кая часть ди аграм м ы выдел е н а .
Нап рим ер ,
есл и
выделен
набор данн ых ,
то
с
п омощью
ком анды
Формат>- В ыделенный ряд можн о измен ить uвет и форм у линий и м еток
дан ных, подпи си возле точек и способ п остроения графика. Если выде
лить область построения, то с по мощью ком анд ы Формат
>-
Выделенная
область построения можн о изме н ить uвет и зап ол н ени е фона , а также
стиль и uв ет рамки .
По ком анде Диаграмма
со
с пи с ками
стандартн ы х
>и
Тип диаграммы выводится диалоговое окн о
н естандартн ых тип ов ди агр амм
и
их
р азн о
в идн остей . С п омощью этого о кна можно и з м ен ить тиri диагр аммы дпя
всех или тол ько дпя некоторых н аборов данных.
Кнопка Просмотр результата в диалоговом окн е Тип диаграммы по
з воляет определ ить , как будет выглядеть ди аграмма после вын есения . Ес
л и хотите , чтобы выбранный тип ди аграммы предЛагался по умолчанию ,
щелкните на кнопке Сделать стандартной . Появится диало говое окно с
требованием подтверждения ваш его выб ор а .
Щел кните на кн оп ке Да .
11в1
Гnава
3
Такой прием особенно полеJе н при создании большого количества одно
тип ных диаrрам;vt.
Внедренную диагрJ~му можно переместить в любое место рабочего
листа. Чтобы изменить ее размер и форму, следует перетащить маркеры
обрамлеkня. Для измен ения орие нтаuии трехме рной диаграммы выдели
те углы ее основания и стенок и добейтесь нужной ориентаuии , перетас
кивая один из них.
Добавление в диаграмму новых наборов данных
Наиболее простой способ добавить во вн едренную диаграмм у новую
кривую
-
это выделить в табли uе соответствующие данные по оси у.
поместить указатель мыши на границу выделенной области и перетащить
ее в окно диа граммы . Если диаграмма расположена на отдель н ом л исте,
после выделения данны х следует вос пользоваться командам и Правка
Копировать и Правка
<Shift+lns>.
>-
Вставить или комбинаuиями клавиш
>-
<Ctrl+lns> и
Если новому набору данных соответствуют значения аргумен
та , отличные от предыдущего набора, необходимо выделить оба столбца,
сохранить их в буфере об;\iена, выделить диаграм м у или перейти на диа
граммный лист и использовать команду Правка>- Специальная вставка. В
поя вившемся диалоговом окне включите режим Категории (значения оси
Х) в первом стоЛбце и щелкните на кнопке ОК. Если применить команду
Вставка, значения обоих выделенных столбuов будут рассматриваться как
две разные функции, а по оси х будут откладываться те же значен и я, что
и для предьщущего графика или uелые числа, начиная с
1.
Для создания
нового графика можно также воспользоваться ком а ндой Диаграмма
>-
Добавить данные.
Пр исоед инение
кривых к диаграммам
осуществляется
с
пом ошью
формул рндов. Если включить режим редактирования диаграммы и выде
лить набо р данных, соответствующа я ему формула ряда появится в стро
ке формул, rде ее можно редактировать. У формулы ряда четыре сле
дуюших аргумента , разделенных точкам и с запятой: заЮiюченн ое в двой
ные кавычки и м я ряда, отображаемое в легенде, ссылка на ячейки с на
бором з начен ий х, ссылка н а ячейки с набором значений у и ном ер ряда,
о пр еделяющий очередность его вывода. В большинстве формул первый
параметр по умолчанию отсутствует. Его можно ввести, чтобы он вошел
в состав легенды. Если пропущен второй параметр, в качестве значений
аргумента используются натуральные числа начиная с
1.
Путем редактирования формулы ряда можно и зменить данны е, на ос
новании которых строится
ди аграмма.
Если
встави ть формулу ряда в
строку формул, то данные , на которые она ссылается, будут выведен ы в
активной ди аграмме . Чтобы быстро добавить текст легенды , щелкните
перед пе рвой точ кой с запятой в списке параметров форм улы ряда и вве
дите заключенную в кавычки строку или
легенды.
ссыл ку на ячейки с текстом
Д.uаграммы
u
1111
rpaфuкu
Защита диаграммы от изменения
Редактирование формулы ряда удобно в тех случаях, коrда необходи
мо избежать обновления диаграммы при изменении таблицы. Как прави
ло, диаграмма связана с определенными ячейками. Если изменить их со
держимое, изменится и диаграмма. Если вы собираетесь отредактировать
таблицу, но хотите сохранить диаграм:"rtу, необходимо заменить ссылки в
формуле ряда диаграммы на числа.
Значения, соответствуюшие точкам кривой, можно ввести в формуле
ряда яnньщ образом. Однако лу•1ше пору•щтъ это Ехсе!. Чтобы заменить
ссылку ее значением, выделите ее в формуле ряда, нажмите комбинацию
клавиш <Ctrl+=> (<Cmd+=> на Maci11tosl1) и щелкните на кнопке с
"птичкой·'. После замены ссылок на данные их абсолютными значения
ми можно продолжить работу над листоч без риска исказить диаграмму
например, ввести
-
ноные данные и построить друrую диаграм~~у или до
бавить еще один набор данных в уже существующую.
Изменение точечной диаграммы
Теперь вы готовы к тому, чтобы внести изменения в созданн~10 ранее
диаграмму сопротивления кремния. В первую очередь добавим в эту то
чечную диаграмму еще две кривые. Для этого выполните следующие
операции.
l.
Создайте копию текущего рабочего листа с помощью команды Правка
~ Переместить/скопировать лист. При этом не забудьте включить ре
жим Создавать копию в появившемся диалоговом окне. Присвойте
новому листу имя рис.
3.6.
...._ JJ ри!J!.е.ч,.ан_и~ ~ .. ..
.
Чтобы быстро скопировать рабочий лист, перетащите его ярлычок в нуж
ное место, удержива~..':!.СЗ.)f(~ТО,~.кл~.~~~у C::~trl>.
2.
Выделите два набора данных, которые нужно добавить в диаграмму:
вначале
-
ячейки А21 :АЗ1 со значениями аргумента, а затем, при на
жатой клавише
<Ctrl>, -
ячейки Н21 :Н31
и
J21 :JЗ1
со значениями
функuии.
3.
4.
5.
Скопируйте данные в буфер обмена.
Щелкните на диаграмме, чтобы включить режим редактирования.
Выберите команду Правка> Специальная вставка. Чтобы данные пер
вого столбца выделенной области рассматривались как координаты по
оси х, а данные двух других столбцов
включите
режим
Значения
У
в
-
как координаты по оси у,
столбцах
и
установите
флажок
Категории (значения оси Х) в первом столбце, после чего шелкните на
кнопке ОК.
Гnава
3
Вес три набора данных появятся на диаграмме в виде графиков . Те
п е рь нужно изменить точку пересечения осей х и у, а также и зменить
размеры диаграммы, чтобы ее было удобнее просм атривать и чтобы на
звание оси у поместилось uеликом .
Сопроtнвnенме 1феНН~
6.
7.
Выделите с помощью мыши ось х.
Выберите команду Формат
>
Выделенная ось. Появится диалоговое
окно Формат оси. Перейдите на вкладку Шкала, минимальное значе
ние, введите в расположенной рядом строке число
300
и щелкните на
кнопке ОК .
8.
Щелкните в области построения и расширьте ее, перетащив верхнюю
и правую rраниuы .
9.
Выдел ите легенду и пе рем естите ее в более подхолящее :м есто . Есл и
нужно, измените местоположение надпи сей .
Дuаграммм
u
•i@J
графuкu
Теперь диаграмма дол жна выгл ядеть так, как показано выше. Сле
дующая задача
-
вывести названия трех графиков . Это можно сделать
тремн с 1юс uбами : н ле1ендt: , с 1юмuщью мt:тuк данных ил и н ш1де сво
бодного текста. Начнем с л егенды .
В формуле ряда всех трех кривых отсутствует имя ряда. В п е рвую оче
редь нужно при своить формулам имена .
1О.
11.
Выделите верхнюю кривую .
В форм ул е ряда поместите курсор перед пер вой точкой с зJпятой и
введи те следующий текст: "1 , ОЕ13 (см л-3)".
Добавить имя ряда можно и по-другому . В ыд еm i те :Jдин из графиков . Вы- .
берите команду Диаграмма> Исходн ь · ·~ данн ые . В появив ш емся диа- !
логовом окне перейдите на вкладку Ряд и введите назв а ние ряда в стро
ке Имя . Однако, на мой взгл яд , редэ 1 .:r•,: р-Jва н ие формулы занимает !
11.1.~нь_~~-~реr.11.~.Н..~.: .. ·-- ··- --~ ·--- __ " ....
12. Выделите
" -. __ ·-·· ...•.~. -~ ·" · --····· ···· .. .
среднюю кривую и л р и·: ьой1с ей и~1я "1 , 5Е1 З (смл-3)" .
13. Выделите нижнюю кривую и при сt\ ойтс ей имя "1,ОЕ14
14. При необходимости измените положение легенды .
Модифиuированная диаграмма изображена на рис.
нравится
стил ь легенды,
можете е го и зменить ,
(смл-3)" .
3.7.
Если вам не .
выделив ее и воспользо
вавшись командой Формат> Выдел е нная леге нда , или перетащить леген
ду на новое место с помощью мыши .
Другой метод идентификаuии кривых заключается в использовании
меток данных . Чтобы рядо:-.1 с точкой к р и во й выводилис ь метки , нужно
выделить график и вос пользоватьс$1 командой ФорматQ Выделенный ряд .
При перемешении точки ее м етк а также передвигается . За:мените в диа
грамJ\1е легенду на м етки д а нных . Для этого выполните следуюшие опе
р а ции .
1.
2.
3.
Создайте копию рабоч е го листа и п ри свойте ей имя рис .
3.7.
Щелкните на диаграмм е, чтобы нач ать ее редактирование.
Удалите л егенду, выдели в ее и н ажав кл ав ишу
<Del>.
1111
Гпава
3
1 .ОЕ+ОЗ
f
8 .ОЕ<О2
1i 6.ОЕ+О2
~ ~ 4.ОЕ+О2
;
§ 2.ОНО2
0.ОЕ+ОО g~~~==~
300
Рис.
3.6.
360
500
Диаграмма "Сопротивление кремния" с легендой
Выделите верхнюю кривую. Выберите команду Формат> Выделенный
4.
ряд. В появившемся диалоговом окне Формат ряда данных перейдите
на вкладку Подписи данных. Включите режим значение и щелкните на
кнопке ОК.
·
Удалите все метки, крОJ1.1е седьмой . (Щелкните на одной из :меток, в
5.
результате чего выделится весь набор, а затем щелкайте на лишних
меткnх и удаляйте их по одной с помощью клавиши
седьмую
метку,
введите
текст
1,ОЕ13 (смл-3)
и
<Del> ).
Вьшслитс
нажмите
клавишу
<Eпter>.
Проделайте то же для центральной кривой, однако оставьте четвертую
6.
метку и введите в нее текст 1 , 5Е1 З (смл-з) .
Выделите
7.
нижнюю
кривую
и
присвойте
ее
пятой
метке
имя
1,ОЕ14 (смЛ-3).
Щелкните на листе вне окна диаграммы, чтобы отключить режиl\1 ее
8.
редактирования.
Погасите линии сетки.
9.
Диаграмма с тремя наборами данных, помеченными прикрепленным
текстом; изображена на рис.
3.7.
1 .ОЕ+ОЗ
1
8 .ОЕ+О2
! I 6.ОЕ+О2
!
~ 4.О Е• О2
2 .V E+02
0.ОЕ+ОО k~~±~=~z=~~~~::
300
Рис.
3.7.
зоо
ООО
Диаграмма "Сопротивление кремния" с тремя кривыми и их метка
ми данных
Посмотрим теперь, как будет выглядеть диаграмма со свободным тек
стом и стрелками.
Чтобы добавить в диаграмму неприкрепленный текст, нужно ввести
его в строке формул, когда диаграмма находится в режиме редактирова
ния , а затем перетащить новый объект в нужное 1\tесто диаграммы. С по-
u
Дuаrрамны
•i~i
rp aфu кu
м ощью к11шш ш и
<Enter>
м ожн о с оздать метку, состоящую из нескольких
стр ок . Вып о,1 нитс сл еду ющие де й спз ия .
l.
2.
3.
Созпдйте ко п и ю
pa60•1e ro
листа и присвойте ей имя рис.
3.8.
Щелкните н а диаграмме, чтобы начать ее редактирование .
Выделите одн у из прикрепленных меток данных и удалите ее с пом о
щью клавиши
н а M aci пtosh) . Таким же образом
<Del> (<Backspace>
удали те дв е д р у гие метк и .
4.
Перейдйтс в строку фор:-.1ул, введите в ней текст 1 , ОЕ13 (смл-3) и на.,.
жм ите кл а виш у
<Enter>.
В диаграмме появится строка с новым текстом .
CЩfil·
~:~ ~ Примечание
С вободный текст м ожно таюке создать с помощью расположенной на па
·r
нели инстру м е нто в Рисование кно п к и Надпись .
5.
"
.... , ,
.•
... ,, .
.
. . .
."
".
,
·-·
.,.,.. . ~у-..·
Wелкн11те в канне поя в ивше й ся строки текста и снова нажм ите кла1ш ш у
<Enter>,
чтобы
1 , 5Е13 ( смл-3), н аж мите
6.
'
перейти
<Enter>
на
но1:1ую
строку .
Затем
введи те
и 1:1ве.Liите 1,ОЕ14 ( см л -3 ).
П е р ета щите текст из uснтра диаграммы на свободное :-1есто в ее пра
в о :-1 ве р.хне :-1 у глу .
7.
С по:-ющью команды Вид
:>-
Пa н effi.1 инструментов откройте пан ел ь
Рисован ие .
XI
ll"!.b""" ·
..;:. .
~
f;:i
АвrО<Щ:~·
.t;.д-:: g
'-
"'.Q.?._~ _:'tl
EEI il:
8. ~ Шелкни те на кн опке с изображением стрелки и нарисуйте в диа
~ гра мl\.1е три стрелки, направленные от меток к графикам .
9. Дважды щелкните на одной из стрелок или выделите ее и выберите
команду
Формат
:>-
Автофигура .
В
появившемся
диалоговом
окне
Фор м ат авто фигуры пе р ейдите на вкладку Цвета и линии и выберите в
палитре раз м ер самую маленькую стрелку
........
ш>W>он:
:::J
:::J ·'
.~;~,
!}"}'-~!'!'
iJ
и.~:
-т:
IJ«J;,,._;:,_ ,
j o.1s пт
:::J
1J ·
,=-"~2FEt~"'::·"!~:.
......
iJ .
.
"''
Гnава
10. Отформатируйте подобным образом две оставшихся стрелки.
11. Щелкните на свободном месте рабочего листа, чтобы отменить
3
выде
ление диаграммы.
12. Погасите линии
сетки.
Последний вариант рабочего листа изображен на рис.
3.8.
Свободный
текст удобно использовать в случаях, когда диаграмма нуждается & ком
ментариях и прочей дополнительной информации.
t,OE+QЭ
1--
е.ОЕ•!::/2
~
е.ое.02
l
1
~-4.ОЕ~
u
1
2.ОЕ..С2
1
i:J .DEt1XJ
эоо
<00
1
~~~~--~~~'...,_~-·-~1•1~~~-~
Рис.
3.8. Диаграмма
"Соnрстивлен•'lе кремния" с меткамv. в &иде свободного
текста и стрелок
Создание лоrарифм~.1чес~:их е.1
nолу11оrарифмичес1<.их дrпаrрэ.мм
Оси '!'ОЧС'!НОЙ дииграммы МОГ} , . Gыть
л~нс:ilНЫJ\.U ; , 1ак и лолчжФ
!(;lj(
мичс<.:кими . Чтобы з~менюъ линейную осъ Л •_ • r:~ ) "(;~: с~i!'- Чес:~:ой , ну:::н•) nы
делить ее, выбрать команду Фо;:~м:.т
диа.тюго1юм
окне
перейти
на
>-
8"';д-.:ленн~: ~ ось . н пшпншше мс;f
вкладку
Шкаr:&
и
вюtюtjить
режим
логарифмическая шкала . В следующем приме ре мы проведем: вычи.сленин
по еще одной формуле, <"t затем построим мя нее логарифмическую
диаграмму.
Коэффициент лавинного умножени~ в кремнии
При
подаче
движения
напряжения
в нем
нсt
полупроводниковый
электронов повышается.
Если
прибор
скорость
разность потенциалов
достаточно высока, электроны разгоняются до такой степени, что начи
нают генерировать другие свободные электроны, "выбивая" их из ато.1"юв
кристаллической решетЮ!. Такое явление назьtвается ударной ионизаuи
ей. Эти электроны также разгоняются и, в свою очередь, становятся ис
точниками новых электронов . Начинается так называемое лавинное ум
ножение. Как правило, разработчики полупроводниковых приборов не
имеют ничего против лавин, если последние возникают не в их прибо
рах. Исключение составляют специальные приборы, такие как лавинный
транзистор.
На основе экспериментальных данных были созданы эмпирические
формулы для расчета интенсивности лавин.
В частности, приведенная
дuаграммы
u
11 Q
rpaфuкu
ниже формула позволяет рассчитать коэффициенты лавинного умноже
ния в кремнии для различных з начений электрического поля и темпера1УРЫ .
а= AVNl·exp[AVN2+AVN3(T-300)]
IEI
где а измеряется в м-1, Т- темлера1)'ра в градусах -Кельвина, а Е
-
напряженность электрического поля в В/м. Зная коэффициент а, можно
найти интенсивность лавины . Для этого следует умножить его на кон
центрацию и на скорость электронов. Коэффициенты формулы имеют
следующие значения:
AVN1
Е (В/м)
Е<2.4х10
2,4х10 7 <Е<4,2х1О7
7
Е>4 , 2х1С7
(м- 1 )
2,бх~О 8
б,2х10 7
5,Ох107
(В/м)
1,4Зх10В
AVNЗ (В/м· К)
1,Зх10 5
.
1 ,08х10 8
1,З х 10 5
1,Зх10 5
AVN2
9 , 90х10
7
Создание таблицы
В этом примере мы вычислим зависимость коэффиuи ентов лавинного
умножения от 1tапряженности электрического поля для температур. 300,
600
и
900
К.
.
·1. Откройте новый рабочий лист и назовите ero рис. 3.9.
2.
Установите ширину столбцов в соответствии со следующей таблицей:
Столбец
А
8
с
Ширина
Столбец
Ширина
2
D
12
12
Е
12 '
12
. -Эксп. ресс-метод
Чтобы ' быстро получить несколько столбцов одинаковой ширины, выде
лите их и подберите ширину одного, перетаскивая его заголовок с помо
щью мыши . Остальным выделенным столбцам будет присвоена та же
ширина.
3.
Введите в ячейке А 1 текст Коэффициенты лавинного умножения в
кремнии.
Сначала создадим таблицу значений для формулы коэффициента ла
винного умножения . Каждый набор таких коэффициентов предназна
чен для различных диапазонов значений электрическоrо поля.
4.
Введите в ячейках ВЗ:Еб следующие данные:
11!:1
Гnава
3
Ячейка
вз
Содержимое
Ячейка
Содержимое
Ячейка
Содержимое
Е(В/м)
6 , 2Е7
ЕЗ
АVNЗ(В/м-К)
84
о
С5
С6
5 , ОЕ7
Е4
1 , ЗЕ5
85
Е5
1 . ЗЕ5
1,4ЗЕ8
Е6
1 , ЗЕ5
сз
С4
AVN1(1/м)
2,6Е8
03
04
05
06
AVN2(B/м)
86
2,4Е7
4,2Е7
1,08Е8
9 , 9Е7
Выровняйте содержимое ячеек 8З : ЕЗ по правому краю.
Присвойте ячейкам следующие имена:
5.
6.
Ячейка
Содер- Ячейка
Сод ер-
жимое
жимое
С4
85
86
7.
ECUT1
ECUT2
cs
С6
AVN11
AVN12
AVN13
Ячейка
Содер-
Ячейка
жимое
D4
05
06
Сод ержимое
AVN21
AVN22
Е4
Е5
AVN31
AVN32
AVNЗ2
Е6
АVNЗЗ
Присвойте всей таблиuе (диапазону ячеек В4 : Е6) имя
COEFFS .
Создадим теперь таблицу коэффициента лавинного умножения .
8. Введите
9. Введите
10. Введите
11. Введите
в ячейке
88 текст Т(К)= и выровняйте его по правом у краю .
в ячейки С8 : Е8 числа 300, 600 и 900.
в ячейке 89 текст Е(8/м) и выровняйте его по лраному краю .
в ячейке С9 текст alpha(1/м} и выровняйте его по правому
краю.
12.
Выделите ячейку С9 и скопируйте ее содержимое в ячейки
D9:E9, Пе
ретащив маркер заполнения вправо до ячейки Е9 .
13.
Введите в ячейке
Выделите ячейки
ячейки
810 число 5,ОЕ+О6 , а в ячейке 811 - Число 1,ОЕ+О7 .
810:811 и перетащите маркер заполнения вниз до
829.
Есть два способа выбора из таблиuы значений,
соответствующих
приложенному электрическому полю . Во-первых, можно воспользоваться
вложенными функциями ЕСЛИ. Две такие функuии
ЕСЛИ позволяют
разбить задачу на три диапазона. Во-вторых, можно применить функцию
ВПР, которая автоматически сканирует таблицу. В данном примере мы
используем оба метода. Начнем с вложенных функций
1.
IF.
Введите в ячейке С10 следующую формулу:
=ЕСЛИ($81 O>ECUT1 ,ЕСЛИ($81 O>ECUT2,AVN13,AVN12),AVN11}
*EXP(-(ECЛИ($810>ECUT1,ECЛИ($810>ECUT2,AVN23,AVN22),AVN21}
+ЕСЛИ($В1 O>ECUT1 ,ЕСЛИ($81 O>ECUT2,AVN33,AVN32),AVN31 )*
(С$8-ЗОО))/$В 1О)
Применение функций поиска делает формулы более компактными по
сравнению с вложенными функциями ЕСЛИ, в особенности для таб
лиц с более чем двумя диапазонами . На следующем шаге использует
ся метод с функuией ВПР.
2.
Введите в ячейке
010 введите следующую формулу:
\
Дuаграммы
u
ПР»
графuкu
=ВПР($81 O,COEFFS,2)*EXP(-(BПP($B1 O,COEFFS,3)
+ВПР($В 1O,COEFFS,4 )*(0$8-300))/$81 О)
В оставшейся части таблицы также будем использовать функцию по
иска ВПР.
3.
Выделите ячейку 010 и
перетащите маркер заполнения вправо до
ячейки Е1 О .
4. Выделите Ячейки С10 : Е10 и перетащите маркер заполнения вниз до
ячейки Е29 .
5. Присвойте ячейкам В4:Е6 и В10:Е29 экспоненциальный формат с
двумя десятичными знаками.
6.
7.
8.
Разграфите таблицу в соответствии с рис.
3.9.
Отключите отображение линий сетки.
Сохраните рабочую книгу .
Готовый лист изображеt~ на рис .
3.9.
На этом листе вычисляется ко
эффициент лавинного умножения электронов в электрическом поле при
температурах
30Q, 600
и
900
К, перечисленных в верхней строке таблицы .
..'~----~6.:.,,,:.~:.;~~:· ·,_ ,;l:;i_;_~_::JЬ_,;; •: ..J.4;:;_. ,:.R1 .- ::.i?:~.;;i: : ..::~_;i,.,.;3._,,;,:f;;;;:Js;;;;щ_<t'iiliilt'i!l! <'S~,.J;:,..
' 1:~! Заеи1;:.имо сть коэффициенrа лавинного vмножениR элеt::tронов в креwнt1и
.:~_;i
Е iВ/м)
·g:·;
O.[JOE-+00
2 ,40Е..07
4 ,20Е..07
'_4·!,
:р ]
1,sl J;
A\IN1
6.20Е-+{)7
5JIJHl7
1 ,бОЕ+О2
З,24Е-t00
6.56E-ill
1,138Е..о4
1 , 40Е-IОЗ
1,04E-+V2
2.!ЮЕ-+04
1 , 7ЗЕ+О5
3.64Е-+04
2,04Е+О5
1~
В ,25Е+О5
'~iг:~'" :
Рис.
al ha 11"
1 .66Е-11
4,1ЗЕ-IОЗ
1,69E-t00
4 ,б2Е+О5
1.26Е+О5
З.50Е-t07
2,ВЗЕ--00
4ДJЕ-+07
9,3JE-t00
1.57E-iffi
З.ОSЕ+О5
4 ,17E-t{E
4.50 Е <О7
5,54E-<ffi
2 .ЗЗЕ-+06
5 .ООЕ-+07
6,9JE-t{E
З . 1бЕ-<ОО
1.45E-t00
5.SOE-+07
6.(J(JE-+07
8,26E-iffi
2ДJЕ<ОО
6.50E-t07
7 .ООЕ-+07
1,09E-t07
1.22E-t07
4.D7E-t06
5.01E-t06
5.98E-t06
б ,96Е-t00
З .99E-iffi
7 .50Е-Ю7
1 ,34Е<О7
7,94E-<ffi
4.72E-tffi
З.ООЕ.07
~4 ·i
1,:ЮЕ-ЮS
1.)JЕ<{б
1.50E-t07
1/м'
2Д)Е-t07
1
1,ЭJEi{JS
al ha 1 /м
4,04E-U!
al ha
2.50E-t07
'JЭ: I
1,ООЕ-+00
9.ЮЕ.07
9 ,В? Е- 05
Bic"
J}J,
;~;!
Tlfi
iВ/м) А\/NЗ (В/..,.К
1 ,43Е-+ОО
5.ООЕ--00
1ДJЕ-+07
Е
:);(]
AYN2
300
т
:~ш
;{~;j
(1/м)
2 .60Е-Ю8
3.9.
9 ,бOE-iffi
5.9ЗЕ+О5
9.79Е+О5
2.62E-tffi
З)ЭЕ-+!Б
'
'ilf.
Зависимость коэффициента лавинного умножения элекrр,онов в
кремнии от напряженности электрического поля и температуры. Чтобы пока
зать большую часть листа, использована команда Вид>- Во весь экран.
Создание диаграммы
Значения коэффициента лавинного умножения различаются на не
сколько порядков , что затрудняет использование линейной шкалы. Го
раздо более наглядной будет диаграмма с логарифмической шкалой. В
этот раз мы ее создадим на отдельном листе .
п1~1
1.
Гnава
3
Выделите ячейки В10 : Е29 .
2. Выберите команду Встав ка >-Диаграмма.
3.
Создайте с помощью Мастера диаграмм новую диаграмму со следующими свойствами .
Тип : Точечная
Вид: Точечная диаграмма, на которой значения соединены отрезками
Ряды в столбцах
Использовать первый столбец в качестве координат по оси х
Название диаграммы : Коэффициент лавинного умножения электро1юв в кремнии
Ось Х (категорий ): Напряженность электрического поля (В/м)
Ось У (значений): Коэффициент лавинного умножения (1/м)
Легенда: есть
П оместить диаграмму на отдельном листе
4.
Чтобы диаграмм у было л егче читать, выберите команду Вид
>-
По
размеру окна.
5.
Щелкните на оси у и выберите команду Формат>- Выделенная ось. В
появившемся диалоговом окне перейдите на вкладку Шкала и вклю
чите режим логарифмическая шкала .
6.
Введите в строке Ось Х ( категорий) пересекает в значении : число
1Е-11
и щелкните на кнопке ОК.
7.
8.
Поместите легенду под графиками .
Выберите команду Диаграмма >- Исходные данные. В появившемся
. диалоговом окне перейдите на вкладку Ряд. Выбирая из одноимен
ного списка все графики по очереди, введите в строке Имя для верх
него Т=300 К, для среднего Т
Щелкните на кнопке ОК.
9.
= 600
К и для нижнего
-
Т
= 900
К.
Выделите ось х и выберите команду Формат>- Выделенная ось . В поя
вившемся диалоговом окне перейдите на вкладку Шкала . Измените
цену промежуточных делений на 2Е7 и шелкните на кнопке ОК.
10. Мастер
диаграмм поместил новый диаграммный лист слева от листа
данных . Переместите этот лист (называемый Диаграмма1) справа от
листа рис
3.9,
перетащив с помошью мыши его ярлычок в нижней
части экрана .
11. Дважды
щелкните на ярлычке Диаграмма1 и введите новое название
листа: рис.
12. Сохраните
3.10.
рабочую книгу.
Готовая диаграмма представлена на рис . 3.10. Сейчас она располо
жена на отдельном листе. Если захотите внедрить ее в таблицу, выделите
обл асть диаграммы и воспользуйтесь командой Правка >- Копировать . За
тем перейдите на лист с таблицей и выберите команду Правка
вить . Копия диаграммы будет внедрена в таблицу.
>-
Вста
Дuаграммы
u
графuкu
Коэффициент лавинного умножения электронов в кремнии
1ДJЕ..ОЭ
~
1.ООЕ+О7
i-1.00E-+05
i: ~ 1ДIЕ-+{)3
"-
с: о: 1ДJЕ+О1
""
i: i:
1,00E.Q1
~ ~ 1.ООЕ.QЗ
,& " 1ДIE.Q5
-В-~
З
1.((IE-07
- 1,00E.Q9
1.ООЕ- 1 1
О ,ООЕ.00
2,ООЕ+О7
4 ,ООЕ+07
6 ,ООЕ.+{)7
8,ШЕ.+{)7
1 ,ООЕ..а!
1,20Е.+{)6
Наnр.яженноаь >neonpмчeaoro nonя (В/м)
Рис
3.1 О. Полулогарифмические графики коэффициентов лавинного умно
жения электронов в кремнии при трех разных температурах
Создание трехмерных диаграмм
Все объемные диаграммы Excel имеют равномерную шкалу по осям х
и у. Таким образом, вид координатной сетки не зависит от того, какие
значения откладываются по этим осям. Такая однородная разметка ино
гда может вызвать проблемЬ1, например, исказить результат. Однако , раз
бив график на последовательные отрезки и сместив их на определенную
величину, можно получить хорошее трехмерное каркасное объемное изо
бражение, используя плоскую точечную диаграмму.
В первую очередь определим новую прямоугольную систему коорди
нат и,
v
и
w. Расположим ось и горизонтально, ось v под углом ф, а ось w
вертикально , как показано на рис.
3. ! l.
у
х
Рис.
3.11. Проекция трехмерной системы координат на плоскость
•&tJ
Гnава
3
Отображение этих осей на плоскости осушествляется с помошью с1е
дуюших формул преобразования: х =и
+ vcos(ф)
и у= 1v
+
vsi1нф). Чтоб ы
определить координаты (х,у) проекuии точки с трехмерньн.111 координа
тами (и, v, w), вставьте их в формулы преобразования .
Для создания диаграммы необходимо создать табл иuу преобразования
трех стол бuов с трехмернь~ ми коорд инатами в два столбuа с диумерньши,
на основании кото рых и создается точ ечн'1 я диагра~е.~а. Обычно аиа
граммы такого тип а образованы набором п.r~оских сегментов с общими
ребрами. Эти ребра имеют вид отрезков, координаты конuов кото рых и
о.nисываются наборами данных. Поэтому необходимо, чтобы коорТJин;ппr
углов сегм ентов совпадал и.
Задача построения такой диаграм:-.1ы сво.11пся к соединению прямыми
линиями последней точки каждого сегмента с первой 1оч кой следую ше
го. Но так получаются лишние ,1инии, пересекаюшие .J.иагра~1му Можно
заставить Exccl не рисовать возв ратные отре1к11. вп::нщ в меЖJу сеr\1ен
тами данных пустые строки.
Excel
рассматршшег пустую строку в сере
дине массива данных как п роп ушенную точку н не соз.:rает !lнний. со
единяюших эту точку с остальныыи.
Распределение температур в перегруженном
кремниевом диоде
Когда на маломошный кремниевый дноц подается эл сктрич ес~-:11i1 им
пульс высокой мошности, он перегревается. При слиш ком с11льн ом пе
регреве диод разрушается.
Конечно,
если
110д,1ть
имнульс
rиганн:кой
мошности, диод зады~ится и обгорит, так что не будет ни м апей шего
сомнения в том, что он вышел из строя. С другой стороны , ес:111 и-.1пульс
не слишком силен, диод еше сможет работать, по кра11не11
J\1 epe,
н~кото
рое время , но его характеристики ухудшатся.
Один из способов оuенки степени разрушения и определени5t -,.,.юмента перегрева ..lИОда заключается
f3
~1ате~~ати,н::ско1"1 ~"10.:~~"1 нроnанJ1н с1
\)
РZ•
боты. Такое моделирование обычно выполняется на суперко\lпьютерс.
но проанализировать результат можно и с ломошью
табл.
3.1
E\cel .
Данные
н
получены, как раз, в результате такого моде:rиронани я диода и
показывают температуру различных его точек. Координаты точки обо
z,
значаются буквами у и
температура - Т.
Данные в точке у= О соответствуют uентру устройства (пр омо11елиро
вана то11ько половина ·диода). Нижний проводни к находится в точ ке
и поttрывает всю нижнюю часть диода. Верхний 11ронодни1<.
нахопится в точке
= О и простирается от точки у= О ::10 точки
z = 300 мкм
у=
40
z
мкм. рn-переход, на котором и происходит перегрен. р ,1слоложен
в точ ке
z=
1О
мкм и простирается от точки у = О п Dиблизител ьно до
точки у= 50 мкм. Структура диода показана на рис. 3.12.
Аuаграммы
u
lfjj
rpaфuкu
1
Подложка
~
Верхний проводник
- -
Центральная (базовая)
r--.
Диффузия
Нижн ий про водн ик
-
--
линия диода
;
Рис.
3.12.
Структура маломощного диода, использованного для получения
карты температур
Таблица 3.1. Распределение темпераrур в маломощном диоде
у{µ)
Т(К)
о
о
300
425
462
463
453
440
1
2
3
4
5
6
7
8
9
10
11
12
13
14
}; 15
N 16
17
18
19
20
31
10
300
429
465
465
456
443
4 ~4
4?n
405
389
380
381
385
391
376
444
444
344
331
330
330
330
325
407
390
382
383
387
393
378
447
448
346
333
332
331
331
325
20
300
441
478
476
466
453
435
415
397
388
389
395
401
384
457
459
354
339
337
337
336
327
3~
300
474
512
505
495
480
460
436
416
406
407
413
420
400
477
484
373
354
351
349
347
329
35
300
528
569
554
542
522
497
467
443
430
430
435
439
415
494
503
391
369
363
359
355
330
40
300
779
766
659
659
617
572
527
496
482
480
480
476
449
518
520
414
386
375
368
362
329
43,З
486
414
419
448
461
459
451
443
440
442
448
452
451
440
492
493
410
386
375
367
361
328
46,6
329
327
332
342
352
360
365
370
377
384
392
398
403
404
442
449
397
378
369
362
356
326
50
308
307
309
312
316
320
324
328
333
338
344
350
356
360
385
399
376
365
359
353
348
323
55
303
302
303
303
304
305
306
308
309
311
313
316
319
322
333
349
352
348
344
341
337
319
60
301
301
301
301
301
301
301
301
301
301
302
302
302
303
305
323
338
335
333
331
328
314
110
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
301
302
302
302
302
302
302
155
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
200
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
250
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
1·~-11
Гnава 3
у(µ)
Т(К)
10
319
315
312
310
308
307
307
306
300
о
319
53 315
64 312
75 310
86 308
97 307
108 307
119 306
130 300
42
20
319
314
311
309
308
307
306
306
300
30
35
40
43,3 46,6 50
55
319
314
310
308
307
306
306
306
300
318
313
310
308
307
306
306
305
300
317
312·
309
308
307
306
305
305
300
316
311
309
307
306
306
305
305
300
312
309
307
306
305
305
304
304
300
315
311
308
307
306
305
305
305
30Ь
314
310
308
306
306
305
305
305
300
60
309
307
306
305
305
304
304
304
300
110
302
302
301
301
301
301
155 200 250
300
300
300
300
300
300
301 300
301 300
300 300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
Создание таблицы
Как видно из табл. 3.1, необходимо ввести большой объем данных.
Однако их ввод не займет много времени. Сейчас создадим таблицу, а
затем воспользуемся данными для построения объемной диаграммы.
1.
2.
Создайте новый лист и назовите его рис. 3.1 З.
Выделите столбцы B:AG и измените их ширину на
рину столбца А равной
3.
4.
Установите ши-
10.
Введите в ячейке А 1 текст Распределение температур в перегруженном
кремниевом диоде .
4.
5.
6.
Введите в указанные ячейки следующие значения .
83
J2
Т (К)
А10
у (мкм)
Z
(мкм)
Введите в ячейки
84:В 18
значения у из. табл.
3.1:
Ячейка
Содержимое
Ячейка
Содержимое
Ячейка
Содержимое
84
о
40
85
86
87
88
10
20
89
810
811
812
813
46,6
50
55
814
816
817
818
89
60
110
155
200
250
Введите в ячейки СЗ:АGЗ значения
z из табл. 3.1 :
30
35
Ячейка Содер-
43,З
Ячейка Содер-
жимое
сз
о
кз
8
DЗ
LЗ
мз
F3
G3
1
2
3
4
оз
НЗ
5
Р3
13
6
7
аз
9
10
11
12
13
14
RЗ
15
Е3
JЗ
Ячейка
N3
С одер-
Ячейка
Содер-
16
17
ААЗ
64
А83
АС3
ХЗ
УЗ
18
19
20
31
42
75
86
97
108
119
130
Z3
53
жимое
жимое
sз
тз
uз
VЗ
WJ
жимое
АDЗ
АЕ3
АFЗ
АGЗ
Дuаграммы
u
rpaфuкu
РасnредеJ>ение ft"'nepaтyp в neperiipaн11ow iq>eм~иeeow диоде .
z
Рис
3.13. Таблица
м.:u
распределения температур в перегруженном кремниевом
диоде
7. Введите в ячейки C4:AG18 значения температуры из табл. 3.1. Обра
тите внимание, что значения, вводимые в столбцы листа, соответст
вуют строкам таблицы (таблица расположена поперек листа).
Теперь лист должен выrлметъ, как показаНо на рис. 3.13.
Создание диаграммы
Посмотрим, как будут отображены введенные данные стандартной
трехмерной каркасной диаграммой
Excel.
1. Выделите ячейки ВЗ :АG18 и выберите команду Правка>- Копировать.
2. С помощью команды Вставка >- Диаграмма запустите мастер диа
грамм.
3.
Создайте диаграмму со следующими свойствами:
Тип: Повер:хвость
Вид: Проволочная (прозрачная) поверхность
Ряды в строках
Использовать в качестве имен наборов данных первый столбец
Использовать в качестве подписей оси х пераую строку
Легенда: нет
Ось Х (категорий):
Ось
Z
z
(мкм)
(значений): Т (К)
Ось У (рядов данных): у (мкм)
Поместить диаграмму на отде.m.вом листе
lf1$
4.
Гпава
Перетащите ярлычок листа диаграммы так, чтобы новый лист распо
ложился справа л 1:;;;,; рис.
рис.
5.
3
3.13.
Присвойте диаграммному листу имя
3.14.
Щелкни:rе на стенке, основании или в углу диаграммы, чтобы в углах
трехмерной
"коробки", окружающей диаграмму,
появились черные
маркеры. Перетащите один из угловых м аркеров и разверните изо
6.
бражение немного влево, чтобы оно лучше смотрелось.
Выделите вертикальную ось и выберите команду
Выделеннаs~
ось .
В
появившемс;~
диалоговом
окне
вкладку Шкала и измените минимальное значение на
Получилась совсем
неплохая диаграмма
(рис.
Формат
>
перейдите
на
300.
3.14).
Единственная
проблема заключается в том, что при однороднь1х линиях сетки Значения
температуры в верхнем левом утлу изображения сильно растянуты. Из-за
такого искажения диаграммы становится сложно понять, где прои сходит
нагрев . Отобразим эти же данны е по-другому , самостоятел ьно в ычи слив
координаты ли ний сетки.
800
750
700
650
g
600
ШJ
~
Рис.
3.14. Трехмерная
каркасная диаграмма распределения температур в
перегруженном кремниевом диоде
Создание таблицы с пропорционально
расположенными линиями сетки
Сначала поместим данные у,
zи
Т в три параллельных столбпа на
листе , а затем в других двух столбцах рассчитаем их nроекuию на плос
кость х-у.
Дuаграммы
1.
2.
u
графшш
Создайте новый лист и назовите его рис.
3.15.
Введите в ячейке А 1 текст Распределение температур в перегруженном
кремниевом диоде.
Н еобходимо выбрать у гол поворота диаграммы и найти синус и коси
н ус этого угла для проеКllии каждой то•1ки. Вм есто того , вычислять его
каждый раз, сделайте это однажды и используйте резул ьтаты для всей
таб11иuы. Прежде чем обратитьсн к тригонометрической функции , не за
будьте перевести градусы в радианы .
3.
Введите в указанные ячейки следующие з11ас1ения:
Ячейка
02
4.
Содержимое
Уrол проекции
Ячейка
Содержимое
Е2
G2
F2
=SIN(РАДИАНЫ(Е2))
АЗ
у(µ)
вз
60
•COS(RADIANS(E2)}
z (µ)
сз
Т(К)
03
х
ЕЗ
у
Выронняйте ячейки
02
и АЗ: ЕЗ по левому краю.
Теперь все готово для ввода значений у. Заполняйте ячейки, вводя
первое значение и копируя его в остальные ячс.йки масси ва. Для копиро
вания значений можно использовать ко~~анды Копировать и Вставить ме
ню Правка , команду Правка >-Заполнить>- Вн из или маркер заполнения .
5.
Введите следующие значения в первую ячейку диапазона и скопируй
те его в остальные я•зейки.
Ячейки
Содержимое
Ячейки
Содержимое
А4 :АЗ4
АЗ6:А66
А68:А98
о
А220:А290
10
А292:АЗ22
50
55
20
АЗ24:АЗ54
А100:А130
30
АЗ56 :АЗ86
А132 : А162
А164:А194
А196 :А226
35
АЗ88 :А418
155
40
А420:А450
200
43,3
46,6
А452: А482
250
А228:А258
Теперь нужно ввести значения координаты
60
110
z.
Здесь можно исполь
зовать тот же п рием: ввести значение в п ервую Я'lейку и скопировать его
оттуда в остальные. Первый набор данных можно вообще н е вводить, а
скопировать из предыдущей таблиuы. Для этого перейдите на лист пре
дыдущег11 пrим ера; скопируйте оттуда данные , вернитесь обратно, выде
лите 1-1уж ный диапазон ячеек и выберите команду Правка
>- Специальная
встав ка. В появившемся диалого вом окне установите флажок Транспо
нировать.
Когда первый набор знач ений будет введен, скопируйтt их в ос
тальные
диапазоны,
перетащив
удерживая нажатой кпавишу
<Option>).
рамку диапа.зона в
<Ctrl>
(на
Macimosl1
новое
положение
и,
используется клавиша
rnaвa
6.
3
Введите значения в r:ледующие диапазоны:
84:834
836:866
868:898
8100:8130
8132:8162
8164:8194
8196:8226
8228:8258
8260:8290
8292:8322
8324:8354
8356:8386
8388:8418
8420:8450
8452:6482 .
Введите следующие данные в первый диапазон ячеек, а потом скопи
руйте их в другие диапазоны:
о
1
2
8
9
10
з
11
4
5
12
13
14
15
6
7
16
64
17
75
18
19
86
97
108
119
20
31
42
130
53
Теперь введем значения температуры. Убедитесь, что вводите nра
.вильные значения юн1 каждой точки (y,z} н не .1 абущ,те вставить между
наборами данных нус-rые t.:'троки. Са.\.!ый быстрый способ сделюъ это скопировать даннь:с 1;1 ;·1рсдыду1..!1сп) примера. Выдешпе стгоку данн ы:х: н
nредr.щущей табJшц~ , ;Jl)меститс :::~ в буфер обмен<l, п~ре:й.r;,1в'с н;~ лисi
~·еку!11ег1~ примера, выделите первую ячейку диап азонi\ и применнте кr)
манду Правка
>- С>1ец'1альная
астаз!'.а. В г. ояшп-~ше:ч.:я дю1.:юго1юм qкнс
вr.-.лючиТе режим Трансnониро&аУь. Если не хотите. J:абирать на юшвиату
рt 464 числа (это займет всего л ишь около 15 минут), можетr. создать
график формулы, при.веде!fной в ~ледующем пункте. Эта формула нс
имеет физического смысла, просто получается ин·тсрс.сная диаграмма.
7.
Используя данные из табл.
С4:С482
464
3.1,
введите или скопируйте в ячейки
значения температуры. Если хотите сэкономить время ,
можете ввести и скопировать в те же ячейки следующую формулу:
=300+500*СОS(А4*З*ПИ()/250)*СОS(В4*З*Рl()/1 ЗО)"ЕХР(-А4/62)*
·
ЕХР(-84/33)
На следующем шаге необходимо создать функuии проекции.
8. Введите в ячейки D4:D482 и скопируйте формулу =B4+A4*$G$2
9. Введите & ячейю1 Е4: Е482 и скопируйте формулу ==C4+A4*$F$2
10, Вьщелите следующие строки, п отом шелкните на выделенном
фраг
менте правой кнопкой мыши и ~ыберите из контекстного меню ко
манду Очистить содержимое:
323, 355, 387,
419. и
35, 67, 99, 131, 163, 195, 227, 259, 291 ,
451.
Вставьте несколько дополнительных значений, предназначенных для
рисования линий по краям изображени я при минимальной темп ературе
(300 К), чтобы визуально имитировать перспективу.
11. Введите в указанные ячейки следующие значения:
u
дuаграммы
•&1!1
графuкu
Ячейка
Содержимое
0483
0484
0485
0486
130
Ячейка
Е4ВЗ
Е484
Е485
Е486
о
-0+250*$G$2
•130+250"'$G$2
12. Отключите
Содержимое
300
300
•300+250*$F$2
•300+250"'$F$2
отображение линий сетки.
Теперь лист должен выглядеть, как показано на рис.
0.5
Y(JJ)
о
о
о
:m
2
425
з
462
463
о
&53
4
453
о
«С
424
405
з
о
i)
о
о
\:~;
с
2
,
о
ЩJ
б
424
5
6
7
405
7
в
З89
:т
в
ИJ
9
330
зе~
ю
З61
ЗВ5
:J,li
а
9
10
n
11
3&i
11
[)
1j
:J)',
~2
:
5. Hoe(t11 т .;блица
l~;._;CMH1t:.&('J~., /;./ICФ.t:
~
"J.
.
~"
~~}~-i,~~~~;~!!'<_;r.5 LI1ttJ~~i~tшrd
Рис. з. i
;<.
У
Z(µ)
о
3.15.
- - .- , .
распределения температур в перегруженном
·
С•)э.~ан~е д~drраммы с пропорциональной сеткой
CCJ:f,:i<tДИM диаграмму на основании данных в столбцах D и Е.
l. Rы;::,t;_'~иre ячейки D4:E486.
2 •
Щелкните на кнопке
J.
-
Мастер диаграмм.
Создайте диаграмму со следующими свойствами:
Тип: Точечная;
Вид: Точечная диаграмма со значениями, соединеввыми отрезпми
без маркеров;
Ряды в столбцах;
Использовать первый столбец в качестве координат по оси х;
Леrенда: нет;
Название диаграммы: Распределение температур в кремниевом диоде;
Ось Х (категорий):
z
(мкм)
Ось У (значений): Т (К) ;
Подписи данных: у (мкм)
;
;
Поместить диаграмму в ячейках К2:R16.
4.
Щелкните
на
диаrрIО,iме,
чтобы
начать
ее
редактирование.
Выделите область построения и щелкните на кнопке Цвет
заливки на панели инструментов Форматирование. Выберите в раскрывающейся палитре белый цвет.
ifфi
Гnава
3
Теперь разметим ось у. Нужно добавить метки, создав новое с.крытое
изображение , и присвоив метки к каждой точке.
5. Скопируйrе содержим ое ячеек АЗ54:ЕЗ54 в ячейки
L19 : Р19.
6. Скопируйте содержимое я•1ее.к А418:Е418 в ячейки L20:P20.
7. Скопируйте содержимое ячеек А482:Е482 в ячейки L21 :P21.
8.
Выделите диаnазон 019: Р21
>-
и выбер ите команду Правка
Копиро
вать .
9.
щелкните на диаграмме, чтобы сделать ее доступной для· редактиро
вания .
1О.
Выберите команду Правка
>-
Специальная вставка.
В появившемся
диалоговом окне включите режимы новые ряды и Категории (значения
по оси Х) в первом столбце. Щел кните на кнопке ОК.
11.
Выделите новую кривую и выберите команлу Формат
>- Выделенный
ряд. В nояви вше~1ся диалоrово~1 окне п ерейдите нз в.кладку Подписи
данных , включите р ежим Значение и щелкните на кнопке ОК .
12. Выдел ите
подпись , находящуюся впереди остальных , и и з мените ее
значе ние на
13. Выделите
на
14.
·····-60.
подпись, н ахо.ilящуюся посередине , и из:-..-1ените ее зн ачение
-·----155
(мкм).
Выделите п одпись , находящуюся позади , и изм ените ее зн ачение н а
------250.
15. Шсл кните
н а кривой , выберите команду Формат
>-
Выделенный ряд,
перейдите на вкладКу Вид и включите режим отсутствует 13 группах
параметров Линия и Маркер.
16. Выделите
горизонтальную
ось
и
выберите
команду
Формат
>-
Выделенная ось . В появившемся диалоговом окн е перейдите на
вкладку Шкала и устан овите миним ал ьное зн ачение равным О . Щелк
ните на кнопке ОК.
17. Сохраните
рабочую книгу.
·~:\ ~--~'d~:..•.:;.;;, ,!<,, ;;;j:._,::~. :·.;:: .:J!!:::~.;;,i;• ;, ;~,::: :; ;;'.:9. .:. i
~i·i
::~: f:\.:;:,;"~· . :.'0 . ·..•.
Ро~прв,11,олв••• tе"ператур е •ремнмево" дмаде
. : :::: ~~с ';;_
::s·;•
~
;:!~;;
tOO
J~i-.т~-, ··-~fiэ::
Рис.
3.16. Другой
эоо
150
,"·".·.
вариант трехмерной диаграммы распределения
температур в перегруженном кремниевом диоде
дuаrраммы
u
ltdl
графuкu
Готовая трехмерная диаграмма должна выглядеть, как показано на
рис. 3.16, если на шаге 7 вы использовали данные из таблицы, а не заме
няющую их формулу. Диаграмма, созданная на основе формулы , изобра
жена на рис. 3.17. Можно изменить значение угла отображения и по
смотреть , как изменится вид диаграммы.
Рис.
3.17. Трехмерная диаграмма, nострое~ная no замещающей
формуле
Создание рисунков
Наряду со средствами для построения диаграмм,
Excel
предоставляет
пол ьзователю · инструментарий для рисования. С помощью кнопок пане
ли Рисование (рис.
окружности
и
3.18)
можно создавать разноцветные линии,
прямоугольники,
позволяющие
выделить
на
листе
результаты вычислений. Чтобы вывести на экран панель инструментов
Рисование ,
Стандартная
щелкните
или
на
выберите
кнопке
Рисование
команду
Вид
>--
панели
Панели
инструментов
инструментов
>--
Рисование.
Кроме того, возможности графического представления данных в
Excel
можно использовать для создания на экране сложных рисунков. На рис.
3.19 представлено
изображение, составленное из ломаных линий . Для его
создания потребовалось примерно
425
пар координат, описывающих
53
отрезка. На оцифровку рисунка вручную и ввод пар точек на лист потре
бовался один вечер, что не так уж много для столь сложного рисунка.
Конечно, сюда не входит время, потраченное моей" женой Джулией на
то, чтобы нарисовать исходное изображение.
Использование графических объектов на диаграммах повышает их
наглядность . Например, если отображается выходной сигнал электриче
ской цепи, добавление в углу диаграммы упрощенной схемы этой цепи
делает результаты более поняrnыми чиtателю . Для создания
графики
можно использовать либо инструменты рисования, либо сегментный ри
сунок, такой как на рис.
3.19.
lt&J
Гnава
3
Добавить объект Wordдrt
Надпись
Овал
Прямоуrольник
Свободное вращение.
Выбор объектов
Стрелка
Линия
Тень
Вид стрелки
Тип штриха
Тип линии
Цвет шрифта (Авто)
Цвет линии (Авто)
Цвет заливки (Авто)
Рис.
3.18.
Панель Рисование и ее инструменты
Рис. 3.19. Сегментный рисунок,-созданный средствами графического ото
бражения данных Excel (летящая скопа, автор - Джулия Стивенс Орвис)
Частотнь1й фильтр Делианниса
Чacтornl>IЙ фильтр Делианниса
трическая
цепь,
пропускающая
фильтровывающая остальные.
-
это активная фильтрующая элек
частоты
определенного диапазона и
от
Схема такого фильтра показана на рис.
3.20. Ее коэффициент передачи, или передаточный коэффициент (отно
шение выходного напряжения к входНому) определяется по следующей
формуле.
Дuаграммы
u
ll&J
графuкu
Output
lnput
Рис.
3.20. Схема частотного фильтра Делианниса
(!)
.
1G( zro )1 = г-
RI С2 ( 1 - 11 k)
··---
··· ·· ·
~(ro~ - ro2)2 +ro2(ro P /QP)2
Здесь
ro -
-
угловая частота:
k = 1+ RA
Rв
= - -1__
р
R1R2C1C2
(1)2
roP
1
1
1
1
-=--+-------Qр Rz cl R2С2 k - 1 RI С2
Создание таблицы
Пусть С 1 = С2 = 1 мкФ, R 1 = R 2 = Rв = 10 Ом и Rл = 32 Ом. Тогда
центр полосы частот приходится примерно на 100 кГц. Задача: создать
график коэффициента передачи и начертить на нем электрическую схему
фильтра.
1.
Созпайте новый лист и назовите
2.
Присвойте столбцам следующую ширину:
А
С
3
10
10
D
23
В
3.
4.
ero
рис.
Е
F
G
3.21 .
9
9
9
Введите в ячейке А 1 текст Частотный фильтр Делианниса .
Введите в указанные ячейки следующие значения:
101
Гnава
Ячейка
вз
85
Содержимое Ячейка Содержимое Ячейка Содержимое
RES1
СЗ
10
DЗ
САР1
RES2
С4
10
04
САР2
к
С5
•1 +RESA/RESB 05
WP
ЕЗ
1Е-6
FЗ
Е4
1Е·6
F4
FS
В4
5.
RESA
RESB
WPQP
GЗ
32
G4
10
3
Введите в ячейке Е5 такую формулу:
=КОРЕНЬ( 1/(RES1 *RES2*CAP1 *САР2))
6.
Введите в ячейке
такую формулу:
G5
=1/(RE52*CAP1 )+1/(RES2*CAP2)·(1/(K-1 ))*1/(RES1 *САР2)
7.
8.
Выровняйте-ячейки ВЗ:В5, DЗ : DS и FЗ:F5 по правому краю.
Выделите ячейки 83:С5 и выберите команду Вставка>- Имя>- Создать.
В появившемся диалоговом окне включите режим В столбце слева и
щелкните на кнопке ОК. Повторите эту операцию для ячеек DЗ:ES и
FЗ:G5.
9.
Введите в указанные ячейки следующие значения:
Ячейка
вв
св
IG{s)J
DB
Примечания
10. Введите
Содержимое
Частота
в ячейки
89
и
810
числа 1Е4 и 2Е4. Вьшелите ячейки
и перетащите маркер заполнения вниз до ячейки
.
~
.;
,..
849.
-
Часпm<wй фМll~'Р Де~ионнмса
Сдс>1
1.ООЕ-00
CN'2 1 ДJЕ-00
WP
10COD
RES1
RES2
к
Gs
D.13
n нм1"11ни"
На,1110 р1с•ета фМllьrра
0.26
о.зе
О.<19
0,58
0.66
О.71
0.75
0,77
0.78
0.77
076
0.71
0.72
0,70
0$7
UI
.. ·"·.··;·
Рис. 3.21 . Таблица дпя расчета коэффициента передачи частотного
фильтра Делианниса
89:810
Дuаграммы
11. Введите
u
lt&i
графuкu
в ячейку С9 и скопируйте в диапазон С9:С49 следующую
формулу:
={B9/(RES1"CAP2*(1-1/K)))/SQRT{(WP"2·B9"2)"2+WPQP"2*89"2)
12. Введите
в ячейке
D9
текст Начало расчета фильтра.
13. Введите в ячейке 049 текст Конец расчета фильтра.
14. Присвойте
ячейкам 89:8133, ЕЗ : Е5 и G5 экспоненциальный, а ячей
кам С9:С135 - числовой формат с двумя десятичными зн аками.
15. Присвойте таблице обрамление, как показано на рис. 3.21 .
16. Отключите
отображение линий сетки.
На этом ввод данных ШIЯ расчета коэффициента передачи заканчива
ется. Рабочий лист должен выглядеть, как показано на рис. 3.21 .
Соэдание диаграммь.1
Построим график коэффициента передачи частотного фильтра.
1. •
Выделите ячейки 89:С49 и щелкните на Кнопке Мастер диа-
,
грамм.
2.
Пройдите шаги Мастера диаграмм и введите следующую информацию:
Тип: Точечная ;
Вид: Точечная диаграмма со значениями, соединенными сrлаживаюw
щими линиями без маркеров;
Ряды в столбцах;
Использовать первый столбец в качестве координат по оси х;
Легенда: нет;
Название диаграммы: Частотпwй фит.тр ДеJIИанниса;
Ось Х (категорий) : Угловая частота (рад/с) ;
Ось У (значений): Коэффициент передачи;
Поместить диаграмму в ячейках 11:Q18.
3.
Щелкните на диаграмме, чтобы сделать ее доступной для редактиро
вания. Щелкните на области построения и выберите команду Формат
~ Выделенная область построения. В появившемся диалоговом окне
включите режим прозрачная в группе параметров Заливка. Щелкните
на кнопке ОК, затем
-
на рабочем листе, чтобы отменить вьшеление
диаграммы.
4. Выделите диаграмму и перетащите ее вниз, удерживая нажатой кла
вишу <Ctrl>. Получится копия исходной диаграммы. Она нам понадо
бится позже .
Соэдание чертежа электрической схемы с
помощью инструментов рисов~ния
· В первой копии диаграммы нарисуйте электрическую схему фильтра,
используя инструменты рисования . Для этого сначала сделайте видимой
панель инструментов Рисование и увеличьте изображение, чтобы было
легче создавать чертеж .
ltd&
1.
Гnава
3
Прокругите лист до тех пор, пока верхняя диаграмма не станет види
мой и щелкните на ней , чтобы сделать ее доступной для редактирова
ния .
Щелкните
2
3.
на
кнопке
Рисование
панели
инструментов
Стандартная. Появится панель инструментов Рисование.
Поместите панель Рисование на экране так, чтобы ею было удобно
пользоваться.
4.
Установите в строке Масштаб панели инструментов Стандартная уве
5.
личение 200%.
Используя инструменты рисования, начертите электрическую схему,
показанную на рис.
3.20.
Основная работа выполняется с помощью
инструмента Линия. Чтобы нарисовать четыре эллипса, используйте
инструмент Овал, а для обозначения компонентов цепи
·мент Надпись. С помощью команды Формат
>- Объект
инстру
-
откройте диа
л оговое окно Формат Объекта, перейдите на вкладку Цвета и линии и
отмените обрамление и заливку текстовых областей. Затем перейдите
на вкладку Шрифт, выберите на ней размер шрифта, равный
8
пунк
там и включите режим нижний индекс.
-r'Экспресс-_метод
Процесс рисования можно ускорить, сначала начертив один из одинако
вых объектов
-
например, резистор
-
а потом используя его копии. Чтоф
бы скопировать объект, выделите его и перетащите на новое место,
удерживая нажатой клавишу
6.
<Ctrl>.
Восстановите отображение диаграммы в натуральную величину, введя
в строке Масштаб значение 100%.
·
С
7.
помощью
инструмента
Выбор объектов
панели
Рисование
выделите весь рисунок.
&
Выберите из раскрывающегося меню Действия команду Группиро-
вать.
будуг
Все элементы рисунка сгруппируются в один объект и
передвигаться
вместе.
Для
последующего
редактирования
рисунка его нужно будет разгруппировать.
Диаграмма должна выглядеть, как показано на рис.
3.22.
Соз.дание чертежа электрической схемы по точкам
Теперь попробуем сделать то же самое со второй копией диаграммы,
но воспользуемся дополнительным набором данных. Чтобы определить
координаты х и у для концов отрезков, образующих чертеж, я сделал эс
киз на бумаге в клеточку. Все объекты должны быть нарисованы в том
же масштабе , что и уже готовая диаграмма. Следовательно, нужно рисо
вать схему на равномерной сетке, а потом использовать простую функ
цию для отображения на диаграмме значений из таблицы.
Дuаграммы
u
11&1
графuкu
Чвстотиыi фмt.тр Деп•аниwса
0,90
!
. -- ·---· ...•... -------. - .
--· •...... --· ..
··--- ... ··--
0,80
0,70
1
0.60
i 0,50
1
i
0,40
о;ю
'~ О.2<)
D,10
·•'
·''
'•
........~---~--~~~--~-..~~~--.~--<
о~~~
0,(11:.00 5,(ICE'°" 1,[IE.OS 1,П.ОS 2,00f.OS 2,&E.OS 3,IХЕ.сз5 З,50!!.ОS 4,!XJE-QJ •.П.ОS
"
УтnоаМ cмc.ror• ~с)
• ' •.
Рис.
3.22.
'О!
.•
3.22
График коэффициента передачи частотного фильтра Делианниса.
Чертеж электрической схемы выполнен с помощью инструментов рисования
1.
Введите в ячейки
Строка
852:01 ЗЗ
Столбец В
следующие значения:
Столбец С
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
72
73
74
75
76
77
78
79
80
81
82
83
Столбец
D
Координаты схемы
53 '
0,5
3,0
1,0
1,0
"земля"
2,3
2,3
2,35
2,25
2,35
2,25
2,35
2,35
2,3
1,0
1,2
1,3
1,4
РезистоеА
2,0
2,5
2,0
2,0
2,0
1,9
1,9
2,8
2,8
2,85
2,75
2,85
2,75
2,85
2,8
2,8
1,5
1,6
1,7
1,8
2
2,4
3,0
3,6
2,4
2,6
Оnееационный :~:силитеnь
2,6
между входно~ схемой
2,0
2,0
2,2
2,3
2,4
2,5
2,6
2,7
2,8
4,2
и операционным усилитеnем
Резистор В и проводник
IШ:I
Гnава
Строка
Столбец В
Столбец С
84
85
86
1,25
1,25
4,2
3,9
87
1,0
1,0
1,5
1,5
1,45
1,55
1,45
1,55
1,45
1,5
3,5
3,9
88
89
90
91
92
·93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
Столбец О
Резистор
2
З,9
З,3
1,0
1,0
3,2
3,1
3,0
2,9
2,8
2,7
2,1
2,1
2,5
0,85
1,15
2,5
2,5
0,85
1,15
2,6
2,6
0,85
1,15
3,4
3,4
0,85
1,15
3,5
3,5
0,5
0,6
0,65
0,7
7,5
3,0
30
3,1
2,9
3,1
0,8
2,9
0,85
0,9
1,0
3,1
3,0
3,0
2,5
3,0
3,0
3,0 .
Выходной контакт
1,0
1,0
2,6
Проводник между С1 и С2
1,25
1,25
1,8
1,8
2,0
2,1
1,8
1,8
3,3
3,3
1,5
Конденсатор
1
Конденсатор 2
Резистор
1
125
126
127
128
129
130
131
132
133
2,6
Проводник между
вХодной схемой и
операционным усиnитеnем
3
Дuаграммы
u
ltфj
графuкu
Теперь создадим функцию отображения, преобразующую значения в
столбцах В и С в единицы, используемые в диаграмме. Это делается пу
тем простого линейного преобразования каждого значения.
2.
Введите в указанные ячейки следующие значения:
Ячейка Содержимое
051
052
3.
Смещение
Множитепь
Выделите ячейки
ячейки
4.
Ячейка
Е51
Е52
Содержимое
Ячейка
Содержимое
о
F51
F52
0,1
ЕSЗ
х
FSЗ
у
Е54
•Е$51 +Е$52*В54
F54
•F$51+F$52*C54
E54:F54
1Е5
о
и перетащите маркер заполнения вниз до
F133.
Просмотрите таблицу сверху вниз и удалите содержимое всех ячеек в
столбцах Е и
5.
6.
7.
F, которые соответствуют пробелам в столбцах В и С.
Разграфите таблицу, как показано на рис. 3.23. Выделите ячейки
E54:F133 и выберите команду Правка>- Копировать.
щелкните на сделанной ранее копии диаграммы, чтобы сделать ее
доступной для редактирования.
·
·
Выберите команду Правка >- Специальная вставка. В появившемся
диалоговом окне включите режим Значения (У) в столбцах и установи
те флажок Категории (подписи оси Х) в первой строке, затем щелкните
на кнопке ОК.
,.
,:/~г
IC"ltfa
• 10Ei05
ение
о
Мю:оосмrе~ь
1 ООЕ.о5
Cwe
Коорди.наУЫ схемы
1,00
1.00
·зем.n2'.•
5.ООЕ-ю.t
Э.(ХJЕ.о5
0,10
2,3)
1.00 Рез•стор А
2,Э)Е..ОS
0,10
2.за
1~
2,зое..о5
2.35
•.Ю
2.Э5Е-t05
2.25Е.о5
0,12
0,13
0,1.4
2;25
1,.«1
2,Э5
1,5)
2,Э5Е..ОS
1.00
1.70
2.25E..OS
ЦJ
2,ЗО
1,80
2.00
2,3)E-t05
2,зое..оs
о;о
2.00
2 •.40 Оnе~ацмонн.~А усмМ"tВ/\ь
2,00E+OS
0,2.4
з.оо
2,50Е..а5
3.00
2,40
2.00E..OS
О,ЗQ
О;.>
2,ООЕ<Об
0,24
200
8.
0,10
2,25
2,35
2.fJJ
2,00
Рис.
1
З.00
O.tiO
--
•
о
о
2.З5Е.о5
0,15
0,16
0,17
0,16
2.00
3.23. Данные для
создания схемы частотного фильтра
Вьщелите электрическую схему _ и выберите команду Формат >Выделенный ряд. ~ появившемся диалоговом окне перейдите на
вкладку Вид. Включите режим отсутствует в группе параметров
lll~•
Гnава
3
~ Маркер, выберите черный цвет линии черный и сбросьте флажок
Сглаженная линия. Затем щелкните на кнопке ОК.
9. С помощью свободного текста (введенного в поле формулы при вы
деленной диаграмме), создайте четыре окружности по углам схемы
(используйте маленькую букву о) и введите обозначения резисторов и
конденсаторов. Выберите команду Формат>- Объект. В появившемся
диалоговом окне перейдите на вкладку Шрифт и уменьшите размер
10.
текста до 8 пунктов. Затем перейдите на вкладку Цвета и линии и от
мените обрамление и заливку.
Щелкните на листе вне окна диаграммы.
Готовая диаграмма должна выглядеть, как показано на рис.
3. 24.
0,00 ..___ _ _ _ _ _
~---~----.-------0-----1
О,!П+ОО
Sp:f'•04 1,00€+()5 1 ,5a'.QS 2.0CIE-OS 2,5a'+OS
3,00Е+()5
3,5a'><JS
4.(XJЫJS
4.5(1'+05
..
Рис З.24. График коэффициента передачи частотного фильтра Делианниса.
Чертеж электрической схемы выполнен по табличным данным
t./ Совет
На самом деле существует гораздо более простой способ поместить в
диаграмму графический объект: нарисовать его с помощью графического
редактора, скопировать рисунок и вставить его в рабочий лист или диа
грамму. В большинстве графических редакторов работать легче, чем соз
давать оисvнки в
Excef.
Резюме
В этой главе было показано, как создавать диаграммы на основе таб
личных данных и улучшать их внешний вид с помощью надписей, меток,
легенд и заголовков.
Кроме обычных функuий построения трафиков,
были исследованы графические возможности
Excel, позволяющие вы
полнять другие типичные исследовательские и инженерные задачи, такие
как создание логарифмических, полулогарифмических
диаграмм, а также добавление к ним простых рисунков.
и
трехмерных
дuаrраммы
u
rpaфuкu
1Ь1
Немного изобретательности -
и с помощью описанных в данной гла
ве приемов вы сможете решить большинство задач отображения и пред
ставления данных. Для других систем координат, например полярных,
применяйте
координаты
линейное
преобразование
данных
в
линейные
х-
и
у
Сначала постройте -график, а затем добавьте необхо
ExceJ.
димые оси координат и надписи с Помощью графического инструмента
рия
Excel.
Дополнительная литература
Сопротивление кремния
S. М. Sze, Physics of Semiconductor Devices, 2nd ed. (New York: Wiley,
1981), Ch. 1.
Коэффициент лавинного умножения электронов в
кремнии
W. N. Graпt, "Electroп апd Hole Ionizatioп Rates in Epitaxial Silicon at
Electric Fields," Solid State Electronic 16 (1973):1189-1203.
Нigh
Частотный фильтр Делианниса
D. G. Fink and D. Christianseп, Electronics Engineers' Handbook (New
York: McGraw НШ, 1982).
Обзорные задачи
1.
2.
Постройте график результатов первой инженерной таблицы в преды
дущей главе (теплопроводность кремния). Не забудьте подписать оси.
Гиперболический синус (siпh) утла в радианах вычисляется по форму
ле:
ех
sinh(x) =
а.
-
е-х
---
2
Используя эту формулу, вычислите значения
sinh(x)
для
40
значе
ний х от О до 2п радиан. Постройте график по этим значениям и
сделайте подписи под осями.
Ь.
Добавьте на ту же координатную плоскость графики гиперболиче
ского косинуса
(cosh)
и гиперболического тангенса
(tanh). Создай
те легенду.
ех + е-х
cosh( х) = - - -
2
с.
Разместите
sinh(x)
cosh(x)
tanh( х ) = - - - -
названия
кривых
возле
самих
функции подписи данных, а не легенды.
кривых
с
помощью
Гnава
ipj
3.
3
Измените пример с уравнением Ван-дер-Ваальса из предыдущей гла
вы так, чтобы вычислить таблицу трех изотерм уравнения состояния
Ван-дер-Ваальса для двуокиси углерода. Пусть объем изменяется от
0,06 до 0,4 л/моль с шагом 0,01. Вычислите в трех столбцах давление
при температурах 264 К, 304 К и 344 К. Постройте график зависимо
сти давления от объема для этих трех изотерм и подпишите под ними
значения температуры.
4.
Выполните
упражнение
3,
используя
вместо
уравнения
Ван-дер
Ваальса закон идеального газа.
5.
Выполните
6.
плоскости. Постройте логарифмический график гиперболичесюtх
функций для значений хот О до 10.
Создайте шаблон для графиков в полярной системе координат. На
упражнение
на
2
полулогарифмической
координатной
чертите на экране оси х и у в диапазоне от -2,5 до +2,5 с точкой от
счета в центре. Нарисуйте окружности с радиусами
1
и
2,
обе с цен
тром в точке отсчета. Создайте функцию преобразования для пересче
7.
та координат r и v в значения х и у, которые мoryr быть внесены в
шаблон.
Постройте график функции "четырехлепестковой розы" в полярной
системе координат, созданной в упражнении
r = asin(20)
8.
О< 0
< 21t
а=
6:
2.
Постройте график зависимости напряжения в нагруженной балке из
примера в главе 2 от положения наrрузюt. В углу графика сделайте
чертеж балюt, закрепленной одним . конuом (рис. 2.14). (Нарисуйте
прямую бал.ку, а не искривленную.)
9.
Постройте
по
таблице
калибровки
линейного
переменно -диф
ференциального трансформатора из главы 2 график четырех кривых
калибровюt в зависимости от показаний вольтметра. Сделайте в ле
генде соответствуюшие пометки.
10. Для
примера расчета собственной концентрации носителей заряда из
главы 2 постройте график зависимости ширины залрешенной зоны и
собственной концентрации (логарифмичесюtй) от температуры. Над
пишите кривые.
11. Создайте
трехмерный график функции
sin(xxy)
для х и у, изменяю
шихся ОТ -1t ДО +1t.
12. Создайте
трехмерный график в виде проволочного каркаса для при
мера объемного графика, рассмотренного в главе. (На каркасном гра
фике точки соединены в обоих направлениях, а не в одном, как это
было в примере .) Сначала нанесите данные вдоль оси у, как в приме
ре, а потом еше раз адоль оси z. Результат должен выглядеть как на
тянутая на точки данных сеть, образуя поверхность в пространстве.
u
дuаграммы
IQJ
графuкu
Упражнения
1.
Средняя скорость молекул идеального газа вычисляется по формуле:
c=f:.
где р - плотность (ШIЯ водЫ р = 1000 кr/мЗ), а Р - давление в Н/м2.
Вычислите и постройте диаграмму скоростей при давлениях от 0,001
до 100 атм. В случае необходимости используйте логарифмическую
шкалу.
2.
В главе 2 была создана таблица зависимости оrnосительной и абсо
лютной величины звезд от расстояния до светила (рис. 2.12). Вычис
лите эту таблиuу и постройте диаграмму в виде двумерного проволоч
ного каркаса, используя встроенные проuедуры создания трехмерных
диаграмм.
3. Отобразите данные из задачи 2 на трехмерной диаграмме с объемной
поверхностью. Сравните результат с задачей 2.
4.
Данные из задачи 2 в действительности следует отображать на верти
кальной .!J.ОГарифмической шкале. Измените вертикальную шкалу на
логарифмическую и снова создайте диаграммы в виде проволочного
каркаса и объемной поверхности.
5.
Изменения эклиптической долготы (Х) и значения наклона эклипти
ки к экватору (Е) вычисляются .по формулам:
х
= 50.2564" +о. 00222" t
Е=
6.
23°27'8.26" - 0.4684"t,
где t - количество лет после 1900 года. Вычислите Х и Е для всех t от
О до 100 и постройте диаграмму на основе полученных результатов.
Нарисуйте на диаграмме фрагменты рис. 2.7, иллюстрируюшие Х и е.
Цистерна диаметром 3 м и высотой 3 м наполнена водой. В ее ниж
ней части расположена труба диаметром 5 см и миной 30 см . Считая ,
что давление воды составляет
1 Па/см2
на
1м
глубины, постройте
диаграмму скорости вытекания жидкости по трубе ШIЯ различных вы
сот столба воды в uисrерне. См. закон Пуазейля в упражнении 6 гла
вы
7.
2.
Выполните упражнение
6,
начертив иа полях диаграммы эскиз uис
терны и трубы , по которой вытекает вода.
8.
Вычислите синус, косинус, тангенс, секанс, косеканс и котангенс ШIЯ
утлов в диапазоне от
9.
-21t
до
21t
и на основе результатов создайте диа
грамму. Не забудьте подписать кривые.
Вычислите и отобразите на диаграмме зависимость времени t от ско
рости вытекания Q воды из цистерны (см. упражнение 6). Закон Пуа
зейля описывает зависимость скорости вытекания от давления. Дав
ление
-
это глубина, помноженная на константу, а глубина
-
это
IQI
Гt1ава
объем цистерны, деленный на площадь основания. Сложите все это
и получите простое дифференциальное уравнение,
3
-
которое можно
решить аналитически:
Q = KVa е-кz
'
где:
4
К= па и
811/А
а
-
•
радиус трубы, и
воды
0,2
-
Па/см2 нам),
падение давления на единицу глубины (для
v-
вязкость,
1-
длина трубы, А
-
площадь
поперечного сечения цистерны.
1О. Для
примера с термоэлектрическим радиатором из главы
2
(рис.
2.18)
преобразуйте калькулятор функции в таблицу. Вычислите и постройте
диаграмму термоэлектрического КПД и величины теплопередачи при
входном токе, изменяющемся от
20 до 40 А.
Гпава
4
Исnопьзование
Visual Basic for
Applications
./
./
./
Запись макросов
Соэдание функций
Соэдание припожений
В
году поддержка макрокоманд компонентами пакета Microsoft
в значительной степени расширилась. Разработчики преследовали
цель сделать Visual Basic основным макроязыком стандартных приложе
ний, и программа Excel первой подверглась изменениям. Visual Basic
удачно справился с ролью языка для разработки приложений Windows, в
1994
Office
чем немалая заслуга визуального интерфейса (пользователь может как бы
"нарисовать"
приложение)
и
относительной
простоты
Многие профессиональные программисты глумятся над
желая замечать, что
Visual Basic
этого
Basic,
яз.ьrка.
упрямо ие
является полноправным языком про
граммирования, поддерживающим блочные структуры, процедуры и объ
екТЬI. В приложение
нием
Excel интегрирована неполная версия VВ под назва
Visual Basic, Application Edition или Visual Basic for Applications, ко
торая обладает большей частью стандартных функциональных возможно
стей. Кроме того, эта специальная версия поддерживает объекты , кото
рые позволяют обращаться к содержимому ячеек и управлять приложе
нием Excel.
Если вы уже имеете опыт программирования иа одной из современ
ных версий Basic или FORTRAN, то наверняка будете чувствовать себя
комфорrnо в среде Visual Basic. Если вы программист иа С или Pascal,
переход иа новый язык тоже вряд ли будет болезненным. С другой сто
роны, программирующим на GW-BASIC или BASICA придется переос
мыслить некоторые концепции, поскольку современный Basic значи
тельно отличается от своих предшественников.
Visual Basic for Applications
является полнофункциональным языком
программирования, заслуживающим отдельной книги (уж я-то знаю, по
скольку написал именно такую книгу). В этой главе будут рассмотрены
функциональные возможности, которые окажутся полезными для июке
неров и научных работников. Тем не менее , дать п олное описание языка
программирования в одной главе просто невозможно. Дополнительные
сведения о языке можно почерпнуть в одной из книг, перечисленных в
114i
Гnава
4
разделе этой rлавы "Дополнительная литература". В поисках описания
функций и поддерживаемых возможностей полезно будет заrлянуrь в Ру
ководство пользователя
а также в систему интерактивной справки.
Excel,
Создание процедур
Процедурой в
Visual Basic
Visual Basic
считается фрагмент кода, выполняемый как
один блок. Процедура в обязательном порядке имеет заголовок и завер
шающую инструкцию, между которыми и находится собственно выпол
няемый код. Синтаксис заголовка процедуры:
Sub Имя_Проц(аргум)
rде Имя_Проц соответствует имени процедуры, а аргум
-
всем аргумен
там, переданным в процедуру. Инструкция завершения
End Sub
ставится за последним выражением процедуры.
Процедуры помещаются в отдельный модуль рабочей книги
Excel.
Чтоб.ы вставить модуль в рабочую книгу Excel, запустите редактор Visual
Basic с помощью команды Сервис
Макрос
Редактор Visual Basic или
>
>
комбинации клавиш
<Alt+F11>.
Microsoft Yisual Basic,
основное окно которого показано на рис.
Рис.
4.1.
Редактор
окно
4.1.
Microsoft Visual Basic
Выполните команду Вставка
диалоговое
В результате будет открыто приложение
нового
>
модуля.
Модуль, после чеrо должно появиться
Теперь
можно
выполнить
команду
Испопьзованuе
Вставка
>-
Uisual Basic for Applications
Процедура. В диалоговом окне Вставка процедуры (рис.
4.2)
необходимо задать имя процедуры, ее тип и область определения. Щелк
ните на кнопке ОК
в окне модуля появится заготовка для процедуры
-
(заголовок и инструкция заверш ения) . П анель инструментов Отладка
(рис . 4.3) содержит все необходимые для выполнения и трассировки
процедур
Vjsual Basic
Рис.
4.2. Диалоговое
Рис.
4.3.
кнопки .
окно Вставка процедуры
Панель инструментов Отладка
Пользователю предоставлена возможность вставлять в создаваемые
приложения специальные диалоговые окна (формы) с кнопками, флаж
ками,
переключателями и другими элементами управления,
которые яв
ляются составной 1.Jастью интерфейса приложения. Для создания такой
формы следует выполнить в редакторе
Vjsual Basic
команду Вставка
Useгf orm. В результате будет открыто диалоговое окно для
>-
создания
формы и появится панель инструментов Элементы управления (рис. 4.4).
Для создания объекта просто щелкните на соответствующей кнопке па
нели инструментов и нарисуйте объект в диалоговом окне. В предыду
щих версиях
Excel
был реализован несколько иной подход к созданию
диалоговых окон, однако пользователям не придется рисовать формы в
редакторе
Yisual Basic
или непосредственно на рабочем листе. Дело в
том, что при желании в рабочую книгу можно вставить так называемое
диалоговое окно
Excel.
После создания объекта в диалоговом окне ему следует назначить
процедуру
Visual Basic.
Щелкните на объекте правой кнопкой и выберите
из контекстного меню команду Программа . Если в предыдущих версиях
lfl:I
Гоава
4
можно было · присвоить объекту существуюший макрос, выбрав его из
списка, то в
Excel 97
процедуру можно написать и самостоятельно . Од
нако теперь пользователь может определить процедуры для каждого воз
можного действия над кнопкой (шелчок, двойн ой щелчок, перемешение
указателя мыши над объектом и т.д.). Окн о модуля , позволяюшее создать
процедуру , показано на рис .
Рис.
4.4. Средства
4.5.
создани я форм в
Microsoft Visual Basic
Ptiva t e sub COJrUnandButt onl_Click()
:•.-:.
End Sub
.:~:·:", ...
Рис.
4.5.
,.
Окно модуля
··:·-·..· .·
~
::~
.;jij·
Исщ1nьзованuе
Uisual Basic for Applications
Объектно-ориентированное программирование
В соответствии с концепцией объектно-ориентированного програм
мирования данные (свойства) и код (методы), манипулирующий этими
данными, интегрируется в один "контейнер", который и называется объ
ектом.
В
Visual Basic
кнопка является .объектом, который содержит дан
ные о расположении в диалоговом окне , размере, цвете и отображаемом
тексте. Объект также содержит код для прорисовки кнопкя на экране,
мя создания иллюзии нажатой кнопки , а также для запуска заданных
пользователем процедур после выполнения над кнопкой определенных
действий.
Манипуляции с объектом осуществляются либо пугем изменения
свойств, либо пугем выполнения присущих ему методов. Например , объ
ект типа "кнопка" обладает свойствами
Left
и Тор, которые задают его
расположение относительно верхнего левого угла диалогового окна. С
ломощью
этих параметров проuедура может определять текущее
распо
ложение кнопки и , в случае необходимости, изменять его. Объект такого
типа также обладает методом Сору, который после выполнения помещает
копию кнопки в буфер обмена.
Для поддержки новых и усовершенствованных функциональных воз
можностей в объектную модель
Microsoft Excel 97
Visнal
Basic
бьmи вне
сены значительные изменения. Многие объекты, свойства и методы бы
ли изменены. Для обеспечения возвратной совместимости большая часть
замененных компонентов была просто скрыта, а не удалена. Это означа
ет, что такие компоненты по умолчанию не будут фигурировать в иерар
хических средствах просмотра объектов, ио существующий код, который
использует скрытые компоненты, по-прежнему будет корректно функ
ционировать. Тем не менее, при создании собственных программ на
Basic следует использоватЪ только новые объекты, свойства и методы.
Обращение к объектам в
Visual Basic for
Visual
Visual Basic
Applicatioпs не принадлежит к полностью объектно
ориентированным языкам, в которых программист может создаnать соб
ственные объекты. Однако любой элемент
следовательно, доступен из программы
Excel является объектом и,
Visual Basic. Более того, обра
шаться можно не только к ячейкам или рабочим листам, но и ко всем
командам и функциям приложения
Excel.
В соответствии с объектной моделью
Visual Basic, любая ячейка или
Range, который, в свою очередь, являет
от объекта Worksheet. При обращении к свойству объек
группа ячеек является объектом
ся производным
та следует точно указывать всю иерархию контейнеров. Например, для
обращения к значению ячейки А1 рабочего листа Тек_расчеты в рабочей
книге П_л::\н необходимо использовать следующую конструкцию:
liФI
Гnава
4
Application.Workbooks("Плaн"). Shееts("Тек_расчеть1"). Range("A 1"). Value
Итак, все объекты разделяются точками. В том случае, если названия
объекта и его свойства совпадают, то для обращения к объекту использу
ется точка, для обращени я к свойству
-
восклицательный знак
(!).
Совсем необязаrельно перечисл ять все объекты. Вместо пропущенных
"родительских" объектов по умолчанию подразумевается активизирован
ные в текущий момент. Поэтому в большинстве случаев ДIIЯ обращения к
ячейке достаточно указать только рабочий лист и диапазон. Н априм ер :
Sheets(''Тек_расчеты") . Range("A 1")
Кроме того, существуют специальные объекты, соответствующие ак
тивизирован ным элементам рабочей КI:iИrи.
Sheet
Например,
объект
Active-
соответствует выделен ному в настоящее время рабочему листу, а
объект
ActiveCell -
ячейке. Следовательно, для обращения к текущей
ячейке текущего рабочего листа можно воспользоватъся конструкцией
ActiveSheet.ActiveCell.
-.._ Примечание
;:~ij Для ознакомления со всеми свойствами и методами объекта мож
но воспользоваться диалоговым окном Просмотр объектов (см . рис.
4.6).
Чтобы открыть это диалоговое окно , щелкните на кнопке с таким же
названием , расположенной на панели инструментов Стандарт редактора
Visual Basic. Затем выберите в диалоговом окне библиотеку и сам объект.
В результате будет отображен список всех существующих свойств и ме
тодов объекта. В нижней части окна для каждого выбранного свойства
или метода выводится его синтаксис. Чтобы раскрыть посвященный ме
тоду (свойству) раздел справочной системы, щелкните на кнопке со зна
ком вопроса
(7).
Создание процедур с целью автоматизации
рутинных задач
Большинство элементарных процедур
Visual Basic
предназначено для
автоматизации рутинных операций над рабочими листами.
Процедуры._
подобного типа называются командными, поскольку они выполняются
как команды меню. Практически любую рутинную задачу (ввод едИнооб
разных данных, несложные расчеты и т.д.) можно автоматизировать с
помощью
командных
процедур ,
которые
призваны
сохранить
время
пользователям при выполнен ии повторяющихся действий. Кроме того ,
процедуры оказываются
просто незаменимы во время
создания автома
тизированных рабочих листов для неподготовленных пользователей
Excel. Потратьте некоторое время на изучение этой главы, и вы сможете
удивить своих коллег и друзей рабочими листами, которые будут автома
тически выполнять необходимые действия без вашего вмешательства.
Испоnьэованuе
eJ Collecbon
•"'
i'1J СоmЬОВох
·
Uisual Basic for Applications
;=амь;1111м~
~ CommэndBзr
i>!J Command8arBU1: :
·~ CommandBarCo ::с
·~ ~ommand~ar~o::tJ
Рис.
4.6. Диалоговое
окно Просмотр объектов
Запись процедуры
Командную процедуру легко создать и еще проще использовать. При
дайте рабочему листу такой вид, который он должен иметь перед запус
ком процедуры и выполните команду Сервис
В результате появится изображенное на рис.
>
Макрос
>- Начать Запись.
4.7 диалоговое
окно.
В этом диалоговом окне следует задать название макроса или согла
ситься с предложенным
Excel
по умолчанию и (что необязательно) на
значить для макроса комбинацию клавиш. Последнюю операцию можно
будет проделать позже, во время присвоения макроса кнопке панели ин
струментов. Макрос можно сохранить в текущей рабочей книге, новой
книге или личной книге макросов. Если записываемую процедуру пред
полагается использовать в различных рабочих книгах, ее целесообразно
сохранить в личной книге макросов, которая загружается при каждом за
пуске
Excel.
Локальные процедуры следует помещать в ту книгу, в кото
рой они будут использоваться. Чтобы создать краткое описание макроса,
введите необходимый текст в поле Описание.
Рис.
4.7.
Диалоговое окно Запись макроса
Если в предыдущих версиях
Excel
существовала возможность записы
вать ;>iакросы на различных языках программирования, то теперь пользо
вателю уже не приходится выбирать язык для создания процедуры.
...
Гnава
После
щелчка
на
кнопке
ОК
появится
панель
4
инструментов
Остановка записи с кнопкой Остановить запись, а приложение
Excel
начинает записывать все ваши действия, включая открытие и закрытие
файлов, создание формул и т.д. Выполнив необходимую последователь
ность действий, выберите команду Сервис
)- Макрос )-
Остановить запись
или щелкните на кнопке Остановить запись.
Если процедура записывалась на листе модуля,
него
с
помощью
ярлычков
или
кнопок
прокрутки,
переключитесь на
расположенных
в
нижней части окна рабочей книги.
-.._
Примечан~е
По умолчанию, при записи макроса используются абсолютные ссылки.
Макрос, записанный с абсолютными ссь1лками, при выполнении всегда
обрабатывает те же ячейки, которые обрабатывались при его записи. Для
того чтобы с помощью макроса обрабатывать произвольные ячейки, сле
дует записать его с относительными ссылками. Для этого щелкните на
кноп11:е
1~~~ Относительная ссылка на панели инструментов Остановка
записи. }~' Относительные
текущего сеанса работы в
ссылки
будут
использоваться
до
конца
Microsoft Excel или до повторного нажатия кнопки.
Редактирование существующих макросов
Подкорректировать предварительно записанный макрос можно только
в редакторе VisuaJ Basic. В меню Сервис приложения Excel установите
указатель мыши на пункт Макрос и выполните команду Макросы (или
нажмите комбинацию клавиш
<Ctrl+FS>).
Выберите имя макроса из спи
ска и щелкните на кнолке Изменить. В результате соответствующий мак
росу код будет открыт в редакторе
Visual Basic.
Назначение макроса объекту
Вместо
того
чтобы
запускать
макрос-процедуру
с
помощью
комбинации клавиш или через меню Сервис, его можно назначить
объекту (например, кнопке). Для инициирования макроса достаточно
будет щелкнуть на объекте. Кнопку можно создать с помощью соответст
вующего инструмента панели Формы.
В случае необходимости макрос
можно назначить любому объекту рабочего листа, включая внедренную
диаграмму или графический элемент (прямоугольник или линия). Чтобы
назначить процедуру объекту, щелкните на нем правой кнопкой, выбе
рите из контекстного меню команду Назначить макрос, выберите необхо
димую процедуру из списка диалогового окна Назначить макрос объекту
и щелкните на кнопке ОК.
Испоnьзованuе
.
Uisual Basic f or RppJications
.
r::;;;;~:~::~~~~~:~~~~;tf.4t~}~~t~~:~~~..
' Fcпnat!\
f t<Н4"a21~l
~- ~1
Рис.
4.8. Диалоговое
окно Назначить макрос объекту
~ После расположения над объектами, которым уже назначен
~ макрос, указатель ~fыши принимает форму руки. Чтобы поставить
в соответствие объекту другой макрос, воспользуйтесь описанной выше
процедурой .
Запуск команд~ой процедуры
Запустить проце~у можно с помощью назначенной ей комбинации
<Сtгl+клавиша>, с помощью щелчка на объекте (которому назначен мак
рос) или путем выполнения команды Сервис
Макрос и выбора назва
>-
ния процедуры из списка дИалогового окна Макрос.
Рис.
4.9. Диалоговое окно
Макрос
11:11
Гnава
4
Процедура форматирования ячейки
В качестве примера рассмотрим последовательность действий для соз
дания процедуры форматирования и обрамления ячейки. В результате
должен быть записан макрос , который преобразует содержимое ячейки
(или ячеек) в числовой формат с двумя десятичными знаками после за
пятой и рисует вокруг ячеек прямоугольник. Впоследствии этот макрос
можно будет назначить какому-то объекту.
1. Перейдите на новый рабочий лист.
2. Выделите любую ячейку (например, 87) и введите в нее произвольное
число.
3.
Выделите ячейку А1 и выполните команду Сервис
>- Макрос >- Начать
запись.·
4. Назовите макрос Formatlt, наберите для него краткое описание, задай
те комбинацию клавиш и щелкните на кнопке ОК.
Рис.
5.
4.10. Диалоговое окно Запись макроса
Когда появится панель инструментов Остановка записи , щелкните на
кнопке Относительные ссылки (если она еще не нажата). В результате
макрос сможет обрабатывать произвольные ячейки.
6.
Шелкните на ячейке , которая содержит число, выполните команду
Формат
>-
Ячейки , перейдите на вкладку Число ,
выберите формат
Числовой с двумя десятичными знаками после запятой и щелкните на
кнопке ОК.
7.
Щелкните на стрелке раскрытия списка возле кнопки Обрамление и
выберите необходимый тип контура (например, тонкий внешний
контур).
8.
Щелкните на кнопке Остановить запись.
Теперь перейдите в редактор Visual Basic и в окне Проект щелкните
дважды на соответствующем макросу модуле. Записанный код макроса,
который соответствует всем выполненным действиям, будет отображен в
отдельном окне. На рис.
4. 11
показано, что под заголовком процедуры
были автоматически вставлены некоторые комментарии .
Сразу за заголовком и блоком комментариев расположена конструк
ция для выбора ячеек. Она появилась в результате выборе режима отно
сительной адресации ячеек и последующего вьщеления ячейки
87.
Испоnьзованuе
-....
Uisual Basic for
Пpplications
Примечание
Комментариями в Visual Basic счи"Fаtе-тся строки, начинающие с апостро
фа (') или слова REM , за которым следует пробел. Комментарий может
начинаться как в начале строки, так и- после значащей инструкции. По
умолчанию комментарии выделяются в тексте зелень1м цветом . Не стес
няйтесь вставлять комментарии в процедуры
-
в результате ваши про
граммы станvт более понятными.
ActiveCэll. Offset(6, 1).Range("A 1"). Select
Объект ActiveCell в данном случае относится к выделенной ячейке в
активизированном рабочем листе (А1). Метод ·offset(6, 1) смешает фокус
на 6 строк вниз и 1 столбец вправо, на ячейку 87. Метод Range("A1")
возврашает верхнюю левую ячейку в диапазоне смешения. В нашем слу
чае метод
87.
Offset превращает в верхнюю левую ячейку диапазона ячейку
В случае выбора нескольких ячеек, методу Range в качестве аргумен
та будет передан диапазон ячеек. Метод Select присваивает новой ячейке
статус активной ;
j!; ~·
f0Jm<1tlt
F O:!.:t-1.!itit М~~;··>::
ПJ.'ОЦед:>'Р<>
ActiveCell.Sel ect
Selection. NU11ЬerFo raat
= •о.оо •
Selection.Border, (xlDiagonalDown} .Linestyle = xl None
Sele ction.Border,(xlDiagonalUp) .Linestyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlcontinuous
.lieight = xlМedium
.Colorindex = · xlAutomatic
End lii tl'l
liith selection.Border5(xlEd9eTop)
. LineStyle = x l Continuous
. Wei9ht = x1Мedi11111
.Colorindex = xlAutomatic
End With
With Selection.Borderз(x lEdgeBottom)
.LineStyle = xlContinuous
.weight = xlJotediurt
.Colorindex = xlAut0111atic
End Wi th
with Select ion.вorders ( xlEdgeRight)
.Linestyle = xlContinuous
. lieight = xlMediwu
.Colorrndex с xlAutomatic
End lfith
End sub
'7;;!
Рис.
4.11.
Код макроса
Formatlt
li:fl
Гnава
4
Далее следует ин струкция Selection.NumberFormat, задающая формат
вывода чисел в выбранном диапазоне. Две следующие строки определяют
диапазон действия инструкций изменения типа обрамления. После опре
деления типа обрамления с помощью соответствующей кнопки может
одновременно изменяться несколько свойств ячейки: тип , толщина и
цвет различных линий обрамления .
. . _ Примечан~е
Все переменные на рис. 4.11 , которь1е начинаются с xl (xIOiagonalDowп. ·
xlDiagonalUp, xlEdgeleft, xlContinuous
и т.д.) являются глобальными кон
стантами, которые доступны из приложений
Visual Basic.
Все определен
нь1е константы описаны в системе справки , а, кроме того, фигурируют в
средстве просмотра объектов в разделах библиотек
Excel
и
Visual Basic.
Надеюсь, что опытных программистов не следует убеждать в целесооб
разности использования констант, а начинающие примут этот тезис без
-..
лишней иронии.
Вы еще не забыли, что наша процедура предназначается для форма
тирования любых выделенных ячеек (а не только попадающих в диапа
зон
6
строк вниз и
1 столбеu
вниз от текушей ячейки)? Необходимо уда
лить инструкции выбора ячеек. И мейте в виду, что в том случае, если бы
мы записали процедуру, выделив единственную ячейку, никаких допол
нительных маниnуляuий с кодом макроса выполнять не пришлось бы.
Кроме того , нам осталось еще' назначить макрос какому-то объекту.
1.
2.
3.
Удалите или закомментируйте первую зн ачашую строку процедуры .
Перейдите на необходимый рабочий лист.
Если панель инструментов Формы до сих лор не открыта, выполните
команду Вид> Панели инструментов> Формы.
4.
~.;
Выберите
инструмент Кнопка и
нарисуйте
на
рабочем
листе
соответствующий элемент управления .
5.
Щелкните на кн опке правой кнопкой и выполните из контекстного
меню команду Назначить макрос.
6.
В появившемся диалоговом окне Назначить макрос объекту выберите
необходимый макрос и щелкните на кнопке ОК.
7.
Выделите курсором мыши текст на поверхности кнопки и задайте для
нее описательное с вашей точки зрения название. Имейте в виду, что
впоследствии надпись (и сам макрос) можно будет изменить .
Вот и все. Введите несколько чисел в ячейки, вьшелите нх и щелкни
те на только что созданной кнопке. Выделите несколько других ячеек и
запустите
процедуру
непосредственно
из
списка
макросов
(команда
Сервис>- Макрос> Макросы или комбинация клавиш <Alt+F8>). Вьщели
те еще один набор ячеек и наж\iите соответствующую макросу комбина
цию клавиш. Во всех трех случаях вызываемая проuеду ра должна кор
ректно сработать.
Испопьзованuе
Uisual Basic for Rpplications
Созданная пр оuедура будет доступна на всех рабочих листах книги , а
не только на том, на котором она была записана.
Программирование на языке
Visual Basic for
Applications
n
Проuедуры вовсе не обязательно должны быть такими простыми, как
только что приведенном примере. На языке Visual Basic можно напи
сать функuионально полную программу, включающую уникальные дИа
логовые окна и меню, вы полняющую сложные выч исления и операции с
файлами , рабочими листами , ячейками и т.д. Более того, существует
возможность внедрить в программу Visual Basic процедуру из другого
языка высокого уровня , преобразовав ее предварительно в библиотеку
динамической компоновки
Maciпtosh) и объявив ее в
грамма
Excel
(DLL,
Excel с
или ресурс CODE для платформ
п омощью выражения Declare. Про
не делает различий между внутренними процедурами и
корректно зарегистрированными внешними. В приложении Д читатель
найдет все сведения , необходимые для создания и обращения к вн ешн им
фу.нкuиям.
Обращение к ячейкам
В том случае, когда Visual Basic используется для управления Excel .
наиболее распространенной операuией будет обращение к ячейкам или
диапазонам ячеек. Любой диап азон ячеек рабочей книги, будь то едИнст
венная ячейка или несколько сотен, является объектом типа Range. Для
обращения к диапаз ону ячеек используется метод
Range,
которому в ка
честве аргумента передается перечень необходимых ячеек.
конструкция
87:F9.
Range("B7:F9")
Например,
выделяет прямоугольный дИапазон
Если же п оследовательно обр'1rиться к двум методам
ячеек
Range,
то
аргумент второго метода будет относиться не ко всему рабочему листу, а
лишь к выбранному первым методом дИапазону (другими словами , коор
дИнаты
ячеек аргумента
второго
метода
являются
оnюсительными для
начала выбранного первым методом диапазона). Например, конструкция
ActiveSheet.Range("B7:F9").Range("B2") = 1
присвоит единицу ячейке С8 , несмотря на то, что фигурирует явная
ссылка на ячейку
82.
Первый метод выделяет дИапазон 87:F9, второй ме
тод выбирает в этом дИапазоне ячей ку, которая расположена н а одну
строку ниже и один столбец правее верхней левой ячейки предваритель
но выделенного диапазона.
Не
менее пол езным оказывается при выделении диапазонов метод
которому в качестве аргумента передаются два целочисленных
значения , соответствующих строке и столбuу. Метод возвращает ссътку
на ячейку, которая находИтся н а пересечении заданных строки и столб
ца. Чаще всего метод Cells используется в uиклах или других структурах с
Cells(),
llФI
rnaвa
4
последовательным обрашением к ячейкам по индексам их строк и столб
цов. Напри мер, конструкция
ActiveSheet.Range("B7:F9").Cells(2,2) =1
эквивалентн а при веденной выше и тоже обращается к ячейке СВ. Эк
вивалентными явл яются также конструкции
ActiveSheet.Range(Cells(7,2), Cells(9,6)) = 1 и ActiveSheet.Range("B7:F9") =1
Переменные
В
Visual Basic
Visual Basic for Applications нет необходимости заранее объявлять
- они автоматически создаются при первом обращении к
переменные
ним. Тем не менее, предварительное объявление переменных считается
правилом хорошего тона и , кроме того, позволяет сразу же определять
орфографические ошибки в именах переменных. Существует инструкция
Option Explicit,
которая налагает на уровне модуля требование на явное
описание всех переменных этоrо модуля. Инструкция
Option Explicit
при
ее использовании должна находиться в модуле до любой процедУРы . При
попытке использовать неопи санное имя переменной возникает ошибка
во время компиляции . Когда инструкция
Option Explicit не используется,
Variant (если используемый по
помощью инструкции Def Тип).
все неописанные переме нные имеют тип
умолчанию тип данных не задается с
Всегда пользуйтесь описанной инструкцией для того, чтобы избежать не
верного ввода имени объявленной переменной или возникновения кон
фликтов в программе , когда область определения переменной не совсем
ясна .
Переменные объявляются с помощью инструкций
ReDim
или
Static.
Ин струкция
Dim
Dim, Private,
PuЫic,
описывает переменные и выделяет для
них память. Переменные, описанные с помощью ключевого слова
Dim
на
уровне модуля, доступны для всех проuедур в данном модуле. Перемен
ные , описанные на уровне процедуры, доступны только в данной проце
дуре. Синтаксис инструкции:
Dim [WithEventsJ имя_Переменной[([индексы])J
имя_Переменной[([индексы])] [As [New] тиnJ] ...
[As (New] тиn] [, [WithEventsJ
Все элементы синтаксиса, заключенные в квадратные скобки, явля
ются необязательными. В таблице приведено описание всех элементов.
WithEvents
Ключевое
слово,
указывающее
на
тот
факт,
что
имя_Переменной является объектной переменной, которая
используется nри отклике на события, генерируемые объектом
ActiveX.
имеет
Применяется только в модулях класса. Пользователь
возможность
оnисэть
с
помощью
ключевого
слова
произвольное кол ичество отдельных nеременнь1х,
однако nри этом не допускается создание массивов. Не допус
WithEvents
кается таюке использование ключевого слова
словом
WithEvents
New с ключеаым
Испоnьзованuе
Uisual Basic for
Пpplications
имя_
Имя переменной, удовлетворяющее стандартным правилам
Переменной
именования
Индексы
Размерности переменной массива; допускается описание до
60 размерностей. Для задания индексов используется сле
дующий синтаксис: [нижний То] верхний [, [нижний То)
верхний] ... Если нижний иНдекс не указан явно, нижняя грани
ца массива определяется инструкцией Option Base. Если ин
струкция Option Base отсутствует, нижняя граница массива
равна нулю
New
Ключевое слово, указь1вающее на возможность неявного соз
дания объекта. Если ключевое слово
new фигурирует при
опи
сании объектной переменной , новый экземпляр объекта соз
дается при первой ссылке на объект, поэтому необходимость
присвоения ссылки на объект с помощью инструкции Set от
сутствует. Ключевое слово
new нельзя
использовать для опи
сания переменных любых внутренних типов данных, для опи
сания экземпляров зависимых объектов, а таЮt<е вместе с
ключевым словом
WithEvents
Тип данных переменной. Поддерживаются типы
Byte, Boolean,
lnteger, Long, Currency, Single, DouЫe, Decimal (с некоторыми
оговорками), Date, Stгing (для строк переменной длины) , Stгing
*длина (для строк фиксированной длины) , Object, Variant, оп
тип
ределяемый пользователем тип или объектный тип . Для каж
дой описываемой переменной следует использовать отдель
ное предложение
As тип
./Совет
Не забывайте следовать стандартным правилам именования перемен
ных. Рекомендуется присваивать переменным описательные имена , от
ражающие одновременно их тип . Например, целочисленному счетчику
было
бы
целесообразно
присвоить
имя
intCounter,
а
строке
-
strFileName.
В приведенной ниже таблице вкратце описаны поддерживаемые
Basic
VisuaJ
типы данных, а также перечислены рекомендуемые дпя именования
переменных префиксы.
Тип
Префикс
lnteger
int
Описание
Целочисленное значение
(2
байта) в диапазоне от
-
32 768 до 32 767
Long
lng
Целочисленное длинное значение (4 байта) в диапазоне от -2 147 483 648 до 2 147 483 647
1рп1
Гnава
Тип
Префикс
Single
sпg
4
Описание
Число с плавающей точкой обычной точности
(4
байта) в диапазоне от -3.402823Е38 до
-1.401298Е-45 для отрицательных значений и от
1.40 1298 Е-45 до 3.О2823Е38 для положительных
значений
DouЫe
dЫ
Число с плавающей точкой двойной точности
(8 байт)
в диапазоне от
-1. 79769313486232Е308 ,
до -4. 94065645841247Е-324 для отрицательнь1х
значений и от 4.94065645841247Е-324 до
1. 79769313486232Е308 для положительных значений
Curreпcy
cur
Используется для представления денежных сумм
(8 байт) в диапазоне от -922 337 203 685 477.5808
922 337 203 685 477.5807
Date
date
Используется для представления даты и времени
(8 байт) в диапазоне от 1 января 1оо
31 де кабря 9999 r
Striпg
str
до
г. до
Используется для представления текстовой строки
произвольной или заданной длины. Размер перемен-
ной определяется длиной строки
Variant
var
Используется для представления данных числовых·
(16 байт)
или строковых
(22 байта+ длина
строки)
подтипов
Вооlеап
f
Используется для представления логических значе-
ний
True или False.
Занимает
2
байта
Тип данных,
в зависи-
Размер и диапазон каждого элемента определяется
определяе-
мости от
его типом данных
мый пользо- объекта
вателем с
помощью
ключевого
слова Туре
Decimal
dec
Масштабируемое целое значение (14 байт) в диапазоне +/-79 228 162 514 264 337 593 543 950 335 без
дробной части или
+/-7,9228162514264337593543950335 с 28 знаками
справа от запятой
В предыдущих версиях
Visual Basic существовал также тип данных
Excel 97
VВА собственно тип дан ных Array отсутствует - вместо нее появилась
функция с таким же названием. ФунКllИЯ возвращает значение типа Variant, содержащее массив последовательно индексированных элементов.
Array,
который позволял организовать масси вы переменных. В
, Испоnьзованuе Uisual Basic f or Rpplications
~ Примечание
Тип данных
Variant
является особым тиnом, к которому относятся все пе
ременные, не описанные явно с другим типом данных (с помощью инст
рукций
Dim, Private,
PuЫic или
Static).
Переменные этого типа могут со
держать любые данные, за исключением строк фиксированной длины и
определяемых nользователем типов .
Переменная типа Vaгiaпt может
таюке содержать специальные значения
Null.
Для
указа н ия характера подтипов типа Variaпt предназначены функции
Var-
Type
и
TypeName.
Empty, Error,
Nothiпg и
Следует таюке учитывать тот факт, что реальный тип
переменных Variaпt проверяется во время выполнения , а не во время
трансляции, что может послужить причиной ошибки.
Синтаксис инструкций Private и PuЫic не отличается и совпадает с
рассмотренным выше синтаксисом инструкции
Dim.
Private [WithEveпts] имя_Переменной[([индексы])] [As [New] тип]
[, [WithEveпts] имя_Переменной[([индексы])] [As [New] тиnn".
PuЫic [WithEvents] имя_Переменной[([индексы])] [As [New] тип]
[,[WithEveпts] имя_Переменной[([индексы])] [As [New] тип]]".
Обе инструкции применяются на уровне модуля. ' Переменные типа
Private доступны только в модуле, в котором они описаны. Переменные,
описанные с помо щью инструкции PuЫic, доступны для всех процедур
во всех модулях всех приложений (если не действует инструкция
Option
Private Module). В последнем случае переменные являются общими толь
ко внутри того проекта , которому они принадлежат. Запреща ется ис
пользовать инструкцию PuЫic в модуле класса для описания строковых
переменных заданной длины.
-._Внимание
Использовать глобальные переменные, которые доступны ао всех моду
ля х. очень удобно , однако не следует сбрасыват1:> со счетов возможность
их некорректной модификации . При обращении из процедуры к необъяв
ленной глобальной переменной . ее значение изменится .
Инструкция ReDim применяется на уровн е процедуры для задания
или. ИJМенения размера динамического массива, который уже был фор
мально описан с помощью инструкuии
Private,
PuЫic или
Dim
без указа
ния размерности . Ее синтаксис
ReDim [Preserve] имя_Переменной(индексы) [As тип]
[, имя_Переменной(индексы) [As тип]]".
В данном случае Preserve является необязательным
ключевым словом,
которое используется с uелью сохранения дан ных существующего масси
ва во время изменения
ero
размерности .
lфj
Гnава
Инструкция
Ее синтаксис:
Const
[PuЫic 1 Private]
4
объямяет не переменную, а постоянное знач:ение.
Const имя_Константы [As тип]
=выражение
Все обнаруженные в коде программы ссылки на объявленные кон
станты заменяются соответствующими литералами. Поскольку литераль
ные знач:ения констант вставляются в код на этапе компиляции, их не
возможно изменить во время выполнения программы. Константы позво
ляют сделать программы более доступными дпя исправлений и понимания.
Для описания переменных, сохраняющих свое значение во время выполнения программы, предназнач:ена инструкuия
Static.
Ее синтаксис:
Static имя_Переменной[([индексы])] [As [New] тип]
[, имя_Переменной[([индексы])] [As [New] тип]] ...
После запуска программы переменные модуля, описанные с помощью
инструкции Static, сохраняют свои знач:ения до сброса или перезапуска
модуля. Инструкция
явного
описания
Static
применяется в нестатич:еских процедурах для
переменных,
видимых
только
в
этих
процедурах,
но
имеющих время жизни, равное времени жизни модуля проuелуры.
-....
Примечание
Инструкция
Static
и ключевое слово
Static
похожи, но предназначены для
получения различных результатов. При описании процедуры с ключевым
словом
Static (например, Static Sub CountSales()),
память для всех локаль
ных переменных nроцедурь1 выделяется только один раз, а результате
.
чего значения этих переменных сохраняются на все время выnолнения
программы. Для нестатических процедур память для переменных выде
ляется при каждом вызове процедуры и освобождается при завершении
процадуры. Инструкция Static используется в процедурах для описания
тиnа данных переменной, которая сохраняет свое значение в промежутках между вызовами процедуры и обычно помещается в начало процеду
рь1 вместе с доvгими инстоvкциями описания, как-то
Dim .
./Совет
Рекомендуется поместить объявления всех глобальных переменных и
констант в отдельный модуль. В результате искать и радактировать их в
слvчае необходимости станет намного легче.
Программирование математических выражений
Запрограммированные
математич:еские
выражения
(вычисляющие
значение и присваивающие его переменной) во многом похожи на соот
ветствующие им алгебраические выражения. Слева от оператора при
сваивания (знака равенства) располагается переменная, которой следует
присвоить вычисленное знач:ение. Собственно формула для расчета рас-
Испоnьзованuе
Uisual Basic for Applications
полагается справа от знака равенства. Для обозначения операций сложе
ния, вычитания, умножения и деления используются стандартные алгеб
раические символы. Для возведения в степень используется оператор л.
Математические функции имеют такие же названия и работают точно
так же, как используемые в формулах рабочих листов функции. Более
того, .zюпускается 'Использование функuий рабочих листов в выражениях
Visual Basic.
Например, формула из главы
2,
µо (Т/7;, ) -Б
µ = ( 1+ ( Е, Ее )Р) i;p
соответствует следующему выражению
Visual Basic:
u = (uO"'(ТfТO)л(-delta))/((1 +( Е/Ес)лЬеtа)л(1 /Ьеtа))
Обратите внимание
н а расставленные
скобки,
которые позволяют
проводить вычисления в корректном порядке.
~ Предупреждение
Старшинство операторов, определяющее порядок выполнения вычисле
ний в
ли в
Visual Basic и формулах рабочих листов , несколько отличается. Ес
Visual Basic fог Applicatioпs возведение в степень осуществляется
перед отрицанием , то на рабочих листах дело обстоит иначе. Например,
результат вырежения -1л2 в Visual Basic равен -1, а на рабочем листе -
1.
Чтобы добиться одинаковых результатов в
Visual Basic
и рабочих лис
тах следует явно задаветь порядок вычислений с nомошью кавычек: Н )л2.
В
Visual Basic
не последнюю роль играет тип переменных, с которыми
выполняются вычисления. Во время обработки выражения, которое со
держит различные типы данных, Vistial Basic автоматически осуществляет
приведение переменных к необходимому типу. Вычисленный результат
приводится к типу переменной, которой он присваивается. Как правило,
приведение типов переменных не оказывает влияния на общий резуль
тат. В противном случае с помощью специальных функций перед выпол
нением вычислений преобразуйте все переменные к одному ти пу.
Обработка операций ввода/вывода
Для ввода пользователем текстовой строки исп ользуется функция
Для вывода сообщения предназначена функция MsgBox. Обе
lnputBox.
функuии отображают диалоговое окно с текстовой информацией и кноп
ками. Кроме того, функuия
lnputBox
отображает также поле ввода, кото
рое должно быть заполнено пользователем. Содержимое этого поля и
возвращается функцией. Помимо использования стандартных диалоговых
окон , пользователю предоставлена возможность создать свои собсгвенные.
,,,,
Гnава
4
Для этоrо необходимо вставить модуль UserForm и с помощью панели ин
струментов Формы нарИсовать необходимые элементы управления.
Для обращения к хранящимся на диске файлам используются стан
дартные диалоговые
окна
Windows
функuии,
отображающие
привычные
диалоговые
Открь1тие документа и Сохранение документа, которые по
зволяют выбрать или задать имя необходимого файла. В действительно
сти стандартные диалоговые окна не открывают файл, а просто возвра
щают корректное имя и путь к файлу. Для обращения к лвум стандарт
ным диалоговым окнам используются следующие конструкции:
результат=
Appllcation.GetSaveAsFllename (стр_Имя _Файла, стр_ Фильтр)
результат= Appllcatlon.GeIOpenFllename (стр_Имя _Файла, стр_Фильтр)
Полный синтаксис этих функuий включает еще несколько аргумен
тов ,
однако
функuий.
перечисленных
достаточно
для
успешного
использования
В к;iчестве результата функции возвращают имя и полный
путь к файлу, который необходимо открыть. Параметр стр_Имя_ Файла
содержит
имя
файла,
которое
будет
вставлено
в
диалоговое
окно
Сохранение документа. Пользователь не обязан использовать предпожен
ное по умолчанию имя файла и может его изменить . Параметр стр_Фильтр
содержит маску мя отображения файлов в диалоговом окне. Если не за
дать маску-фильтр, в лиалоrовом окне будут перечислены все файлы.
После определ ения имени фай!ш и пути к нему сле.Zlует с помощью
инструкции
Open подготовить файл к доступу. Синтаксис
Open имя_Файла For Доступ As #номер_Файла
инструкuии:
Параметр имя_Файла, как всегда, соответствует имени файла и пути к
Append. Binary,
lnput, Output или Random. По умолчанию, файл открывается для доступа
в режиме Random. Параметр номер_ Файла задает порядковый номер
файла в диапазоне от 1 до 511. Именно этот номер однозначно определя
ет файл для методов lnput и Write. Синтаксис инструкции Open ropaз.Zlo
нему. Аргумент · определяет режим доступа к файлу:
шире , но в большинстве ситу:ший .:~остаточн о рассмотренных параметров.
Запись данных в открытый файл осуществл яется с помощью процедур
Write и Print. Их синтаксис:
Write #номер_Файла, имя_Переменной, имя_Переменной".
Print #номер_Файла, имя_Переменной, имя_Переменной ...
В качестве аргументов эmм методам передается номер файла и спи
сок переменных, которые следует записать в файл. Между методами су
ществуют значительные отличия
-
Print
генерирует данные,
которые
могут быть впоследствии выведены на экран или принтер. Значения рас
печатываются столбцами и могут быть отформатированы, содержимое
строки переменных может быть выве.Zlено без пробелов. С другой сторо
ны, метод
Write соз.Zlает файлы, которые впоследствии проще считывать
Visual Bask. Все записываемые переменные отделяются оп
из программ
ределенными символами, <tто облегчает их визуальное восприятие и счи
тывание. Каждая выведенная строка заклJQчается в кавычки, между ком
понентами строк.и обычно ставятся запятые.
Исnоnьзованuе
Uisual Basic for Rpplications
Для считывания данных из файла используются ключевые слова lnput
Line lnput. Их синтаксис.
lnput #номер_Файла, имя_Переменной, имя_Переменной."
Line lnput #номер_Файла, строковая_Переменная
lnput считывает данные из файла до тех пор, пока не будут заполнены
все переменные. Line lnput считывает из файла данные в строковую пере
и
менную до тех пор, пока не встретит символ возврата каретки или сим
вол перевода строки. Инструкция
lnput
является дополнением к
Write
и
позволяет считывать данные именно в том формате , в котором те были
записаны. Считывание строк, з<~писанных в файл с помощью Print, по
требует дополнительной их обработки. Например, состоящая из разде
ленных запятыми выражений строка может быть выведена в файл с по
мощью инструкций
Write или Print. Разниuа заключается в том, что выве
Write строка будет помещена в кавычки. В этом слу
чае инструкция lnput будет корректно обрабатывать запятые при считы
вании строки. Поскольку инструкция Print не заключает строку в кавыч
ки, lnput будет рассматривать запятую в ка'1естве разделителя и прекратит
денная инструкцией
считывать строку при обнаружении первой же запятой.
Инструкuия
Line lnput
позволяет считывать данные из файла построч
но. При этом все разделители, кроме символа возврата каретки и симво
ла пер евода строки, игнорируются. В считываемую строку включаются
.
все символы, включая запятые, кавычки и т.д
.....
Примечание
На машинах, работающих nод управлением
MS-DOS
или
Windows,
иден
тификатором новой строки являются последовательно расположенные
символ возврата каретки и перевода строки. На платформах
символ возврата каретки , на машинах
UNIX -
Macil)tosh это
символ перевода строки.
ЗавершИв все манипуляuии с файлом , заt..--ройте
ero
с помошью инст
рукции
Close. Ее синтаксис :
Close #номер_Файла
4' Предупреждение
Если в программе открывается файл, а сама программа ненормальным
образом прерывает выполнение до закрытия файла с помощью инструк
ции
Close, файл останется открытым до завершения сеанса работы с Ex-
cel.
При следующем запуске программы во время повторного открытия
файла возникнет фатальная ошибка. Чтобы закрыть файл, выполните в
окне отладки инструкцию Close. При желании можно создать несложную
процедуру, поместив в нее инструкцию Close без аргументов. Такая про
цедура будет закрывать все открытые файлы .
105
гnава 4
Управление процессом выполнения программы
Очередность выполнения операторов в программе управляется цик
ла."1И, переходами, условиями , а также вызовами функций и процедур.
Циклы реализуются с помощью ключевых слов
Each/Next.
Инструкция
For/Next
For/Next, Do Loop
н
For
используется для выполнения наборов
инструкций заданное количество раз. Ее синтаксис:
For счетчик= нач_значение То кон_значение Step шаг
Инструкции
Next счетчик
For
Все циклы
используют в качестве счетчика переменную, значение
которой увеличивается или уменьшается при каждом выполнении цикла.
В начале цикла счетчику присваивается нач_значение. В цикле счетчик
инкрем енrnруется на шаг до тех пор, пока не будет достигнуто заданное
кон_значение. В следующем примере счетчик 1 изменяется с щагом 2 при
каждом выполнении цикла и , соответственно, принимает значения 2, 4,
6, 8, 10, 12, 14, 16, 1~ и 20.
=
For 1 2 То 20 Step 2
Инструкции
Nextl
Если инкремент счетчика равен единице, задавать его явно необяза
тельно (т.е . инструкцию шаг=
Инструкция
Do/Loop
1
можно опустить) .
используется для выполнения наборов инструк
ций до тех пор, пока не будет выполнено заданное условие. Некоторой
разновидностью этой инструкции является
While/Wend,
которая н аобо
рот, выполняет цикл до тех пор, пока заданное условие ложно. Синтак
сис инструкции
Do/Loop:
Do [Whlle (лоrическое ycnoeиe)IUntll (логическое условие)]
Инструкции
Loop [Whlle (логическое ycnoвиe}IUntll
(логическое условие}]
Только одна из четырех инструкций While и Until может быть исполь
зована для организации цикла. Расположение инструкции While или Until
определяет время проверки логического условия. Если инструкция ста
вится в верхней части цикла, сформулированное условие проверяется пе
ред первой итерацией. Если же инструкция расположена в нижней части
цикла, перед проверкой лоrич~кого условия весь код цикла будет вы
полнен как минимум один раз. Если использована инструкция
While,
цикл будет выполняться до тех пор, пока условие истинно. Действие ин
струкции
Until
ловие ложно.
противоположно
-
цикл выполняется до тех пор, пока ус
Испоnhзованuе
Uisual Basic for Rpplications
Например, следующий цикл продолжает вычисления до тех пор, пока
значение переменной А равно 10. Логично будет предположить, что
внуrри
цикла находятся
какие-то инструкции,
в конечном
счете,
при
сваивающие переменной необходимое значение, поскольку в противном
случае цикл продолжается _вечно.
Do Untll
(А=
10)
Инструкции
Loop
Для организации циклов по массивам объектов или переменных ис
пользуется инструкция
For Each/Next.
Имена всех множественных объек
тов дояжны быть коллекциями, например, Worksheets или TextBoxes.
Коллекция Worksheets содержит все объекть1 Worksheet рабочей книги .
Как правило, для обращения к отдельному рабочему лисrу достаточно
указать его имя в коллекции Worksheets. Для выполнения одинаковых
манипуляций со всеми членами коллекции (или над каждым элементом
массива) организуйте Цикл For Each/Next:
For Each объект ln коллекция
Инструкции
Nехtобъект
Естественно, что тип переменной объект должен соответствовать типу
коллекции
объектов.
массив переменных
В
-
качестве
коллекции
допускается
использовать
следовательно, переменная объект в этом случае
должна быть элементом массива. Поскольку значение переменной объект
изменяется при каждой итерации цикла, вычисления выполняются над
каждым объектом коллекции или элементом массива.
Нельзя обойти вниманием инструкцию lf, которая анализирует логи
ческое условие и принимает решение о выполнении (либо невыполне
нии) фрагмента кода в зависимости от полученного значения . Синтаксис
конструкции
lf:
Jf(ycлoвиe_1)Then
Фрагмент кода
1
Elself (усnовие_2)
Фрагмент кода 2
Else
Фрагмент кода З
End Jf
Глава
10:1
4
В начале выполнения блока lf проверяется первое логическое условие.
Если условие истинно. выполняется Фрагмент кода 1. В противном слу
чае проверяется второе логическое условие. Если условие это истинно,
выполняется Фрагмент кода
2.
Для проверки различных условий в один
блок lf можно включать несколько инструкций Elself, однако, выполнен
будет код только того условия, которое первым примет значение True.
Все остальные фрагменты будут проигнорированы даже в том случае, ес
ли их условия истинны. Если ни одно из сформулированных условий так
и не приняло значения
щий инструкции
Else.
True,
выполняется фрагмент кода, соответствую
Инструкции
Elself
и
Else
не являются обязатель
ными.
Инструкция
Select Case
позволяет поставить в соответствие каждому
возможноцу значению переменной определенный фрагмент кода. Син
таксис этой инструкции:
Select Case выражение
[Case список_Выражений-п
[инструкции-n]] ...
[Case Else
[инструкции_еlsе]]
End Select
Значение переменной выражение сравнивается со списком значений
список сnисок_Выражений. В случае обнаружения соответствия выполня
ется соответствующий фрагмент кода. Если же соответствия не найдено,
выполняется фрагмент кода, следующий за инструкцией
Case Else.
Если
выражение соответствует сразу нескольким значениям из списка, выпол
няется только первый подходящий фрагмент кода. Остальные будуr _ про~
игнорированы.
Вызов других процеду.р
В качестве процедур могут выступать как независимые программы ,
так и логические фрагменты большой структурированной программы .
Если одни и те же инструкщш повторяются в различных частях про
граммы, можно просто скопировать соответствующий код несколько раз
или же преобразовать код в процедуру, которая и заменит его. Структу
рирование кода, соответствующего повторяющимся задачам,
уменьшает
размер программы и упрощает ее отладку. Кроме того, разбиение боль
шой программы на меньшие части позволяет лучше осмыслить задачи,
которые необходимо реализовать.
Для обращения из одной процедуры к другой процедуре типа
Sub
просто наберите ее имя. Если процедуре необходимо передать аргументы,
перечислите их через запятую . Ни в коем случае при вызове процедуры
не берите перечень аргументов в скобки (даже если в заголовке процеду
ры аргументы указаны в скобках).
Исnоnьзованuе
Uisual Baslc for Rppllcations
Для вызова процедуры можно использовать инструкцию
Call,
указав для
этого после инструкции имя процедуры и необходимые аргументы. В этом
случае все__ перечень ергументо~ долж_ен быть указан в скобках
Вызов пользовательских функций ничем не отличается от вызова
встроенных функций. В правой части формулы наберите имя процедуры ,
левую скобку, список аргументов и правую скобку. Результат функции
(процедуры) возвращается через ее имя и может (в свою очередь) ВЫС'I)'
патъ в качестве аргум ента другой проuедуры .
Создание фор~
Пользователю предоставлена возможность создания собственных диа
логовых окон или, как их еще называют, форм. Для создания диалого
вого окна достаточно открыть панель инструментов с названием Формы ,
проиллюстрированную на рис.
4.12.
Имейте в виду, что воспользоваться
созданной формой можно будет только после сохранения ее в формате
шаблон и создания на ее основе нового документа.
Рис.
4.12.
Панель инструментов Формы
Рисование формы
Для создания нового объекта необходимо щелкнуть на одной из кно
пок панели инструментов и нарисовать элемент управлен.ия на форме.
Внешний вид и поведение объекта зависят от его свойств. Все свойства
объекта доступны как в контекстном меню , так и непосредственно из
программ Visual Basic, что позволяет оперативно ИЗf"енять их с помощью
соответствуюших инструкций.
В приведенной ниже таблиuе описаны все кнопки панели инструмен
тов Формы.
Надпись
Позволяет отобразить в форме текст, не подлежащий редактированию , например , сообщение для пользователя
Текстовое
Этот компонент диалоговых окон содержит вводимый и
поле
редакти~уемый пользователем текст
Рамка
Позволяет сгруппировать элементы управления. Перед
группированием следует сначала создать рамку, а затем
внутри нее расположить необходимые объекты
f4Фi
Гnава
Кнопка
4
Создает кнопку, после щелчка на которой будет выпол
няться ооределенная команда
Флажок
Вставляет элемент управления , позволяющий включить
или отключить определенный параметр
Переклю
Вставляет элемент управления , позволяющий задать од
чатель
но из предопредеnенных значений параметра
Список
Вставляет список выбираемых пользователем элементов.
Допускается прокручивание списка, если не все его эле
менты видны одновременно
~
~
Поле со
Вставляет объект, являющийся сочетанием списка и по
списком
ля. Пользователь может либо выбрать нужное значение
из списка, либо ввести его .в поле
Поле со
Вставляет некоторую комбинацию списка и поля со спи
списком
ском. Пользователь может либо выбрать значение из
{еще одно)
списка, либо ввести его самостоятельно в поле
Поле с рас
Вставляет некоторую комбинацию списка и поля со спи
крываю
щимся спи
ском. Пользователь может либо выбрать значение из
списка (предварительно открыв его), либо ввести его са
ском
мостоятельно в поле
Полоса
Вставляет стандартную полосу прокрутки. Этому элемен
прокрутки
ту управления соответствует определенное числовое
значение , изменяющееся в зависимости от положения бе
гунка полосы прокрутки
Счетчик
Вставляет прокручивающий элемент управления, который
используется совместно с другими элементами для уве
личения или уменьшения числовых значений . Допускает
ся его использование для выбора объекта из диапазона
•
.
'
значений или из списка элементов
Свойства
После щелчка на этой кнопке открывается диалоговое ок
элемента
но Формат элемента управnения для выбранного в на
управления
стоящий момент объекта
Текст про
Эта кнопка открывает диалоговое окно с текстом макроса,
граммы
назначенного объекту. Название макроса фигурирует в
OnAction
свойстве
•
Сетка
Кнопка отображает и скрывает сетку на форме
Отобразить
Запускает процедуру
окно
Используется во время отладки форм
Visual Basic, назначенную объекту.
._ Примечание
Свойство
sic,
OnAction содержит текстовую ссылку на имя макроса Visual Ba-
который будет запущен после щелчка на элементе управления .
Испоnьзованuе
Uisual Basic for
Appllcati~ns
Особое внимание следует обратить на панель Элементы управления ,
проиллюстрированную на рис. 4.13. Расположенные · на панел и инстру
ментов кнопки соответствуют элементам ActiveX. Элементы ActiveX ана
логичны элементам управления
Visual Basic,
их точно так же можно до
бавить к форме, созданной с помощью редактора
бавлении элемента
ActiveX
Visual Basic.
При до
на лист создается макрос, который сохраняет
ся непосредственно вместе с элементом управления , а не только запуска
ется при его выборе.
Рис.
4.13. Панель инструментов Элементы управления
Настройка элементов
ActiveX осуществляется
ActiveX обладают
торых их свойств. Элементы
путем изменения неко
множеством различных
макрокоманд или событий, которые могут проявляться, например, в из
менении формы· указателя МЫШИ В ТОТ момент, когда ОН Н3ХОДИТСЯ Над
элементом управления . Элементы ActiveX используются для создания
форм и окон диалога для пользовательских программ Visual Basic. Панель
инструментов
Элементы
управления
содержит
некоторые
элементы
управления , которые отсутствуют на панели инструментов Формы, на
пример, выключатель и рамки объекта. Кроме того, доступны специаль
ные элементы управления , созданные другими приложениями .
Отображение диалогового окна
Необходимо располаrать какими-то средствами для отображения соз
данного диалогового окна из выполняемой
этого предназначен метод Show объекта типа
программы. Именно для
или UserForm. Син
Dialog
таксис:
[объект.]Shоw
Необязательный прототип объект представляет собой объектное вы
ражение .
Если этот элемент синтаксиса опущен,
объектом
является
форма
Userform,
связанная
с
предполагается,
активным
что
модулем
Userform.
Сокрытие диалогового окна
После завершения манипуляций с диалоговым окном от него следует
каким-то образом избавиться, поскольку в противном случае программа
не сможет продолжить работу. Тут на помощь придет метод
Hide,
кото
рый , как правило, назначается кнопке ОК диалогового окна. Его синтак
сис:
[объект.]Нidе
t4~tJ
глава
4
Прототип объект представляет собой объектное выражение. Если этот
элемент синтаксиса опущен , предполагается, что объектом является об
ладающая фокусом форма UserForm.
Назначение процедур элементам управления
диалоrоаоrо окна
Чтобы заставить диалоговое окно выполнять какие-то действия, его
элементам управления следует назначить процедуры. Каждый элемент
управления обладает свойством OnAction, которое содержит имя проце
дуры , выполняемой при обращении к элементу . Действие-условие вы
полнения процедуры заnисит от типа элемента управления. Для кнопки
таким действием считается щел•юк, для поля
-
изменение содержимого.
Если необходимо задать значение свойства OnAction, выделите эле
мент управления (при этом желательно удерживать клавишу <Ctrl>),
щел кните правой кнопкой, выполните и з контекстного меню команду
Назначить макрос и выберите из предllоженн оrо списка необходимую
процедуру. Аналогичная процедура позволяет изменить свойство
Visual Basic. Например,
код назначает объекту myControl проuедуру MySub:
myControl.OпAction ="MySub"
tion.
Свойство доступно из программ
....
OnAc-
следующий
Пр_~мечание
Имя процедуры, назначаемой элементу управления , обычно составляют
из названия объекта и названия действия, после которого выполняется
процедура . Например, Buttoп1_Click является именем процедуры, кото
рая запускается после щелчка на ~ноnке
Button1 .
Создание функций
В заголовке процедуры в обязательном порядке фигурирует инструк
ция
Sub
или
Function.
Если процедура типа
Sub просто выполняет пред
Function еще и возвращает ре
процедура Function в состоянии вы
писанные ей действия, то процедура типа
зультат. Однако это не значит, что
полнять только те действия, которые необходимы для вычисления ре
зультата.
Простейшие
(и
наибо:Iее
распространенные)
проuедуры
функuии возвращают единственное значение . Тем не менее, в случае не
обходимости можно
создать
проuедуры,
которые
значений и обрабатываются при этом приложением
возвращают массив
Excel
как стандарт
ные интегрированные функции.
Создание функции-макроса
Пользовательские проuедуры-функции имеет смысл создавать только
в том случае, когда поставл енную задачу н евозможно решить с помощью
Испол1.зованuе
Uisual Basic for Rpplications
стандартных функций
Excel
или их комбинации. В главе
2
для расчета
внутренней плотности носителей заряда необходимо было узнать энер
гию перехода для кремния. В приложении
Excel
функция для вычисле
ния энергии перехода отсутствует, но ее полезность для занимающихся
физикой твердого тела научных сотрудников очевидна. Во второй главе
исходными данными для вычисления являлся один столбец, результаты
же записывались в другой столбеu.
.
В соответствии с формулами из последней главы энергия перехода
кремния является несложной функцией от температуры. Создадим функ
цию-макрос, которая для переданной в качестве аргумента температуры
возвращает вычисленное значение температуры. Чтобы результат воз
вращался в электрон-вольтах, а не в Джоулях, в формуле следует опус
тить компонент
1.
q.
Перейдите в редактор
Visual Basic
.
и с помощью команды Вставка
>-
Модуль вставьте новый модуль
2.
В окне модуля наберите следующий код:
'Функция для вычисления энергии перехода
'
Function EnergyGap(T As DouЬle) As DouЫe
Const EgO 1. 17
Const Eg1 0.000473
Const Eg2 = 636
EnergyGap = EgO - (Eg1 * Т л 2) / (Т + Eg2)
End Functioп
=
=
Вот и все. Теперь функция с названием EnergyGap бУ,дет доступна не
посредственно на рабочих листах. Собственно процедура начинается с
трех строк описательных комментариев. За ними следует заголовок про
цедуры, свидетельствующий о принадлежности ее к типу функций. Заго
ловок также определяет имя функции, имя и тип ее единственного аргу
мента и тип данных. Затем следуют три инструкции Const, которь1е оп
ределпют три фигурирующие в формуле константы, и собственно мате
матическое вь1ражение для вычисления результата формулы. В левой час
ти выражения должно быть указано имя функции, с помощью которого
результат вычислений будет передан в рабочий лист. Наконец, в послед
ней строке расположена завершающая инструкция.
Чтобы воспользоваться функцией на рабочем листе, достаточно на
брать ее имя и перечислить необходимь1е арrументь1 в скобках. Напри
мер, если ячейка АЗ содержит значение температуры, то следУЮщая фор
мула, набранная в некоторой иной ячейке, вернет значение энергии пе
рехода в электрон-вольтах:
=EnergyGap(AЗ)
Если функция принадлежит другой рабочей книге, перед ее именем
следует указать все ссылки на соответствующие контейнеры. Например:
=ch4.xls!EnergyGap(AЗ)
tnaвa
4
~ Проще всего вставить функцию в формулу с помощью мастера
~ Вставка функции . Поместите курсор в ячейку с формулой и
щелкн ите на кнопке Вставка функции , которая расположена на стандарт
ной панели инструментов. В открывш емся дИалоговом окне (рис .
4.14)
выберите в категории пользовательских функций название необходимой
процедуры .
Рис.
4.14. Первое диалоговое окно мастера
Вставка функции
После щелчка на кнопке ОК ссылка на функцию будет вставлена в
формулу , а вам будет пре.rоrожено определить конкретные аргументы
функции (см. рис.
Рис.
4.15.
4.15).
Первое диалоговое окно мастера Вставка функции
Соэдание функций, возвращающих массивы значений
Уже шла речь о том, что функции могут возвращать и массивы значе
ний . Несл ожная функция, код которой представлен ниже , в зависимости
от значения передан ного аргумента вычисляет массив nеременных.
Испоnьзованuе
'
'
.
Функция
Uisual Basic for Appllcations
Array
Пример функции, возвращающей массив
Function ArrayTest(n As lnteger) As Variant
Dim А(2, 3) As lnteger
А(О, О)= n
А(1 , О)= n + 1
А(О, 1) n + 2
А(1, 1) n + 3
А(О, 2) = n + 4
А(1, 2) = n + 5
ArrayTest =А
End Function
=
=
Как и раньше, функция начинается с описательных комментариев и
заголовка. Обратите внимание, что возвращаемый функцией тип данных
определен как
Variant -
только в этом случае функция сможет возвра
тить массив . Затем идет определение массива и вычисление его значе
ний.
Вычисленный массив присваивается имени
функции.
В
конце
функции расположен завершающий идентификатор .
Чтобы воспользоваться функцией на рабочем листе, выделите область
размером три ячейки на две ячейки , наберите в строке формулы имя
функции с необходимыми аргументами и нажмите комбинаrщю клавиш
<Ctrl+Shift+Enter> (<Cmd+Shift+Enter>
на IUiатформ ах
Macintosh).
Функция
заполнит выделенные ячейки вычисленными значениями. Наприм ер, ес
ли выбрать ячейки
D2:F3
и выполнить функцию
=ArrayTest(5)
будет получен следующий результат:
~
Создание программ на
VisuaJ Basic
Visual Basic
позволяет создавать не . только простые вычислительные
процедуры , но и функцирнально полные проrраммы , с помощью кото
рых можно обрабатывать ввод с клавиатуры и критические ситуации, вы
водить сообщения о ошибках, выполнять сложные вычисления и т.д. В
качестве наглядного примера давайте рассмотрим программу, которая
преобразует рабочие листы в другой формат.
f4ФJ
Гnава 4
Программа для преобразования рабочих листов
в FORTRAN
Excel
Процесс преобразования большого рабочего листа в формат другого
приложения достаточно уrомителен и плителен. Кроме тоrо , вероятность
возникновения ошибки во время преобразования достаточно высока.
Предположим, что возникла необходимость преобразовать рабочий лист
с
тысячами
FORTRAN.
заполненных
ячеек
в
скомпил ированную
программу
Вместо тоrо чтобы выполнять эту неблагодарную работу
вручную, напишите программу
ходимые действия за вас.
Visual Basic,
которая выполнит
nce
необ
Приведенные в этом разделе процедуры не
полностью конвертируют рабочий лист в FORTRAN, но результат _преоб
разования можно считать более чем удовлетворительным.
Программа создает и открывает текстовый файл, после ч~rо отобра
жает диалоговое окно, предл агающее пользователю выбрать ячейки для
преобразования. После выбора ячеек макрос построчно сканирует выде
ленную область, пытаясь определить ячейки с числовыми значениями ,
формулами или текстом.
·
Если ячейка содержит текст, макрос преобразует его в комментарий
FORTRAN .
Если ячейка содержит значение 1ши формулу, макрос сгене
рирует соответствующие инструкции
FORTRAN,
формируя для этоrо
текстовую строку, состоящую из шести пробелов , ссылки на ячейку и
собственно формулы или значен ия. Затем следующее выражение анали
зируется на предмет поиска стрелки вверх (оператора возведения в сте
пень) , которую следует преобразовать в соответствуюшую инструкцию
FORTRAN .
Сформированная таким образом текстовая строка .записыва
ется в файл .
Следует сразу же обратить ваше внимание на тот факт, что программа
не проверяет корректность определения значений перед их использова
нием. Однако. поскольку большая часТh рабочих листов составляется
сверху вниз и слева направо, обычно проблем не возникает. После за
вершения преобразования следует в обязательном порядке проверить по
лученные результаты и убедиться в том , что все массивы и переменные
объявлены .корректно.
Создание диалогового окна и элементов управления
Диалоговое окно, которое необходимо нарисовать, показано на рис.
1.
4.16.
Щелкните правой кнопкой на ярлычке одного из рабочих листов и
выберите из контекстного меню команду Добавить.
2.
В появившемся диалоговом окне Вставка перейдите на
Общие и дважды щелкните на пиктограмме Окно диалога
(рис .
3.
вкладку
Excel 5.0
4.17).
В резул ьтате в рабочую книгу будет встаВлен новый лист Диалог1 . Пе
реименуйте его в Конв_диалог. На листе уже расп оложен а заготовка
для диалогового окна, которое предстоит создать .
Испоnьзованuе
Uisual Basic for Applications
Рис.
4.16. Диалоговое окно программы
Excel в формат FORTRAN
Рис.
4.
4.17.
преобразования рабочих листов
Вставка диалогового модуля
Выделите надпись Заголовок окна диалога в заготовке
и
наберите
текст Выберите диапазон ячеек .
5.
Используя рис.
4.16
в качестве образца, нарисуйте с помощью инст
румента Надпись в верхней части диалогового окна область мя
текстовой
строки .
Выделите
содержимое
области
и
наберите
Задайте диапазон ячеек для преобразования .
6. ~Активизируйте инструмент Текстовое поле и нарисуйте область
~редактирования.
f4ФI
7.
Гnава
4
Не снимая выделения с области редактирования, наберите в поле
имени текст
SelectionBox
и нажмите клавишу
<Enter>. Если клавишу
не нажать, имя элемента управления не изменится
.
Создаваемая программа будет в состоянии обрабатывать стандартные
инструкции присвоения , а также инструкции присвоения одномерным и
двумерным массивам. Поэтому следует вставить в диалоговое окно соот
ветствующий переключатель.
Активизируйте инструмент Рамка и нарисуйте в нижней части
8.
диалогового окна рамку для переключателей. Выделите заголо
вок рамки и наберите Обработать как.
Активизируйте инструмент Переключатель и нарисуйте в рамке
9.
три переключателя. Измените их заголовки на Выражение"
массив и
2D-
1О-массив.
10. Измените
названия переключателей соответственно на Выражение,
Как2D, Как1D.
l l. l~J Выберите кнопку ОК и измените ее название на OKBtn. Не
::!~~Н снимая выделения,
щелкните на кнопке Свойства панели
инструментов Формы . На вкладке Элемент управления появившегося
диалогового окна формат элемента управления в разделе параметров
Функция кнопки опустите флажок не определена.
12. Расположите элементы управления так,
13. Щелкните правой кнопкой на сером {с
как это показано на рис. 4.16.
точками сетки) фоне диалого
вого окна. Выполните из контекстного меню команду Последователь
ность перехода
-
в результате должно появиться дИалоrовое окно с
таким же названием {рис.
4.18). С помощью клавиш управления кур
SelectionBox на самую верхнюю позицию
сором переместите элемент
списка.
Рис.
4.18. Диалоговое окно
Последовательность перехода
Список диалогового окна определяет последовательность передачи фо
куса между Элементами уnравления при нажатии клавиши <ТаЬ> . Чтобы
содержимое областИ редактирования автоматически выделялось при каж
дом обрашении к диалоговому окну, элемент уnравления SelectionBox
должен быть расположен на первой позиции списка. Итак, создание соб
ственно диалогового окна полностью завершено.
Испоnьзованuе
Uisual Basic for Applications
Создание процедур для элементов управления
Теперь осталось создать проuедуры и назначить их элементам управлен ия пиалоrовоrо окна.
1.
Перейдите в редактор
•
Visual Basic
и вставьте новый модуль (команда
Вставка,.. Модуль).
2.
В окне модуля (скорее всего, что это будет Модуль1) наберите сле
дующий код, соответствующий общему заголовку и главной процедуре:
Option Explicit
'Требование на явное описание всех переменных.
PuЫic fCancelNotPushed As Boolean
' Проверка состояния кнопки
' Отмена.
Sub Excel2For()
' Начало программы.
Dim strfilter As String
Dim strFileName As String
Dim answer As Variant
'Фильтр для файлов с исходным кодом Fortran и имя файла по умолчанию.
strFilter = "Fortran Source (".FOR),*.FOR"
strFileName = "prog.for"
'Вывод диалогового окна SaveAs.
answer =Application.GetSaveAsFilename(strFileName, strFilter)
lf answer = False Then Exit Sub
' Пользователь щелкнул на кнопке
' Отмена, выйти из программы.
'Удал ение из имени файла пробелов и его открытие.
strFileName = Trim(answer)
Open strFileName For Output As #1
fCancelNotPushed = True
'Отображать диалоговое окно до тех пор, пока
'пользователь не щелкнет на кнопке Отмена.
=Тгuе
Sheets("Koнв_диaлor'').Show
Do While fCancelNotPushed
Loop
'Закрыть файл и выйти из nроrраммы .
Close#1
End Sub
В заголовке с помощью инструкции
Option Explicit
накладывается ус
ловие явного описания всех переменных модуля. В результате использо
вания инструкции PuЫic флаговая переменная
fCancelNotPushed
объявля
ется глобальной.
Процедура Excel2For является основным модулем программы. В ней
стандартный метод GetSaveAsFilename используется для составления
Имени текстового файла, в который будет записан код. Перед обращени
ем к методу необходимо задать фильтр для файлов и предлагаемое по
умолчанию имя файла. В данном случае филъТр состоит из двух частей,
разделенных запятой. Первая часть соответствует тексту, который буD:еТ
выведен в строке Тип файлов диалогового окна Save As. Вторая часть со-
141~•
Гnава
4
ответствует собственно фильтру (или маске), который будет использован
при отображении имен файлов. Пользователям
DOS
должны быть зна
комы основные концепции составления масок.
StrFilter = "Fortran Source (•.FOR},*.FOR"
Если пользователь щелкает на кнопке Отмена, диалоговое оюю со
хранения файла возвращает в программу значение
False. Для
lf. Если
возвращенного значения предназначена конструкция
проверки
пользова
тель не задал имя файла, программа завершает свою работу. В противном
случае из имени файла удаляются пробелы, а затем создается соответст
вующий текстовый файл.
Открытому файлу назначается идентификатор
Pushed
присваивается значение
тором с помощью метода
Show
True,
# 1,
флагу
fCancelNot-
после чего организуется цикл, в ко
отображается диалоговое окно. Цикл бу
fCancelNotPushed не будет
Close закрывает файл и на
дет продолжаться до тех пор, пока флагу
при
своено значение
этом
False.
Инструкция
программа завершает работу.
3.
Наберите в окне модуля следующую процедуру:
' Процедуры типа Sub
'
'CancelBtn_Click()
'
Sub CancelBtn_Click()
' Как топько пользователь
щелкнет на кнопке Отмена,
'флаrу будет присвоено значение
False,
' после чего диалоговое окно будет закрыто.
fCancelNotPressed False
Shееts(''Конв_диалоr"). Hide
End Sub
Процедуру CancelBtn_Click() следует назначить
=
кнопке Отмена диа
логового окна. После щелчка на кнопке процедура опустит флаг и спря
чет диалоговое окно.
4. Наберите в окне
'OKBtn_Click Масго
модуля следующую процедуру:
' Эта процедура преобразует содержимое выделенных ячеек
' в соответствующие инструкции FORTRAN.
'
Sub OkBtn_Click( )
Dim rngSelArea As Range
Dim intConvType As lnteger
Dim strAddress As String
Dim strCellAddress As String
Dim mgCell As Range
Dim strFormula As String
Исnоnьзованuе
Uisual Basic f or. Пpplications
Dim strFormula2 As String
Dim intRows As lnteger
Dim intCols As lnteger
Dim intl As lnteger
Dim intJ As lnteger
Dim intCeHType As lnteger
Dim strNote As String
Dim strName As String
Const AsStatements =1
' Режим преобразования
Const As2DArray =2
Const As1 DArray = 3
' Тип содержимого ячеек
Const AFormula = 1
Const АValue = 2
Const Alabel = 3
' Взвести флаг fCancelNotPushed
fCancelNotPushed True
' Скрыть диалоговое окно.
=
Shееts("Конв_диалог").Нidе
' Выделить диапазон ячеек, указанный в диалоговом окне.
ActiveSheet. Range( Sheets("Koнв_диалог"). EditВoxes("SelectionBox") .Text). Select
' Сохранить выделение как объект Range. •
Set rngSelArea =Selection
' Определить режим преобразования по состоянию переключателей
'в диалоговом окне.
=
=
lf Shееts("Конв_диалог"). OptionButtons("Bыpaжeниe"). Value 1 Then
intConvType =AsStatements
Elself Sheets("Koнв_диaлoг").OptionButtons("Kaк2D").Value 1 Тhеп
intConvType As2DArray
Else
intConvType =As1 DArray ·
End lf
' Преобразовать адрес верхней левой ячейки
' выделенного диапазона в строку.
strAddress =rngSelArea.Cells(1, 1).Address(False, False)
' Определить количество строк и столбцов в выделенном диапазоне.
intRows = rngSelArea.Rows.Count
1ntCols mgSelArea.Columns.Count
' Цикл по всем ячейкам выделенного диапазона.
For intl = 1 То intRows ,
For intJ = 1 То intCols
' Передать фокус очередной ячейке.
Set rngCell = rngSelArea.Cells(intl, intJ)
' Преобразовать формулу ячейки в строку.
strFormula rngCell.Formula
=
=
=
'Преобразовать едрес ячейки в строку и в том случае, если
'выбран переключатель Выражение, изменить
Гnава
4
'ссылку на выделенный диалазон адресом ячейки.
strCellAddress =mgCell.Address(False. False)
lf intConvType 1 Then
strAddress = strCellAddress
End lf
' Определить тмп содержимого ячейки
lf mgCefl.Hasformufa Then
intCellТype Aformula
Elself Application.lsNumber(mgCell.Value) Then
intCeПType = AValue
Else
=
=
intCellТype
=ALaЬef
End lf
' Преобразовать примечание. сооmетствующее ячейке,
' в комментарий.
strNote = mgCell. NoteText
lf strNote <> "'' Then
Print #1, "с " + strAddress + ": Примечание:" + strNote
End ff
• Преобразовать содержимое ячейки в выражения Fortran.
lf intCellType Aformula Then
' Содержимое является формулой, преобразовать его в выражения
Select Case intConvType
Case AsStatements
strformuta
+ strAddress + strformula
strFormula2
Case As2DArray
strFormuta ="
"+ strAddress + "(" + Str(intl) + "," + Str(inU)+ ")" +
strformula
' В том сnучае, есnи в формуле фигурирует явная ссылка на
' ячейку, обработать формулу сооmетспsующим образом.
strformula2 =" "+ strCellAddress + "=" + strAddress + "(" + Str(intl) + ","
+ Str(inU) + ")"
Case As1DArray
strFormula ="
"+ strAddress + "(" + Str(intl + (inU - 1) * intRows) + ")" +
strFormula
strformula2 ="
"+ strCellAddress + ''=" + strAddress + "(" + Str(intl+
(inU -1) * intRows) + ")"
End Select
Elself intCellТype =AValue Тhen
' Еспи содержимое ячейки является значением,
' преобразовать его а выражение
Select Case intConvType
Case AsStataments
strFormula =" "+ strAddress + ''=" + strFormula
strFormula2 ='"'
=
=" "
='"'
Испоnьэованuе
Uisual Basic for Rpplications
Case As2DArray
strFormula::: 11
"+ strAddress + ''(" + Str(iпtl) + "," + Str(iпU) + ")=11 +
strFormula
strFormula2 11
"+ strCellAddress + "=" + strAddress + "(" + Str(intl) + ","
+ Str(inU) + ")"
Case As 1DArray
strFormula:::" '' + strAddress + "(" + Str(intl + (inU ~ 1) * iпtRows) + '')=" +
strFormula
strFormula2 =" "+ strCellAddress + ":::" -+JstrAddress + "(" + Str(intl + (inU
- 1) * iпtRows) + '')"
End Select
Else' Метка
strFormula::: "с "+ strCel!Address + ": "+ strFormula
Endlf
' Преобразовать в синтаксис Fortran.
lf intCellType ::: AFormula Then
strFormula::: Application.SuЬstitute(strFormula, "л", ·-·)
' Заменить л на **
End lf
• Вывод результатов.
Print #1, strFormula
lf strFormula2 <> "" Тhеп Print #1, strFormula2
' Если ячейка является поименованной, создать еще одну
' формулу с перекрестными ссылками.
' В обязательном порядке необходимо проверять возникновение
' ошибки в случае обработки неименованной ячейки.
Оп Error Resume Next
strName = rпgCell.Name.Name
lf Err О Тhеп
Priпt #1, "
" + strName + " = " + strCellAddress
End lf
'lf lsNull(mgCell.Name!Name) Тhеп
' Print #1, "
" + mgCell.Name.Name + "=" + strAddress
'Епd lf
' Этот фрагмент кода следует закомментироаать.
=
=
NextiпU
*·-·--·
Next intl
Print #1, "с ......." .........
Епd Sub
Процедура OKBtn_Click назначается кнопке ОК диалогового окна.
Именно эта процедура выполняет преобразование содержимого ячеек ра
бочего листа в соответствуЮщие инструкции FORTRAN.
Для наглядности после каждого абзаца с описанием фрагмента проце
дуры приводится соответствующий блок кода. Первый фрагмент соответ-
ствует заголовку процедуры и объявлению переменных и констант. ·
·
,,,,
Гnава
4
..... Пр!tмечание
Присвоение константам описательных имен считается правилом хороше
го тона. В резуr~~;.тате "'iит~~ельнос:т:~:: КС?д.с:~ значи.-г_е.~~~() повыwа.~:т:С:~·--
.!
'OKBtn_Click Macro
'
Эта процедура преобразует содержимое выделенных ячеек
' в соответствующие инструкции
FORTRAN.
'
Sub OkBtn_Click()
Dim rngSelArea As Range
Dim intConvType As lnteger
Dim strAddress As String
Dim strCellAddress As String
Dim rngCell As Range
Dim strFormula As String
Dim strFormula2 As String
Dim intRows As lnteger
Dim intCols As lnteger
Dim intl As lnteger
Dim intJ As lnteger
Dim intCellType As lnteger
Dim strNote As String
Dim strName As String
Const AsStatements = 1
Const As2DArray = 2
Const As1 DArray З
Const AFormula = 1
Const AValue =2
Const Alabel З
'Режим преобразования
=
' тип
содержимого ячеек
=
В 'следующем фрагменте кода диалоговое окно скрывается, после чего
определяется состояние его элементов управления. Затем указанные в
диалоговом окне ячейки преобразуются в объект Range. Блок lf позволя
ет определить активизированный переключател ь группы Обработать как.
Переменной intConvType присваивается соответствующе типу режиму
преобразования значение.
' Взвести флаг fCancelNotPushed
fCancelNotPushed True
' Скрыть диалоговое окно.
=
Sheets("Koнв_диалог").Нidе
' Выделить диапазон ячеек, указанный в диалоговом окне.
ActiveSheet. Range( Sheets("Koнв_диaлoг").EditBoxes("SelectionBox"). Text).Select
' Сохранить выделение как объект Range.
Set rngSetArea = Selection
Испоnьзованuе
Uisual Basic for Rpplications
' Определить режим преобразования по состоянию переключателей
' в диалоговом окне.
lf Sheets("Koнв_диaлor'').OptionButtons("Bыpaжeниe'').Value = 1 Then
intConvType =AsStatements
Elself Sheets("Koнв_диaлor'').OptionButtons("Kaк2D").Value 1 Then
intCoпvType As2DArray
Else
intConvType =As1DArray
End lf
=
=
В следующем фрагменте определяется адрес выделенного диапазона и
его размер в строках и столбцах.
' Преобразовать адрес верхней левой ячейки
' выделенного диапазона в строку.
strAddress = rngSelArea.Cells(1, 1).Address(False, False)
' Определить количество строк и столбцов в выделенном диапазоне.
intRows =mgSelArea.Rows.Count
intCols rngSelArea.Columns.Count
=
Затем для перебора всех ячеек выделенного диапазона организуется
два цикла. В цикле каждой ячейке передается фокус и определяется ее
адрес . Адрес ячейки используется для преобразования ее содержимого
(если это формула) в соответствующие выражения
Fortra11. Если выбран
переключатель В~1ражение , ссылка на весь выделенный диапазон заменя
ется адресом конкретной ячейки .
intl = 1 То intRows
For intJ 1 То intCols
' Передать фокус очередной ячейке.
Set mgCell = mgSelAreв. Cells(intl. intJ)
Fог
=
'Преобразовать формулу ячейки в строку.
strFormula =rngCell.Formula
• Преобразовать адрес ячейки в строку и в том случае, если
' выбран переключатель Выражение, изменить
' ссылку на выделенныИ диапазон адресом ячейки.
strCellAddress mgCell.Address(False, False)
lf intConvType = 1 Then
strAddress strCellAddress
End lf
=
=
Код приведенного ниже листинга определяет тип содержимого ячей
ки. Метод HasFormula возврашает значение True в том случае, если ячей
ка содержит формулу, метод
lsNumber -
если ячейка содержит числовое
значение. Обратите внимание на необходимость использования объекта
Application
с целью определения содержимого ячейки как формулы. Если
содержимое ячейки не удалось определить как числовое значение нли
формулу, он о считается меткой.
Гnава
4
FORTRAN
и
' Определить тип содержимого ячейКJ11
lf mgCell.HasFormula Then
intCellType AFormu!a
Elself Apptication.tsNumber(rngCet!.Vatue) Then
intCetlType = AValue
Etse
intCeJtType ALabet
End lf
=
=
Примечания ячеек преобразовываются в комментарии
записываются в текстовый файл. В соответствии с форматом вывода в
первой позиции строки помещается символ с {превращающий строку в
комментарий), затем следует текст: Примечание: и сам текст примечания .
' Преобразовать примечание. соответствующее ячейке,
' в комментарий.
strNote = rngCell.NoteText
lf strNote <> "" Then
Print #1 , "с " + strAddress + ": Примечание:'' + strNote
End lf
Собственно преобразование выражений выполняет следующий фраг
мент кода. Если ячейка сопержит фсрмулу, для преобразования ее в вы
ражение
FORTRAN
своения
(=)
остается только расnоложить слева от символа при
имя переменной . В зависимости от режима преобразования
выражений будут выполняться соответствующие инструкпии блока
Select
Case. Если преобразование выполняется "по выражениям", в качестве
имени п еременной испол ьзуется ссылка на ячейку. Если же преобразо
вание выполня ется в одно- или двумерный массив,
в качестве им ени
массива используется адрес верхней левой ячейки диапазона, а в качест
ве индексов используются текущие значения переменных lntl и lntJ. Кро
ме тоrо,
поскольку в формуле может фигурировать явная
ссылка на
ячейку (а не как на элемент массива), формируется перекрестная ссы лка,
которая заменяет конкреrnый адрес ячейIЩ на соответствующи й элемент
массива.
' Преобразовать содержимое ячейки в выражения Fortran.
lf intCellType
=AFormula Then
' Содержимое явnяется формулой, преобразовать его в выражения
Select Case intConvType
Case AsStatements
'' + strAddress + strFormula
strFormula = "
strFormula2
Case As2DArray
strFormula ="
"+ strAddress + "(" + Str(intl) + ''." + Str(intJ)+ ")" +
strFormula
='"'
' В том случае, если в формуле фигурирует явная ссылка на
' ячейку, обработать формупу соответствующим образом .
strFormula2
"+ strCellAddress + ''=" + strAddress + "(" + Str(intl) + '',"
='
Исnоnьзованuе
Uisual Basic for Applications
+ Str(intJ) + ")"
Case As1 DArray
strFormula ="
" + strAddress + "(" + Str(intl + (intJ - 1) * intRows) + '')'' +
strFormula
strFormula2 ="
"+ strCel!Address + "=" + strAddress + "(" + Str(intl+
(intJ - 1) * intRows) + ")"
End Select
Если же ячейка содержит значение, при выводе в текстовый файл его
необходимо предварить именем переменной и знаком равенства. Опять
же, в зависимости от режима преобразования, выполняются соответст
вующие инструкции блока
Elself intCellType
' Если
Select Case.
AValue Then
=
содержимое ячейки явnяется значением,
' преобразовать его в выражение
Select Case intConvType
Case AsStatements
strformula = "
" + strAddress + "=" + strFormula
strFormula2 ="''
Case As2DArray
strFcrmula ="
"+ strAddress + "(" + Str(intl) + "," + Str(intJ) + ")='' +
strFormula
strFormU:a2 =" " + strCellAddress + "=" + strAddress + ''(" + Str(intl) +
"," + Str(intJ) + ")"
Case As1 DArгay
strFormula =" "+ strAddress + "(" + Str(intl + (intJ - 1) * intRows) + ")="
+ strFormula
strformula2 = " " + strCellAddress + "=" + strAddress + "(" + Str(intl +
(intJ - 1) * intRows) + ")"
End Select
И, наконец, носледНЯЯ возможная ситуация, когда содержимое ячей
ки является меткой. Путем добаRJJения в первую позицию строки симво
ла с, вывода адреса ячейки и его содержимого метка преобразуется в
комментарий
FORTRAN.
Else' Метка
strformula ="с " + strCellAddress + ": " + strFormula
End lf
Синтаксис операторов возведения в степень FORTRAN
и
Visual Bask
не совпадает, поэтому обнаруженный в формуле символ л должен быть
заменен на символы'"'. Все оснuтьные (необходимые с вашей точки зре
ния) преобразования синтаксиса должны выполняться здесь же.
' Преобразовать в синтаксис Fortran.
lf intCellType =AFormula Then
strFormula = Application.Substitute(strFormula, """, "**")
' Заменить л на **
End lf
141:1
Гnава
4
Составленное выражение FORTRAN, которое включает формулу и
перекрестную ссылку на имя я•1ейки, необходимо вывести в текстовый
файл .
' Вывод результатов.
Print # 1, strFormula
lf strFormula2 <> "" Then Print # 1, strFormula2
Если ячейка является именованной , ее имя может фигурировать в
формуле и поэтому должно быть указано в перекрестной
ячейку.
ссыл ке
на
К сожалению, определить, является ли ячейка именованной,
можно только эксперименпu~ьны м путем. Для этого с помощью инст
рукuии
On Error необходимо активизировать подпро грамму обработки
ошибок. Данная инструкuия определяет возможность продолжения вы
полне ния программы в случае возникновения ошибки. В нашем случае
возникновение ошибки выполнения приводит к передаче управления на
инструкцию, непосредственно с,1еду ющу ю за инструкцией, при выпол
нении которой возникла ошибка. Ес.'1 н ин струкuию
On Error опустить,
при попытке обработки любой неименованной ячейки будет воз никать
ошибка НЫJ10.1 НСJ-tИЯ .
-~ Прим~ч~~-~е
Инструкция Оп Егrог позволяет обойти некоторые недостатки языка
Basic
Visual .
путем продолжения выполнения программы после возникновения
фатальной ошибки . Та ким образом , программисту предоставляется воз- ·
, можность создания процедур-обработчиков ошибок.
В данном случае после активизации обработчика ошибок предпринима
ется попытка сформировать из ссылки на диапазон имя ячейки . Конструк
ция Name.Name является необходимой, поскольку первая инструкция
Name извлекает объект ти па Name. а вторая извлекает из этого объекта
текстовую строку. Если ячейка не обладает именем , возникает ошибка и
обработчик заставляет программу выполнять инструкции после выраже
ния Егr
= О. В случае возникновения ошибки функция
Егг воз вращает ее
код. Отсутствию ошибки соответствует возвращенное нулевое значен ие .
Если ошибки_ не произошл о, следовательно, ячейка обладает именем и
преобр~зо~а..t:t.~е между и_r.-~ене_м и адресом ячей~-~ -8.-~~~.!?.-~Н_С?:.
'Если ячейка является поименованной. создать еще одну
' формулу с перекрестными ссылками.
'
В обязательном порядке необходимо проверять возникновение
·ошибки в случае обработки неименованной ячейки.
On Error Resume Next
stгName = mgCell.Name.Name
lf Егг = О Then
Print #1, "
" + strName + "
Епd lf
="+ strCellAddress
Исnользованuе
Uisual Basic for Rpplications
Посл едний фрагмент кода содержит завершающие ин струкции орга
низованных
выше циклов,
а также инструкuию
вывода
комментария в
конuе каждого раздела.
' Этот фрагмент кода следует закомментировать .
Next intJ
Next intl
Print #1,
''с
******•*********************''
End Sub
5. Н аберите
в окне модуля следующую п роцедуру:
' Процедура Close_File для закрытия
' в проце ссе отладки программы .
.
файлов на диске
Sub Close_File( )
Close
End Sub
Посл едняя п роцедура окажется полезной при отладке. Если процеду
ра по каким -то прич ин ам завершает сво ю работу не нор мальн ым спосо
бом. rзсе файлы остаются открытыми . П ри попытке повторного открытия
файла воз никает фатальная ошибка. После выполнения приведенной ко
ротк ой проuедуры все открытые файл ы будут закры ты . В сегда запус кайте
эту процедуру после того , как процедура
Excel2For
завершает сво ю рабо
ту ненормальным образом .
Теп ерь остал ось
назн ачить проuедуры
двум
клав иш ам
диалогового
окна.
6.
Перейдите на рабочliй лист Конв_диалог и щелкните н а кнопке ОК
правой кнопкой мыш и.
Выполн ите из контекстного меню команду
Назначить ма крос. В списке выберите макрос
?.
OKBtn_Click
и щелкните
на кнопке ОК .
Аналогичную проuедуру продел айте с кнопкой Отмена. н азн ачив ей
макр ос
CancelBtn_Click.
Программа уже создан а. Откройте любой рабочий лист и примените к
нему пр ограмму. Если вы не сделали ошибок при наборе кода , програм
ма должна работать. Если же программа не работает должным образом,
ее придегся отлажи вать , о чем и пойдет речь в следующем разделе.
Для наглядности применим программу к рабочему л и сту
Bandpass Circuit, созданн ому в главе 3.
1. Откройте создан ны й в главе 3 рабочий
(это рабочий лист Рис.
3.21
лист Delyiaпnis
Delyiannis
Bandpass Circuit
в рабочей книге chOЗrus.xls на отдельно
распространяемой дискете).
2.
Перейдите к рабочему листу Конв_диалоr и скопируйте его в книгу
ch04rus.xls.
Для этого выполните команду Правка ~ Переместить/ско
пировать лист.
В поя вившемся диалоговом окне (ри с.
4.19)
укажите
кн игу, в которую следует скопировать текущий лист. Кроме того, не
забудьте установить флажок Создавать копию .
Гnава
_ Рис. 4.19. Диалоговое окно
3.
4
Переместить или скопировать
Затем перейдите в редактор
Visual Basic
и в окне проекта перетащите
соответствующий созданным процедурам модуль (Модуль 1) в рабочую
книгу
4.
ch04rus.xls.
Теперь вновь откройте рабочий лист Рис. З . 21, выполните команду
Сервис>- Макрос>- Макросы, выберите в диалоговом окне программу
Exce12For
5:
и щелкните на кнопке Выполнить.
В появившемся диалоговом окне Сохранение документа согласитесь с
предложенным по умолчанию именем файла , в который будуг зап и
саны выходные данные, и щелкните на кнопке ОК.
6.
В результате выполненных действий будет открыто созданное вами
диалоговое окно . Задайте в области редактирования ссылку на диапа
зон ячеек ВЗ:С5, как это показано на рис.
7.
4.20.
Выберите переключатель Выражение и щелюште на кнопке ОК.
RESA
RESB
32
10
1.69Е+О5
Рис. 4.20. Выбор диапазона
FORTRAN
ячеек для преобразования в инструкции
?
Испоnьэованuе
8.
Uisual Basic for Rpplications
Когда диалоговое окно появится вновь, задайте ссылку на диапазон
ячеек 89:С11, выберите переключатель 2D-массив и щелкНите на
кнопке ОК
9.
Чтобы закрыть файл и завершить работу программы, щелкните на
кнопке Отмена .
.__ Примечание
Чтобь1 упростить процедуру отладки, с помощью панели инструментов
1
Формы нарисуйте на рабочем листе две кнопки. Одной из них назначьте
процедуру Excel2For, второй - CaпcelBtn_Click. Теперь для запуска npoграммы достаточно бvдет щелкнуть на кнопке, а. н~ бродить по меню.
СоЗданный в результате выполнения программы текстовый файл со
держит следующую информацию:
с
с
ВЗ: RES1
СЗ=10
RES1 = СЗ
84: RES2
С4=10
с
RES2 = С4
BS:K
С5=1 +RESA/RESB
К=С5
с
"'*'****"******'****************
89( 1, 1)=10000
89=89( 1, 1)
89( 1, 2)=(89/(RES1*CAP2*(1-1/K)))/SQRT((WP"2B9**2)**2+WPQP**2*89**2)
С9=89( 1, 2)
89( 2, 1)=20000
810=89( 2, 1)
В9( 2, 2)=(B10/(RES1*CAP2*(1-1/K)))/SQRT((WP"*2B 10"'*2)**2+WPQP**2*B10**2)
С10=89(
2, 2)
89( з. 1)=30000.
811=89( з. 1)
89( З, 2)=(811/(RES1*CAP2*{1-1/K)))/SQRT((WP*"2B11 "*2)**2+WPQP**2*811 **2)
С11 =89( З, 2)
с
...*********'*****************
Сгенерированный листинг будет без проблем транслироваться как
компилятором FORTRAN, так и другими расnространенными компиля
торами. Однако по-прежнему необходимо проверять порядок выражений
с тем, чтобы. исключил. возможность использования значений перед их
присвоением. Желательно также переписать инструкции
lf
и следить за
f}}j
Глава
тем, чтобы ДТJИНа строки составляла не более
компилятор
72
символов, поскольку
все равно болезнен но отреагирует на подобные
FORTRAN
проблемы. Обратите внимание на способ преобразования меток ячеек
и
84
4
83
в комментарии к программе, а также на манипуляции со значением
и названием яt1ейки СЗ. Все возможные названия теперь доступны ДТJЯ
использования в формулах программы.
Ячейки DЗ:Е5 были преобразованы в двумерный массив. Однако, по
скольку первый столбец содержит только метки, он отсутствует в тексто
вом файле. В качестве названия массива используется название ячейки в
верхнем левом углу преобразуемого диапазона.
Отладка макропрограмм
Во м н о гих случаях программы Visual Basic не желают корректно рабо
тать при первом запуске. Чтобы понять , где именно вы допустили ошиб
ку, необходимо определить действия nро11едурь1 на каждом шаге. После
возникновения ошибки выполнения выводится диалоговое окно (рис.
4.21), предлагающее завершИть программу, продолжить ее или переклю
читься в режим отладки .
Рис.
4.21.
Диалоговое окно, информирующее о возникновении ошибки вы
пол нения
В больш инстве случаев наиболее разум ным решением будет переклю
чение в окно редактора
Vjsual Basic,
изображенное на рис.
4.22.
~ Внимательный читатель уже заметил причину возникновения
~ошибки я закомментировал инструк.uию Оп Error, которая
активизировала обработчик ошибок. Естественно , что все возникающие
ошибки теперь приводят к прекращению выполнения программы. Н а
данном этапе, чтобы узнать текушее значение любой переменной, доста
точно выделить саму переменную и щелкнуть на кнопке Контрольное
значение панели инструментов Отладка.
Исnоnьзованuе
Uisual Basic f or Rpplications
:;d1al.xls - Моаупьl (Программа)
'
'!
Р.!1[.i!)ЕЗ
Ес.11и ячейка .о;:вля-:тся пою-1Е:ноьанной,
Ф"'Jj.Jмулу с
пе}';f~:1tрестньr~1и
1
В ~r)я·з .~'r 1:слt·Н(л""I Пl.':ря,:~1.:f:~
!
~~ибки
в
слуt!ае
сс.здать о::ще одну
r~·съ.:..пкс1r.·н~"
Ht~~i-:;r)z<':диt...тo
Еr;:·:..ьсря·rь
r:.•::':·:-:ни1<н"~I~~:::~н~
!)5рабоТI(И
~ On Error Re5urne Next
strName ~ rngCell.Name.Name
If Err ~ О Then
Print #1, "
" + strName + "
End I f
" + strCellAddress
Print #1, "
If
'
Епd
'
Этvт
ф~ар;~":'<::·н 1г
J::С!да сл·(·Д?СТ :·~.:.~I1~(.':MJ·.·к·нт·иpcт;aгl'1:
intJ
Рис.
4.22.
Инструкция, в результате выполнения которой возникла ошибка,
выделена желтым цветом
В данном случае очень интересно было бы узнать значение перемен
ной Егг (оно должно быть рав~о
1004).
Для того, чтобы постоянно отсле
живать значение переменной, щелкните на кнопке Добавить диалогового
окна Контрольное значение (рис.
4.23) .
.;; 'ijOkBtn_Cliclc
"
Б·:=-.:·н1 .ячей?'.~ Я!';._r:я::::~т·:-~ n.:"~;м~::-нс:~.:.:";ной"
фс_)рz..~улу
с
rl~pe;<;~~c 'J'Н~ми
-::;с~-.l.:н~е:.11,.1и
:;·:·~~.1,-эт:_" С'Ше сд11у
_
llAddre:;is
:+::
~~1/
·•ш
Рис.
·:ir:-c~'I" фр~РМL'Н'Г 1:е:дн -::"nед~/е'!' 3.J.)~·.:.:!'-fJ"'feт·rтиp~sa'f·ь.
Neкt intJ
4.23. Диалоговое окно
Контрольное значение
1141
Гnава
4
В результате переменная и ее значение будет постоянно отслеживать
ся на п анел и Контрольные значения.
'
С1.iН:бУ.И
•
·.)t:
.:;.t;·,"\{.~~ О~,р~.бО Т!~~~
3
Е~: ~>~• t: R7.:=;t~1~·!7=
strName
~
I f E:rr :
~J(·~X1;
rngCell.Na~e.Name
О
Тhen
+ •
Pri n'L IJl, •
• + strCellAddress
E: nd l f
'I:f.
' •
.
тз.~~"J l
(·r: .i t: t
<::~~,:
l. ~ rлgce l l . N":1::;;·; 1:,J.:ir-:e:·}
#1 !
r f!
·~"r.e:·;
"
::.
-~-..
_;,;;
Next intJ
~ • ~ 1:•· .. _;·t .
· ·О:rн-:
.~",
~а
eыi>U<fi!~t ·'''''""<'
~
. ·. ··13.ti.,.\ii.;O. : . : ..• ·. -.._. -: .. 'l:r~n ' : ' ·· · ' ... :_· -. ·.
·Н•ко;nе~~
'· ·
: • :. ~. « . 7 :: •-.;..
Mwдy.n-.1 . 0kBtr;_Cli,;;k
Рис.
4.24. Теперь текущее значение переменной отслеживается постоянно
Не менее эффективным способом поиска некорректной инструкции
является
выполнение кода в пошаговом или построчном режиме,
коrда
вам предоставлена возможность отслеживать значения переме нных до тех
пор, пока не произойдет ошибка. Чтобы быстро добраться до проблем
ного фрагмента кода , выберите выражение п еред ним и щелкните на
кнопке Точка останова . Все инструкции до заданной точки останова вы
полняются с нормальной скоростью , после чего пользователю предостав
ляется возможность отладить программу в пошаговом режиме.
Резюме
Yisнal Basic в зн<tчительной степени расширяет функциональны е воз
можн ости Excel, позволяя автоматизировать . трудоемкие рутинные зада
чи . Кроме того, в случае необходимости можно будет не только р асши
рить диапазон функций рабочего листа, но и написать отдельную про
грамму , предназн аченную дnя выполнения сложной зааачи .
Ехсе\ позволяет п реобразовать выполняемую последова~л ьность дей
ствий в набор инструкций Yisual Basic. Этот н абор инструкuий можно с
успехом использовать в кач естве подпрограммы . Редактор YisuaJ Basic
предоставляет все средства, необходимые для отл адки процедур , позво
ляя отслеживать текущие значения переменных и выполнять
в пош аговом режиме.
программу
Испоnьзованuе Шsual
Basic for Rpplications
В такой небольшой главе невозможно полностью раскрыть широкие
функциональные возможности Visual Basic. Этому языку программирова
ния посвящены целые книги, поэтому, если вы действительно заинтере
сованы в изучении
Visual Basic,
приобретите одну из них.
Дополнительная литература
Visual Basic for Applications
W. J. Orvis, Visиal Basic for App/ications. Ву Example, Indiaпapolis, IN:
QUE, 1994.
Microsoft, Руководство пользователя Visual Basic, а также система
справки Visual Basic, входящая в комплект поставки Excel.
В.В. Волков, Работа на персональном компьютере. Практический к.урс,
К., Юниор, 1999 r.
Обзорные задачи
1.
Напишите процедуру для автоматического создания рабочего листа,
показанного на рис.
2.
2.5.
Напишите процедуру для автоматического создания рабочего листа,
показанного на рис.
3.15-3.17.
Вместо таблицы с данными температу
ры воспользуйтесь альтернативной формулой.
3.
Напишите процедуру, которая выводит в диалоговом окне вопрос
Сохранить рабочую книгу? и ожидает, пока пользователь щеМJiет на
кнопке Да или Нет. Если пользователь щелкнул на кнопке Да, проце
дура должна сохранить рабочую книгу в текущем каталоге, заменив
при этом предыдущую версию, и вывести в строке состояния сообще
ние Рабочая книга сохранена. Если пользователь щелкнул на кнопке
Нет, процедура должна вывести в строке состояния. сообщение
Рабочая книга не сохранена.
4.
Напишите процедуру, которая предлагает ввести в диалоговом окне
дату вашего рождения, после чего выводит ваш возраст в днях в дру
гом диалоговом окне.
5.
Напишите процедуру, которая автоматически создает таблицу углов х
и значений гиперболического синуса для одиннадцати углов в диапа
зоне от О до
4,
ех
используя при этом следующую формулу:
-
е-х
sinh(x)=--2
6.
Напишите процедуру для представления данных предыдущей задачи в
виде графика. Не забудьте вывести по обеим осям разметку.
7.
Напишите проuедуру для автоматического создания рабочего листа,
показанного на рис.
8.
2.8.
Напишите процедуру для транспонирования матрицы размером ЗхЗ
(А). В транспонированной матриuе
(At)
значения переставлены сим-
111&
Глава
4
метрич:но ее главной диагонали. Использовать стандартную функцию
ТРАНСП нельзя.
А=
А
В
с
D
Е
Н
f
G
9.
,
А1 =
а
d
g
Ь
е
h
с
f
j
Напишите процедуру, которая считывает значения двух ячеек и фор
мирует из них текстовую ссьшку на третью ячейку. Первое число со
ответствует номеру столбца, второе
-
номеру строки. Номер столбца
необходимо преобразовать в соответствующий буквенный индекс
(1
А,
и
2
в В и т.д.). Например, если в ячейках записаны значения
3
в
5,
процедура должна вернуть строку С5.
1О.
Напишите процедуру, которая прокручивает рабочий лист вниз иа
один экран, перемещая при этом активную ячейку в верхнюю часть
экрана. Напишите вторую процедуру, которая прокручивает рабочий
лист вверх на один эJ<tран, перемещая активную ячейку в нижнюю
ч:асть экрана. Напишите еше две аналогичных процедуры для скрол
линга вправо и влево.
Упражнения
1.
Напишите функцию, которая вычисляет объем цилиндрического бака
с водой по заданному диаметру и высоте.
2.
Факториал числа равен произведению всех натуральных ч:исел, не
больfuих заданного, например:
5! = 1 х 2 х з х 4 х 5
6! = 1 х 2
хзх
х5 х6
4
Напишите функцию, которая возвращает факториал аргумента.
3.
Дополните созданную
раньше
программу преобразования
даты
из
григорианского формата в юлианский диалоговым оююм.
4.
Перепишите процедуру Excel2For таким образом, чтобы содержимое
ячеек Excel преобразовывалось в инструкции Visual Basic, а не
5.
Дополните процедуру
FORTRAN.
Thermoelectric Сооlег
из главы
2
диалоговым ок
ном.
6.
Напишите процедуру для вычисления по заданному времени
(t) двух
элементного массива, который содержит эклиптическую долготу (Х) и
отклонение от эклиптики (с).
Х
= 50.2564" +О. 00222пt
Е = 23°27'8. 26'' - 0.4684" t
Использованuе
7.
Uisual Basic for Applications
Средняя скорость потока жидкости в трубе определяется формулой
а Р
2
V=--
8Y]f
'
число Рейнольдса равно
Re = 2vap
У]
В формулах а сооmетствует радиусу трубы, р
диенту давления,
17 -
-
плотности, Р//
-
гра
вязкости жидкости. Напишите функцию, кото
рая по заданным радиусу трубы, плотности, градиенту давления и
вязкости жидкости вычисляет число Рейнольдса.
8.
Для обработки металла на токарном станке очень важно подобрать
оптимальную скорость вращения заготовки. Если металл будет то
читься слишком медленно, этот проuесс займет слишком много вре
мени. Если же точить слишком быстро, сломается инструмент или
само изделие. Оптимальная скорость точения металла определяется
следующей эмпирической формулой:
V=
HxS
( ~ D + У)( 7V F - Z)
где V соответствует скорости движения резца в футах/с, D - глубине
резания, выраженной в 1/64 дюйма, F - подаче резuа, выраженной в
1/64 дюйма на оборот. Константы Н, S, У и Z зависят от свойств ма
териала и размера резца.
Жесткость материала
н
Жесткий
0.6
1.0
2.0
Средней жесткости
Мягкий
Размер инструмента
Материал
(дюймы)
3/4
чугун
1/2
чугун
з/4
сталь
1/2
сталь
s
232
215
325
288
у
3
8
-2
о
z
о
0.3
0.3
0.5
Создайте функцию, которая вычислит по заданным входным значе
ниям оптимальную скорость резки металла.
9.
Профессиональные журналы иногда ограничивают размер аннотаuий
характеристикой, выраженной в количестве слов. Создайте програм
му,
которая позволит удовлетворить выдвигаемые требования.
Она
должна открывать указанный файл, подсчитывать находящееся в нем
114:1
Гnава
количество
слов
и
выводить
это
значение
в
отдельном
4
диалоговом
окне.
!О. Стандартная функция Excel СТАНДОТКЛОН, вычисляющая отклоне
ние, пытается обрабатывать даже пустые ячейки. Напишите новую
функцию, которая будет игнорировать пустые ячейки. Для вычисле
ния стандартного отклонения используется формула:
где
N
равно количеству обработанных ячеек, xi -
ной ячейки, а .Х
-
значению очеред
среднему арифметическому всех обработанных
ячеек.
Код приза
ВНИМАНИЕ! Если на этой странице
указан код приза, заверенный печатью
издательства "Юниор",
-
поздравляем!
В этом случае заполните и пришлите
нам карточку "ПризШ", приведенную в
конце книги.
Если же выигрыша нет
-
не огорчайтесь.
В конце книги имеется регистрационная
карточка. Пришлите ее нам и убедитесь
на собственном опыте в том, что наши
читатели всегда остаются в выигрыше!
Мы работаем для Вас оставайтесь с нами/
Гпава
5
Аиа.nиэ информации с помощьlО
баз данных
В этой таве
./
./
./
./
./
./
Импортирование данных в рабочий лист
Синтаксический анализ данных
Обращение к внешним базом данных
Выбар данных с помощью фильтров
Выбор данных с помощью форм
Сортировка данных
Анализ экспериментальных данных может сводиться к обычному ус
реднению нескольких значений или усложняться до поиска записей в
большой базе данных по некоторому критерию. Программа
Excel
в со
стоянии справиться с любыми задачами по обработке данных, включая
перечисленные крайности.
Прежде чем обрабатывать данные, их необходимо поместить в Excel.
После этого многочисленные команды и функции Excel позволят обра
ботать данные любь1м необходимым способом и вывести результаты. На
пример, значения выходного напряжения (или тока) большей части экс
периментальных приборов пропорuиональны измеряемым физическим
величинам. Обрабатывая измеренные значения по формулам
Excel,
мож
но будет преобразовывать их в соответствующие характеристики.
Ввод экспериментальных данных
Существует несколько методов ,ввода данных в рабочую книгу. Есте
ственно, что оптимальный метод ввода зависит от формата данных. Если
данные от руки записаны в блокноте, вам остается набивать их самостоя
тельно. Если данные уже находятся на жестком диске компьютера в не
котором текстовом формате, их можно будет загрузить непосредственно
в рабочий l'ИСТ (вполне возможно, что прочитанные данные придется
вручную распределить по ячейкам). Меньше всего проблем возникает в
том случае, если nанные находятся в какой-то внешней базе данных.
1$1~1
Гnава
5
Ввод данных вручную
Большая часть экспериментальных данных существует только на бу
маге. Записи в журнале исследований и таблицы в научных журналах яв
ляются
неrшохими
примерами
распечатанных
экспериментальных дан
иых. Если вы не являетесь счастливым обладателем сканера и программ
ного обеспечения для оптического распознавания символов
character recognition - OCR),
( optical
такие данные придется набивать вручную.
Справедливости ради следует заметить, что один прилежный аспирант с
успехом заменяет и сканер, и необходимое программное обеспечение.
Как правило,
в комплект поставки сканера входит программа д,"'Iя
распознавания напечатанного (но не написанного от руки) текста и пре
образования его в файл на диске. Превратить распечатанные данные в
редактируемь1й текст позволит даже недорогой
ручной сканер и про
стейшая программа распознавания. Совсем нелишним будет Тщательно
проверить корректность распознания данных приложением (или набора
их аспирантом).
Набирать данные в
Excel
совсем несложно. С помощью мыши выде
лите столбец рабочего листа и начинайте набирать данные. После нажа
тия клавиш
<Enter>
или <ТаЬ> активная ячейка будет перемещаться вниз
на одну строку, позволяя тем самым ввести следующее значение
•
.
Предупрвждение
Имейте в виду, что после достижения конца выделенного диапазона ак
тивная ячейка переместится в его начало и все набранные прежде дан
ные могут быть потеряны.
Если же выделить два и более столбцов, после каждого нажатия кла
виши
<Enter>
(или клавиши
<Return>
на rшатформах
Macintosh)
активная
ячейка будет последовательно пуrешествовать по всем выделеииым
столбцам сверху вниз. Нажатие клавиши <ТаЬ> (<Enteг> на rшатформах
Maci11tosh) заставляет активную ячейку циклически перемещаться слева
направо по столбцам выделенного диапазона. После достижения послед
него столбца активная ячейка возвратится к первому,
переместившись
одновременно на следующую строку. Если во время нажатия <ТаЬ> или
<Enter>
удерживать еще и клавишу
изменится
на
противоположное
<Shift>,
направление движения ячейки
(вверх
для
комбинации
клавиш
<Shift+Enter> и вправо для <Shift+Tab>). Кроме того, все версии Excel для
Windows позволяют задать используемое по умолчанию иаправлеиие сме
шение активной ячейки после иажат.;я клавиши <Enter>. Для этого дос
таточно выполнить команду Сервис )о-- Параметры и перейти на вкладку
Правка.
nнanuз uнформацuu с помощью баз даннык
Импортирование данных из файла
Вставка Jiанных в рабочий лист в значительной степени упрощается в
том случае, если данные уже существуют в виде файла на диске. Это
моrут быть файлы, созданные проrраммами численного моделирования
или файлы, полученные из других источников. Существует несколько
методов считывания данных из файла на диске в рабочий лист.
Программа Excel в состоянии непосредственно работать с файлами
форматов, которые перечислены в табл. 5.1. Кроме того, с помощью над
стройки MS Query для Excel 5 можно манипулировать с данными попу
лярных приложений управления базами данных. Надстройка Query сразу
же вставляет обнаруженные данные в рабочий лист.
Таблица
5.1.
Форматы данных, поддерживаемые
Формат
Расширение файла
Excel 97, 7.0 или 5.0
Excel 4.0
Excel 3.0
Excel 2.х
.XLS,
.XLS,
.XLS,
.XLS,
.SLK
Excel
.XLT
.XLC, .XLM, .XLW, .XLA, .XLT, .XLB, .XLL
.XLC, .XLM, .XLW, .XLA, .XLT
.XLC, .XLM, .XLW
Символические связи
Текст
.ТХТ
Значения, разделенные запятыми .CSV
t-2-3 версия tA
.WKS
Microsoft Wo, ks
1-2-3 версия 2.х
1-2-3 версия 3.х
1-2-3 для Windows
Allways
.WKS
Формат обмена данными
DBase 11
DBase 11
dBase IV
_ Quattro Pro для MS-DOS
.WК1, .FMT
.WK3, .FM3, .PRN
.WK3, .FM3, .PRN
.ALL
.DIF
.DBF2
.DBF3
.DBF4
.WQ1, .WQS
Для моделирования физических явлений и поведения механизмов на
компьютерах характерно большое количество данных, которые необхо
димо проанализировать и представить в rрафическом виде. Если данные
уже записаны в текстовь1й файл, заrрузить их в рабочий лист не составит
.
труда.
Если же данные записаны в двоичный файл, придется написать не
большую программу, которая преобразует двоичный файл в текстовый.
Чтобы во время преобразования не возникало проблем, данные в тексто
вом файле должны быть представлены в виде таблицы, в которой столб
цы числовых значений или текста разделены табуляторами, а каждая
строка завершается симьолом возврата каретки. Именно такие требова
ни:я приложение
формате.
Excel
по умолчанию выдвигает к файлам Б текстовом
fJfj
Глава
5
Текстовые файлы, в которых значения разделены запятыми, точками
с запятыми, Пробелами или любым другим символом, также могут быть
прочитаны в
Excel,
однако для этого необходимо будет явно задать раз
деляющий символ в диалоговом окне Мастер текстов (импорт).
Программы эмуляции терминалов позволяют устанавливать соедине
ние между компьютерами по модему или локальной сети. С их помощью
можно получать результаты моделирован:ия от главного вычислительного
сервера (мэйнфрейма) или просто удаленного персонального компьюте
ра. Большинство программ эмуляции терминалов поддерживают возмож
ность сохранения полученных данных в текстовой форме .
.._. Примечание
' Программы эмуляции терминалов оказываются незаменимыми в том
случае. если возникает необходимость обмена данными между платфор
мами с несовместимыми файловыми системами.
С помощью кабеля
нуль-модема
компьютеров,
соедините
последовательные
порты
после
чего передавайте необходимые файлы по одному из стандартных прото
.колов
обмена файла_ми.
Импортирование стандартных текстовых файлов
Если необходимые данные находятся в текстовом файле, отдельные
значения в котором разделены табуляторами, достаточно будет открыть
этот файл с помощью стандартной команды Файл
>- Открыть.
Файлы, в
которых значения данных разделены табуляторами, а в конце каждой
строки стоит символ возврата каретки, соответствуют требованиям, по
умолчанию выдвигаемыми
формата. В случае
открытия такого файла
Excel к файлам текстового
Excel создает новую рабочую
книгу и считывает
символы из файла в ячейку А1 до тех пор, пока не встретит символ табу
ляции. После этого акnшная ячейка смещается вправо, и символы счи-,
тываются в ячейку
81
до тех пор, пока не будет обнаружен следующий
символ табуляции. При обнаружении каждого символа табуляции актив
ная ячейка будет смещаться вправо до тех пор, пока не встретиться сим
вол
возврата каретки,
который вновь переместит активную ячейку в
столбец А, но уже на одну строку ниже.
Если для разделения данных используется какой-то другой символ,
как то запятая, пробел или точка с запятой, его придется указать в мас
тере импортирования текстов, который будет автоматически запущен при
попытке открыть файл. Мастер позволяет учитывать даже происхождение
файла
(ero
принадлежность к определенной операционной системе), по
скольку различные платформы используют для обозначения конца стро
ки различные символы.
nнanuз uнформацuu с помощью баз даннын
Текстовый файл с разделенными пробелами
значениями
В качестве примера рассмотрим процедуру импортирования представ
ленного на рис.
5.1
текстового файла с разделенными пробелами значе
ниями. Файл был создан в приложении Блокнот, которое входит в ком1mект поставки
Пользователи платформ
Windows.
пользоваться для создания файла приложением
3!130р
Н•кс: .
D0311ИKHOB8HHll
I
анаметр
HC:Kplll (с:н)
:аnектро~а•
Macintosh
Teach Text.
моrуг вос
. ,;
_..;
(с:н)
I
I---------------------------1
2.5
1
(11.В)
I
5
18
2е
--··----------------·--------·-----8.13 8 . 15 8 . 15
5
..."
н.nряж.
е.16
18
15
28
25
38
35
1\8
lf5
58
8.27
е.29
e .11i+
8 .60
е.58
8.76 8 . П
8.95 e.91f
1. 17 1 . 12
1 .111 1 . Зе
1 .68 1 .50
2 .88 1. 71
е.112
8.30
8 .116
8 .62
в . 78
8 . 95
1 . 12
1 .29
1 .1\7
1 . 65
е . з2
e.11s
e.61f
8.81
8.98
1.15
1 . 32
..
1 . lfЗ
1.66
Рис. 5.1. Данные о зазорах возникновения разряда разделены пробелами.
Текстовый файл создан в приложении l/Jindows Блокнот
l.
В программе Блокнот (или
на рис.
5.1.
Teach Text)
наберите ланные, показанные
Для выравнивания столбцов используйте пробелы.
2. Сохраните файл под именем COLUMNS. TXТ.
3.
4.
Запустите прил ожение
Excel
и выполните команду Файл>- Открыть.
В диалоговом окне Открытие документа выберите из списка Тип фай
лов пункт Все файлы .
5. Выберите файл COL.UMNS.TXT и шелкните на кнопке Открыть.
В результате выполненных действий будет запушен мастер импорти
рования текстов, который и поможет прочитать файл в
Excel.
Имейте в
виду, что импорmруемый документ содержит разнесенные с помощью
пробелов на равные интервалы стол бuы данных.
6.
Выберите переключатель с разделителями и щелкните н а кнопке Да
лее.
Гnава
5
.. ·.,
·1 · <Усы
. . ..:•. ",. . . _.... ·.··>· '• .1···.· ·'~·от-.·
•.···•.°"10Щ.'</
,., ~ ·.· . ·.• . .1·_..·
f.·..
··.·
... " .
· . •·.·-.···.·.
Рис.
7.
5.2.
Первое диалоговое окно мастера импортирования
Во втором диалоrовом окне мастера установите флажки пробел и
Считать последовательные разделители одним. Щелкните на кнопке
Далее. При желании можно установить и ,Флажок символ табуляции в этом случае все табуляторы тоже будут учитываться во время син
таксического анализа файла с целью выделения столбuов.
Следующее диалоговое окно позволит задать формат данных для каж
дого столбца. Оставьте предложенный по умолчанию формат Общий, и
Excel
самостоятельно отформатирует столбцы с текстом и числовыми
значениями. Щелкните на кнопке Готово.
Рис.
5.3.
Второе диалоговое окно мастера имnортирования
nнanuз uнформацuu с помощью баз даннын
~· :Л
'"""'---------------'Ш~'
- . ..........:0..........................
~.~"::_.:_: >. '·~ ··.·;·;··~··-:~"::··:··=
.. •r:• ~::~~-:~~::.:
l,r.c.·.-.~.-,_·~~
..-·2 ·:"~:~·..· -,··.
.·: ;;::'<!i.:Ji:щ;i!~)!?~·,;•j i1:·~~··4 )\••",i. ; -.· ,~-'~
..А ..
: ::.: ... " "';· ,
..
Рис.
5.4.
"
.
.
.
..... " • • , •.•.
.
... ·" '
:.-;
.
.
.
.
.•
.
.
.
.·'.·J
·..•
Третье диалоговое окно мастера импортирования
Рабочий лист должен выглядеть так, как это показано на рис.
Приложение
Excel
5.5.
корректно обработало числовые значения , однако всю
текстовую информацию придется " растаскивать" по ячейкам· самостоя
тельно.
Зазор
....
(СМ)
во.э.ниi<НОЕ искры ...
1
Диаметр
1--------------------1
Макс .
(к6i
--------------------...·-------5
10
15
20
25
зо
35
40
45
50
Рис.
5.5.
0.13
0.27
0.42
0.58
0.76
0.95
1.17
1.41
1.68
2
эпектрод< (см)
~
L ."
0.15
0.29
0.44
0.6
0.77
0.94
1 12
1
з
1.5
1.71
о
15
0.3
0.46
0.62
o.i8
0 .95
1 12
1.29
1.47
1 65
20 1
0.1 6
0.32
0 .48
0.64
0.81
0.98
1 15
1.32
1.49 .
Столбцы данных, импортированные в
Excel
fJИ
Гnава
5
4' Предупреждение
Не забывайте, что приложение Excel использует в качестве разделителя
между целой и дробной частью числа символ запятой. Это соответствует
заданным
по
умолчанию
параметрам
представления
чисел
в
панели
управления. Поэтому во время импортирования все чисповые значения с
дробной частью будут преобразованы в текстовые строки. Откройте раз
дел Язык и стандарты панели инструментов и перейдите на вкладку
Числа. В поле Разделитель целой и дробной части числа удалите
символ запятой
(,)
и введите вместо него символ точки
(.).
Но и это еще не все . Теперь числовое значение типа 1.17 может быть
преобразовано в дату 17 января. Перейдите на вкладку Дата и задайте в
качестве разделителя КОМПОНеНТОВ даты КОСУЮ ЧеРТV (/).
Импортнрованне разделенных табуляторамн значений
Если значения в таблице разделены символами табуляции, обычно
процедура
импортирования
файла
происходит
намного
корректнее.
Предлагаю вам убедиться в этом самостоятельно.
За:»ор ВО3НИКНОВ8НИ111 нс:кры
( с:н ( :
наnря• .
(кВ)
s
2 .S
18
8 .1 3
8 . 27
15
8 . Ч2
28
25
38
35
8 . 58
8 .16
8.15
8.15
В.16
8.29
8.1111
8 .68
8 .31Э
8 .32
8 .116
8 . 62
8.118
е . о"
· .,
8 .81
<·
8 . З5
8 . 9Ч
1 .17
1. 12
1.38
1.58
1. 71
1 . 12
1 . 29
1 . 'I T
1 .65
1 .68
58
2.ве
Рис.
18
В.78
е . зs
lf8
115
1 .111
5.6.
29
5
8 . Т7
8 . 98
1 . 1s
1. 32
1.119
1 . S6
,•·.,
,.
.·
~
·: "
Данные о зазорах возникновения искры разделены табуляторами.
Текстовый файл создан в приложении
1.
2.
3.
Windows
Блокнот
В проrрамме Блокнот (или Teach Text) наберите данные, показанные
на рис. 5.6. Для выравнивания столбцов используйте табуляторы.
Сохраните файл под именем TABDELIM.TXT.
Запустите приложение Excel и выполните команду Файл
Открыть .
>
Rнanuз uнформацuu с помощью баз даннын
4.
5.
6.
В диалоговом окне Открытие документа выберите из списка Тип фай
лов пункт Все файлы.
Выберите файл TABDELIM.TXT и щелкните на кнопке Открыть.
Во втором окне мастера импортирования установите флажок символ
табуляции и щелкните на кнопке Далее.
7.
В третьем диалоговом окне согласитесь с предrюженным по умолча
нию для ячеек форматом Общий и щелкните на кнопке Готов_о.
Результат преобразования показан на рис. 5.7. Приложив совсем не
много усилий, можно создать таблицу, показанную на рис. 5.8. Согласи
тесь, что по сравнению с исходным файлом, эта таблица выглядИт на
много красивее.
Зазор возникновения иснры (см)
Диаметр электрода (см)
--~-------
25
5
_____________________
_..._
5
10
15
20
25
30
35
40
45
Рис.
5.7.
0.13
о
27
0.42
058
0.76
0.95
1.17
1.4,
1.68
10
20
0.15
0.29
0.44
0.6
0.77
0.94
0.15
0.3
0.46
0.62
0.78
0.16
0.32
0.48
1.12
1.12
1.29
0.95.
Импортированные в
0.64
0.81
0.98
115.
132
1.49
Excel данные
Импортирование табличных данных
Даже если значения упорядочены в столбцы, разделенные различным
количеством пробелов, все равно существует возможность корректно им
портировать их в
Excel.
Многие приложения
DOS
создают табличные
данные, используя для этого моноширинные шрифты. Импортирование
файлов подобного типа невозможно без синтаксического анализа, кото
рый представляет собой метод преобразования столбцов данных задан
ной ширины в столбцы рабочего листа. Для выполнения синтаксиче
ского анализа необходимо либо выбрать в первом оiсне мастера импорти
рования переключатель фиксированной ширины, либо выполнить команду
Данные~ Текст по столбцам. Результаты синтаксического анализа будут
некорректными в том случае, если шрифт файла не является моноши
ринным.
fji:I
Гnава
5
Заэор возкикновениfl искрь1 ( см )
5
10
15
20
25
зо
35
2.5
0.13
0 .27
0 .4 2
0 .58
0 .76
0.95
1.17
40
10
0.15
0.3
0 .46
5
0.15
0 29
0.44
06
о
077
0.94
1.12
1.3
1.49
1.5
Рис.
5.8.
62
0.78
0.95
1.12
1.29
20
0 .16
0 .32
0.48
о &4
0.81
0.98
1 15
1.32
Отформатированная таблица с данными о возникновении искры
~ Примечание
Моноширинным называется шрифт с символами равной ширины. Боль
шая часть компьютеров, которые функционируют в текстовом режиме,
используют для выравнивания символов по вертикали растровые моно
ширинные шрифты. В операционной системе
Windows большая часть
шрифтов не является моноширинными . Это значит, что ширина букв мо- ,
жет гiропорционально изменяться (наглядным примером сказанному слу
жит текст этой книги ~буква И занимает меньше места, чем буква- Ш).
Если же заrрузить текстовый файл в
за,
его
строки
будут
полностью
Excel
без синтаксического анали
помещены
в
ячейки
единственного
столбца А и распознаны как текст.
'
Предупреждение
Имейте в виду, что простые текстовые файлы создаются редакторами,
которые явно обозначают конец каждой строки. Более интеллектуальные
редакторы рассматривают абзац как одну длинную строку с единствен
ным символом возврата каретки в конце . После импортирования такого
файла в
Excel
весь абзац (но не более
255
символов) помещается в одну
ячейку. Кроме того, современные редакторы вставляют в файл скрытые
символы форматирования, что таюке отрицательно сказывается на ре
зультатах импортирования . Перед импортированием файла в
Excel,
за
грузите его в обычный текстовый редактор, удалите все ненужные симво
лы и самостоятельно установите символы конца строки (с помощью
клавиши <Enter>). Сохраненный после таких манипуляций файл будет
корректно импортирован в Excel.
Нналuз uнформацuu с помощью баз даннын
Элементарные частнць1
На рис.
5.9
представлена таблица элементарных частиц и некоторых
их свойств. Таблица довольно сложная и содержит смесь из текста и чи
словых значений различного формата.
Эnенентарнь~ частиц...; тексто8111Й ••Йn дnА ннnортнрования
Семейство
Частица Масса Сnин Активность
Заряд Время жи3ни (с)
Эnектроны
Фотон
в
1
в
Бесконечность
Эnектрон
1
-е
Бесконечность
Нейтрино
в
1/2
0.5
е
Бесконечность
2GG. П
е.5
-t.6e-IЗ
0.5
+
G
273. 2
Пион в
2GI!. 2
е
е
(:)
+
ЗGG. 6
е
+1
Каон е
971!.е
е
1
В
Протон
1~36.12
.5
о
1 .Sе-1З
Нейтрон
1838.65 е.5
2182.8 G.5
G.5
2327.7
е
е
ннз
-1
-1
е
2.5111-10
1.se-19
в.111-11
231.fB.5
2332
е.5
-1
-1.6е-19
1 .s11-1e
е.5
-1
2580
е.5
2570
е.5
-2
-2
Мюон
Нейтрино
nнон
Н830НЫ
К11он
Б11рионы
nянбда
Сигно
+
Сигно
-
Сиrна е
Xi Xi е
~;
..
Рис.
'.','
,
,·
......
в
.~. , , . . ..
· .. ,.:,:,:.. ·
2.212е-6
В
+1
Бесконечность
2.S5e-8
.6е-19
е
1.9е-16
1 .Se-19
1 .22е-8
1.EHJe-10
Бесконечность
в
1е-20
-1.611-19
1 .311-10
111-10
е
"..
'
,,
,, ,;
~:
..• ..
5.9. Характеристики элементарных частиц (текстовый файл создан в
приложении Блокнот)
Чтобы выполнить синтаксический анализ текстового файла, в первом
диалоговом окне мастера импортирования выберите переключатель фик
сированной ширины. Можно поступить иначе
-
сначала импортировать
файл как текст (в результате он расположится в столбце А), а потом
применить команду Данные~ Текст по столбцам.
С помощью приложения Блокнот (или Teach
ный на рис.
1.
5.9
Text) создайте показан
TABULAR.TXT.
Excel. В первом диалого
файл. Сохраните его под именем
Откройте файл
TABULAR.TXT
в приложении
вом окне мастера импортирования установите флажок фиксированной
ширины и щелкните на кнопке Далее.
2.
Во втором окне мастера импортирования задайте ширину полей для
разбиения текста на столбцы (рис.
5.10).
Щелкните на кнопке Далее.
В третьем диалоговом окне мастера имлортирования (рис. 5.11) вам
будет предложено задать формат для каждого преобразуемого столбца
данных. Согласитесь с предложенным по умолчанию форматом Общий и
щелкните на кнопке Готово.
Гnава
Рис.
5.10.
S
Для имnортирования текста задайте соответствующую ширину
столбцов
~JJримечани.е .
Приложение Excel самостоятельно располагает линии со стрелками, ко
торые обозначают концы строк. Для создания новой линии щелкните в
необходимой позиции линейки . Двойной щелчок на линии nриведет к ее
удалению. Чтобь~ переместить конец ~ки, укажите на него и перетащите.
Рис.
5.11.
Выберите для каждого столбца необходимый формат данных
Rнanuз uнформацuu с помощью баз даннын
В новом рабочем листе расширьте столбец А таким образом, чтобы
преобразованный.текст поместился в нег.о полностью.
Предстаменный на рис.
вполне удометворительным
5.12. результат преобразования можно считать
- данные упорядочены по столбцам, ну а с
необходимостью редактирования текста придется смириться. Обратите
внимание на то обстоятельство, что числа в ячейках 04 и 05 были ин
терпретированы Excel как даты, а величина-ев ячейке F5 вообще не бы
ла распознана.
llliuйL~{illAifi~l~[~~jjl[~!lliШtik1nPJi:iliirt.:::lliiPl;J_;ШfЛJ;):dli:JiliШ±!!!f.: 0 '\'';~.,tiJ!~,~i;h;jjj
вый фай л для 11
мnортироtв EXCEL
'ill!,:i! Элеменrа част11цы ; текст о
· Семейств Частица Масса
Рис.
3.
5.12.
Сnин
Импортированные в
Активно
Excel
Измените содержимое ячейки
сть
Зар~ Время жизни (с)
табличные данные
04
на
1 (05
на
0.5)
и примените к
ячейкам формат Общий.
4.
5.
Измените содержимое ячейки
F5
на -1.6Е-19.
Отредактируйте заголовки столбцов, удалите третью строку, назначьте
ячейкам обрамление и О'fКЛ;Ючите линии сетки.
Отформатированный подобным образом рабочий лист должен выгля
деть так, как это показано на рис.
5.13.
Расположение данных во мноrом
схоже с исходной таблицей, однако, теперь каждое числовое значение
занимает отдельную ячейку, будучи тем самым доступным для использо
вания во всех формулах рабочего листа.
Гnава
'! Элемеюарные частицы;
~ Семейство Частиuа
1
текстовый ФаМ для импортироеания в
Масса
Спин
"i
Фотон
Электрон
".,
1
Нейтрино
о
'iЭлектроны
Мюоны
о
Мюон
20677
о
Нейтрино
Мезоны
ПиОli •
i
Xi -
273.2
264.2
966.6
974
1336.12
1838.65
2182.8
2327.7
2340.5
2332
2580
:;
Х1 О
2570
Пион О
"
'
кгон +
·.1
1'".эон О
'; Барионы
Протон
;
Нейтрон
Лямбда
i
·!
Сигма•
,;
Сигма
·!
Сигма О
,
;~
-
,
Активность
EXCEL
Время жизни (с)
ЗаоАD.
О Бесконечность
о
- 1 .60Е-19 Бесконечность
10.5 0.5 0.5 -
О Бесконечность
-1
бОЕ-19
2. 21Е-06
О Ысконечность
о
о
о
о
о
1.90Е- 1 6
о
1
1
1 .60Е-19
1.22Е-08
о
1.ООЕ-10
о
1 .60Е-19 Бескокечность
о
0.5
0.5
0.5
0.5
0.5
05
05
0.5
1 .60Е-1 9 2.55Е-08
о
о
1013
-1
-1
-1
-1
-2
-2
о
2 .51Е-10
1 .бОЕ- 19
8. 1 0Е-11
- 1.60Е-19
1 . 60Е- 10
1)
1.ООЕ-20
- 1 . бОЕ-19
1 ЗОЕ-10
о
1.ООЕ-10
: ::· :=:: :1:11=,_~~--~-'~~~-"''~~:,;:.:..Li.д~~ш:iliJ·.. ·
Рис.
5.1 З.
5
~:...1
.!l[J•
Отформатированная таблица с характеристи ками элементарных
частиц
Импортирование данных с помощью
Visual Basic for
Applications
Visual Basic
обладает достаточными фущщиональными возможностя
ми для огкрытня и чтения как текстовых, так и двоичных файлов. На
Visual Basic
можно написать спеuиальную программу для чтения файла
данных и последуюшего с интаксического анализа. Н апример, следуюшая
небольшая процедура считывает файл с характеристиками элементарных
частиц и упорядочивает
ero
дан'/iые по столбцам. Имейте в виду, что
данная процедура применима исключительно к уже знакомому файлу
элементарных частиц. Процедура будет в состоянии анализировать дру
гие файлы только после соответствующих изменений.
Option Explicit
1
'
Импортирование характеристи к элементарных частиц
1
Sub lmportPhys()
Dim strALine As String
Dim intCtr As lnteger
Open "tabular.txt" For lnput As #1
Line lnput #1 , strALine
Sheets("PartPhys").Range("A1").Value =strALine
Rнanuз uнформацuu с помощью баз данныи
' Обработка заголовков
Line lnput #1, strALine
Sheets("PartPhys").Range("A2").Value = Mid$(strALine, 1, 12)
Sheets("PartPhys").Range("B2").Value = Mid$(strALine, 13, 8)
Sheets("PartPhys").Range("C2").Value = Mid$(strALine, 21, 8)
Sheets("PartPhys").Range("D2").Value Mid$(strALine. 29, 5)
Sheets("PartPhys").Range("E2").Value Mid$(strALine, 34, 9)
Sheets("PartPhys").Range("F2").Value = Mid$(strALine, 43, 11)
Sheets("PartPhys").Range("G2").Value Mid$(strALine, 54, 99)
' Считать все символы слева от текущей позиции.
Line lnput #1, strALine ' Пропустить линию - - • Имnортирование собственно таблицы.
For intCtr = 1 То 17
Line lnput #1, strALine
Sheets("PartPhys").Cells(intCtr + 2, 1).Value = Mid$(strALine, 1, 12)
Sheets("PartPhys").Cells(intCtr + 2, 2).Value = Mid$(strALine, 13, 8)
Sheets("PartPhys").Cells(intCtr + 2, 3).Value = Mid$(strALine, 21, 8)
Sheets("PartPhys").Celis{intCtr + 2, 4).Value Mid$(strALine, 29, 5)
Sheets("PartPhys").Cells(intCtr + 2, 5).Value Mid$(strALine, 34, 9)
Sheets("PartPhys").Cells(intCtr + 2, 6).Value Mid$(strALine, 43, 11)
Sheets("PartPhys").Cells(intCtr + 2, 7).Value Mid$(strALine, 54, 99)
' Считать все символы слева от текущей позиции.
Next intCtr
Close#1
Sheets("PartPhys").Activate
' Все последующие выражения были записаны как макрос
' и отредактированы.
Columns("G:G").ColumnWidth = 9.57
=
=
=
=
=
=
=
Range("BЗ:B19").Select
Selection.HorizontalAJignment = xlRight
Range("A5").Select
Selection.HorizontalAlignment = xlRight
Range("A7").Select
Se1ection.Horizonta1Alignment = xlRight
Range("C2:G2").Select
Selection.HolizontalAlignment = xlCenter
Range{"F4"). Select
ActiveCell. FormulaR 1С1 = "-1.60Е-19"
Range(''D4").Select
ActiveCell. FormulaR 1С1 = "0.5''
Range("A2:A19").Select
Selection. BorderAround Weight:=xJMedium, Colorlndex:=xlAutomatic
Range("B2:B 19").Select
Selection.BorderAround Weight:=xlMedium, Colorlndex:=xlAutomatic
Range("C2:G19"). Select
Selection.BorderAround Weight:=xlMedium, Colorlndex:=xlAutomatic
fJll
Гnава
s
Range("A2:G2").Select
Selection.BorderAround Weight:=xlMedium, Colorlndex:=xlAutomatic
End Sub
Для построчного считывания файла в переменную strALine использу
ется инструкция Line Jnput. Затем с помощью функции Mid$() в считан
ной строке выделяются логические фрагменты, соответствующие столб
цам. Часть процедуры, соответствующая форматированию ячеек, была
записана как макрос.
-.._
Примечание
Функция Mld$() извлекает из строки заданное количество символов. В
функцию
передается три аргумента: собственно строка,
подлежащая
анализу, позиция символа в строке, с которого начинается необходимая
подстрока, и количество возвращаемых символов.
Импортирование данных из внешних баз данных
Для обращения к данным внешней базы данных можно воспользо
ваться входящим в комплект поставки
Excel приложением Query мя MS
Excel 5.0, которое преобразует диапазоны внешних данных из формата
Microsoft Excel 97 в формат Microsoft Excel версии 5.0/95, а также позво
ляет использовать макросы, написанные на Visual Basic мя предыдущих
версий Microsoft Excel.
Кроме того, приложение Query позволяет извлекать данные из баз
данных dBase, Access, FoxPro, Paradox, а также взаимодействовать с
внешними SQL-серверами, как то Microsoft SQL Server, Oracle и Sybase.
Приложение Query посьmает внешней базе данных запрос SQL (Structured Query Laпguage - язык структурированных запросов) и возвращает
в Excel необходимые данные.
Создание баз данных (и запросов к ним) заслуживает рассмотрения в
отдельной книге. Руководство пользователя
дит в комплект поставки
Excel,
Microsoft Query,
которое вхо
освещает основные концепции, но для
эффективной работы с приложением я рекомендую приобрести хорошую
книгу по базам данных. К счастью, вам не придется составлять выраже
ния
SQL самостоятельно.
Графический интерфейс приложения
Query по
зволит как бы "нарисовать" запрос, после чего будут сгенерированы со
ответствующие инструкции SQL.
Прежде чем воспользоваться услугами Query, приложение следует ус
тановить на машине. Имейте в виду, что это приложение не устанавли
вается вместе с
Excel
Microsoft Office
или
автоматически, поэтому в программе инсталляции
Microsoft Excel
выберите режим выборочной уста
новки и установите флажок напротив пункта Доступ к данным. Компо
ненты доступа к данным включают собственно приложение
Q•.iery
и
драйверы ODBC, необходимые для обращ~ния к различным базам дан
ных. После завершения процедуры установки откройте панель управле-
nнanuз uнформацuu с помощью баз даннын
ния и шелкните дважды на ликтоrрамме 32-Ьit
ODBC.
В открывшемся
диалоговом окне зарегистрируйте подцерживаемые форматы баз данных.
Выводимые в окне подсказки помогуг справиться с этой несложной за
дачей.
Query может быть запущено как отдельное приложение или же как
надстройка Excel. Чтобы зарегистрировать приложение Query в качестве
надстройки Excel, выполните команду Сервис
Надстройки и установите
>-
флажок напротив пункта Надстройка
Query для MS Excel 5.0. В результате
в меню Данные появится новая команда Внешние данные.
Теперь можно будет с помощью графического интерфейса приложе
ния Query составлять запросы SQL и передавать их внешним базам дан
ных. После обработки запроса база данных возвращает необходимые
данные. Накопленные таким образом в
портируются в Excel.
Query данные автоматически им
Составление запроса к базе данных Борей
Будет логично проиллюстрировать процедуру составления запросов
на примере базы данных Борей, которая входит в комплект поставки
Microsoft Access.
1. Выполните команду
Сервис
>- Надстройки
жок напротив пункта Надстройка
ANlp~ TooPalt 1 Г са\С AdO-ln
··· rдетосо~
i Р· маст
и установите напротив фла
Query для MS Excel 5.0 (рис. 5.14).
118А
я
·'
"
;~ r:1wЧМiiWw+--:·
Г обнов.- сзяэей
·:,
!· Г Пilto!т iН"11Са
'
' " l'Ь<< pewe<WI
Г:~ для wаб,.,..,.
Рис.
2.
3.
4.
5.14.
Зарегистрируйте
MS Query в
качестве надстройки
Excel
Перейдите на пустой рабочий лист и переименуйте его в Рис.
Выполните команду Данные
5.23.
>- Внешние даннь1е >- Создать запрос.
В появившемся диалоговом окне Выбор источника данных (рис.
выберите пункт
MS Access 97 Database {not
5.15)
sharaЫe) и щелкните на
кнопке ОК. Вашему вниманию будет представлено изображенное на
рис. 5.16 диалоговое окно Select Database, предлагающее выбрать базу
данных для составления запроса. Выберите файл Борей.mdЬ и щелк
ните на кнопке ОК.
fjtfj
Рис.
Глава
5.15.
5
Выберите тип базы данных, к которой предполагается составить
запрос
ЕЗ
s"1"ct Dat!lbnse
~;б~~~~E1(;!:'k'ii ;i'';/'· :~~~~Г "· : · ·. Г :ос
; ijб~P,"" rndb·····
:: ~!~Fii~s\&.\~le&·.
certcel
/Т o;.jc\
· · ·_J Progrern Files
:. Зо~аэы mdb
;) Peшeни~.mdti
:,::S
;;::,~!!11!
<:З Office_97
';]j Office
т
1
,,1,,
r~&o/:
~S=ples
.. ~ '~-=: ~
jtj~~~~;:i',i.·i·./!. \~··:!'
,:·~i!Y~:J;,,,··•Ш·.··
EJ/!J
··Г'~;;;;;;·
.1.с··.:· ; >
-.-~ -~;:
. .
...
!!Jдссш Oat~bese~ (".mdb
~с sy>tem_,dis~
~i;~~;::~:~~t;~);::;;; :;~;~:;~j~i.~.': ::·.: ::.::~; ... :. ~:~: ..:~~ ..
Рис.
5.16.
.....
Выберите файл базы данных
Примечание
Учебная база данных "Борей", которая входит в комплект поставки Micro-'
soft
Office,
Professional
Edition
и
Microsoft
Access,
позволяет
"почувствовать" различные компоненты базы данных (таблицы, запросы,
формы, отчеты, макросы и модули), облегчая одновременно освоение
концепций построения реляционных баз данных и принципов взаимодей
ствия их объектов, наглядно иллюстрируя процессы ввода, хранения и
печати данных, а также манипулирования ими.
По умолчанию база данных будет записана в папку С:\Ргоgгаm
Files\Мicrosoft Office\Office\Samples. Если вам не удалось обнаружить базу
данных в указанной папке, воспользуйтесь стандартными средствами по
иска файлов в
ской) версией
lNWind80).
Windows. Если вы
Office или Excel,
пользуетесь нелокализованной (англий
база данных будет называться NWind
nнanuз uнформацuu с помощью баз даннын
П осле выполнения перечисленных действий будет зап ущен
мастер
Создание запроса, первое диалоговое OIOiO которого показано на рис .
5. 17.
~~: " , Сведения о эокаэох
;г_: ::~; Сотру.аниkk
.:т ~·~ CnИCQK име.:)ЩИХСR -ТОGарОа
·:;; "' Счете
.,,. '*· тип"
;: :+ Dl!llll
i:i:~ ~~= Totic.pl:)I с ценой Qtмwe средней
Щ;ц~~:~flii~~·d~N~iШN!···
Рис.
5.
5.17.
Мастер Соэдание запроса
Вам предлагается выбрать столбцы данны х для вкл ючения в запрос .
Выделяя названия необходимых таблиц и столбцов в левом списке и
щелкая на кнопке
>,
сформируйте в правом списке перечень ин тере
сующих вас столбцов . Для наглядности я предлагаю вам выбрать все
столбцы таблиu Поставщики, Заказы, Сведения о заказах и Товары.
Щелкните на кнопке Далее.
Рис.
6.
5.18. Определение критериев отбора данных
Теперь следует сформулировать правило отбора записей мя имп орти
рования в
Excel
(см. рис.
5.18).
Щелкните на н азвании того столбца,
на данные которого следует н аложить условие.
В группе элементов
fji:I
Гnава
5
управления Возвращать только записи, удовл~творяющие условиям за
дайте критерии отбора данных для запроса. Условие отбора можно
наложить на несколько столбцов, названия которых в результате будут
выделены жирным шрифтом. Предположим , что нам необходимо им
портировать в
7.
Excel
из базы данных записи всех заказов товаров по
России, сделанных после 15 мая 1996 года.
В следующих диалоговых окнах, показанных на рис.
5.19
и
5.20,
вам
будет предложено задать критерии сортировки отобранных данных и
определ ить необходимость просмотра и редактирования запроса в ок
не приложения
Рис.
5.19. Выбор
Рис.
5.20.
Query.
порядка сортировки
Последнее окно мастера создания запроса
nнanuз uнформацuu с помощью баз даннын
8.
В последнем диалоговом окне мастера Создание запроса выберите пе
реключатель Просмотр и изменение данных в
Microsoft Query
и щелкни
те на кнопке Готово. В результате вы попадете в окно приложения
Query
(рис.
5.21).
:k::oli ЩiJiji;i;я~k .. '<,•;:;цlil!Xti\:lcтli>ioo '"
'·о-' "·
'Веронике. Kynpoвueee. М~неа.же.р по закуnк.аr-' 6ольшео Саао_~~~
.,_", 0
АО Г ермани<>-Россия
. Петр Морrунов
АО Г ермани~-РОСD1Я
Петр Mopr)IНCB
мемеажер no nромж111 Теерс<м 5
Мене.4,жер по np::н:~o»:.:'lt Тввр&а.!=!: 5
Ме~еажер по npD:la-'iu ТБерс<е~> 5
.АО г ермени<>-Роа:и~~ : Петр морrу><ое
.АО Г ермани<>-Россио. , Петр моргунов
:АО Г ермани<>-Росси•" j ПетрМорrунов
·ООО Эк:sоти~о:а
Менеожер по nроае.же.>Тверс;хе.я 5 .
Ме><еажср по npone.ж~ Тверс'м 5
no эахуnк1:1JУ: Бc.ntiwo.~ Ce.aosag ул. 1~ .:
. Мен.е11жер по npone.ж е.1 Теер~~м 5
!i'
Верони11:е. Куnрi=!вцеве. МР.не.о.·•ер
' :~!i' .Н . . . . . . "-О Г_врмани.,.Роа:ия". Jlвтр морГ)'>!ов
.''~"·;~~-·{:·=
• ' '._, . .' '. '>·:> :-·."."
' ~' .. ?J;
'iti/.ИC .. J!~!IW#iil~P.~~Ф~iic!~~~o:_, ···~·::;:г:ш?Р~~с~шщ;;;~~тm;m~"~:i'~ш
;·с :;..o!:Hff~~~·U~<:::t:i.~~i.~;:~E!:~~~i·тjЫ~i~<JHi~~~~?~iiiiЗfH~:~·щ.шr~~?~/:·:<~:::.~:.:,- -~~".:;~;:1~;;;~~;"
Рис.
5.21.
Окно
Query с таблицами
базы данных "Борей"
Все выбранные при составлении запроса таблицы фигурируют в верх
ней части окна приложения в виде списков с названиями столбцов. Ме
жду элементами таблиц проведены линии со стрелками, символизирую
щие соединения
(joins)
между ними. Ниже расположены область критерия
отбора и собственно отобранные данные.
_-._ Примечание
Соединения наглядно иллюстрируют взаимоотношения между компонен
тами реляционных баз данных. Наиболее распространенными являются
внутренние
(inner)
соединения, которые определяют тот факт, что только
выбранные из таблицы записи соответствуют значениям "соединенных"
компонентов.
llm
~
Ш1
.
'
Если кнопка Автоматический режим нажата, результаты запроса
будут сразу же
Query.
В
отображены
противном
случае
в нижней
для
части
вывода
окна приложения
результатов
запроса
придется щелкнуть на кнопке Выполнить запрос. Все столбцы с
·.
~.
1.;1~1
Глава
5
данными, необходимости в которых нет, рекомендуется удалить. В на
шем случае я посоветую оставить только столбuы Название, Страна, Да
таРазмещения, НазваниеПолучателя и СтранаПолучателя.
9. J;~~.~J Шелкните на кнопке SQL ДllЯ того, чтобы ознакоми:ься с
•>'"·' текстом созданного на языке SQL запроса к внешнеи базе
данных (см. рис. 5.22).
~·;'
;; SELECТ Пост1>&шики.Назв~ие. Пос-rоешики Стр~<>.
::. За~~эы.J]атаРе.змещеwиа. 3._,k'aэыHt.1зeeнi..1eПcrryчt1тP.nQ
" Эа•аэ1:>1.Стран...Полущ1теля
:; FROM 'C:\Ptogгam Files\Office_97\0ffica\Sвmples\Бopeй· Зо""""'
•· •Заказ". 'C:\Program
Files\0ffice_97\0fke\Samples\Бope'1· Постаеwи•и ПостаеW1:1ки.
'C:\Program Files\0ftice_97\0ft1ce\S~ples\Бopeй'.'CeeдeниR о
заказ~· 'Свеnени~ о з~аз-ах',
'C:\PrQgram
F11es\Otfice_97\0ffice\S<>mples\Бop ей· То""'"" Та вар"
ERE Зака:эь~.Кс:1йЗа1<а3е. -
Рис.
5.22.
'·СвеаениQ о эаказФ·.коаЭакоэ~
Текст запроса
SQL
Запрос SQL состоит из нескольких выражений, каждое из которых
начинается с ключевого слова. Блок выражений SELECT определяет пе
речень столбцов с информативными данными. Фрагмент
FROM
перечис
ляет таблицы, которым принадлежат информативные столбцы. В блоке
WHERE
1О.
формулируется критерий отбора данных.
В случае необходимости с помощью команды Файл ~ Сохранить за
прос определение запроса можно сохранить, что позволит впоследст
вии выполнять его повторно или редактировать. Чтобы импортиро
вать отобранные данные в приложение-клиент (Ехсе!),
команду Файл~ Вернуть данные в
логовом окне Возврат данных в
Microsoft Excel.
Microsoft Excel
выполните
В появившемся диа
задайте ячейку ДllЯ
вставки столбцов и щелкнин~ на кнош<.е ОК.
Рабочий лист должен выглядеть так, как это показано на рис.
5.23.
Хранение данных· и манипуляции с ними
Любой диапазон ячеек
Excel
может быть использован в качестве базы
данных. Тоrда кажды:й столбец диапазона считается полем, которое мо
жет содержать строку длиной до 255 символов, числовое значение или
формулу. Соответственно, каждая строка диапазона будет с•штаться за
писью базы данных. Записи содержат взаимосвязанные данные. Напри
мер, измеряемые в отдельном эксперименте значения могут быть сохра
нены в одной записи. Каждое поле содержит значение соответствующего
параметра (как то давления или напряжения), измеряемого в нескольких
экспериментах.
Анаnuз uнформацuu с помощью Баз даннык
.
:.:.x::::пu;:::: .:i~Ji:O:L:U~:~Шii~LL;,;j.;j;::i1g~iJE';::.:··,j ~iiii]~;;;::ш:o•.Z::i:Jl~Ш!'!fПJif)i;>:Ш:LШ.::· . ,,
::~;~,; на~аание
Страна ДатаРа3мещения Н13ааниеПолучателя
Ъii) ООО :Экзотика
Россия
•:3::;до Германия-Россия Россия
~~.]~АО Германия-Россия Россия
;~::;до ГерманиА-Россия Россия
:;'?':.,; до Германия-Россия Россия
1.7/iAO ГерманиR-Россия Россия
fii'Чooo Экзотика
Россия
-~~-~~
•l~blAO Германия-Россия Россия
;~~-1 ООО Экзотика
. Россия
.:.ЕЬАО ГерманиR-Росс11я Россия
:12::до Германия-Россия Росси>~
•j~·1oo() Эк:ютика
Росёия
)~::ооо Экзотика
Россия
•,J~:.Ao Герман11я-Россия
Россия
:1·5::до Германия-Россия Россия
17105/96 00 00
17/05/96 00 00
20/05/96 00 00
22/05/96 00 00
23/05/96 00 00
24/05196 00 00
27/05/96 оо оо
29/05/96 00 00
04/06/96 00 00
04i06i96 00 00
04/06/96 00 00
05/06/96 00 00
05/06196 00 00
05106196 00 00
05/05/96 00 00
Гf'{
~,1~io1"~~~s_2Э1l~-~l!!iiiiiil:' :;:п
Рис.
5.23.
··· <
Save-e-lot Marкets
Save-э-lot t-Aarkets
DrachenЫul Delikatessen
SJ:Jecial1tes du monde
О1е Wandemde Kuh
СтранаПолучателя
СШ/:\
США
Германия
Франция
Германия
Gourmet lanchonetes
Браз11J111F1
P1ccolo und mehr
Австрия
Ricardo Adocicados
Бразилия
Ernst Handel
. Австрия
LilA·Supermercado
Венесуэт 1~
Pericles Comidas clasicas .Мексика
Rattlesnake Сапуоп Grocery США
Rattlesnake Canyon Grocery США
Rattlesnake Canyon Grocery США
Rattlesnake Canyon Grocery США
:·· ·.·: :•: ·:' : ; :;::. ·. :::J1E.:.~""'".;;~·:,,•_,Jo:'i"iE.c::;,:~
Записи внешней базы данных, импортированные в
Excel
Формат базы данных во многом напоминает таблицу исходных дан
ных. Однако, для обращения к информации базы данных приложение
Excel
предоставляет специальные команды и методы.
Создание диапазона базы данных
Первая запись в диапазоне базы данных содержит названия полей,
роль которых во многом сходна с ролью заголовков столбцов рабочего
листа. Названия полей должны быть простыми и описательными, при
этом они не могуг состоять более чем из одной строки и быть отделены
от остальных записей базы данных несколькими пустыми записями или
строками. Собственно записи базы данных располагаются под названия
ми полей .
.....
Примечание
Рекомендуется использовать в качестве названий полей одно слово иnи'
несколько слов, написанных слитно. В противном случае для обращения
к значениям полей из формул или программ
Visual Basic for Applications ·
их названия приходится заключать в кавычки.
Использование команд баз данных
Для поиска и манипуляций с записями баз данных предназначены
пять команд меню Данные.
'**'
•
Гnава
5
Команда Фильтр > Автофильтр отбирает записи, которые соответст
вуют определенному значению.
•
Команда Фильтр > Отобразить все отображает все существующие за
писи, скрытые после применения команды Фильтр> Автофильтр.
•
•
•
Команда Фильтр > Расширенный фильтр позволяет составить слож
ный критерий для выбора записей из базы данных.
Команда Форма позволяет просмотреть или отредактировать записи
базы данных в режиме формы.
Команда Сортировка предназначена для упорядочения строк базы
данных в соответствии с заданным критерием.
Использование форм данных
Простейшим способом обращения к базе данных Excel можно считать
команду Данные
Форма. Используя названия полей из первой строки
>
диапазона базы данных, приложение
Excel
конструирует форму с соот
ветствующими полями . Форма данны х содержит элементы управления
(кнопки) щ1я добавления и удаления записей, создания критерия, а так
же запуска процедуры поиска необходимой базы данных. Чтобы открыть
форму, щелкните на одной из ячеек диапазона базы данных и выполните
команду Данные> Форма. В результате появится показанное на рис.
5.24
диалоговое окно. Набор отображаемых в диалоговом окне полей зависит
от используемой базы данных.
Рис.
5.24.
Форма данных
Команда Данные> Фильтр> Автофильтр
Эта команда вставля.ет в верхнюю часть каждого столбца (поля) рас
крывающийся список со всеми значениями, принадЛежащими данному
столбцу. Выбор одного из перечисленных значений приводит к тому, что
Rнanuз uнформацuu с помощью баз данныи
будут отображены только те записи базы данных, соответствующие поля
которых равны выбранному значению. После применения автофильтра
стрелка раскрытия списка существующих значений и номера строк изме
няют свой цвет. Дальнейший выбор значений из списка приводит к по
следующему ограничению отображаемых записей базы данных. Выбрав
из списка значение Условие, можно будет задать критерий для отбора из
базы
данных
диапазона
записей.
Чтобы
снять
наложенные
условия
фильтрации, выберите из списка пункт Все. Отключить автофильтр мож
но путем повторного выполнения команды Данные
>
Фильтр
>
Авто
фильтр.
Команда Данные> Фильтр> Отобразить все
Эта команда предназначена для отображения всех строк списка, к ко
торому уже был применен автофильтр. Команда становится доступной
после выполнения одной из других двух команд меню Фильтр, которые
уменьшают количество видимых записей базы данных. В результате вы
полнения команды отключаются все активизированные условия отбора
записей.
Команда Данные> Фильтр> Расширенный фильтр
По сравнению с рассмотренным выше автофильтром, расширенный
фильтр позволяет задать более сложный критерий отбора записей. Диа
пазон ячеек, соответствующий условию фильтрации, следует указать в
поле Диапазон условий появляющегося в результате выполнения команды
диалогового окна (см. рис.
5.25).
Отфильтрованные ячейки можно оста
вить на месте или скопировать в указанный диапазон.
Рис.
5.25. Диалоговое
окно Расширенный фильтр
Определение диапазона условий
Чтобы корректно определить расширенный фильтр, необходимо за
дать диапазон условий. Этот диапазон состоит из копии первой записи
базы данных, которая содержит названия полей, и нескольких строк для
составления критерия поиска. В качестве критерия выступают текстовые
tfjl
или
числовые
Гаава
значения,
по
которым
и
ведется
поиск,
или
5
логические
выражения мя поиска диапазонов значений. Определение критериев для
каждого поля в значительной степени ограничивает количество возвра
щаемых записей. Считается , что наложенные на одну строку критерии
объединены с помощью оператора логической операции
AND.
Критерии,
наложенные на различные строки, объединяются с помощью оператора
логической операции
OR.
При составлении критериев поиска щ> текстовым значениям допуска
ется использовать два шаблонных символа:
?
и
*. Знак вопроса соответ
ствует одному произвольному символу. Например, критерию С?Т будуг
соответствовать значения САТ, СОТ и
CUT.
Звездочка соответствует про
извол ьном у количеству символов. Например , критерию С* будут соответ
ствовать слова стол , строка и сорока.
Определение диапазона вывода
Если предполагается не просто отфильтровать базу данных, а еще и
извлечь из нее некоторые записи. необходимо задать диапазон вывода. В
диапазон вывода в обязательном порядке входит копия первой строки
базы данных с названиями полей. Однако. диапазон вывода может со
держать только выбранные поля, а не все существующие в базе данных.
Диапазон вывода может состоять из од.Ной или нескольких строк. Ес
ли в диапазон вывода входит единственная строка с названиями полей,
приложение Excel очистит перед заполнением все расположенные ниже
ячейки. Все содержащиеся в них данные будут потеряны. Если был задан
диапазон вывода из нескольких строк, любая попытка записи отфильтро
ванных данных за
ero
пределы приведет к возникновению ошибки. Оп
ределение многострочных диапазонов вывода позвоJJяет избежать слу
чайного удаления важной информации, однако целесообразнее всеrо бу
дет копировать данные в пустую область рабочеrо листа.
Сортировка списка
Команда Данные
>-
Сортировка позволяет отсортт..~ровать выделенный
диапазон по значениям одного или нескольких столбцов. В случае сор
тировки базы данных первую строку с названиями полей не стоит вклю
чать в диапазон выделения. Показанное на рис.
5:26
диалоговое окно
Сортировка диапазона позволяет вести сорrnровку сразу по трем столб
uам.
Выберите столбцы для сортировки и укажите для каждого из них ре
жим сортировки (по возрастанию или по убыванию). В случае сортиров
ки базы данных столбцы будут фигурировать под названием поля, кото
рому они соответствуют. При сортировке обычного списка для иденти
фикации столбцов будут использоваться их стандартные обозначения (А,
В и т.д . ) .
Анаnuз uнформацuu с помощью баз данным
Рис.
5.26.
....
Диалоговое окно Сортировка диапазона
Примечание
В случае определения нескольких <;rолбцов для сортирQВКИ, список будет·
отсортирован сначала по третьему столбцу, затем по второму и лишь за-.
тем по первому. В результате записи, значения которых в первом столбце
совпадают, будут упорядочены в соответствии со вторым заданным кри-,
терием сортировки. Соответственно, записи, значения которых в первом
и втором столбце совпадают, будут упорядочены по третьему заданному
критерию сортировки.
Функции для работы с базами данных
Перечисленные
в
табл.
1.1 О
статистические
функции
практически
идентичны обычным функ;циям, однако предназначены для выполнения
стаruстических вычислений не со всем списком, а только над теми запи
сями базы данных, которые соответствуют определенному критерию. С
их помощью можно вычислить среднее значение или отклонение данных
по тем записям, которые имеют общие свойства.
Каждой функции для работы с базами данных передается три аргу
мента: база_данных, критерий и поле. С помощью аргумента база_данны.х
в функцию передается диапазон ячеек, подлежащих обработке. Аргумент
критерий соответствует ссылке на диапазон условий, аргумент поле иден
тифицирует поле базы данных, с которым предполагается проводить вы
числения. Для обозначения поля можно использовать как текстовое на
звание из первой строки базы данных, так и номер столбца в базе дан
ных.
Гnава
5
Обезвоживание борзых перед бегвми
Джулию
(Julie),
которая просматривала текст этой книги, возмутило
отсутствие биологических примеров. Будучи по образованию ветерина
ром, Джулия больше интересовалась котами и собаками, нежели компь
ютерами и полупроводИиковыми приборами. Мне пришлось призн ать ,
что я
увлекся сложными
инженерными
и научными
примерами, совер
шенно забыв о чем-то более приземленном. Н е желая обходить внимани
ем ни одну из наук (н пытаясь сохраннть мир в доме), я попросил ее
найти хороший пример , на котором можно было бы продемонстрировать
различные манипуляции с базой данных. Моя жена позвонила своей
подруге, кандидату наук Линде Блай (Liпda Blythe, DVM, Ph.D.) из кол
леджа ветеринарной медицины при университете Орегона в Корваллисе
Mediciпe at Orego11 State U11iversity in Corvallis, Oreмоем почтовом ящи ке оказался конверт с результа
собачьих забегов. Бега борзых??? Да, естественные науки по
(College of Veterinary
gon). Через неделю в
тами
2552
вернулись ко мне весьма интересной стороной.
Доктор Блай и ее коллега, доктор Дональд Хансен (Doпald Haпsen),
исследовали проблему потери веса у борзых собак перед забегом . Суть
проблемы состоит в. том, что непосредственн о перед забегом собак по
мещают в специальное помещение с кондиционером (так называемый
"gi1111y pit'').
Ожидающие старта собаки теряют до нескольких процентов
веса, причем это происходит толь ко за счет слюновыделения и дыхания,
поскольку собаки обучены не отправлять естественные надобности в
клетках.
-..__ Примечание
Через несколько лет после того, как доктор Блай любезно предоставила
мне данные о борзых собаках, она получила от принца Чарльза награду
за "большой международный вклад в организацию собачьих бегов". Эта
первая и единственная в своем роде награда была присуждена Мировой
организацией собачьих бегов
(World Greyhound Racing Federation) за ее
работы в области физиологии и рационального питания борзых, генетики,
заболеваний и, естественно ,
проблемы потери веса перед забегом.
(JAVMA, Vol. 197, No. 12, Dec.15, 1990,
р.
1563)
Собаки взвешивались перед помещением в комнату и непосредствен
но п еред забегом (с тем, чтобы убедиться в нормальном физическом со
стоянии собаки). Если собака теряла более трех фунтов веса, к забегу она
допускалась только после осмотра ветеринаром. Потеря организмом со
баки чрезмерного количества жидкости может вызвать нарушение ки
слотно-шелочного баланса, следствием которого может оказаться недос
таточная способность собаки усваивать столь необходимые ионы кисло
рода.
Анаnuз uнформацuu с помощью баз даннык
Такая потеря веса может оказаться серьезной проблемой для некото
рых борзых, что и побудило докторов Блай и Хансен заняться этой про
блемой. В качестве исходных данных они использовали протоколы забе
гов, в которых для каждой собаки указывались ее возраст, пол, вес до и
после помещения в комнату с кондиuионером, номер и класс забега, а
также показан ные в забеге результаты.
Доктор Блай прислала мне данны е о 489 собаках, участвовавших в
забегах. Естественно, я не мог привести в книге все данные , и по
этому в табл. 5.2 приведены данные о 15 собаках, участвовавших в 100
2552
забегах. Если вам лень набивать все эти данные, для того, чтобы изучить
возможные манипуляuии с базой данных достаточно 10-20 записей . Но
не удивляйтесь, если в этом случае полученные результаты будут отли
чаться от приведенны х в книге. Целесообразнее всего экспериментиро
вать с данными одного из своих проектов.
Создание базы данных
Прежде всего , следует создать базу данных , с которой мы и будем ра
бог.~ть.
1.
2.
Перейдите на новый рабочий лист и назовите его Рис.
5.27.
В ячейке А 1 наберите Потеря веса борзыми собаками перед забегом.
Задайте диапазон условий, включающий строку названий полей базы
данны х. Коль диапазон условий может быть помещен в любую об
ласть рабочего листа, расположите его непосредственно на базой дан
ных.
3.
4.
В ячейке АЗ наберите Диапазон условий.
В ячейках
A4:J4
наберите следующий теkст:
Ячейка
Содержимое
А4
Собака
84
Пол
С4
Возраст
Забег
D4
Е4
Вес...До
Вес После
F4
G4
СтаТус...до
Н4
СТатуо_После
14
J4
Класс
Потеря_Веса
Теперь создайте собственно диапаз он базы данных.
должна содержать названия полей, все последуюшие
5.
6.
-
Перв,ая строка
данны е.
В ячейке А14 наберите База данных.
Выберите ячейки A4:J4. Поместите указатель мыши на rраниuу выде
ленного диапазона и , удерживая клавишу
<Ctrl> (<Cmd>
на платфор
мах Macintosh), переташнте копию названий полей в ячейки A15:J15
(для выполнения подобной операции в предыдуших верси$JХ Excel не
обходимо воспользоваться командами Копировать и Вставить).
f fJ:J
Гпава
5
7. Столбеu J должен содержать сведения о потере веса. В ячейке J16 на
берите формулу =(E16-F16)/E16, скопируйте ее в ячейку J17 и на
значьте формат Процентнь1й с двумя десятичными знаками после за
пятой.
8. В ячейках А16:1115 наберите
9. Отключите линии сетки.
1О. Сохраните рабочую книгу.
данные rабл.
5.2.
Рабочий лист должен выглядеть так, как это показано на рис.
5.27.
Потеря веса борзыми собаками перед забегом.
диапазон условиА
Собака Поп
Возраст Забег
BecJ]o
Вес_Посnе Статус_до Статус_Посnе
Knacc
Потеря_Веса
,_,_::;
.. ~ ~~
База nанных
Собака Пол
11
6
Рис.
..:
Возраст Забег Вес_до Вес_После СтатусJ]о Статус_После Класс Потеря_Веса
1
21
47
11
9
Таблица
Собака Поп*
Воэ·
1
о
2
2
2
2
2
о
о
о
29
о
о
о
о
о
б7
1
1
3
1
1 .87%
1.72%
.,
. ,
·;
Данные об обезвоживании организма борзых перед забегом:
соотношение потерянный вес/место в забеrе
Эабеr Вес д1J
эабеrа
(мес.)
58
58
58
58
58
58
29
29
29
29
о
Б8
2
4
об обезвоживании организма борзых перед забегом
5.2.
раст
о
б2.Б
.:_:~;_---~·~·- ·,:.,._~":J'~.:ц.!,#.!i~:::;\J~j'P'"·1;;,;,1·'~~~:-::;;;;:}::::.'::~:~::~::>:.•:•.:::~f.!1:
5.27. Данные
1
1
1
1
1
БЗ.б
(фунты)
7
9
6
2
6
8
9
9
12
6
6
70.5
70.5
71
72
72
72.5
·67
67.5
68
68.5
68.5
Вес
nocne
эабеrа
Статус рр Ст~ nocne Класс Потерt~
забеrа
забеrа
забеrа** веса
(фунtы)
9
8
5
1
2
8
6
4
1
6
7
68
2
6
2
5
2
1
6
1
5
5
68
2
6
69.5
69.5
70
71.5
71
72
67
66.5
67.5
5
2
2
3
1
2
1.42%
1.42%
1.41%
0.69%
1.39%
0.69%
0.00%
1.48%
0.74%
0.73%
0.73%
Анаnuз uнформацuu с помощью liaз данныи
Собака Поп•
803·
раст
Забеr Вес рр
забеrа
(фунты)
(мес.)
2·
о
2
о
з
1
1
1
з
3
3
3
3
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
о
о
о
о
о
о
о
о
о
о
о
о
о
о
1
1
1
1
о
.О
о
о
о
о
29
29
40
40
40
40
40
40
40
23
23
23
23
23
23
23
24
24
24
24
24
24
24
47
47
47
47
47
47
47
34
34
34
34
34
34
2
6
6
12
2
2
4
12
2
12
6
2
6
6
9
9
9
9
9
6
2
12
9
9
6
9
9
9
6
12
9
9
9
6
6
12
69
69
64
64
64
64.5
64.5
65
65
76
76.5
. 76.5
76.5
77
77
77
71
71
71.5
71.5
71.5
71.5
72
58
58
58.5
58.5
58.5
59
59
71.5
71.5
71 .5
71 .5
72
72
Вес
nocne
Стаtуе до
Cr.nyc поспе
забега
забеrа
забеrа
Класс Потер11
:saбera•• веса
(фунты)
68.5
68.5
63.5
62.5
63
64
63.5
63
64
75.5.
75.5
76
75.5
76
76
76
70.5
70
71
71
71
70.5
71 .5
57
57.5
57.5
58
58
58.5
58
71
71 .5
71
71
71.5
71.5
4
7
1
3
4
2
5
2
5
4
8
9
9
8
8
з
7
8
6
5
5
4
4 .
2
6
4
6
8
2
2
5
2
7
1
5
3
6
9
1
6
2
9
8
1
3
5
2
4
6
1
2
1
2
2
3
4
1
3
2
3
4
4
7
3
3
5
9
2
2
1
1
1
1
2
1
1
1
7
1
1
7
1
1
7
1
1
1
1
1
7
7
1
1
7
' 1
1
7
0.72%
0.72%
0 .78%
2.34%
1.56%
0.78%
1.55%
З.08%
1.54%
0 .66%
1.31%
0.65%
1.31%
1.30%
1.30%
1.30%
0.70%
1.41%
0 .70%
0 .70%
0.70%
1.40%
0.69%
1.72%
0 .86%
1.71%
0.85%
0.85%
0.85%
1.69%
0.70%
0.00%
0.70%
0.70%
0 .69%
0.69%
flфi
Гnава
803·
раст
Забеr Вес до
:iaбera
(мес.)
7
8
8
8
8
о
8
8
8
8
о
9
о
9
о
9
9
9
9
9
о
9
10
10
10
10
10
10
10
о
11
11
11
11
11
11
11
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
1
1
1
1
1
1
1
11
~
12
12
12
12
о
о
о
о
34
23
23
23
23
23
23
23
23
36
36
36
36
36
36
36
36
26
26
26
26
26
26
26
21
21
21
21
21
21
21
21
28
28
28
28
(фуктw)
9
12
9
11
9
2
9
8
2
12
9
12
2
2
9
12
12
72.5
71.5
71.5
72
72
72
72
72
72.5
63
63
63.5
63.5
63.5
63.5
64
64
11
66
9
8
5
8
6
12
5
11
1
10
8
1
66
66
66
66.5
66.5
67
53
53.5
53.5
53.5
53.5
53.5
54
54
68
68
68.5
68.5
5
11
8
12
6
2
Вес nосле
забеrа
5
Стаtуе IJIJ Стаtуе nocne Кпасс Потерt1
забеrа
:iaбera
забеrа•• веса
(фунп.~)
71.5
71
71
71.5
71.5
72
71.5
71.5
72
62.5
63
62.5
63
63.5
63
62.5
63
65
64
65.5
65.5
65
65.5
66
52
52.5
53
53
52.5
53
54
53.5
67.5
67.5
68
68
3
8
1
8
1
4
9
1
2
1
1
1
2
1
9
3
2
4
6
6
2
8
2
9
4
4
9
1
2
1
1
1
1
1
1
1
2
5
7
1
9
2
3
6
1
8
9
8
6
7
6
3
6
9
3
9
2
6
3
6
1
2
3
4
2
5
2
2
1
2
3
9
9
4
9
3
2
8
8
4
1
2
1
1
3
7
3
3
3
7
2
3
3
3
3
3
3
4
3
3
2
2
2
1.38%
0.70%
0.70%
0.69%
0.69%
0.00%
0.69%
0.69%
0.69%
0.79%
0.00%
1.57%
0.79%
0.00%
0.79%
2.34%
1.56%
1.52%
3.03%
0.76%
0.76%
2.26%
1.50%
1.49%
1.89%
1.87%
0.93%
0.93%
1.87%
0.93%
0.00%
0.93%
0.74%
0.74%
0.73%
0.73%
Rнanuз uнформацuu с помощью баз даннык
Собека пол•
12
12
12
13
13
13
13
13
13
14
14
14
14
14
14
15
15
о
о
о
1
1
1
1
1
1
1
1
1
о
о
Во3-
Забеr Вес АО
раст
:taбera
забеrа
(мес.)
(фytm1)
(фytm1)
28
28
28
51
51
51
51
51
51
33
33
33
33
33
33
25
25
11
5
8
11
7
12
11
8
6
12
12
8
12
11
5
5
11
69
69
70
62
62
62.5
62.5
62.5
62.5
52
52
52
52
52.5
52.5
64
64
Вес
nocne Ста1)'С АО Ста1)'С
68.5
68.5
69
61.5
61.5
62
62
62
62
51.5
51
51
51
51
52
62.5
63
•пол: О= самка, 1 =самец.
•Класс забега: от 1 (бЬLсmрЬLй)
.Qo 5
эабеrа
3
5
7
4
8
7
1
3
4
2
5
7
4
5
5
2
6
Клесс
Потер~1
3абеn1••
11ееа
llOCJl8
эабеrа
4
7
9
2
7
3
3
3
3
6
2
2
2
4
6
6
3
6
3
2
2
5
7
3
3
9
8
9
3
3
2
5
3
3
(медленнЬLй),
6
и
7
0.72%
0.72%
1.43%
0.81%
0 .81%
0.80%
0.80%
0.80%
0.80%
0.96%
1.92%
1.92%
1.92%
2.86%
0.95%
2.34%
1.56%
считаются не
к.лассифицированными забегами.
Эти данные любезно предоставленЬL доктором Линдой Блай из универси
тета Орегона.
Применение команды Данные>- Фильтр >-Автофипьтр
Теперь мы располагаем базой данных для работы
-
попробуем из
мечь из нее некоторые данные. Предположим , что нас интересуют запи
си обо всех самках, которые выиграли забеги . Следовательно, н еобходи
мо отфильтровать такие записи из базы данных.
1. Щелкните в одной из ячеек базы данных (скажем, в ячейке А16).
2.
Выполните команду Данные
>- Фильтр >- Автофилыр
(в меню напро
тив команды должен появиться флажок). Все поля названий столбцов
будут дополнены раскрывающимися списками.
3.
Раскройте список Статус_После и выберите в нем значение
ветствующее записям собак-победителей забега.
1,
соот
flj
Гпава
5
(Все)
~Ю.. .,)
IYcnoeиe... )
2
~
з
4
s
6
7
в
9
ес_Посл:!JСтатус_JJ.!!!f Статус_Пос~ Knacd
69.5
69.5
9
8
2
8
6
1
. ~:5_~~•ll•;;;•~ш!l1·;, ·.;·/ \·
4.
Раскройте список Пол и выберите в нем зна~ение
1,
соответствующее
записям самок.
5.
Обратите внимание, что теперь на экране отображаются только четы
ре записи, соответствующие заданному критерию.
iH":~~~1~~ш~m~ .....~:.• it~~t~~~;1f~~~~1~~.~.t~~i~~~~~ШJ~~
· Баэа данных
!;si<i
CoOatld Поn~ Воэрас~ Забвjfj Bec,Jl_d Bec_Пocn.tJ
з
1
40
2
64 .б
64
6
1
47
9
58
57
11
1
21
11
53 .б
52.5
11
1
21
5
54
54
Чтобы измечь отфильтрованные записи в отдельную таблицу, выде
лите их, выполните команду Правка
>- Копировать, выберите
>- Вставить.
расположе
ние таблицы и выполните команду Правка
Применение команды Данные>- Фильтр~ Расширенный
фильтр
В случае необходимости можно одновр~менно вести поиск записей ,
соответствующих определенному критерию и копировать отфильтрован
ные записи в указанный диапазон. Для этого необходимо задать диапа
зон условий, после чего команда Фильтр выполнит все остальные дейст
вия.
1.
Еще раз выполните команду Данные
>- Фильтр >- Автофильтр
с тем ,
чтобы отключить автофильтр и отобразить все записи базы данных .
2.
В ячейке Н5 наберите
первое место) . В ячейке
J (единица идентифицируе-т собак, занявших
85 тоже наберите единицу, соответствующую
самкам.
3.
Щелкните на одной из ячеек базы данных и выполните команду Дан
ные
4.
>- Фильтр> Расширенный фильтр.
В появившемся диалоговом окно Расширенный фильтр, показанном
на рис. 5.28, поле Исходный диапазон должно быть заполнено автома
тически , поэтому остается только перейти к полю Диапазон условий и
задать в нем
A4:J5.
Анаnuз uнформацuu с помощью баз даннын
5.
Убедитесь в том, что выбран переключатель фильтровать список на
месте и щелкните на кнопке ОК .
В результате база данных опять должна сократиться до четырех запи
сей.
Рис.
5.28. Диалоговое
окно Расширенный фильтр
Извлечение записей во внешний диапазон
Чтобы не просто просмотреть записи, а извлеч ь их в отдельную таб
лицу, задайте диапазон вывода и воспользуйтесь командой Данные
>
Фильтр > Расширенный фильтр еще раз. Четкое определение диапазона
вывода позволит избежать случайного уничтожения значений важных
ячеек. Предположим, что необходимо создать таблиuу с данными о воз
расте и потере веса самками, выигравших забеги.
1.
2.
3.
4.
Чтобы вывести все записи базы данных, выполните команду Данные
>Фильтр> Отобразить все.
В ячейке LЗ наберите Диапазон вывода.
В ячейках L4 и М4 наберите Возраст и Потеря_Веса, соответственно.
Щелкните на одной · из ячеек базы данных и выполните команлу Дан
ные > Фильтр > Расширенный фильтр. Поля Исходный диапазон и
Диапазон условий появившегося диалогового окна должны быть за
полнены, но если это не так, задайте в них значения А15:1116 и
5.
чего задайте в поле Поместить результат в диапазон значение
6.
A4:J5.
Выберите переключатель скопировать результат в другое место, после
L4:M4.
Щелюtите на кнопке ОК, после чего в выбранный диапазон должны
быть скопированы соответствующие поля уже знакомых записей .
.Qиаnаэон оыоод;~
Возраст
потеря_ввса
40
47
21
0.78%
1-72%
1.87%
21
0.00%
f1фl
Гnава
5
Применение команды Данные> Форма
Другим способом ведения поиска в базе данных и выполнения мани
пуляций с ее записями является использование форм.
1.
Щелкните на одной из ячеек базы данных и выполните команду Дан
ные~ Форма.
В результате перед вами появится диалоговое окно (или форма), изо
браженное на рис. 5.24. Каждому независимому полю базы данных соот
ветствует текстовое поле формы. Вычисленные значения полей выводят
ся в форме как надписи. Расположенная посредине формы полоса про
крутки позволяет просматривать любые записи базы данных. После из
менения значения поля в форме изменяется значение соответствующей
ячейки рабочего листа (исключением являются поля, значения которых
вычисляются по формулам). Кнопки Добавить и Удалить позволяют до
бавлять и удалять записи из базы данных без необходимости переопреде
ление диапазона базы данных после внесения изменений. Измененные
значения полей записи не вносятся в базу данных до тех пор, пока вы не
перейдете к следуюшей записи. Кнопка Вернуть позволяет вернуть все
изменения,
<Enter>
внесеииые
в
текушую запись.
После
нажатия
клавиши
или перехода к следующей записи шелчок на кнопке не прино
сит никакого результата.
Чтобы задать критерий поиска, шелкните на кнопке Критерии и за
дайте необходимые условия поиска записей. За;цанные в форме критерии
поиска не имеют никакого отношения к активизированным на рабочем
листе фильтрам. Чтобы сформулировать критерий поиска из последнего
примера (все записи о самках, выигравших забеги), введите единицы в
полях Пол и Статус_После. Чтобы вернуться к редактированию формы,
щелкните на кнопке Правка. Чтобы перейти к первой соответствуюшей
заданному критерию записи, щелкните иа кнопке Далее. Кнопки Назад
и Далее предназначены для переключения между отфильтрованными по
критерию
записями.
Между
отфильтрованными
записями
возможен
только последовательный перех·од, поэтому при попытке переключения
от первой записи к последней (или от последней к первой) приложение
Excel
будет подавать звуковой сигнал. Соответственно, никаких других
действий со стороны
2.
Excel
ие последует.
~акончив работу с формой, щелкните на кнопке Закрыть.
Теперь предположим, что необходимо узиать процентное соотноще
ние самок и самцов, принимавших участие в забегах. Это можно сделать
и вручную, но я открою вам более легкий и приятный способ. С помо
щью функuии БСЧt::Т можно отдельно подсчитать количество самок и
самцов, после чего поделить полученные значения на общее количество
записей в базе данных. Но существует еше более простой способ - по
скольку для обозначения пола собаки используются числа О и 1, доста
точно будет высчитать среднее значение столбца Пол.
Rнanuз uнформацuu с помощью баз данныи
Применение специальных функций для
работы с
базами данных
L.
2.
Удалите все значения в диапазоне условий
В ячейке Е10 введите формулу:
AS:JS.
=ДСРЗНАЧ(А15:J115,2,A4:J5)
3.
Назначьте ячейке Е10 формат Процентный с двумя десятичными зна
ками после запятой.
После вычисления формулы в ячейке появится значение 34.00%. Это
значит, что 34% участвовавших в забегах собак являются самками. Обра
тите внимание, что пустые ячейки диапазона условий заставляют форму
лу обрабатывать всю базу данных.
Теперь найдем количество самок, занявших в забегах одно из трех
призовых мест.
4.
В ячейке HS введите •Н16<~.
Только что бьш задан критерий, фильтруюший записи о собаках
победителях, поэтому в ячейке Е 1О появится значение 30.43%. Ссылка на
ячейку Н16 определяет столбец для применения критерия~ Эта .ссылка
обязательно должна попасть во вторую строку диапазона базы данных.
Поскольку все приведенные данные использовались для определения
потерянного веса, было бы логично определить количество собак, кото
рые интенсивно теряли вес (имеется в виду потеря более 2.5% веса) .
5. В ячейке JS введите -=J16>0.025.
Любопытно, что значение в ячейке Е10 изменится на 100%. Это сви
детельствует о том, что все собаки, занявшие призовые места и потеряв
шие значительный вес, являются самками.
Можно продолжать задавать новые критерии поиска и анализировать
результаты. Количество удовлетворяющих критерию ячеек подсчитывает
функция БСЧt::ТА, максимальное и минимальное значение определяют
функции ДМАКС и ДМИН, стандартное отклонение и вариацию высчиты
вают функuии ДСТАНДОТКЛ и БДДИСПП , команда БДСУМ предназначе
на для суммирования значений. С помощью этих функuий можно созда
вать отдельные таблицы значений . Имейте в виду, что задаваемые для
этих функuий диапазоны не имеют никакого отношения к активизиро
ванным иа рабочем листе фильтрам. В данных диапазонах условий ука
зываются не все названия полей, а только тех, по которым будет вестись
фильтрация.
Применение команды Данные> Сортировка
Команда Сортировка меию Данные позволяет отсортировать любой
набор текстовых ил.и числовых записей. Приложение Excel поддерживает
сортировку
столбцам.
по
возрастанию
и
по
убыванию
одновременно
по
трем
fiфj
rnaвa
s
В качестве примера отсортируем базу данных забегов в соответствии с
занятым местом и потерей веса.
1.
2.
3.
Выделите ячейку в диапазоне базы данных.
Выполните команды Данные ~ Сортировка.
В списке Сортировать
no
выберите пункт Статус_После, затем выбе
рите переключатель по возрастанию.
4.
В списке Затем по выберите пункт Потеря_Веса, после чего выберите
переключатель по убыванию .
5.
Щелкните на кнопке ОК.
В результате выполненных действий рабочий лист должен выглядеть
так, как это показано на рис.
5.29.
Все записи отсортированы в соответ
ствии с занятым собакой местом и потерей веса.
Bec_noc11e Статус_до Статус_nосnе Knacc Потеря_Веса ~·
t
1
11
6
9
2
о
7
о
4
о
о
о
1
О
о
о
о
О
о
21
47
36
29
34
11
g
12
9
9
23
35
40
29
24
24
58
6
2
2
2
9
9
34
23
2
6
11
53.5
58
63.5
67 .б
72.5
76.5
53.б
64.б
69
71
71 .5
72
72
72
52 .5
57
62 .5
66.5
71 .5
75.5
63
64
68.Б
70.5
71
71.б
71 .Б
71 .б
2
4
9
6
3
1
8
з
2
4
з
8
1
2
1
1
3
1
1.87%
1.72%
1.67%
1.48%
1 .38"
1.31"
1 0 .79%
2 0.78%
2 0.72%
7 0.70%
1 0.70%
2 0.69%
7 О .69%
2 о .69%
'
'>i
:;
,,
;::;
--~·
:;::1
-
)
:
:; '
-~~~<!A~."O"-v.if.;щщ7:"~'"'r?)i!'-'ш;;;~-!::i·,~J\~::\· · ~i , ":':::·~~:·::;::::Jf!J
Рис.
5.29.
Записи базы данных, отсортированные по столбцам
Статус_После и Потеря_Веса
Резюме
Основным материалом , с которым работают инженеры и научные ра
ботники, являются экспериментальные данные, однако их анализ зачас
тую непрост. Цриложение
Excel предоставляет инструменты л.~я импор
тирования и обработки информации различного типа. В этой главе чита
тель может познакомиться со способами ввода данных в рабочий лист,
разнообразными манипуляциями с ними , а также с методикой создания
базы данных и работы с ней.
Анаnuз uнформацuu с помощью баз даннын
Дополнительная литература
Зазоры искрового разряда
CRC, Handbook of Chemistry and Physics, 5lst ed. (Cleveland, Ohio:
Chemical Rubber Со., 1971), р. Е61.
Элементарные частицы
D. Haliday and R. Resпicl<, Physics (New York: WiJley, 1967), рр. 551552.
Обезвоживание организма борзых собак перед забегом
L. L" Blythe a11d D. Е. Hanse11, "Factors Affectiпg Prerace Dehydration
апd Performaпce of Raciпg Greyhouпds'', J. Ат. Vet. Med. Assoc. 189, 12 .
(Оес. 15, 1986): 1572-1574.
L. L. Blythe, D. Е. Напsеп and А. М. Craig, "Nervous Systern" iп Care of
the Raci11g Greyhouпd, А Guide for Т rainers, Breeders and Veteriпarians,
Americaп Greyhou11d Соннсil, АЫlеппе, Kaвsas (PuЫisher), 1994, рр. 37-56.
Обзорные задачи
1.
Считайте показанный на рис.
5.6
файл в рабочий лист как текст, по
сле чеrо выполните его синтаксический анализ с помощью команды
Данные :>о-Текст по столбцам.
2.
Создайте текстовый файл со следующими данными:
23.7 ,569.82,19.2
1.882,27.9,26
19.3,239,4
95.76,9,23
115.98,23.7,23.8
19.220,19876.3,2
27.886,14.3,67.5
23.9,14.5, 14.4
Считайте этот файл в рабочий лист и выполните его синтаксический
анализ с помощью мастера импортирования.
3.
Создайте базу данных журнальных статей, которыми вы пользуетесь.
База данных должна содержать четыре поля, соответствующие автору,
названию статьи , цитате и ключевому слову. Создайте диапазон усло
вий, с помощью которого можно было бы извлекать из базы данных
статьи по заданному автору и ключевому слову.
4.
Примените команды меню Данные
:.--
Фильтр к созданной в предыду
щем пункте базе данных.
5.
Напишите на
Visual Basic
процедуру, которая будет вести поиск в базе
данных заданного слова или строки. При каждом вызове процедура
должна возвращать ссылку на следующую ячейку с заданной строкой.
f.lфJ
Гnава
5
Подсказка: Последо:~sательно анализируйте содержимое ячеек с помо
щью функции
lntStr().
Поиск следует прекратить после достижения
конца базы данных .
6.
Напишите на Visual Basic процедуру, которая выполнит синтаксиче
ский анализ файл с исходными данными из пункта 3 и разберет его
на три столбца._ Мастером импортирования пользоваться запрещено.
Вместо этого функция должна использовать метод
тия файла,
Line lnput
OPEN
для откры
для построчного считывания текста,
поиска в строках запятых и
Mid$
lnStr
для
для извлечения символов, располо
·женных между запятыми .
7.
Используя данные табл. 5.2, определите среднюю потерю веса самца
ми и самками . Отдельно определите аналогичную характеристику для
собак, занявших призовые места.
8.
Используя данные табл. 5.2, скопируйте все записи о самках во
внешний диапазон. Отсортируйте скопированные данные сначала по
занятому в забеге месту, а затем по потерянному весу .
9.
Используя данные табл. 5.2, сравните вариации потери веса самцами
и самками. Отдельно определите аналогичную характеристику для со
бак, занявших призовые места .
Упражнения
1.
Создайте базу данных периодической системы элементов. Она должна
включать поля для названия элемента , символического обозначения
(С, О, AI и т.д.), атомное число, атомный вес и количество состояний
окисления. Для элементов с более чем одним состоянием окисления
компоненты списка состояний должны разделяться запятыми .
2.
Используя базу данных из первого упражнения , вычислите средний
атомный вес для всех элементов с атомным числом меньше чем у
германия.
3.
В базе данных из первого упражнения с помощью команды Данные
>-
Фильтр>- Расширенный фильтр выберите все элементы с четырьмя и
более состояниями окисления и атомным числом более
20.
Скопи
руйте результаты во внешний диапазон .
4.
В базе данных из первого упражнения вычислите стандартное откло
нение и вариацию состояний окисления .
5.
Используя данные табл.
5.2,
составьте таблицу зависимости среднего
результата в забеге от возраста и представьте ее данные в виде диа
граммы .
6.
Используя данные табл. 5.2, вычислите средний первоначальный вес
для всех собак, занимавших в забегах первое, второе и третье место,
соответственно .
1.
Используя данные табл. 5.2, вычислите средний результат (место в за
беге) для собак, потеря веса которыми попадает в следуюшие диапа
зоны:
Rнanuз uнформацuu с помощью баз даннын
о - 0.5%
0.5 - 1.0%
1.0 - 1.5%
1.5 - 2.0%
2.0 - 2.5%
>2.5%
8.
С помощью приложения
данных Борей в
9.
Excel
Query
создайте запрос на возврат из базы
списка поставщиков и их телефонных номеров.
С помощью приложения
Query
создайте запрос на возврат из базы
данных Борей в Ехсе\ объема продаж поставщиков.
10. С
помошью приложения Query создайте запрос на возврат из базы
данных Борей в Ехсе\ списка поставщиков и их географического рас
положения. В Ехсе1 вычислите количество поставщиков в каждом
регионе .
Г11ава
6
Аппроксимация данных
В этой тавв
../
../
../
../
../
Линейна• реrресси•
Попиномиапьно• реrресси•
Методы непинейной оnnроксимации
Стотистическоя оценка степени оnnроксимации
Интерnопяционные методы
Одной из распространенных задач в науке и технике является ап
проксимация экспериментальных данных аналитическими выражениями.
Для ученых, возможность подобрать параметры уравнения таким обра
зом, чтобы его решение совпадало с данными эксперимента , зачастую
является доказательством (или опровержением) теории. Инженерам же
часто требуется описать результаты измерений аналитически для опреде
ления физических параметров.
Существуют три способа использования
Excel
для аппроксимации
данных: использование встроенных функций регрессии, преобразование
нелинейных
уравнений
в линейные
с
последующим
использованием
встроенных функций регрессии, использование надстройки Поиск
решения или программы Yisual Basic мя точного подбора параметров не
линейного уравнения. Чаще всего данные быть могут описаны встроен
ными функциями линейной и полиномиальной регрессии. Наличие ли
нейной зависимости, по крайней мере, на исследуемом интервале позво
ляет успешно использовать формулы линейного приближения .
В случае нелинейных уравнений, допускающих линеаризацию с по
мощью замены переменных, функции линейной регрессии можно при
менять к преобразованным уравнениям. Если" же уравнения не могут
быть линеаризованы, можно воспользоваться надстройкой Поиск решения
или программой на языке Yisual Basic и подобрать коэффициенты таким
образом, чтобы добиться минимальной остаточной ошибки (сумм ы квад
ратов разностей между фактическими и прогнозируемыми значениями)
или максимального коэффициента корреляции.
Наконец, те данные, которые не моrуг быть удовлетворительно опи
саны
ни
одним
из вышеперечисленных
методов,
можно представить
в
nиде таблицы, дополненной функu.ией просмотра, находящей с помощью
методов интерполяции значения дЛЯ точек , отсугствующих в таблице .
fjil
Rnnpoкcuмaцuя даннын
Использование встроенных функций
обладает встроенными возможностями регрессионного анализа,
Excel
позволяющего аппроксимировать
данные
как
прямой
линией,
так
и
сложными полиномами. Большая часть задач описания данных может
быть решена средствами линейной регрессии.
Регрессионный анализ
При использовании функций регрессии для аппроксимации данных
происходит минимизация остаточной квадратичной ошибки между фак
тическими и прогнозируемыми значениями (метод наименьших квадра
тов). Остаточная ошибка вычисляется по следующей формуле
Е=
п
L(y(x, )- У; )
2
1~1
где у(х;)
-
прогнозируемые значения, п
-
число точек, а х; и У;
-
фактические значения.
В Excel используется модель многомерной линейной регрессии. Это
значит, что прогнозируемые значения у(х;) имеют ВИд
y(x
1J
,х2 •1
, •••)
=А+ Вх 1,; + Сх 2,; +.. .
'
где А, В и С - искомые коэффициенты, которые определяются под
становкой функции у(х1 ;, х2 ;, . . .) в выражение для остаточной ошибки и
приравниванием к нул:Ю часrnых производных по всем коэффициентам.
Это приводит к системе линейных уравнений для коэффициентов. Все
вычисления производятся Excel автоматически.
Кроме коэффициентов уравнения регрессии ,
Excel
также вычисляет
дополнительную регрессионную сташстику:
•
•
•
•
•
•
стандарrnая ошибка мя оценки у;
коэффициент детерминированности (r2};
стандартные ошибки мя коэффициентов;
F-статистика;
число степеней свободы;
регрессионная сумма квадратов и остаточная сумма квадратов.
Стандартная ошибка для оценки у
Стандарrnая ошибка мя оценки у является оценкой ошибки мя еди
ничного значения у,
вычисленного
на основании
уравнения регрессии.
Эта оценка используется совмесrnо с критерием Стъюден1а для опреде
ления
доверительного
Доверительный интервал
интервала
-
мя
вычисленной
кривой.
это область вокруг прогнозируемой кривой,
в которой с определенной верояrnостью (например,
95
процентов) со-
fПJ
Гnава б
держится истинная кривая. Стандартная ошибка для оuенки у вычисля
ется по следуюшей формуле
i 11
1
L (Yi -у(х, ))
=~
где р
-
2
р
i= l
число степеней свободы (р
=
п
- 2 для
прямой линии).
Коэффициент детерминироввнности
Коэффициент детерминированности является квадратом коэффици
ента корреляции
(r).
Он показывает, насколько хорошо уравнение, полу
ченное с помошью регрессионного анализа, описывает фактические дан
ные. Коэффициент детерминированности может принимать значения от
О до
l,
причем
l
соответствует полному совпадению проrнозйруемых и
ф актических данных. Хорошей приближением считается такое, при ко
тором значение коэффициента детерминированности больше
0,9.
Коэф
фициент вычисляется по формуле
11
L (Y, -y(xJ)
r 2 = _ -'-1=_ 1_
1
_ __ __
I(Y; -(у, ))
2
_
2
i- 1
где через у обозначено среднее значение
п
L Y.
(у,) ~ ~
п
Стандвртные знвчения ошибок для коэффициентов
Стандартные значения ошибок для коэффициентов являются мерами
точности каждого из коэффициентов регрессии (А, В, ".). Стандартное
значение ошибки первого коэффициента (Sл) выч исляется с помощью
стандартной ошибки пля оценки у.
где
f jij
Rnnpoкcuмaцuя даннын
х
п
Основное применение стандартные знаt1ения ошибок для коэффици
е нтов находят при проверке статистической значимости коэффици ентов
(статистического равенства нулю). Поскольку все коэффицие нты входят
в уравнение регрессии линейно, равенство нулю какого-либо коэффиuи
ента означает отсутствие корреляции между соответствуюшим членом х и
данными у. Для проверки статистической значимости коэффициею а н~
обходимо взять значение t-распределения Стъюдента для требуемого до
верительного интервала
(1 -
а) и числа степеней свободы (р) и проверить
выполнение неравенства
IBI > ta
Sв
2·Р
.....
Примечание
Доверительный
интервал определяет вероятность того, что истинное
значение лежит в диапазоне, определенном вероятностной формулой. ·
Например, для критерия Стьюдента для коэффициентов регрессии обыч
но выбирается доверительный интервал 95% ({1 - а)= 0,95), означающий ~
95-ти процентную уверенность в справедливости провер ки коэффи_циента
ре.rр~_ссии.
Если неравенство выполняется, то коэффициент является зн ачимым
и значения у зависят от значений х, связанных с данным коэ ффициен
том . Если неравенство не выполняется, зн ачения у не зависят от указан
ны х значений х и коэффициент считается равным нулю . Остальные ко
эффициенты проверяются таким же способом . Любая хорошая книга по
инженерной статистике содержит подробную информацию по и спользо
ванию распределения
Стьюденr.э.. Таблицы значений
t-распределения
приведены в большинстве книг или мoryr быть вычислены с п омошью
функции СТЬЮДРАСПОБР(), которая возвращает значение t-распределе
ния по заданным значениям а и числа степеней свободы.
Вообше говоря, если абсолютное значение коэффициента по порядку
величины больше чем стандартное значение ошибки, то коэффициент
является зна'lимым . В случае, по крайней мере, четырех сте пеней свобо
ды (например, при построении прямой л инии по шести точкам) , значе
ние t-распределения Стьюдента для 95-проценrnого доверительного ин
тервала составляет всего лишь
2, 1
и уменьшается с увеличени ем чи сл а
степеней свободы . Поэтому можно считать , что коэффициент является
значимым, если его абсолютное значение пр евышает стандартное Jначе
ние ошибки более чем в 2,5 раза. В проти вном случае необходимо под-
181
Гnава б
ставлять в вышеприведенную формулу точное значение t-распределения
и проверять выполнение неравенства.
-._
Примечание
При сравнении значений, возвращенных фун кцией СТЬЮДРАСПОБР() с
табличными значениями, они окажутся различными. Причина заключает
ся в различных определениях вероятности, используемых при вычисле
ниях. Большинство таблиц t-распределения Стьюдента показывает зави
симость
t
от
(1 -
а12) в то время, как функция СТЬЮДРАСПОБР() вычис
ляет з~висимость
t
от а. Следует помнить, что доверительный интервал
определяется, как (1-а).
F-статистика
F-статистика используется совместно с F-значениями для определе
ния вероятности тоrо, что данные действительно описываются указан
ным выражением или совпадени е вызвано случайными флуктуациям и .
Как и в случае t-теста Стьюдента, для использования F-статистики необ
ходимо использовать значение F, взятое из таблиц или вычисленное с
помощью функции FРАСПОБР(). Табличное или возвращенное функцией
значение
F сравнивается
с вь1численным значением при одинаковых до
верительном интервале и числе степеней свободы.
значение
F
Если вычисленное
больше чем табличное, совпадение обусловлено реальной
корреляцией, а не случайными флуктуациями.
Для определения значений
ды. Первое
-
п
F
необходимы два числа степеней свобо
равно числу коэффициентов в уравнении регрессии
1-
минус один. Второе
-
р
-
стандартное число степеней свободы, равное
разносrn числа точек и числа коэффициентов в уравнении регрессии.
Значение числа степеней свободы р возвращается функцией ЛИНЕЙН и
используется в t-тесте Стьюдента.
-._
Примечание
Как и в случае с функцией СТЬЮДРАСПОБР(), функция ЛИНЕЙНО воз
вращает значения
F
по заданным значениям а, в то время, как в таблицах
обычно указывается зависимость от (1 - а).
•
Предупреждение
Порядок чисел степеней свободы п, и р строго фиксирован. Первое число
является числом степеней свободы аппроксимирующего уравнения, а
второе
-
числом степеней свободы множества аппроксимируемых точек.
Аnпроксuмацuя даннын
Число степеней ~вободы
Число степеней свободы р равняется разности числа точек и числа
коэффициентов в уравнении регрессии.
Например, уравнение прямой
лннии имеет два коэффиuиента, соответствующие углу наклона и сдвигу
по с.си у. Если имеется десять точек, чи сло степеней свободы равно
10 - 2).
8 (=
Это число используется во многих статистических таблицах при
определении доверительных интервалов.
Регрессионнея суммв квадратов и остаточнея сумме
кведра тов
Для оценки ошибки аппроксимации используются две суммы квадра
тов. Регрессионная сумма равна сумме квадратов разностей между значе
ниями у и средним значением у.
L(Y, - (у ))11
"
1-l
Таким образом, эта велнчина является мерой разброса данных отно
сительно среднего значения.
Остаточ ная сумма квадратов равна сумме квадратов разностей между
реальными и прогнозируемыми значениями у.
11
L(Y,- -у(х, ))
2
1=1
Таким образом , эта величина является мерой разброса данных отно
сительно линии регрессии. Разделив указанные величины на число сте
пеней свободы, получим дисперсию данных относительно среднего зна
чения и относительно линии регрессии. Вычислив квадратный корень
дисперсии, получим среднеквадратичное отклон ение. Полученные зна
чения показывают, дей ствительно ли данные описываются уравнением
регрессии или являются постоянными.
Вычисление линейной регрессии
Лннейный регрессионный анализ в
Excel
выполняется либо с помо
щью встроенных функций ЛИНЕЙН , ЛГРФПРИБЛ, ТЕНДЕНЦИЯ и РОСТ,
либо с помошью инструмента Регрессия пакета Анализ данных. Линейная
регрессия выполняется обоими способами практически одинаково. Ос
новное отличие закл ючается в том, что значения функuий автоматически
обновляются при каждом изменении данных, в то время как инструмент
анализа необходимо запускать вручную. Кроме того, в пакет анализа вхо
дит гораздо большее число различных статистик.
tJtN
Гnава
6
Вычисление регрессии с помощью функций
Функuии ЛИНЕЙН, ЛГРФПРИБЛ, ТЕНДЕНЦИЯ и РОСТ вычисляют
реrрессию данных рабочего листа. Все они возвращают массив, содер
жащий либо регрессионную кривую, либо коэффициенты уравнения рег
рессии. Функция ЛИНЕЙН выполняет непосредственную линейную рег
рессию_ и возврашает коэффициенты, соответствующие тангенсу угла на
клона и сдвигу по оси у. Функция ЛГРФПРИБЛ является вариацией ли
нейной регрессии, аппроксимирующие данные следующим уравнением
у = А ( вх1
)( сх~ )...
и возвращающей коэффициенты (А, В, С,
...). Функuии ТЕНДЕНЦИЯ
и РОСТ используют те же формулы для вычисления регрессии , что и
функции ЛИНЕЙН и ЛГРФПРИБЛ , но возвращают множество точек ап
проксимирующей кривой . Поскол ьку все четыре функции возвращают
массивы , их необходим о использовать с диапазонами ячеек или же опре
делять отдельные элементы массива с помошью функции ИНДЕКС .
-.._ Примечание
Для ввода формулы массива необходимо вь1делить диапазон ячеек, вве
сти
формулу
(<Cmd+Enter>
и
для
нажать
Macintosh).
комбинацию
клавиш
• <Ctrl+Shift+Enter>
Изменение отдельных ячеек после введе
ния функции массива в диапазон становится невозможным . Необходимо
либо изменить весь диапазон, либо удалить его и вставить что-либо дру
гое.
Функuии ЛИНЕЙН и ЛГРФПРИБЛ имеют следующий синтаксис:
ЛИН ЕЙН(у-массив;х-массив;конст;статистика)
•
ЛГРФПРИБЛ(у-массив;х-массив;конст;статистика).
rде у-массив является ссылкой на массив данных у, х-массив является
ссылкой на один или несколько массивов данных х, конст
-
ское значен11е, определяющее константу сдвига и статистика
это логиче
-
это логи
ческое значение, которое указывает, требуется ли вернуrь дополнитель
ную статистику по регрессии.
Если член х-массив пропущен , вместо него используется множество
натуральных чисел {l , 2, 3,.. .}. Если член конст пропущен или ИСТИНА ,
константа сдвига (А) вычисляется обычным способом. Если член конст
равен ЛОЖЬ, константа сдвига полагается равной О для функции
ЛИНЕЙН и равной
1 для
функции ЛГРФПРИБЛ. Если член статистика ра
вен ИСТИНА, вместе с коэффициентами уравнения регрессии возвраща
ется таблица из восьми или более статисrnческих значений.
•т
Аnпроксuмацuя даннык
Вычисление регрессии с помощью инструменте анализа
Инструмент Регрессия пакета Анализ данных выполняет те же самые
вычисления, что и функuия ЛИНЕЙН, но делает это только один раз. Ес
ли аппроксимируемые данные изменились, коэффициенты не пересчи
тываются, пока инструмент не будет применен повторно. Поскольку ин
струмент Регрессия входит в пакет Анализ данных, для его применения
необходимо вначале установить указанный пакет с помощью команды
Сервис>- Надстройки.
Теплопроводность арсенида галлия
В главе
2
мы вычислили температурную зависимость теплопроводно
сти кремния на основании уравнения. Кремний ямяется хорощо изу
ченным
полупроводником,
поэтому
уравнение
его
теплопроводности
можно легко найти в литературе. С другой стороны,
(GaAs)
арсенид галлия
изучен не так хорошо и нам придется аппроксимировать экспе
риментальные данные некоторым выражением.
В табл.
6.1
приведены экспериментальные данные зависимости теп
лопроволности сильнолегированного арсенида галлия р-типа от темпера
туры. Давайте начнем с простой линейной аппроксимации.
1. Откройте новый рабочий лист и присвойте ему имя Рис. 6.1.
2. Установите ширину столбuа В равной 10, столбца D равной
столбца Н равной
Таблица 6.1. Теплопроводность сильнолегированного арсенида галлия
Т (К)
250
300
350
400
450
500
550
600
650
700
750
800
850
3.
2
и
18.
(GaAs)
К (W/cm-K)
0,445
0,362
0,302
0,256
0,223
0, 197
О, 176
О, 158
0,144
О, 132
О, 121
0, 112
0,103
В ячейку А 1 введите Теплопроаодность арсенида галлия; Линейное
приближение.
4.
В ячейки А3:В3 введите и выровняйте по uентру следуюш.ие метки:
АЗ
Т(К)
аз
K(W/cm-K)
5. В ячейку А4 введите 250; в ячейку А5 введите 300; вьщелите обе ячей
ки и перетащите маркер заполнения вниз до ячейки А16.
fi:I
Гnава б
В ячейки
6.
84:816
введите значения теnлоnроводности, приведенные в
табл. 6.1.
Создайте формулу для вычисления значений у линейного приближе
ния.
1. В ячейку СЗ введите К Ожидаемое и выровняйте по центру. Устано
вите ширину столбца С равной
Присвойте ячейкам
2.
F7
и
G7
12.
имена В и А соответственно.
В ячейку С4 введите =8*А4+А; скопируйте формулу в ячейки С4:С16 и
3.
измените формат ячеек на Числовой с тремя десятичными знаками.
Определите место дЛЯ таблицы коэффициентов регрессии и статисти
ки. Полная регрессионная таблица должна содержать пять строк и по
одному столбцу на каждый коэффициент. В случае линейного прибли
жения ширина таблицы равна двум.
1. Введите следующие величины в столбцы Е, F, G и Н.
Е5
Таблица
Fб
В
Н7
Коэффициент
регрессии
Е9
r-2
F
F12
Рег.
Н8
Стд. ошибка коэфф.
Е10
Gб
А
Н9
Стд. ошибка оценки У
Е11
Сумма кв.
G12
Остаточн.
Н10
2.
Установите контуры, как показано на рис.
1.
Выделите ячейки
Степени свободы
6.1
Перейдем к вычислению коэффициентов.
F7:G11
и введите формулу
=ЛИНЕЙН(В4:816;А4:А 16;ИСТИНА;ИСТИНА)
2.
Нажмите
комбинацию
компьютерах
Macintosh)
клавиш
<Ctrl+Shift+Enter> ( <Cmd+Enter>
на
для вставки формулы .во все ячейки в виде
массива.
3.
Отключите отображение сетки.
Теперь рабочий лист должен выглядеть, как показано на рис.
6.1.
С
nомощью мастера диаграмм постройте график экспериментальной и ап
проксимированной теплопроводности (рис.
6.2).
Сравнение этих графи
ков показывает, что общая тенденция бьmа определена правильно, но
приближение дЛЯ отдельных ·точек оказывается довольно грубым. Значе
ние r2 равно 0,875, что также свидетельствует о неточности исnользован
ного приближения.
Инструмент Регрессия пакета Анализ данных может выnолнитъ те же
самые вычисления и возвратить гораздо большее количество статистиче
ских параметров. Выполним расчет еще раз, но уже с использованием
инструмента Регрессия.
1.
Создайте копию рабочего листа Рис.
6.1 (нажмите на клавишу <Ctrl>
при перетаскивании ярлычка листа). Дважды щелкните на ярлычке
нового листа и переименуйте его в Рис. 6.З.
2.
Удалите с листа все, что находится в столбце С и правее его, включая
диаграмму.
•»»
АппроксuмацШI даннык
Т
(!<)
250
К (Wltm-IQ К 0.0.Д~wое
0,445
о ;ы
0.ЗЗб
3&1
.cJ
ОД
0.311
0.256
О,2t!б
"51)
одз
500
550
0,197
О.176
0,261
0,235
0.210
600
0.1!>8
0.185
6&)
0 ,14•
0,160
700
0.132
0.134
7!:/J
0,121
0,112
0,103
0,109
0,004
0,059
00)
850
6.1.
Табл..u.. rеrоессмм
в
IA
.() ,(0)5 о ,.\87797 Ко~ффМЦ1'81fr
5,74Е-!15 О ,ОЗЗЗ66 Сrд. оwм6"3 m•фф.
O,B75l17 Одэе711 Стд. ошибка оценюо У .
r'2
F
с.""
1
• .,.
77,29436
о
116011
Per.
11
Стеnеим tеободw
0,01651
0crtfO'fH.
(!"~~· · ' '."..;~.:
5.1
Рис.
0 ,362
::00
,;t;·.··.: 1·,•
Теnлопроводность арсенида галлия: линейное приближение
o,s
"
0,4 5
о.•
i :~
0,2
"
0,15
0,1
0,DS
О +-~~--~~-.~~~~~~--~~-<
".
Рис. 6.2. Сравнение экспериментальной и аппроксимированной
теплопроводности
3.
Выберите команду меню Сервис >-Анализ данных (для этого необхо
димо предварительно установить пакет анализа в меню Надстройки),
выберите инструмент Регрессия из списка инструментов анализа и
нажмите на кнопку ОК.
fiФI
8
Гnава б
диалоговом окне Регрессия необходимо задать входной и выходной
диапазон ы и установить флажки для всех параметров группы Остатки ,
чтобы познакомиться с их работой. При выборе входного и выходного
д и ап азонов, включ и те в них не только данные, но и заголовки столбuов ,
и установите флажок Метки . При этом заголовки столбuов будут исполь
зоваться в ка•1естве меток для таблиц и линий диаграммы .
4.
В диалоговом окне Регрессия выберите параметры так, как показано
на рисунке и нажмите на кнопку ОК. (Диапазоны для ввода и вывода
можно
ввести
вручную
или
шелкнуть
на
кнопке
редактирования
и
выделить диапазон на листе.)
1ff1:~i;i::~~~!i! 1З:!
· ~~~~д~:·:.,~.::.:
' ,:-
~_,.,..,,~.,
:,',,,:." "~·····-··- ....
.. •
·"··!'·;~.
/$Е$З
,, •
51.;
·~Effi?:~+;•·i.i:~-·,:.
: i:; C!i>tf"O!>~-oeт.m. •РгРеФИ<~;.;•бо1>6
·: ·
~~~~i_Q].;~.,1..i1[_
5.
Установите ширину столбцов таким образом, чтобы все надписи таб
лиu были полностью видны .
Инструмент Регрессия выполнит все вычисления , выведет результаты
в таблиuу на рабочем листе, как показано на рис.
му,
представляющую
Ре.зультат,
впрочем ,
экспериментальные данные
не
6.3,
и
и создаст диаграм
их
отличается от достигнутого
с
алпроксимаuию.
использованием
встроенной функции ЛИНЕЙН.
Поскольку и арсенид галлия , и кремний являются полупроводниками,
можно
предположить ,
что
урав нение,
описывающее
теплопроводность
кремния, послужит лучшей аппроксимацией экспериментальных данных,
чем прямая линия . Теплопроводность кремния подчиняется уравнению
К:::
Ко
(т-т0 ) ,
где К0 и То
-
неизвестны е константы. Впрочем, это уравнение не яв
ляется линейным и не может непосредственно использоваться для ли
нейной реrрессии. Однако разрешив его относительно температуры
Т:::( ~)к0 +То
fi:JI
Rnпрок.сuмацuя данныи
получаем уравнение, линейное по переменной
1/ К.
Модифицировать ра
бочий лист дЛЯ вычисления величины 1/К и исhользования ее в качестве
х и температуры Тв качестве у достаточно просто.
6ЬJ60д итоrав
Mнt1жt!C'l llet.1ныM
О,9366З7Ш
F'
R·tc11~p•t
D.1!'75.t170 •
H~Wi<1pot1aiнныiil R·юt~
Q,eбAQ91i.t6
Cтa~ •P'nfllll DLl.l...Ю
Q.аэ87А.1329
Н аб.11:о.аt...-•
13
Пp!l!c1t•JJ1ННOllJ К Мfcl't'-K/
с.;,_,,..
3))"6153546
11536<615'
f< ~c'"'"Kl
0.6925162е
0 )1106083'
~,(IJ!ffi5ЗЗ4
.())Щ1 )51'
1 ~Д)7692Э
О.21Э5а18б81
-O~'ffil!I
-011)Э91 Щ 2
5
6
0.200571'~
-ОРЭ757Ю9
о .2ЭSЭ2417о
4;nn24176
.1 Ql292S<1T
·1.tl33Z194:'7
26,92:1176'92
34 р 1SЗ641>2
42Э17б92Э:
0.1~
7
4.0~
4 ,918111570
50
·З.176
.fJ~1
4.0156112418
-ОЛТJ277
-0."2С101855
57~
65.38401 SЭ8
10
0.210076'323
0.18'82907
0,1595112&18
0,13"335166
.()Д12З)б1 66
.о fbl'IВI2',
7Э.Р1&92ЭQЭ
11
O,IOIOll/912
0.0119 1 д18
о.~
O.(J2e159341
0,3211497$
01511115811
IЮ.11Ш3З17
12
13
о.~
0 ,Q.144(E5e'J
, 19r.!Jt.Qj
0.197
0.223
02!6
0;302
0,362
0 <45
.9
••· • .
·<
'
0,103
2)4952S0":9
8
6.3.
n~fНlfmllflь
ОJ)ЭЗ4З95б
0 ~1)
'
Рис.
.
Cm~ ocm<rml('IJ
О;эб1[В)Ц
0)Э6Э 13167
;1~
О,Ш
0,121
0,132
·ы
Е
Tr
0,1 Н
lll,46 1SЭIU&
96 15З!Щi 15
i!
~
::;t;!f',o;.~~~~H
Таблицы , полученные при работе инструмента Регрессия пакета
Анализ данных
1.
2.
Создайте копию рабочего листа Рис.
6. 1
и назовите ее Рис.
6.4.
Щелкните правой кнопкой мыши на заголовке столбuа С для выделе
н ия всего столбца и выберите в меню Вставка команду Столбцы.
3.
Измените метку в я чейке А 1 на Теп:Попроводность арсенида галлия
GaAs; линейная регрессия.
4.
5.
6.
В ячейку СЗ введите 1/К.
В ячейку С4 введите =1/В4 и скопируйте ее в ячейки С4 : С16.
Измените формат ячеек С4:С 16 на числовой с тремя десятичными
знаками.
7.
8.
Введите новую формулу для оцен ки К.
В ячейки G6 и Н6 введите метки КО и ТО соптветственно.
Выделите ячейки G6:H7, выберите команду мен ю Вставка
>-
Имя
>-
Создать , установите флажок В строке выше и нажмите на кнопку ОК.
Гnава
f..J:t.j
9.
В ячейку
6
D4 введите формулу =КО/(А4-ТО) и скопируйте ее в ячейки
D4:D16.
Теперь вычислите коэффициенты рщессии.
Примечание
-·
Ранее ячейкам G7 и Н7 были присвоены имена А и В с помощью поля
Имя. Затем им вновь были присвоены имена с помощью команды
Вставка~ Имя ~ Создать. Теперь эти ячейки имеют по два имени: А и
КО - ячейка G7, В и ТО- ячейка Н7. Любое из этих имен может исполь
зоваться в формулах. Для удаления имени применяется команда
Вставка~ Имя ~ Присвоить.
10. Выделите
ячейки
G7:H11
и измените формулу следующим образом
=ЛИНЕЙН(А4:А 16;С4:С 16;ИСТИНА;ИСТИНА)
11. Нажмите
комбинаuию
компьютерах
Macintosh)
клавиш
<Ctrl+Shift+Enter> (<Cmd+Enter>
на
для вставки формулы во все ячейки в виде
массива.
Ваш рабочий лист должен теперь выглядеть, как показано на рис.
Обратите внимание на значительное улучшение значения
r2;
6.4.
оно равно
что свидетельствует о хорошей степени приближения регрессион
0,998,
ной кривой к экспериментальным данным . Если построить диаграмму,
как показано на рис.
6.5,
то станет видно, насколько точно кривая сов
падает с исходными данными. На этом рисунке было отключено отобра
жение соединительных линий между точками для облегчения сравнения
регрессионной кривой с экспериментальными данными (маркеры).
емоnрМОАнос~
Т
(!<)
aptB)tl'\A• rа..м"" GaAs;
K(W/cm-1<)
1/К
J1:ии•\7ек111t регр1ссм.11
к °*"А••"••
О,.се4
SJ
О,«5
хо
2,75'2
3.311
О.3д
«Х1
0,362
0,302
0,256
Э,!Ui
0,256
61
0.223
500
0,197
o.tsc
Э9J
2;247
0,372
550
О.176
••484
5.D76
5fJJl
600
&!D
700
7!i0
0 .1513
6.329
0.15Б
0,1Ц
6,з.&4
0.142
7 !i16
8,264
0 ,131
0.121
ю;)
0.132
0.121
0.112
IJ!m
0,113
850
О,10З
9,'/W
0,105
Таб.nмu1
0.220
0 ,173
<егоеосим 1
l<D
1ro
f1Jfi1975 63,17157 Ко>ФФО<ц.омr
1,017655 6,Э.С2622 Сrд. оw~Б" ко>фф.
r"2
F
...... "
с
О,9962SЭ
62115,331
В.500341 Стд. оwм6к1 оцеио:м У.
11
Стtммм оео6оды
-454205 1 79.\ ..,,.,
Per.
0СТ8ТО'lt1
·,
· ··~->----···
Рис.
6.4.
Теплопроводность арсенида галлия: аппроксимация нелинейным
уравнением
fJ:ij
Аппроксuмацu.я данныи
TennonpoooNto~
GaAll
:: -----~- ------ -г:-;::--i1
·-~IЮI,....
-u
i
•
j
1
i
u
1
0)
0,1
О+-~--.~~-+-~~-+-~~....,_~~
1000
о
Рис. 6.5. Сравнение экспериментальных данных и аппроксимирующей
кривой
-.__ Примечание
При использовании преобразований нелинейных уравнений следует пом
нить , что результат вычислений является наилучшей аппроксимацией
преобразованного, а не исходного выражения. В большинстве случаев
это не имеет значения, но при преобразованиях с экспоненциальной или
логарифмической функциями может оказаться , что приближение на од
ном конце интервала лучше, ,чем на другом.
Вычисление степенной регрессии
Хотя функции
Excel
не рассчитаны на выполнение степенной регрес
сии, ее можно легко выполнить . При степенной регрессии происходи
аппроксимация данных выражением вида
у == А + Вх + Сх + · · ·
2
Это выражение можно легко приспособить для выполнения множественной линейной регрессии с помощью следующих обозначений:
Х1 ,;
=
х 2,i
= х2'
Х з,;
=
Xi
3
Х;
Давайте аппроксимируем теплопроводность арсенида галлия еще раз,
но с использованием степенной регрессии ·третьею порядка (BIUIOTh до х3).
Гnава б
f 4:j1
l.
Скопируйте лист Рис.
2.
Измените метку в ячейке А 1 на ТеплопровQдность арсенида галлия
GaAs;
6.4
и назовите копию Рис.
6.6.
полиномиальная регрессия.
4.
Выделите столбеu С и выполните команду Правка>- Удалить.
Вьшелите столбцы В и С и выполните команду Вставка>- Столбцы.
5.
В ячейки ВЗ и СЗ введите Т2 и Т3 соответственно.
3.
6.
В ячейку
7.
В ячейку
84
введите формулу •А4"2 и скопируйте ее в ячейки
С4
введите формулу
ii=A4"3
и
скопируйте
ее
в
84:816.
ячейки
С4: С16.
8.
Измените формат ячеек В4:С16 на экспоненциальный с двумя деся
тичными знаками .
Введите новую формулу для оценки К. Обратите внимание, что для
коэффициента С используется обозначение С_ (С с подчеркиванием),
поскольку символ С является зарезервированным. Поскольку имена для
коэффициентов еще не определены, все ячейки будут показывать ошибку
#REF!.
1. В ячейку Е4 введите формулу •A+B*A4+C_*B4+D*C4 и скопируйте ее в
ячейки Е4:Е16.
Теперь передвиньте таблицу, чтобы освободить место для результатов
вычислений и увеличьте таблицу регрессии.
2. Выделите ячейки АЗ : Е16 и перетащите их за контур в А14:Е27.
Вьшели те ячейки
3.
.
4.
5.
G5:J11
и перетащите их в В4: Е11, затем выделите
ячейки Е5:Е11 и перетащите и х в
G5:G11.
Установите ширины столбцов следующим обtтзом
А
7
B:F
G
10
20
Установите контуры, как показано на рис.
6.6
6. В ячейки C5:F5 введите D, В и А соответственно.
7. Вьщелите ячейки C5:F6 и присвойте им имя с
Вставка
>
Имя
>-
помощью команды
Создать (Обратите внимание, что ячейка
06
ш.~:еет
имя С_, а не С).
Теперь выполните вычисление регрессии.
8.
Вьщелите ячейки
C6:F10
и введите формулу
=ЛИНЕЙН(D15:D27;A 15:С27;ИСТИНА;ИСТИНд)·
9.
Нажмите
комбинацию
компьютерах
Macintosh)
клавиш
<Ctrl+Shift+Enter> (<Cmd+Enter>
на
для вставки формулы во все ячейки в виде
массива.
Ваш рабочий лист должен теперь выглядеть, как показано на рис. 6.6.
Вновь обратите внимание на значения r2, свидетельствующее о хорошей
степени приближения реrрессионной кривой к экспериментальным дан
ным, как это видно из рис.
6.7.
·
f1:fi
АппроксuмацШI даннык
Таб••ца ~еrрессн•
D
1
IC
IB
-2.27ЗЕ.ОЭ 4 ,ВЗ4ЗЕ.а>
2 .17().4Е
r'2
f
с."".""·
Рис.
6.6.
З ,5981Е.07
О,ООЗ8931 В
IA
.(J,003'10147 1,07785115
D,OOJ18H43 О,ОЗОЭ1047
КооффнЦ1Ое><Т
fltl/Д
аwд
Стд. оwмбк• козфф.
Сrд оw•бка oцeнJGI У.
9
АНIД
IНIД
Степ•"" свободw
О,IХЮ13б41
llН/Д
IНID
10
0,99897064
2911,0)12
0,13238451
Per.
Остаточн.
1
Теплопроводность арсенида галлия: степенная регрессия
Tennonpo•oAнocт-11. Gйда
0,6
1-·-:=-~"1
O,S
~ 0,4
!!
•
0,3
0,2
0,1
o ~~~....-~~-t-~~~~~--;...-~------1
. о
Рис.
6.7.
Сравнение
800
1000
экспериментальных данных и
аппроксимирующей
кривой
•
Предупреждение
Для получения более точного приближения можно использовать полино
мы более высоких степеней , но при этом кривая часто начинает осцили
ровать, что нежелательно. Хотя такая кривая и проходит через все ис
ходные узлы, она не является хорошим приближением для промежуточ
ных точек. Поэтому при степенях больших
3,
необходимо всегда созда
вать графики полученного приближения, чтобы убедиться в его правдо
подобности . Желательно использовать дополнительные точки по сравне
.нию с теми, по которым строилось. приt?лижение.
Гnава б
Проверка статистики
Проверьте статистические характеристики полученной кривой. Вна
чале следует убедиться, что коэффициенты регрессии А, В, С и
D
попа
дают в 95-лроцентный доверительный интервал.
а=
(1-0.95) = 0.05
а/2
= 0.025
р=
9 (из
рабочего листа)
ta/2,p = to.025,9 = ТINV(0.05,9) = 2.262
Sл = 0.0303 (из рабочего листа)
to.aдr;Sл
= 2.262 • 0.0303 = 0.0685
Это число гораздо меньше знаqения А, поэтому коэффициент А явля
ется значимым. Аналогичный анализ применяется и к другим коэффици
ентам.
Затем необходимо прове.рить, что корреляция данных с полученной
кривой
не
обусловлена
1 = 3, р =
статистики для п
случайными
9
флуктуациями.
и доверительного интервала
Значение
0,95
FРАСПОБР(О,05 ,З,9)=3,86 , что гораздо меньше вычисленного значения
стапiстики
2911,
F-
составляет
F-
поэтому корреляция между кривой и эксперименталь
ными данными не случайна. Остаточная сумма квадратов намного мень
ше регрессионной суммы квадратов. Таким образом, данные оказывают
ся сгруппированными вдоль аппроксимирующей кривой, а не разбросан
ными хаотически вокруг некоторого среднего значения.
Использование линий тренда
Если нужно просто аппроксимировать данные и построить график без
отображения данных на рабочем листе, можно восполь:.ю1щться свойст
вом диаграмм создавать линии тренда. Для этого необходимо выделить
ряд данных
на диаграмме
и
выбрать
команду
меню
Диаграмма
>
Добавить линию тренда. Откроется диалоговое окно Линия тренда, по
зволяющее выбрать параметры добавляемой линии. Существует возмож
ность создавать линии типа Линейная , Степенная, . Логарифмическая,
Экспоненциальная, Полиномиальная и Скользящее среднее . После нажа
тия на кнопку ОК, на диаграмме будет отображена выбранная линия
тренда и, по выбору, указана формула регрессии и коэффиuиент детер
минированности r2.
Выполните полиномиальную регрессию еще раз, но У'Же средствами
линии тренда.
l.
2.
Создайте копию рабочего листа Рис. 6.1 и назовите ее Рис. 6 .8.
Измените метку в ячейке А 1 на Теплопроводность арсенида галлия
GaAs;
3.
линия тренда.
Выделите ячейки СЗ:Н16 и удалите их содержимое.
t4:ta
Rnnpoкcuмaцuя даннмк
4.
Выделите ячейки А4: 816 и с помощью мастера диаграмм постройте
диаграмму типа Точечная.
5.
6.
7.
Активизируйте диаграмму, выделите ряд данных, выполните команду
Формат >- Выделенный ряд, щелкните на вкладке Вид и отключите
отображение линий, оставив только маркеры.
Выберите команду м еню Диаграмма >-Добавить линию тренда .
В ди алоговом окне Линия тренда щелкните на вкладке Тип, выберите
Полиномиальный и установите в поле Степень значение
3.
8. Щелкните на вкладке Параметры и установите флажки показывать
уравнение
на
диаграмме
и
поместить
на
диаграмму
величину
достоверности аппроксимации .
Теперь диаграмма должна выглядеть, как 1юказано на рис.
нией тренда, используемой формулой и значением г2.
6.8,
с ли
fi:f:i
Гnава
6
o.s
o.• s
О,•
i
0,3!>
О,З
~,25
0.2
..: 0,1:5
0 ,1
OJ)S
О+-~-..~~....-~---;~~---~--.
•ОО
6(10
800
1000
f емnер•тур• 00
Рис.
6.8.
Уравнение регрессии , полученное при добавлении линии тренда
~ Приме':lание ...
Чтобы числа в формуле содержали большее количество десятичны х зна
ков, необходимо выделить формулу и изменить формат представления
.l:jЭ~.H!:,IX... "" . .
."." .•.•.. " ....
."."". "" •...
Работа со сложными функциями
Есл и функция н е допускает л инеаризацию , к ней невозможно приме
нить
встроенны е
функuии
регрессии .
Например,
экспоненциальная
= АеВх может быть линеаризована с использованием ло
гарифмирования Lп(у) = Lп(А) + Вх и сопоставления величин Lп(А) и В
функция вида у
коэффициентам регр ессии. С npyroй стороны , сумма экс пон ент вида
у
=
АеВх
+
CeDx не может быть приведена к линейному виду, если неиз
D.
вестны величины В и
._.Пред.упр~ждени..е ..
Как указывалось ранее, коэффициенты , вычисленные для линеаризован
ного уравнения, являются наилучшим (по методу наименьших квадратов)
приближением для это.го уравнения , но не для исходного . Например, рег
рессия линеаризованной версии экспоненты, указанной ранее, даст наи
лучшее
приближение
для
величин
Ln(A}
и
В
линеаризованного
уравнения. Эти значения не обязательно будут наилучшим приближени
ем для величин А и В исходного выражения, хотя будут и блиЗки к такому
при{)лижению .
....
f4фi
Rппроксuмацuя данныи
~одбор коэффициентов вручную
Для аппроксимации уравнений, которые не могут быть исследованы
методами регрессионного анализа, приходится последовательно подби
рать коэффициенты для достижения максимума величины
r2,
соответст
вующего наименьшей остаточной ошибке. Коэффициент последователь
но увеличивается или уменьшается, пока не будет достигнут максимум
r2,
после чего начинается подбор следующего коэффициента. Когда таким
образом определены все коэффициенты, процесс начинается сначала для
проверки того, что изменение последующих коэффициентов не изменило
максимум предыдущих. Так продолжается до тех пор, пока не будут най
дены значения коэффициентов, одновременно обеспечивающих макси
мальное значение коэффициента корреляции.
Иногда случается так, что вместо сходимости к единственному реше
нию алгоритм начинает осциллировать между двумя значениями. Изме
нение одного коэффициента приводит к изменению максимума другого
и наоборот. В-таком случае попробуйте уменьшить шаг алгоритма. Если
это не приведет к сходимости, решение о наилучшем приближении тре
бует привлечения дополнительных соображений. Возможно, что в про
странстве решений существуют два локальных максимума и то, какой из
них будет достигнут в результате вычислений, зависит от начальных условий.
Сечение ионизации
В табл. 6_2 приведены данные о сечении ионизации гелия электрона
ми с энерrией от 150 eV до 1 KeV. Сечением ионизации называется эф
фективная площадь атома, используемая при расчете вероятности столк
новения
между электроном
и
атомом,
приводящем
к ионизации
этого
атома. Если представить атомы в виде мишеней, обстреливаемых элек
тронами, то сечение будет равняться площади
мишени.
Чем больше
площадь, тем больше вероятность столкновения и ионизации.
.
1
'
Таблица 6.2. Экспериментальное сечение ионизации rелия электронами
Энергия электронов
150
175
200
250
300
350
400
450
500
550
600
650
700
{eV)
Сечение ионизации
0,419
0,408
0,394
0,365
0,337
0,313
0,292
0,272
0,255
0,240
0,227
0,216
0,205
{7ta0 2)*
f4Фi
Гnава
Энергия электронов
(eV)
750
800
850
900
950
1000
6
Сечение ионизации (1ta0 2) *
0,194
0,187
0,178
О, 171
0,165
0,160
Из предыдущего опыта я знаю, что зависимоеть сечения от энергии
напоминает убывающую экспоненту. Следовательно, для аппроксимации
необходимо использовать выражение вида
S(E) =А( 1-е-м)
где S вольтах
'
сечение в единиuах (;roif), Е -
eV, А
энергия электронов в электрон
и В- неизвестные коэффициенты.
1.
Создайте новый рабочий лист и назовите его Рис.
2.
В ячейку А1
6 .9.
введите название Сечение ионизации rелия электро
нами.
3.
Введите следующие величины в ячейки АЗ:ЕЗ (для ввода симво,1а 1f
необходимо, удерживая нажатой клавишу <Alt>. набрать О 182 на циф
ровой клавиатуре):
АЗ:
E(eV)
83: S(11'a02)
СЗ: S расчетн.
ЕЗ: (у-<у>)2
DЗ. (у-ух)2
4.
В ячейки А4:822 введите данные из табл.
1.
Создайте таблицу для искомых коэффициентов.
Введите следующие величины в ячейки FЗ :G4 и выровняйте по пра
вому краю содержимое ячеек FЗ и
2.
6.2.
F4.
FЗ
А
GЗ
О,5
F4
В
G4
500
Присвойте ячейкам следующие имена
GЗ
А
Н6
G4
В
Н7
AvEy
Free
Теперь введите уравнение для вычисления приближенных значений у.
Следующие два столбца содержат сумму квадратов относительно кривой
и сумму квадратов относительно среднего значения, необходимые для
вычисления стандартной ошибки оценки у и ,.2.
._ Примечание
•
В Excel имеются встроенные функции для вычисления стандартной
ошибки оценки у и r2, но они моrут использоваться только для линейной
регрессии. Формулы, приведенные в данном разделе, могут использо
ваться для любого уравнения .
3.
В ячейку С4 введите следующую формулу
Rnnpoкcuмaцuя данныи
=А*{1-ЕХР(-8/А4))
и скопируйте ее в ячейки
4.
В ячейку
04
05:022.
введите формулу
=(84-С4)л2
и скопируйте ее в ячейки
5.
05:022.
В ячейку Е4 введите формулу
=(84-АvЕу)л2
и скопируйте ее в ячейки Е5:Е22.
Создайте таблицу для статистиюf
1.
2.
В ячейку Fб введите Среднее значение у <у>.
В ячейку Нб введите формулу
=СРЗНАЧ(В4:822)
3.
4.
В ячейку
F7
введите метку Степ. свободы.
В ячейку Н7 введите формулу
=сч~=т(В4:В22)-2
5.
6.
В ячейку F8 введите метку Стд. ошибка оц. У.
В ячейку Н8 введите формулу
=KOPEHb{CYMM(04:022)/Free)
7. В ячейку F9 введите
8. В ячейку Н9 введите
r.
формулу
=1-СУММ{О4: 022)/СУММ(Е4:Е22)
9.
Измените формат ячеек 84:С22 на числовой, с тремя десятичными
знаками.
1О. Измените
формат ячеек D4:E22 на экспоненциальный, с тремя деся
тичными знаками.
Теперь рабочий лист должен выглядеть, как показано на рис. 6.9.
Чтобы его использовать, выберите какие-либо начальные значения ко
эффициентов А и В, например 0,5 и 500, и введите их в таблицу (ячейки
GЗ и G4). Добавьте и отнимите О, l от коэффициента А и посмотрите,
когда значение r2 будет увеличиваться. Продолжайте добавлять или от
нимать по О, l от коэффициента А до тех пор, пока величина г2 не дос
тигнет максимального значения. Теперь подберите значение В, прибав
ляя или отнимая по
100 пока г2 вновь не достигнет максимума. Возвра
титесь к коэффициенту А, чтобы проверить, не сместился ли максимум
r1.
При необходимости, подберите кшффициент А еще раз. Продолжайте
подбор А и В пока не достигнете максимума г2 по обоим коэффициентам
одновременно.
Теперь уменьшите на порядок щаr подбора коэффициентов А и В.
Добавляйте и вычитайте 0,01 от значения А и 10 от значения В пока
вновь не достигнете максимума г2. Еще раз уменьшите на порядок шат
подбора Ан В
{0,001
найдете максимум
r2
и
l
соответственно) и повторите процесс. Когда вы
в этот раз, получите значения коэффициентов с
точностью до трех значащих цифр (А =
0,443,
В =
434,
r2 =
0,999582).
f Иj
Гnава
Как видно из рис.
6. 1О,
6
полученная кривая хорошо совпадает с данными
эксперимента.
(eV)
150
S !fao2) S рас;чет" (у · y,'f' (у· <y>'f'
0.419
а,4iё 2,зi:!Е~о7 2,4ЭЕ-02
О,Щ!
175
200,
250
0,39>1
O.P.i
П1 .... 0.337
0,313
0,:192
(J,:172;
о.255
700
· ""'':.•
Рис.
д.
0,400. 4.40Е-ОО 2,10Е-02
О 392' 2,50Е-()5
1}1Е·О2 Сред"ее эначенне у <у>: О,2бЭJ53.
о:З65 4,51Е:О9 1,04Е:О2 Cren. сво.боды
0.339: З,02Е-~. 5,4lbllЗ ётд о.;,иб•З "'>
о.жi
o;z4i з:11 E{W) 5.31 E;ai'
0,2161 4,44E:{jj
2,21ё-аз
0,205 9,57E.al
З,37Е-QЗ
.~~..,..
... ..17'
o,00i826
0.999582
У.
0,315 3.25E.ffi 2.49Е-QЗ r1
0.293: 1,71 E.ffi В,ЗВЕ·О4
0,274 4,54Е-ОО В,01Е·О5'
о.257' (1ЭЁ{6. 6.48ё-dГ
OZ2i
0,216
0,205
0.443
434
в
о.22Е( 1:1ЕIЁ{6 1,ЗОЕ.о3
'Тi\ii"
'""i[ii· · "";j'jj:
, G.,
:r ;•;::;;:;;';•::;•;;;:•::"
6.9. Сечение ионизации гелия электронами: подбор коэффициентов
вручную
О,'450 ---·········--·······················--··············································
О,ЩI
О,ЭSО
1<' 0,3)0
1-·::•..-1
~ 0,250
е 0.200
"" 0,1'50
0,100
0,050
0,000-1--~~~~~~~~~~----<
Рис.
6.10.
Расчетная кривая зависимости сечения ионизации гелия от энер
гии электронов
Автоматический подбор коэффициентов·
В последнем примере коэффиuиенты аппроксимирующего уравнения
подбирались вручную, пока не достигался максимум коэффициента де
терминированности
r2.
Такой метод иногда приходится применять, если
уравнение является сильно нелинейным или имеет странное поведение в
области решения. Такими уравнениями являются те, которые имеют ло
кальные минимумы и максимумы. Тогда для подбора коэффиuиентов
приходится прибегать к интуиции. Однако в большинстве случаев для
поиска решения можно применять машиниые алгоритмы.
f 411
Rппроксuмацuя даннын
В состав
Excel
входит дополнительная надстройка Поиск решения, ко
торая может быть использована для автоматической максимизации зна
чения г2 и аппроксимации данных. Надстройка Поиск решения разрабо
тана для подбора значений некоторых ячеек таким образом, чтобы зна
чения других ячеек удовлетворяли заданному критерию.
Использование надстройки Поиск решения
Размещение данных на рабочем листе для использования надстройки
Поиск решения аналогично предыдущему примеру. Фактически, Поиск
решения становится на ваше место, изменяет значения А и В и наблюда
ет за изменениями
r2.
Можно было бы использовать формулы массива м
в предыдущем примере , но их сложнее понять.
Начните с замены формул в столбuах формулами массива.
1.
Создайте копию рабочего листа предыдущего примера и назовите ее
Рис.
2.
6 .11 .
Выделите столбцы О и Е и очистите их содержимое с помощью ко
манды Правка
> Очистить.
3. В ячейку Н8 введите формулу стандартной ошибки оценки У
=KOPEHb(CYMM((84 : 822-C4:C22)л2)/Free)
4. Нажмите комбинаuию клавиш <Ctrl+Shift+Enter::> (<Cmd+Enter> на
компьютерах
Macintosh)
для вставки в качестве формулы массива.
5. В ячейку Н9 введите формулу для r 2
=1-СУММ((В4: 822-С4 : С22)л2)/СУММ((84:822-АvЕу)л2)
6.
Нажмите
комбинацию
.клавиш
<Ctrl+Shift+Enter> (<Cmd+Enter> на
компьютерах Maciпtosh) для вставки в качестве формулы массива.
7. Присвойте ячейке Н9 имя rsq.
Две формулы массива полностью заменяют два столбuа вычислений
из предыдущего примера. Замена в формулах ссылок на ячейки ссьшка
ми на массивы и введение формулы нажатием клавиш
<Ctrl+Shift+Enter>
позволяет втиснуть два столбца вычислений в две ячейки .
При обработке ·формул массива,
Excel
находит первую ячейку в каж
дой ссылке на массив и вычисляет результат. Затем повторяет эти дейст
вия со следующим набором ячеек и так далее, пока не исчерпаются мас
сивы.
Например, для вычисления ячейки Н8
ячеек С4:С22 из значений ячеек
список из
Excel
вычитает значения
84:822. Результат представляет собой
19 чисел , которые передаются функции СУММ, складывающей
элементы списка. Затем результат делится на содержимое ячейки
Free,
и
и з полученного извлекается квадратный корень. Если при вводе форму
лы нажать клавишу
<Enter> вместо комбинации <Ctrl+Shift+ Enter>, фор
88 и С8 (элементам массива из
мула будет применяться только к ячейкам
того же ряда , что и сама формула).
Перейдем к использованию надстройки Поиск решения .
1.
Установите значения коэффициентов А и В в ячейках GЗ и
ными
0,5
и
500.
G4
рав
'4''
2.
Гnава
6
Выберите команду меню Сервис~ Поиск решения. Если такая коман
да недоступна, необходимо ее установить, выбрав команду Сервис ~
Надстройки и установив флажок возле пункта Поиск решения в поя
вившемся списке надстроек.
3.
В диалоговом окне Поиск решения в поле Установить целевую ячейку
введите rsq.
Установите переключатель Равной:
в положение
максимальному значению и введите А; В в поле Изменяя ячейки.
Теперь надстройка Поиск решения настроена на максимизацию значения rsq путем подбора значений А и В.
4.
Для поиска решения нажмите на кноп:к-у Выполнить.
Во время работы надстройки Поиск решения в нижней части экрана
отображается текущее значение
rsq,
позволяющее контролировать про
цесс. Когда решение найдено, оно выводится на экран в диалоговом ок
не Результаты поиска решения. После этого можно сохранить найденные
значения ми восстановить исходные. Можно также вывести на печать
один из отчетов, указанный в списке Тип отчета. Если используется дис
петчер сценариев, решение можно
сохранить в виде сценария нажав на
кнопку Сохранить сценарий. Более подробную информаuию по данному
вопросу можно найти в Руководстве пользователя
Microsoft Excel
или
файлах справки.
5.
Нажмите на кнопку ОК в диалоговом окне Поиск решения.
Результат вычислений показан на рис.
6.11.
Он немного отличается от
того, который был найден вручную, поскольку тоrда процесс был пре
кращен после нахождения трех значащих цифр. Возле решения находят
ся несколько локальных максимумов, которые могут ввести вас (и Поиск
решения) в заблуждение. После того, как решение найдено, можно до-
Rппроксuмацuя даннын
полнительно исследовать область возле этого решения, чтобы определить
наличие других решений, соответствующих большему значению
Е (•YJ
S ct"')
S р~сч""'
д
150
175
о.~19
о.д19
О,4оо
о.39-4
О,доб
o;m
250
(];Я;
iэ,i\5-
DJ
О.337
О.з39
Сrд ошмбi<а
0,313
о.292
0,272
0,315
о:т
0)7i
т2
···· 200
о .255
··
0,443'>51
432,70.6
Среднее э~.а•.е~не у <у>
Стг". свобо.цЫ.
·
··
•« У
о,257
О.240
о;ю
О;д7
D.226
0,216
0,216 ..
в
r2.
700
о io5
о ,205
.
\U~"".~+fljiij2Щi~~~:\ff~~_,,~1_1~}J'4•1•'l''Ji~\iEJJZC•.;;J;t
. if'bl
~:
,., ..
Рис. 6.11. Рабочий лист после подбора коэффициентов надстройкой Поиск
решения
Использование процедуры Visua/ Basic для
автоматизации подбора коэффициентов
Если, по каким-либо причинам, работа надстройки Поиск решения
вас не удовлетворяет или требуется более полный контроль над процес
сом поиска, можно написать процедуру Visual Basic для подбора коэффициентов и нахождением решения. Ниже приведен пример такой про
цедуры, подбирающей значения А и В в зависимости от увеличения зна
чения r2.
Option Explicit
'
' Макрос подбора
' Процедура аппроксимации.
'
Sub Adjustlt()
Dim dЫА As ОоuЫе
Dim dЫВ As ОоuЫе
Dim dЫDA As
DouЫe
Dim dЫDB As
ОоuЫе
'Detta А
'Delta В
Dim dЫStop As Double ' Останавливающее значение
Dim fТest As Вoolean ' Флаг изменения
Dim dЫRsq As ОоuЫе ' Значение квадрата r
Dim dЫRsqMax As Double ' Наибольшее найденное значение квадрата r
'Инициализация переменных.
dЫА
= ActiveSheet.Range("A").Vatue
dЫВ
= ActiveSheet.RangeC'B").Value
dЫDA
dЫDB
= dЫА / 10
=dЫВ / 10
.
149
dЫStop
Гnава
6
= dЬIDA / 10000
= ActiveSheet.Range{"rsq").Value
dЫRsqMax
'Цикл пока не будет достигнуто останавливающее значение.
Do l/Vhile (dЫDA > dЫStop) ·
'fТest is True if А or В have changed in an iteration.
fТest =True
Do l/Vhile (fТest = True)
fТest = False
'Увеличиваем А и обновляем рабочий лист, проверяем, увеличилось ли значение
dblA + dЬIDA
ActiveSheet.Range("A").Value = dЫА
Calculate
dЫRsq = ActiveSheet.Range("rsq").Value
lf (dЫRsq > dЫRsqMax) Then
'Если значение r"2 увеличилось. обновляем f"\2max и
dЫRsqMax = dЫRsq
fТest =True
Else
r"2.
dЫА =
устанавливаем флаг.
'Если значение гл2 уменьшилось, пробуем уменьшить А снова проверяем.
dЫА = db1A - 2 * dЬIDA
ActiveSheet.RangeC'A").Value = dЫА
Calculate
dЫRsq = ActiveSheet. Range("rsq"). Value
lf {dЫRsq > dЫRsqMax) Тhеп
' Если значение r"2 увеличилось, обновляем гл2mах и усrанавливаем флаг.
dЫRsqMax = dЫRsq
fТest =True
Else
' Если значение r"2 уменьшилось, возвращаем А к исходному значению.
dЫА = db1A + dЫDA
ActiveSheet.RangeC'A").Vatue = dЫА
Calculate
End lf
End lf
'Теперь повторяем то же самое для В.
' Увеличиваем В и обновляем рабочий лист. проверяем, увеличилось ли значение f"\2.
dЫВ = dЫВ + dЫDB
ActlveSheet.Range("B").Value dЫВ
Calculate
dЫRsq = ActiveSheet.RangeC'rsq").Value
lf (dЫRsq > dblRsqMax) Тhen
' Если значение f"\2 увеличилось, обновляем f"\2max и устанавливаем флаг.
=
dЬIRsqMax
fТest
=dЫRsq
=True
Else
'Если значение f"\2 уменьшилось, пробуем уменьшить В снова проверяем.
dЫВ = dЫВ - 2 " dЫDB
ActiveSheet.Range("B").Value = dЫВ
Calculate
dЫRsq = ActiveSheet.Range("rsq").Value
lf (dЫRsq > dЫRsqMax) Тhen
•m
Пппроксuмацuя даннын
'Если значение
=
1""2 увеличилось,
ое>новляем
r"2max и усrанавливаем флаr.
dЬ/RsqМax dЬIRsq
fТest True
=
Else
' Если значение 1""2 уменьшилось, возвращаем
dЬIB dЫВ + dЫDB
ActiveSheet.Range("B").Value = dЫВ
Calculate
End lf
End lf
=
В к исходному значению.
Loop
'Попадаем сюда только, если ни А, ни В не изменились во время итерации.
'Умен~:.шаем как
dЫDA
dЫDB
Delta А так и Delta В в 1О
=dЬIDA / 10
раз.
= dЬIDB / 1О
Loop
End Sub
Вначале процедура копирует исходные значения А и В из рабочего
листа и инициализирует некоторые другие переменные. Затем следует
цикл, который .выполняется до тех пор, пока значение и зменения А
(dЫDA) не станет меньше останавливаюшеrо значения. Этот цикл опре
деляет число десятичных знаков в решении. Затем ~;:брасывается флаг
fГest и начинается цикл, который продолжается пока установлен флаг. В
начале каждого прохождения цикла флаг сбрасывается и затем устанав
ливается, если какой-либо из коэффициентов изменился. Если нИ: один
из коэффициентов не менялся, значит достигнуrо максимальное значе
ние r2, цикл завершается. вНугри цикла, первый блок кода увеличивает
значение А на
DA,
обновляет рабочий лист и проверяет изменение зна
чения коэффициента детерминированности r2. Если произошло уве.uиче
ние r2, новое значение сохраняется и устанавливается флаг ffest. Если
произошло уменьшение r2, значение А уменьшается на 2*dЫDA и r2 про
веряется вновь. Если значение коэффициента детерминированности r2
увеличилось, новое значение сохраняется и устанавливается флаг. Если
увеличения не произошло, значение коэффициента А восстанавливается.
Следуюший блок кода производит те же действия для коэффициента В.
Этот цикл продолжается до тех пор, пока значение r2 не может быть
более увеличено пугем изменения коэффициентов А и В . После этого
величины dЫDA и dЫDB уменьшаются в 10 раз, dЫDA сравнивается с
останавливающим значением
и, если условие остановки
не выполнено,
цикл начинается вновь. Если условие остановки достигнуго, процедура
завершается.
Вычислите сечение ионизации еще раз с использованием вышеприве
денной процедуры.
1.
2.
3.
Создайте копию рабочего листа Рис.
6.11
и назовите ее Рис.
6.12.
Выберите команду меню Сервис> Макрос> Редактор Visual Basic.
В окне редактора VisuaJ Basic выберите команду Вставке > Модуль.
Присвойте новому модулю имя Adjusters.
f 4i:J
4.
5.
rпава б ·
~ведите текст процедуры
Adjustlt.
Вернитесь · в
рабочий
инструментов
Формы
лист
с
Рис.
6.12,
помощью
активизируйте
команды
Вид
>
панель
Панели
инструментов ~ Формы, щелкните на объекте Кнопка и нарисуйте
кнопку на рабочем листе. Откроется диалоговое окно Назначить
6.
7.
8.
макрос объекту. Выберите макрос Adjustlt и щелкните на кнопке ОК.
Измените имя кнопки на Аппроксимировать данные.
Закройте панель инструментов Формы.
Измените значение А в ячейке GЗ на 0,5 и значение В в ячейке
G4
на
500.
9.
Шелкните на кнопке Аппроксимировать данные.
Значения А и В станут последовательно изменяться, пока не будет
достиrнуто решение, как показано на рис.
~:~
g:~г
о ,э;5
о ,3i5'
·Стео. свободы
0.339 .
0,315.
·Стд ошиб'"' оц. У .
0,394
0 ~7
0.313
0,292
О.272
0,255
··
Рис.
6.12.
О.24о
о:zг ·
С,393,
· Сред"еt эн3о..1&ttие у <у>
r
.
6.12.
0,263
17
0.0018)_7,
о~.
0)93'
0,'274;
...... ·--~ :f
IJ,267 :
0.242;
од! ·
0~1~ · о}Щ~ .
Нелинейная аппроксимация с помощью процедуры
Visual Basic
Просмотр таблиц и интерполяция
Часто данные невозможно описать никакой простой или относитель
но сложной функцией. В таком случае лучше всего использовать функ
ции просмотра таблиц. Эrn функции находят и интерполируют значения
из таблиц дпя заданного значения х. Фактически происходит аппрокси
мация простой кривой небольшого количества точек в окрестности инте
ресуюшей точки вместо использования сложной кривой .nля аппрокси
мации всего множества данных.
Просмотр таблиц въшолняется
с
помощью фунщий
ГПР,
ВПР
и
ПОИСКПОЗ. Функuии ГПР и ВПР производят поиск в одном столбце
таблице и возврашают значение из другого столбца в том же ряду. Функ
ция ПОИСКПОЗ также производит поиск в таблице, но возвращает поло
жение. ячейки, содержащей заданное значение.
Процесс интерполяции может быть задан в виде процедуры или с по
мощью функций рабочего листа. Различие в методах интерполяции за
ключается в уравнениях, используемых для оценки значений между за-
f 40
Аnпроксuмацuя даннык
данными точками. Простейшим и наиболее часто используемым методом
является линейная интерполяция. Еще проще использовать функции
просмотра таблиu и принять интерполяционные значения, возвращенные
ими. Во многих случаях такой подход окажется достаточным и сохранит
вам много времени . Часто используются квадратичная и кубическая ин
терполяции,
использующие
три
или
четыре
точки.
Более
сложными
функциями являются сплайны и полиномы Чебышева. Более подробную
информацию об этих методах интерполяции можно найти в книгах по
численному анализу.
Использование линейной интерполяции
Линейная интерполяция заключается в простом соединении двух то
чек, расположенных по обе стороны интерполируемого интервала, пря
мой линией . Если точки расположены достаточно близко, линейная ин
терполяция дает достаточно хорошее приближение. Кроме того, такой
метод намного проще реализовать по сравнению с другими, использую
щими более высокие порядки.
Формула линейной интерполяции в форме Лагранжа имеет вид
(х-х 2 )
(х-х 1 )
у= (
У1 + (
)У2
Х1 -х2)
Х2 -Х1
'
где Х1, х2, у 1
и у2
-
заданные точки,
а интерполируемое значение х
расположено между х 1 и Х2.
Таблицы пара
Таблицы пара содержат данные о температуре, давлении, плоrnости, ,
энтальпии и энтропии насыщенного пара , перегретого пара и воды, на
ходЯшейся под давлением. Насыщенным паром называется смесь пара и
воп.ы при такой температуре и давлении, когда обе фазы находится в
равновесии друг с другом . Линия насыщения разделяет график зависи
мости давления от температуры на две области, соответствующие пару
или воде , как показано на рис.
6.13.
Перегретый пар соответствует облас
ти над кривой насыщения со стороны более высоких температур. Вода,
находяшаяся под давлением, соответствует об.Ласти над :кривой насыше
ния со стороны более высокого давления .
Таблицы пара используются инженерами при разработке и эксnлуата
uии устройств преобразования энергии, а также использующих пар в ка
честве рабочего тела. К таки устройствам оrnосятся паровые двигатели,
паровые турбины, паро- и водонагревательные системы, ядерные реакто
ры.
Кроме того, таблицы пара используются учеными при изучении
свойств пара и воды.
Например, ядерные реакторы используют в качестве теплоносителя
воду, находяшуюся под давлением . При уменьшении давления до линии
11Фi
Гnава б
насыщения вода превращается в пар, после чего температура и давление
изменяются вдоль линии насыщения до тех пор, пока либо давление не
увеличится до такого уровня, что прекратится парообразование, либо вся
вода перейдет в пар (что, естественно , может привести к "паровому"
взрыву). К счастью, такой процесс является затухающим. При уменьше
нии давления энтальпия (называемая также тепловой функцией) тоже
уменьшается, что приводит к увеличению температуры в реакторе (как и
в любом другом котле), поскольку уменьшается отвод тепла от обласrn
нагрева. Возрастание температуры, в свою очередь, приводит к повышению давления и затуханию процесса.
~
=1·----- .-·--- .----- ----- .---- -·---- .
~·
l
12000
1500
11~,.~
~
D
~
Ш
500
-·-;::"!'
Рис.
6.13.
~
,._.,,.tf)
j
~
~
~
~
~
·.·· ·._.,. . " ".•.
:,
:,
'
., "
''
•'
'
Кривая зависимости давления от температуры для насыщенного
пара (область над кривой соответствует чистой воде, под кривой
-
чистому
пару;_ смесь пара и воды может существовать только на кривой)
В любом случае, закипание воды в реакторе являет<:я опасным явле
нием, поэтому инженерам и операторам необходимы знания о линии на
сыщения, чтобы разработка и эксплуатация реактора проходили в соот
ветствии с требованиями норм безопасности. Типичный реактор работает
при температуре порядка
600°F
(около 316°С) и давлении
2250 psi
(около
ат; psi - фунт на квадратный дюйм (pound per squaгe inch), примерно
· равен 6,5 кПа или 0,065 ат), которые находятся 'достаточно далеко от ли
146
нии насыщения .
В следующем примере мы создадим рабочий лист, который будет вы
числять давление насыщенного пара при заданной температуре.
При
этом будут использоваться функции просмотра таблиц и метод линейной
интерполяции. .Данные для расчета приведены в табл.
6. 3.
6.14.
1. Создайте новый рабочий лист и назовите его Рис.
2. В ячейку А1 введите Насыщенный na.p: линейная интерполяция.
3. Установите ширину столбца В равной 10.
4. Введите следующие метки в ячейки АЗ и ВЗ:
АЗ
Темп.
(F)
ВЗ
Давление
(psi)
.
11~11
Rnпроксuмацuя даннын
Таблица
Температура
(F)
300
320
340
360
6.3. Давление и температура насыщенного па~а
~
Давление
~
(psi)*
67
90
118
153
196
247
309
382
467
566
681
812
963
380
400
420
440
460
480
500
520
540
560
1133
1326
580
600
620
640
660
680
700
1543
1787
2060
2366
2709
3094
Теперь введите данные температуры и давления.
5.
6.
7.
В ячейки А4:А24 введите значения от 300 до 700 с шагом 20.
В ячейки 84:822 введите цифры давления из табл. 6.3.
Присвойте диапазону А4:А24 имя Temperature и диапазону
имя
84:824
Pressure.
Затем создайте таблицу ДllЯ вычисления линейной интерполяции.
8.
Введите следующие метки в ·указанные ячейки
04
05
ЕЗ
Е5
Температура
Ввод
Линейная интерполяция
Индекс
F4
F5
G5
Н5
Выходное давление
Выч.
Истинное
Ошибка
Введите несколько наутад выбранных значений температуры в стол
бец
D для
вычисления линейной интерполяции . Для сравнения с резуль
татами вычислений , введите истинные значения давления в столбец
9. Введите следующие величины в ячейки 06:011
07
510
520
09
010
D8
302
011
Об
G.
622
538
456
Функция просмотра таблиц и уравнение интерполяции слишком ве
лики, чтобы их можно было разместить в одной ячейке, поэтому помес
тите функцию просмотра таблицы в одну ячейку , а функцию интерполя
ции в другую. Для каждого значения температуры, функция ПОИСКПОЗ
возвращает номер строки, содержащей наибольшую температуру, мень
шую или равную }казанной. Обратите внимание, что ДllЯ правильной ра-
Гnава
6
боты этой функции, значения температуры должны быть отсортированы.
Первый аргумент фунI<Jдlи ПОИСКПОЗ можно установить равным О, в
таком случае функция будет искать точное соответствие, и табличные
данные могут быть неупорядоченными. Олнако при применении метода
интерполяции, данные обязательно должны быть отсортированы. Воз
вращенный номер строки используется в функции ИНДЕКС для доступа к
значениям давления и температуры, используемым при вычислении ин
терполяционных значений в столбuе
10. В ячейку Е6 введите формулу
F.
=ПOИCKПOЗ(D6;Temperature)
и скопируйте ее в ячейки Е7:Е11.
11 . В
ячейку
F6 введите
формулу
=(D6-ИHДEKC(Temperature;E6+ 1})*ИHДEKC(Pressure;E6)
/(ИHДEKC(Temperature;E6}-ИHДEKC(Temperature;E6+1 ))
+(D6-ИHДEKC(Temperature;Eб))*ИHДEKC(Pressure; Е6+1)
/(ИHДEKC(Temperature;E6+1 }-ИHДEKC(Temperature; Еб))
и скопируйте ее в ячейки
12. В
ячейки
G6:G11
G6
G7
G8
13.
F7:F11.
введите следующие величины
744
812
69
G9
G10
G11
1812.8
946.9
448.7
Вычислите ошибку интерполирующих значений.
В ячейки Н6:Н11 введите формулу
=(G6-F6)/G6
14. Измените
формат ячеек Нб:Н11 на процентный, с . тремя десятичными
знаками.
Ваш рабочий лист теперь дол'ж.ен выглядеть, как показано на рис.
6.14. Обратите внимание, что дпя всех шести тестовых значений макси
мальная ошибка составляет только
!•~· (1') ~})~-~~ (l>~ia).
--~~-
.
.
··· 11s:
... ..
':йi:
34о..
EJ:
зЕо
4оо
ё:ю[
4.40
~;
··;···· · s•i:J'
i96
' "·;·
ЭО9
~~- -······;
' 681:
812'
sm.
113з ·
5Э:I '
... ш
..... 62'2
531.
:m:
52)'
_]1•~8\1~• ~""'!P"-OJI!''!!!~. .
···
······1i :
.....
·:i=•P~:dёit. ·\:~"4~,~~=iОwибк1
153
500:
s.w·
.•. .. • .
-~;
0,5%.
456i .
12
1.
iГ
12•
в:
745~5:
81i
бЭ.З
1ё14j
947 /J:
. 45di
··· 7.ц ~
· · ···· · · .I
.IJ,335%
812 O,OOJ%
69 .{J,4З5%
iёi:i.8 ·
.1J,!JD%
94б;g.
.O,iili%
Ц8,7
.(),29J~(
' .
'
953·
Рис. 6.14. Кривая насыщения пара: использование функций
· таблиц и линейной интерполяции
просмотра
Аnпроксuмацuя даннын
Предупреждение
•
Линейная интерполяция хорошо аппроксимирует гладкие функции. Одна
ко следует помнить, что производные от линейно интерполированных
функций не являются непрерывными, поскольку такие функции имеют из
лом в каждой заданной точке. Чаще всего это не представляет проблемы,
однако, в ..моей практике был случай, когда разрывной характер произ-
водной приводил к явным структурным изменениям в результатах вычис
лений, использовавших линейную интерполяцию. Пока причина не была
выяснена, создавалось впечатление, что обнаружен новый физический
процесс. Если для ваших вычислений важна непрерывность производной,
наилучшим (и более сложным в реализации) выбором будет интерполя
ция сплайнами.
Кубическая интерполяция
После линейной интерполяции следует квадратичная, а затем кубиче
ская. Последнян является более точной, чем квадратичная, не только
ввиду использования кривой более высокого порядка, но и что более
важно, ввиду большей симметрии относительно интерполируемых точек.
При кубической интерполяции четыре последовательных точки аппрок
симируются кривой третьего порядка таким образом, что интерполируе
мая точка находится межцу двумя центральными. Формула Кубической
интерполяции в форме Лагранжа имеет вид:
(х-х 2 )(х-х 3 )(х-х 4 )
(х-х 1 )(х-х 3 )(х-х 4 )
у= ( Х1 - Х2 )( Х1 - Х3 )( Х1 - Х4) Yi + ( Х2 - Х 1 )( Х2 - Х3 )( Х2 - Х 4 ) Yl
+
Х1 )( Х - Х2 )( Х - Х 4 )
( Х - Х1 )( Х - Х2 )(х - Х3)
~+
у
(х 3 -х 1 )(х 3 -х 2 )(х 3 ~х 4 )
(х 4 -х 1 )(х 4 -х 2 )(х 4 -х3 )
(Х -
где XJ, х2, х;, х4, у1 , У2. Уз и У4 последовательные значениях и у из
~блицы. Для получения наилучшей оценки для у, интерполируемое зна
чение х должно находиться между х2 их;.
Для сравнения результатов кубической и линейной интерполяции,
расположите таблицу кубической интерполяции на одном рабочем листе
с линейной. Поскольку формула для кубической интерполяции сложнее,
чем для линейной , для ее вычисления лучше создать отдельную функ
цию. Сначала создайте таблицу интерполяции с теми же значениями, что
и в таблице линейной интерполяции.
1.
2.
3.
Создайте копию рабочего листа Рис.
6.14
и назовите ее Рис.
6 .15.
Измените метку в ячейке А1 на Насыщенный пар: линейная и
кубическая интерполяции.
В ячейку Е12 введите метку Кубическая интерполяция
11ф1
4.
f naвa 6
Выделите ячейки
D6:D11
и скопируете их в ячейки
D13:D18.
5. Выделите ячейки G6:H11 и скопируете их в ячейки G13:H18.
6.
В ячейку
F1 З
введите формулу
=Cublclnterpolation(Temperature;Pressure;D13)
и скопируйте ее в ячейки F13:F18.
7. Выберите команду меню Сервис > Макрос > Редактор Visual Basic. В
окне редактора
Visual Basic
свойте новому модулю имя
8.
выберите команду Вставка> Модуль. При
lnterpolator.
Введите в оюю модуля следующие процедуры:
Option Explidt
Option Base 1 'Make arrays start at 1
'
' Функция кубической интерполяции
1
Function Cublclnterpolation{mgXArray As Variant, mgYArray As Variant, mgX As Variant) As
DouЫe
Dim intlndex As lnteger
Dim intl As lnteger
Dim inU As lnteger
Dim dЫProd As DouЬle
' Находим положение интерполируемого значения.
=
For intlndex 1 То UBound(mgXArray.Value)
lf (mgX < mgXArray(intlndex)) Then
Exit For
End lf
Next intlndex
' Если от любого конца таблицы менее двух точек,
' устанавливаем индекс равным двум точкам.
=
lf intlndex < 2 Тhen intlndex 2
lf intlndex > UВound(mgXArray.Value) - 2
' Обнуляем переменную суммирования.
Тhen
intlndex
=UВound(rngXArray.Value) - 2
=
CuЬiclnterpolation О
' Этот цикл вычисляет слагаемые в формуле интерполяции в форме Лагранжа.
For intl
=intlndex - 1 То intlndex + 2
=1
·
dЫProd
For intJ = intlndex - 1 То intlndex + 2
lf (intl <> intJ) Тhen
dЫProd dЫProd * (mgX - mgXArray(intJ)) / (mgXArтay(intl) - mgXArray(intJ))
End lf
Next intJ
Cublclnterpolatioп CuЬiclnterpolation + dЬIProd • mgYArray(intl)
Next intl
End Function
=
=
.
'
Эта процедура используется для запуска CuЬiclnterpolation для тестирования .
Sub testit()
Dim scratch As DouЫe
'scratch = CuЬiclnterpolation(Array(10, 20, 30, 40, 50), Array(1, 2,
End Sub
З,
4, 5), 2)
Rnnpoкcuмaцuя даннын
Теперь
ваш
рабочий
лист
должен
выглядеть,
рис.
6.15. Если обновление ячеек не произошло,
(<Cmd+=> на компьютерах Macintosh).
как
показано
нажмите клавишу
на
<F9>
,;1
, ., ;!;
Рис.
6.15.
Линейная и кубическая интерполяции, для кривой насыщения
пара
Обратите внимание на уменьшение на порядок амплитуды ошибки цо
сравнению с линейной интерполяuией . В данном слуа~:ае это улучшение
может показаться не
очень важным,
поскольку предыдущие результаты
тоже были достаточно точными. Однако для более нелинейных кривых
такое улучшение может оказаться существенным. Кроме того, количество
разрывов в производной при кубической интерполяuии также намного
ниже.
Использование весовых коэффициентов
Процесс
точкам
присвоения
весовых
коэффициентов
выглядит довольно запутанным,
если
экспериментальным
смотреть непосредственно
на уравнения, его реализующие. На самом деле это просто способ ука
зать, что какие-то точки имеют большую степень точности, чем другие.
При аппроксимации взвешенного набора точек, кривая пройдет ближе к
тем точкам, которые имеют больший вес.
Присвоение веса фактически соответствует добавлению дополнитель
ных точек с тем же самым значением. В большинстве алгоритмов значе
ния каждой точки умножаются на весовую функцию , а затем число точек
умножается на такой же множитель. Присвоение весов такого типа явля
ется частью алгоритма решения, доступ к которому в
Excel
невозможен.
Для присвоения веса точкам данных можно просто дублировать эти точ
ки пропорционально степени точности или важности их значений. Мае-
Гnава б
штаб дублирования не имеет значения, только относительные веса. На
пример, если имеются две точки и одна из них измерена в два раза точ
нее другой, можно более точное значение указать дважды, или же ввести
менее точное значение дважды, а более точное четыре раза,
-
результат
будет олин и тот же.
Резюме
В этой главе описываются способы аппроксимации данных. Простая
линейная аппроксимация реализуется с помощью встроенных функций
ЛИНЕЙН н ЛГРФПРИБЛ или с помощью надстройки Регрессия пакета
Анализ данных. В большинстве случаев даже нелинейные функции мoryr
быть аппроксимированы таким образом пугем предварительной замены
переменных. Кроме того, функция ЛИНЕЙН используется для полиноми
альной регрессии.
Если вы не планируете использовать данные на рабочем листе, можно
воспользоваться свойством дИаrрамм создавать линии тренда. При этом
достаточно указать тип аппроксимирующей кривой, и она будет добавле
на на лиаграмму вместе с коэффициентом детерминированности.
Для аппроксимации более сложных функций нужно использовать
пошаговый алгоритм подбора коэффициентов. Такой алгоритм может
быть реализован как вручную, так и автоматически, с использованием
надстройки поиск решения или программы Visual Basic.
Когда аппрокснмация данных известной функцией затруднена или
нежелательна, можно воспользоваться функциями просмотра таблиц и
интерполяцией . Такой подход может быть реализован как с помощъю
функций рабочего листа, так и в виде функции
Visual Basic.
Присвоение весов является процессом описания некоторых точек как
более точных и, таким образом, аппроксимирующая кривая должна про
холить к ним ближе, чем к другим точкам. Присвоение весов происходит
дублированием более точных значений.
Дополнительная литература
Статистические методы и t-критерий
С. Lipson, N. J. Sheth, Statistical Design and Analysis of E!fgineering
Experiments (New York: McGraw- Hill, 1973).
R. М. Bethea, В. S. Duran, Т. L. Boullion, Statistical Methods for Scientists
and Engineers (New York: Marcel Dekker, 1975).
Теплопроводность арсенидв галлия
Maycock, "Thermal Conductivity of Silicon, Germanium, III-V Compound and III-V Alloys", Solid State Electrrmics 10 (1967): l 61-168.
11~11
Аппрокtuмацuя данныи
Сечения ионизации
D. Rapp, Р. Eng]ander-Golden, "TotaJ Cro~ Sections for Ionization and
Attachment Ьу Electron lmpact: 1. Positive Ionization," J. Chem. Physics 43, 5
(Sept. 1, 1965): 1464-1479.
Методы еппроксимации
С. Gerald, App/ied Numerica/ Ana/ysis (Reading, Mass: Addison-Wesley, 19]8).
W. Н. Pre~, et aJ., Numerical Recipes: Тhе Art of Scientific Computing
(Cambridge, Eng.: Cambridge University Press, 1986).
Теблицы пара
С. А. Meyer, Тhermodynamic and Transport Properties of Steam (New York:
Americari Society of MechanicaJ Engineers, 1967).
Обзорные задачи
1. Температурная зависимость энергетической зоны кремняя приведена
в следующей таблице.
Температура (К)
Ширина
зоны (eV)
Температура (К)
Ширина
зоны (eV)
о
1, 16
1,16
1, 15
1, 15
1, 14
400
450
500
1,09
1,07
1,05
1,03
1,01
0,99
0,97
0,95
0,92
50
100
150
200
250
1, 13
300
350
1, 12
1, 10
550
600
650
700
750
800
Использую линейную регрессию, аппроксимируйте эm данные пря
мой линией 1t постройте график.
2.
Аппроксимируйте данные из задачи
1
с помощью полиномиальной
регрессии второго порядка и постройте график.
3.
Температурная зависимость энергетической зоны кремния подчиняет
ся уравнению
Е
в
=
Е - АТ2
go
(Т +В)
•
где Eg - ширина зоны; Т - темnература в градусах Кельвина , Eg0. А и В неизвестные константы. Это уравнение можно представить в виде поли
нома следующим образом:
[Е" ~Е.] ~ ~[ Eg0 ~EJ- ~[ Е" ~Е.]
'
11Фi
Ego
Гnава
равняется значению
Eg
6
при Т = О. Определите коэффициенты урав
нения с помощью полином иальн ой регрессии . Решение даст значения
величин 1/ А и 1/ В, из которых можно легко определить сами коэффици
енты А и В. Постройте график.
4.
Проведите подбор коэффици ентов в примере из рис. 6.9 вручную.
Для целых значений В от 430 до 438, определите максимальное зна
чение
r2
подбором значений А. Постройте график зависимости
r2
от
В. Три локальных максимума на этом графике вводят в заблуждение
программы автоматического подбора, которые находят только один из
них и не обязательно наибольший.
5.
6.
7.
И1.:11ользуя даннЬJе из задачи 1, напишите линейную функцию про
смотра, интерполирующую значения Eg по заданной температуре Т.
Выполните задачу 6 с помощью кубической интерполяции.
Аппроксимируйте зависимость давления пара от температуры, приве
денную в табл. 6.3, прямой линией. Вычислите остаточную ошибку в
каждой точке (разность между регрессионной кривой и исходными
данным) и постройте график.
8.
Алпроксимируйте зависимость давления пара от температуры, приве
денную в табл. 6.3, с помощью полиномиальной регрессии . Попро
буйте различные степени полиномов и постройте график. Вычислите
и постройте график остаточной ошибки.
9.
Вычисл ите значение сечения ионизации для электронов с энергией
524 eV
с помощью данных, приведенных в табл.
6.2,
и линейной ин
терполяции.
10. Выполните
задачу
10 с
помошью кубической интерполяuии.
Упражнения
1.
Постройте график с данными из задачи
и линией тренда. Попро
буйте различные типы линий для определения наилучшей.
2.
В следуюшей таблице содержатся даниые о величине прогиба кон
сольной балЮI с грузом на коице в зависимости от расстояния от за
крепленного конца.
Алпроксимируйте данные с помощью
линейной регрессии .
Расстояние
(дюймы)
Прогиб
(дюймы)
Расстояние
(дюймы)
Прогиб
(дюймы)
о
0,0000
-0,0245
0,0951
0,2077
0,3581
0,5420
0,7553
84
96
108
120
132
144
0,9938
1,2533
1,5295
1,8184
2, 1156
1,4170
12
24
36
48
60
72
формул
11фi
Annpoкcuмaцu11 данным
3.
4.
5.
Аппроксимируйте данные из упражнения 2 с помощью полиномиаль
ной регрессии. Не забудьте проверить, являются ли полученные ко
эффициенты значимыми.
Используя данные из упражнения 2 и описание балки, приведенное
на рис. 2.15, аппроксимируйте даииые уравнением изгиба с помощью
надстройки Поиск решения и определите вес груза на конце балки на
основании вычислеииых коэффициентов.
Зависимость плотности собствениых носителей от температуры при
ведена в следующей таблице. Аппроксимируйте данные с помощью
функции ЛГРФПРИБЛ. Соответствует ли полученный результат урав
нениям, приведенным в главе 2? Аппроксимируйте данные с помо
щью полиномиальной
регрессии.
уравнениям, приведенным в главе
Температура Плотность соб(К)
ственных носителей (см-3)
6,21 Е+О9
2, 18Е+11
300
350
400
450
500
550
6.
Температура
(К)
3,28Е+12
2,79Е+ 13
1,58Е+14
6,70Е+14
этот результат
Плотность собственных носи
телей (см-3)
600
650
700
750
800
2,26Е+15
6,44Е+15
1,60Е+ 16
3,54Е+16
7,18Е+16
Аппроксимируйте данные из упражнения 5 с помощью кривой, при
веденной в главе 2. Соответствуют ли вычисленные коэффициенты
тем, что содержатся в главе
7.
Соответствует ли
2?
В табл.
2?
3.1 приведена температура различных участков перенапряжен
ного кремниевого диода. Напишите функцию линейной интерполя
ции, определяющую температуру в заданной точке
z при
фиксирован
ном значении у (т.е. выполняющую иитерполяцию вдоль одного из
столбцов таблицы).
·
8.
Выполните упражнение
7
с помощью метода кубической интерполя
ции.
9.
Вновь используя табл.
3.1,
напишите функцию двумерной линейной
интерполяции, возвращающую температуру при произвольных значе
ниях
z и у.
(Совет: проведите интерполяцию по двум столбцам по
z
и
используйте эти два результата для интерполяции по у).
1О.
Напишите функцию
VisuaJ Basic,
реализующую лииейный метод наи
меньших квадратов с весами. Введите даннь1е и произвольную весо
вую функцию в отдельнь1е диапазоны ячеек и вычислите коэффици
енть1 прямой и значение
r2.
Гпава
7
Суммирование рвдов
В э'l'Oil тавг...
"'
"'
"'
"'
Нахождение рекуррентнwх соотношений
Суммирование по •чейкам
Метод итераций
Нохождение реwени• с помощ1t1О процедуры
Многие важные функции, используемые в научных и инженерных
расчетах, представляются только в виде рядов. В особенности это касает
ся дифференциальных уравнений - их решения зачастую невозможно
представить в виде замкнугого выражения, только в виде ряда. Примера
ми рядов, ямяющихся решениями дифференциальных уравнений, мoryr
служить функции Бесселя, полиномы Лежандра и Лагерра.
Сумму ряда в
Excel
можно вычислить тремя способами: либо вычис
лить значение каждого члена ряда и затем сложить эти значения, либо
создать итерационную формулу, вычисляющую за один проход значение
одного слагаемого и добамяющую его к решению либо написать функ
цию Visual Basic, вычисляющую сумму любого числа членов. Последний
метод является наиболее мощным.
Суммирование рядов в рабочем листе
Простейшим способом вычисления суммы ряда является расположе
ние всех членов в соседних ячейках и их суммирование. Несмотря на то,
что будет занята большая часть рабочего листа, такой способ ямяется
интуитивно поНЯ'IНЬIМ, поскольку позволяет увидеть значения всех сла
гаемых. Эrо позволяет почувсrвовать, как происходит суммирование, и
оценить сходимость ряда.
Встроенная функция
РЯД.СУММ
Excel
может суммировать только
степенные ряды СJiедующего вида:
ssum = а1хп
+а х<п+т) +а х<п+lт) + ...
2
3
Для применения этой функции необходимо исп0ЛЬ30вать массив, со
держащий все коэффициенты а;. Если же приходится создавать такой
массив, то можно сразу включить в него степени х и вообще не исполь
зовать функцию РЯД.СУММ.
Суммuрованuе рJ1дов
1111
Для большинства рядов, используемых на практике, обычно сущест
вуют рекурренrnые соотношения, связывающие м ежду собой последова
тельные члены ряда. Зачастую такая связь состоит в существовании спе
циального сомножителя, произведение которого с любым членом ряда
дает следующий член. Использование рекуррентных соотношений суще
ственно уменьшает количество вычислений, особенно для рядов со сте
пенями и факториалами.
Функции Бессепя
Функции Бесселя lп(х) являются решением дифференциального урав
нения Бесселя:
dx; +х Jx +(х
d2
d
при у
= lп(х).
х
2
2
-п 2 )у=О
Это уравнение встречается во многих физических зада
чах, например, при решении волнового уравнения в цилиндрических ко
ординатах. Д11я функций Бесселя существует также интегральное пред
ставление следующего вида:
Jn (х) = _!_ rn cos( nv- xsin( v) )dv
1t Jo
Хотя функции Бесселя определены для произвольных значений п,
чаще всего встречаются функции целого порядка. Для целых значений п
функция Бесселя представляется в виде ряда
<х:>
Jn(x)=L
s=O
lУ
(
-
(Х)
n+2s
s!(n + S)! 2
<х:>
=l:Gs(n,x)
s=O
Для нецелых значений п вместо факториала (п + s)! подставляется
гамма-функция Эйлера Г(п + s + 1).
Для нахождения величин GJ.n,x), являющимися членами ряда для
функции Бесселя целого порядка, можно воспользоваться следующими
рекуррентными соотношениями:
Gs (п,х) = G5 _ 1 (п,х) (-1) (х)
s(n+s) 2
2
хп
Go =-2п1
п.
При использовании рекуррентных соотношений , факториал вычисля
ется только один раз для первого слагаемого ( Go). Остальные члены ряда
получаются просто пугем умно:ж:еющ предыдущего члена на рекуррент
ный множитель.
iJfj
Гnава
7
В следующем примере вычисляются значения функции Бесселя це
лого порядка п. Суммирования первых десяти членов ряда оказывается
достаточным для получения ошибки менее одного процента для значе
ний х, не превышающих восьми. Кроме того, в Excel имеется встроенная
функция БЕССЕЛЬ.J, также вычисляющая значения функuий Бесселя.
Она используется для проверки точности вычислений.
l. Откройте новый рабочий лист и назовите его Рис. 7 .1.
2. Установите ширину столбuа А равной 14.
3. В ячейке А1 введите название Функция Бесселя; метод суммирова
ния .
4.
Теперь введите п, п! и х.
В ячейки А4 , В2 и ВЗ введите метки х,
n
и
n!
соответственно и вы
ровняйте их по правому краю.
5. Присвойте ячейкам С2 , СЗ и 84 имена N, NF
6. В ячейку СЗ введите формулу •ФАКТР(N).
и Х соответственно.
Добавьте встроенную функuию БЕССЕЛЬ. J. Обратите внимание, что
со встроенными функциями используются только дискретные значения
или ссьmки на ячейки,
использование поименованных диапазонов не
допускается. Введите формулу, суммирующую все чЛены ряда.
7.
В ячейку А5 введите метку БЕССЕЛЬJ и выровняйте ее по правому
краю.
8.
В ячейку
85
введите формулу
=БЕССЕЛЬ.J(Х;N)
9.
В ячейку А6 введите метку
10. В ячейку 86
Jn(x)
и выровняйте ее по правому краю.
введите формулу •СУММ(В8 : В18) .
· Вычислите первые десять членов ряда, пронумеровав их переменной
s.
В ячейке
88
вычислите значение первого слагаемого (нулевой поря
док), а значения остальных членов вычисляйте в ячейках В9: В18 с помо
щью рекуррентных соотношений.
12. В
ячейку А7 введите метку s и выровняйте ее по правому краю.
ячейку 87 введите метку Члены и выровняйте ее по правому краю .
13. В
ячейку
11. В
14. В
88
введите формулу
ячейку
89 введите
810:818.
•B4AN/(2AN*NF).
=84AN/(2AN*NF)
формулу
ячейки
15. В ячейку А8 введите О , в ячейку А9 введите
и скопируйте ее в
1.
16. Выделите ячейки А8 :А9 и перетащите маркер заполнения вниз до
ячейки А18 для создания десяти значений s.
17. Измените формат ячеек 88:818 на экспоненциальный, с двумя деся
тичными знаками .
18. Отключите
отображение сетки.
Для использования листа введите"какое-нибудь значение х, не пре
вышающее
8
(например,
0,5)
в ячейку
85
и значение п (например,
1)
в
ячейку С2. После обновления листа значение функции Бесселя будет
отображено в ячейках
85 и 86. Обратите внимание на быстрое уменьше-
111)
суммuрованuе рядов
ние значений в ячейках
88:818,
означающее быструю сходимость ряда.
Ваш рабочий лист должен выглядеть подобно приведенному на рис.
Функция Бессt.пя; "етод суwuироеаии" в ра5о..,ем .nмсте
n
n!
~
~i
1
1
Ш
[
х
о~
Jn(x)6
0,2.:.~
~,
2,50Е{)1
·7.81Ет
:ji
БЕССЕЛЬJ 0,242268
О
1
2
3
7.1.
~-
1!,14Е.о5
-4,24Е-!17
4
1,З2Е.Q9
5 ·2,76Е-12
б
4,11Е-15
7 -4,SSE-18
8 З,ООЫ1
9 ·2,7БЕ·24
10
1.57Е·27
7.J
Рис 7.1. Нахождение функции Бесселя с помощью метода суммирования в
рабочем листе
Используя данный метод, можно вычислять функцию Бесселя для це
лого набора значений х одновременно. Обратите внимание, что ссылки
на ячейки были сделаны абсолютными, поэтому формулы в ячейках
88:818
1.
можно скопировать направо без исправления.
Создайте копию рабочего листа Рис.
Рис.
2.
3.
4.
7.1
и назовите новый лист
7.2.
Скопируйте ячейки
В ячейку
84
84:818 в С4:А818.
введите О, в ячейку С4 введите
0,3.
Выделите ячейки 84:С4 и перетащите маркер заполнения вправо до
ячейки АВ4.
5.
6.
Присвойте диапазону ячеек В4:АВ4 имя Х.
Измените формулу в ячейке
85 на =БECCEJ1b.J(B4;N) и скопируйте
ее в ячейки В5:АВ5.
~ Примечание
Изменение аргумента функции в данном случае является обязательным,
поскольку встроенные функции не могут правильно воспринимать значе
ния из поименованного диапазона. Если передать диапазон Х, то функ
ция воспримет его целиком, вместо одного значения из того же столбца,
что приведет к ошибке.
Теперь ваш рабочий лист должен выглядеть так, как показано на
рис.
7.2.
Если обновления не произошло, нажмите на клавишу
на клавишу
<Cmd+=>
<F9> (или
Macintosh). Произойдет вычисление
= 1 и для значений х, меньших или
при работе на
значений функuии Бесселя при п
1111
Глава
равных
7,8.
На рис.
7.3
7
приведен график этой функции. Если нужно про
вести вычисления для больших значений х или увеличить для точность
текущих значений, необхолимо увеличить число слагаемых.
n
х
:
О.З
~
OS
1)
1.5
11
0.40595 0 .(96289 О.557937 0.581517 oщ ii:
0.40595 О,•00289 О.557937 O.S81517 o,sa:~
ЧJieнw
Чnelibl
Ч11ень~
Члены
4.nень~
Члены
ЧJlены
Чп .~~
О O,IDE..00 1,50Е-01 З,WE-<JI ( ,SOE-01 Б.[IJЫJ! 7 ,SOE-01 9 ,ООЕ-01 l ,CJSE~i
1 О,ООЕ-+00 ·1.бЭЕ-00 ·1,З5Е-02 ·•.56Е-02 ·ЩJЕ-01 ·2 ,11 Е-01 ·З,65Е-01 ·5.79E)j
БЕССЕЛЬJ
Jn(x)
2
OJ
О 0.148319 0)ffi701
О 0 .146319 0.286701
О,ООЕ.00 6.ЗЗЕ.{Ь
2,DЗЕ.04
1.54 ~-u:;s
b.4~t.{)J
1,96Е-02
•.92bli2 1,06 ..
З О,ООЕ..00 ·1 ,19Е.()8 ·1.52E.ai ·2,59Е.()5 ·1.9-4Е-04 -9,27Е-04 ·З,:t1Е-ОЗ ·9.77Е '·:
4 О ,ООЕ..00 1 ,ЗЗЕ-11 б,ВЗЕ-09 2,БЗЕ-07
5 О ,ООЕ.00 ·1 ,ООЕ·14 -2.0SE·11 ·1 .77Е-09
б О,ООЕ..00 5,З>Е-16 4 ,ЭЭЕ-1 4 0,55Е· 11
7 О,ООЕ..00 -2.15€-21 -7J~E- 17 -З,DЭЕ-14
6 О ,ООЕ.00 Б.7ЗЕ·25 е ,взе.20 8,70Е·17
9 О ,ООЕ..00 ·1,60Е·26 .В ,ВЗЕ-23 - 1 ,96Е·19
10
ОДJЕ..00
З.НЕ-32
722Е-26 З.бОЕ-22
З,50E.ffi
2.Б IЕ-05
1 ,35Е.04 5 ,39f
-4,20Е.а! ·4.89Е-07 ·З.бЗЕ.00 -1 ,ООЕ:"
ЗЮЕ-10 6.55Е-09 7 .WE-00 5,20Е :
·2 .З1Е-12 -S,5ВЕ: 11 - 1 .01Е-09 - 1 ,()2~:::
1 ,16Е-1 4 5.1 4Е· 1 З 1.1 4Е-1 1 1,57f ;_
·4.Б3Е·17 ·З,21 Е-1 5 .1 ЩЕ-13 -1 ,92! .
1,51Е-19 1,t>4t::-17 7.55Е-1Б 1,92Е ··
".
Рис.
7.2.
,.;
·.~
Функция Бесселя для нескольких значений х
Метод итераций
Вторым способом вычисления рядов является использование итера
ционных возможностей Excel. Формула в рабочем листе создается таким
образом, что при каждом вычислении определяется следующий член ря
да и прибавляется к общей сумме. Для этого необходимо отключить ав
томатический пересчет листа и БI<Лючитъ режим итераuий. Необхолимо
также добавить возможность сбрасывать начальное значение суммы и
членов.
о.в
0.4
в:
r::
,
О)
о
.J))
.о,•
Рис.
7 .3. График функции
Бесселя
J 1(х)
i1&J
Суммuрованuе рядов
В качестве примера вновь рассмотрим задачу нахождения функuии
Бесселя, но вместо перечисления членов ряда будем использовать итера
ционный метод.
l.
Создайте копию рабочего листа Рис.
7.1
и назовите ее Рис.
7.4.
2. Выделите и удалите содержимое ячеек А10:В18 .
3.
Выделите
ячейки
А7 : В9
и
переместите
их
содержимое
в
ячейки
А9:811 .
4.
В ячейку А7 введите метку Первый член и выровняйте ее по правому
краю .
5.
В ячейку А8 введите метку Инициализация и выровняйте ее по правому краю.
6. В ячейку В7 введите формулу =B4AN/(2AN*NF).
7.
В ячейку В8 введите ИСТИНА.
8. Присвойте ячейкам 87 и В8 имена TermO и INIT.
9.
Выберите команду меню Сервис )1о- Параметры и wелкните на вкладке
Вычисления; установите переключатель вручную, сбросьте флажок
пересчет перед сохранением, установите флажок итерации и в поле
предельное число итераций введите 1. Щелкните на кнопке ОК.
10. В ячейку А10 введите •А11.
ll. В
12. В
ячейку А11 введите =ECЛИ(INIT;O;A10+1).
13. В
ячейку
ячейку 810 введите
8 11
•811 .
введите формулу
=ECЛИ(INIT;Term0;810*(-1)*X"21(4*$A11*(N+$A11)))
14. В ячейку С9 введите Суммирование.
15. В ячейку С10 введите •С11.
16.
В ячейку С11 введите •ECЛИ(INIT;B7;C10+B11) .
17. В ячейку
Вб введите =С11 .
18. Измените формат ячеек 85:86 и С10:С11 на числовой , с двумя деся
тичными знаками.
rnaвa
111&
7
Для использования этоrо листа необходимо ввести значения х и п и
нажать клавишу
<F9>
(или комбинацию клавиш
<Cmd+=>
при работе на
для инициализации листа. Затем изменить значение ячейки
88 на ЛОЖЬ и снова нажимать на клавишу <F9> для учета каждого по
следующего члена ряда. Номер члена отображается в ячейке А10, значе
Macintosh)
ние следующего члена, который будет прибавляться,
в ячейке В 11 и
-
текущее значение суммы ряда отображается в ячейках С11 и 86. На
рис. 7.4 показан результат вычислений после четырнадцати итераuий для
х равного 8 и п равноrо 1.
Работа листа основана на трех циклических ссылках: между ячейками
А10 и А11, 810 и 811 и С10 и С11. Формулы в ячейках А10:С10 хранят
текущие значения, в то время как формулы в ячейках А10:С10 использу
ют эти значения для вычисления следующих номера итерации, члена ря
да и суммь1 рядя. Функция ЕСЛИ в ячейках А11:С11 инициализирует вы
числения в случае, если значение
INIT (88)
равно ИСТИНА
Для вычисления значения функuии Бесселя при других значения па
раметров, необходимо ввесn[ новые значения х и
ИСТИНА, нажать на клавишу
нажимать на
••
<F9> до
<F9>,
n,
заменить В8 на
заменить значение
88
на ЛОЖЬ и
тех пор, пока не соЙдется процесс суммирования.
Примечание
Увеличив значение поля Предельное число итераций диалогового окна
Параметры, можно выполнять несколько итераций после одного нажатия
на клавишу
<F9>.
Вычисления будут производиться или указанное число
раз или пока изменения всех величин рабочего листа не станут меньше
значения, указанного в поле Относительная погрешность. Будьте вни
мательны при использовании такого метода, относительная погрешность
должна быть выбрана меньше любого значения по числу десятичных зна
ков, которые необходимо получить.
Использование функции
Visual Basic
дпя
суммирования ряда
Для нахождения суммы ряда можно также создать функцию Visual
выполняющую нужные вычисления. Алгоритм является таким же,
Basic,
какой используется в языках высокого уровня типа
Fortran.
Полиномы Лежандра
Полиномы Лежандра Рп(х) часто встречаются в задачах о движении в
центральном поле в сферических координатах.
электрический диполь, состоящий из зарядов
+q
Рассмотрим , например ,
и
-q,
расположенных в
точках +а и -а. Потенциал (ф) такого диполя на больших расстояниях
>а) описывается следующей формулой с полиномом Лежандра:
(r
110
Суммuрованuе рядов
Ф = 2aq ?i(cos(8))
4тt8
где с
-
r
1
,
электрическая постоянная, а
r
и В являются полярными коорди
натами.
Полиномы Лежандра являются решениями дифференциального уравнения
( l-x
при у
2)d2y
d2y
--2х-+п(п+1)у=0
2
dx
dx 2
= Рп(х). Явный вид полиномов Лежандра следующий
р (х)= ~
(-IY(2n-2s)! хп-Ъ·
L....
s~O 211 S .'( n - S )'(
. n - 2 S )'.
11
Поскольку Рп(х) являются полиномами, то указанная сумма имеет
конечное число слагаемых.
В
Basic,
следующем примере рассматривается создание функции Visual
вычисляюшей указанную сумму. Факториалы, входящие в каждое
слагаемое, подсчитываются независимо, без использования рекуррентных
соотношений.
1.
2.
Создайте новый модуль и назовите его Функции.
Введите в созданный модуль следующий код:
Option Explicit
1
' Функция, вь1числяющая полиномы Лежандра.
'
Function Legendre(dЫX As DouЫe, intN As lnteger) As Variant
Dim intS As lnteger 'Тhе summation counter.
'Обнуляем переменную суммирования
legendre =О
'Цикл по количеству членов в сумме.
For intS =О То intN \ 2
Legendre = Legendre + (((-1) л intS) * Fact(2 • intN - 2 • intS) • dЫХ" (intN - 2•intS))1 (2"
intN * Fact(intS) • Fact(intN - intS) * Fact(intN - 2 * intS))
Next intS
End Function
' Функция, вь1числяющая факrориал аргумента.
1
Function Fact(intM As lnteger) As DouЫe
Dim intCtr As lnteger
'Инициализация произведения.
Fact = 1
'Цикл по количеству сомножителей в факториале.
For intCtr = 1 То intМ
Fact = Fact * intCtr
111:1
Гnава
7
Next intCtт
End Function
' Небольшая nо,цnроrрамма, исnольэуемая для тестирования
'
Sub test10
Dim intN As lnteger
Dim dЫХ As Oouble
'Тестируемые значения
intN = 3
dЫХ =0.3
'Печать значений и результатов в окне отладки.
DeЬug.Print dЫХ,
intN, legendre(dblX, intN), 0.5 * (5 * dЫХ " 3 • 3 * dЬIX)
Stop
End Sub
В этом коде содержатся три процедуры: одна для вычисления поли
номов Лежандра, вторая для вычисления факториала и третья для отлад
ки. Процесс отладки необходим, поскольку сообщения об ошибках не
отображаются на рабочем листе, если ошибка происходит в вызываемой
функции. При этом просто возвращается код ошибки. Проводя тестиро
вание в том же модуле, что и вызываемая функция, можно проследить
любые
синтаксические
ошибки.
Процедура
тестирования
записывает
значениях, п, Legendre(x, п) и аналитическое значение для п = 2.
В данном случае ряд имеет конечное число членов, определяемое
верхним пределом суммирования п/2. Таким образом, число слагаемых в
сумме извесrnо заранее. В случае бесконечных радов это число необхо
димо определять из дополнительных соображений. Можно выбрать неко
торое фиксированное значение, приводящее к достаточно точному ре
зультату для тех значений аргумента, которые вас интересуют, как это
было сделано в случае функции Бесселя. Или же можно ввести в функ
цию логический критерий, наблюдающий за · величиной слагаемых и ос
танавливающий
процесс суммирования,
когда члены ряда становятся
пренебрежиыо малыми.
Теперь давайте создадим рабочий лист, вызывающий. функцию для
нескольких значений п и х. Для сравнения ниже приведен аналитический
вид первых щести qолиномов Лежандра:
Ро(х)
=1
Р1(х) = х
Р2(х) = (1/2)(Зх2 -1)
Рз(х) =
(l/2)(5x3 -
Зх
Р4(х) =
(l/8)(35x4 -
)
30х2
Р5(х) = (1/8)(6Зх5 -70х3
+ 3)
+ 15х)
Вычислим значения этих полиномов и сравним их с результатами
функции Visual Basic.
i1 QI
tgммuрованuе рядов
l.
2.
Введите несколько значений х и п.
Создайте новый рабочий лист и назовите его рис.
7.5.
В ячейку А 1 введите название Полиномы Лежандра; функция
Visual
Basic.
3.
В ячейки АЗ и А4 введите п и х соответственно и выровняйте их по
правому краю.
••
Примечание
Ячейкам АЗ и А4 можно было бы присвоить имена п и х, но если сделать
это обычным методом, то они заменят соответствующие имена, присво
енные на других листах. Чтобы этого не произошло, нужно присвоить ло
кальное имя, действительное только для данного листа Для присвоения
локального имени выберите команду Вставка
>
Имя
>
Лрисвоить и в
поле Имя появившегося диалогового окна введите имя рабочего листа,
затем восклицательный знак, затем локальное имя ячейки. Такое имя
действительно только в пределах указанного рабочего листа.
4.
5.
В ячейки ВЗ:GЗ введите целые числа от О до 5.
В ячейку В4 введите 0,3 и скопируйте ее в ячейки
C4:G4.
Создайте вызов функции Visual Basic. Простейший t:пособ сделать это
без ошибок заключается в использовании мастера и выборе необходимой
функции в категории Определенные пользователем. После этого введите
аналитическое решение, указанное ранее.
6.
7.
В ячейку А5 введите метку Рп(х) и выровняйте ее по правому краю.
В ячейку В5 введите (или вставьте с помошью Мастера Функций)
формулу
=Legendre(B4;B3)
и скопируйте ее в ячейки
C5:G5.
8.
В ячейку Аб введите метку Аналитически, выровняйте ее по правому
9.
краю и установите ширину столбца равной 14.
Введите следующие формулы в ячейки B6:G6
Вб
=1
Еб
=О,5*(5*Е4-З-З*Е4)
Сб
Dб
=С4
=О,5*(3*04-2-1)
Fб
Gб
=0, 125*(35*F4-4-ЗO*F4-2+3)
=О, 125*(63*G4-5-70*G4-3+15*G4)
Как видно из рис. 7.5, аналитические значения и значения, получен
ные с помощью функции Visual Basic, совпадают. Теперь создайте табли
цу, показанную в нижней части рисунка и отобразите результаты на
диаграмме.
1. В ячейку А8 введите О, в ячейку А9 введите О,З.
2.
Выделите ячейки А8:А9 и перетащите маркер заполнения до ячейки
АЗО.
Затем измените значение хна малое число, большее нуля, поскольку
функция не определена при х =О, и вызов функции в ячейки таблиды:.
3.
4.
5.
Измените значение ячейки А8 на
0,001.
В ячейку В8 введите =Legendre($A8;B$3).
Скопируйте ячейку В8 в ячейки В8:Gзо. Для этого вначале скопируй
те вниз до ячейки
830,
а затем вправо до столбuа
G.
Гnава
6.
1
Поскольку реж.Им вычислений по-прежнему установлен Ручной, на
жмите на клавишу <F9> (или на клавишу
Macintosh) для пересчета листа.
<Cmd+=>
при работе на
Теперь рабочий л ист должен выглядеть аналогично показанному на
рис. 7.5. Если построить диаграмму полученных значений, она будет
выглядеть как показано на рис.
7.6.
.н.
,.
з
4
5
о .з
о.э
о.з
.Qji25 0,0723ЗВ : О.з.t5:Эе6
.0,ji'25
о.атзв о.з:45Зв6
1' . "0 .001:[ .... .О,?, .О,0015. 0,3749$ ОД11875
О.З ; ·О.365 jij325 iibiijj°(Q~~
1
1
"" ~.6
оя
o.?1s
1
1
1.2
1.5
'1.е
1,66
2,52
2.875
6.1075
ц; . 1'1.00:
,
1
,,
2 ,1 .
2,4
Рис. 7.5. Значения
Visual Basic
0.().4
"6}15'
e,i•
.Q,36
.О ,41Б .Q ,15~
о .4125 о,201gээ .o.D411.i
4,0-47
.
6.72562
14д159-4 . ЗЗ.а3203
)4,1?2:. )9),,1;СВ5 .
;D.()025' ба ,9229( 244,5267
:ю.96
1 23щ1 sш.5966
:+.
полиномов Лежандра , вычиспенные с помощью функции
..t Со~ет
Линии в нижней части диаграммы накладываются друг на друга, что за
трудняет выделение отдельных составляющих. Для быстрого вь1бора ли
нии щелкните на какой-либо из них и используйте клавиши перемещения
курсора для перехода между Линиями .
Пonмttoti11t1 Ле•а~а
100000
90000
11ОООО
7()(00
1
Щ)(1О
f
i
soooo
40000
30000
20000
10000
о
.1COOQ
. . . . ._.. _.. . . .
:.
Рис.
7.6.
""._,""."..1 "-". ""..~""."_."_ . ..,._ ••""." "~""".".
·...::. ·. . ·.:
-~
-+- n•O
·~•~· n • 1
j
i1
~=~.'
•
"""./
___-~....
Полиномы Лежандра первых шести порядков
- n· 4
if41
Суммuрованuе рядов
Резюме
В этой главе мы познакомились с тремя методами суммирования ря
дов. Простейший способ заключается в том, чтобы вычислить члены ря
да в отдельных ячейках, а затем сложить их вместе. Второй метод осно
ван на создании итерационной функции, которая добавляет новое сла
гаемое к результату при каждом пересчете листа. Наиболее удобным яв
ляется третий способ, заключающийся в создании функции Visual Basic,
вычисляющей сумму ряда из произвольного числа количество членов.
Такая функция не занимает много места и для изменения числа учиты
ваемых членов достаточно изменить значение одной переменной. К со
жалению, метод не обладает интуитивной ясностью, поскольку не пока
зывает отдельные слагаемые.
Дополнительная литература
Функции Бесселя и полиномы Лежандра
G. Arfkeп, Mathematical Methods for Physicists Orlando, Fla.: Academic
Press, 1970, стр. 438, 537.
Обзорные задачи
1.
Квадратная волна может быть описана следующим рядом Фурье
f(x)
=± !
1t
где
L -
_!_sin(
n=•.з,s,." n
nnx)
L ,
половина периода волны. Найдите сумму ряда методом сум
мирования и постройте график для значений х, удовлетворяющих ус
ловию О
s
х
s.2L
и
L = 1.
Используйте достаточное количество точек
х для аккуратного представления квадратной волны.
2.
Пилообразная функция может быть представлена следующим рядом
Фурье
2 ~ ( -1 у+• . ( ппх )
L,.
SlП - !( Х ) -- 7t n=I
n
Напишите функцию
L
Visual Basic
и создайте рабочий лист, вычисляю
шие ./(х) для значений х, которые удовлетворяют условию О 5 х $
L = 3.
3.
2L
и
Постройте график функции.
Натуральный логарифм в интервале от О до
ставление в виде ряда
1nc1+x) =
:L -1y+I х
ос (
11~1
п
п
2
имеет следующее пред
iflj
4.
Гnава
7
Используйте метод итераций дЛЯ нахождения суммЬJ этого ряда вы
числите значение ln(l,7).
Вычислите косинус 2,85 радиан с помощью метода суммирования и
следующей формулы
cos(x) =
со
L х - 1)"
2n (
п=О
(2п)!
Сравните результаты с выражением
=COS(2,85), использующим встро
енную функцию косинуса.
5.
Арккосинус вычисляется с помощью ряда
arccos(x)=~-(x+-1-xз + 1·3 xs + 1·3 · 5 х1+".)
2
2·3
Напишите функцию
2.4.5
Visual Basic
нуса и найдите с ее помощью арккосинус
6.
2·4·6·7
дЛЯ вычисления значений арккоси
0,85.
Следующий ряд Фурье представляет положительный квадратный им
пульс ширины с при х
ширины с при х
= 7L/4
= L/ 4 и отрицательный квадратный импульс
mu:)
4 ~ 1 . ( -mt ) sш
. (mtc)
. ( -- sш
!( х ) =-L.J-sш
7t п=t п
Пусть
и с
L =2
2L
4
= 0,25.
L
Вычислите и постройте график ft..x) дЛЯ О ~ х ~
2L.
7.
Полиномы Чебышева Тп(х) и Uп(х) задаются следующими рядами
т" (х) = х п
-
( ;)
х
ll- l (
l - х 2 ) +(:) х
4
n- (
l - х 2 ) 2 - ( ~) х п-б (l - х 2 ) 6+...
Ип(х)=(п;l)хп -(п; l)хп-2 (1-х2 )+(п;1)х"-4(1-х2)2 +"
'
где
=
( р) = p(p-l)(p-2)".(p-n+I)
1. 2 . 3.. "
п
(:) =0,
п
р!
(р
-
, p > n-l
п) !п !
р<п
Вычислите Тз(.5) и Uз(.5) и сравните результат с точным выражением
Тз (х) = 4х
8.
3
-
Зх,
U3 (х) = 8х 3
-
4х
Полиномы Эрмита Нп(Х) определяются следующим образом
суммuрованuе рядов
Н,1 (х) = 2 х11 - 2п-1(;) х"- 2 + 2
11
2
11
-
1 · з(
:) х 11-4
'**'
-
211 - 3 1· 3 · s(~) xn-6 +".
Вычислите Н,/...7) и сравните результат с точным выражением
4
2
Н4 (х)=16х -48х + 12
9.
Полиномы Лагерра L0п(х) определяются следующим образом
(п +а) -х'т
11
L~ (х) = L(-l)m
n-m
т~о
Вычислите
10. Полиномы
т.1
LO:J..2,3).
Бернулли Вп(х) для О
:s;
х
:s; 2L
определяются следующим
образом
1
В (х)= (-l)n- 2(2n)!~cos(2krcx)
f:t
(2п)2п
211
еп
Вычислите В,/...13) и сравните результат с точным выражением
В4 (х)=х 4 -2х +х -1130
3
2
Упражнения
1. Напишите функцию Visual Basic, вычисляющую ряд Фурье для квад
ратной волиы из задачи 1. Вычислите несколько значений и построй
те график.
2.
3.
Выполните задачу 2 с помощью метода итераций.
Экспонента имеет следующее разложение в ряд
Ехр( х) =
4.
5.
х2
хз
1+ х + - + - + ···
2! 3!
Вычислите значение экспоненты от 3, 7 с помощью метода суммиро
вания. Сравните результат со зиачеиием формулы =ЕХР(З, 7).
Выполните упражнение 3 с помошью метода итераций.
Полиномы Якоби задаются следуюшим уравнением
~(«.~)(х) = ~
2
t(n m+а)(пn-m
+ P)(x-Iy-111 (х +
l)m
m"'O
Вычислите и постройте иабор кривых для значений х в интервале от О
до 6 при п
О, 1, 2, 3, 4 и а= 2, р = 3. Используйте метод суммиро
=
вания .
6.
Выполните упражнение
7.
числения значений полиномов Якоби.
Для z2 < 1 справедливо следующее равенство
5
с помощью функции
Visual Basic
для вы
ifjl
1
-=L:zn
1- z
Гnава
1
<О
n=O
Убедитесь в справедливосrn равенства, вычислив обе части уравнения
для нескольких значений
z из
интервала от
-1
до
1и
сравнив резуль
таты. Для нахождения значения ряда используйте метод суммирова
ния.
8.
Следующее равенство справедливо при любых значениях а
2
3
ах == 1+ х ln (а) + ( xLn (а)) + ( xLn (а)) + ...
2!
3!
Убедитесь в справедливости равенства, вычислив обе части уравнения
для нескольких значений а и сравнив результаты. Для нахождения
значения ряда используйте метод итераций.
< n2/4 тангенс х вычисляется с помощью следующей формулы
1
211
х 3 2х 5 17х 7 62х 9
2 2п(2 -l)IB2 "lx 2" Тап(х)=х+-+-+--+--+"·+
+".
·
3
15
315 2835
(2п)!
9. При х2
где В"
-
числа Бернулл.и, равные значению полиномов Бернулли при
х =О (см. упражнение
10).
С помощью метода суммирования вычис-
лите тангенс 0,8 радиан.
.
10. Выполните последнее упражнение еще раз с помошью функции
Basic.
Visual
·
Г11ава
8
Интеrрирование и
дифференцирование
В зтой таве...
"' Разностные форму11ы чисnенноrо дифференцировани•
-1' Интеrрирование по правипу прямоуrо11ьников
"'
Интеrрирование по правипу трапеций
-1' Интеrрирование по Ромберrу
"' Интеrрирование по прави11у Симnсона
-1' Квадратура faycca
Интегрирование
аналитическими
и дифференцирование
выражениями,
однако,
обычно
если
выполняются над
функция
задана в
виде
множества точек или интеграл функции нс: существует или является
очень сложным, приходится прибегать к численным методам интегриро
вания и дифференцирования.
С помощью Excel можно численно находИть производные и интегра
лы. Хотя приемы, описанные в этой главе, обыЧно используются в не
больших компьютерных программах, они легко могут быть реализованы
непосредственно на рабочем листе. В таком случае можно также наблю
дать промежугочные результаты вычислений, что часто бывает поучи
тельным (или пугающим) .
Численное дифференцироввние
Численное дифференцирование выполняется с помощью разностных
формул. Центральные разностные формулы являются наиболее точными
и наиболее часто используемыми. Левые и правые разности используют
ся в специальных случаях.
Типы разностных формул
Левая, правая и центральная разностные формулы являются оценками
значения производной, основанными на различных множествах точек.
Левая разностная формула использует те ТОЧЮf., которые находятся левее
исследуемой , правая разностная формула использует те точки, которые
находятся правее, а центральная разностная формула основывается на
равном числе точек по обе стороны от исследуемой.
ifiii
Гnава
8
Левые и правые разности используются на граниuах интервала диф
ференuирования , где
невозможно
применение uентральной формулы ,
требующей равного количества точек с каждой стороны. На граниuах же
точки находятся только с одной стороны
-
внутри интервала , что и де
лает невозможным использование центральной разностной формулы . Ле
вые и правые разностные формулы часто дают более точные результаты в
тех случаях, когда кривая
имеет резкие изл омы , поскольку
уменьшают
влияние на производную точек с другой стороны . Б таких случаях, при
приближении к точке излома используется левая разность, а при удале
нии от нее
-
правая .
Уравнения для вычисления первой производной одинаково для всех
трех случаев. Различие заключается только в значении х, для которого
вычисляется производная. Разностная формула для вычисления первой
производной имеет вид
dy
dx
где h = Х1 - Хо =Хо - х_ 1 расстояние между точками, а (х_1, у_ 1 ), (Хо, Уо) и
(х1 , у 1 ) являются парами данных последовательных точек. Тип вычислен
ной разности зависит ' от точки , производной в которой приписывается
полученной значение.
Если это уравнение является приближением для значения производ
•
•
•
ной в точке х 1 , тогда это левая разность.
Если это уравнение является приближением для значения производ
ной в точке х_ 1 , тогда это правая разность .
Если это уравнение является приближением для значения производ
ной в точке XQ, тогда это uеитральная разность.
Ниже приведены разностные формулы для производных нескольких
первых порядков и связанный с иими порядок ошибки
( O(hn)).
Все фор
мулы вычисляют производную в точке Хо· Ошибка формулы пропорцио
нал ьна п-ой степени расстояния между точками
h.
Таким образом можно
оuенить tочиость вычислений. Чем больше степень
h, тем точнее формула.
Производная в точке Хо
dy
У 1 -у 0
~ == Уо ~У-1
dx
h .
dy
У1 -У- 1
- = ~---dx
2h
Оwибка
тип разности
O(h)
правая
O(h)
левая
центральная
Интегрuрованuе
u
Производная в точке Хо
1
d y
У2 -2у, + Уо
d У
Уо-2У-1+У-2
~2
h2
d У
У1 -2у0 +y_I
412
1+1
дuфференцuрованuе
Ошибка
Тип разности
O(h)
правая
O(h)
левая
h2
центральная
~2
h2
d У _Уз - Зу2 + Зу1 - Уо
h3
d у_ Уо -Зу_1 +Зу_2 -у_з
а:1 3 h3
d у У2 -2yl +2У..1 -У-2
dx 3
2h 3
113
O(h)
правая
O(h)
левая
центральная
Ошибки разностных формул
Разностные формулы имеют два типа ошибок: ошибки отбрасывания
и ошибки округления. Порядки ошибок, приведенные в таблице, отно
сятся к ошибкам отбрасывания. Такие ошибки появляются в результате
того, что значение производной вычисляется на основании значений
функции в нескольких точках, а не непрерывного множества значений.
Поскольку ошибки отбрасывания пропорциональны расстоянию между
точками
(h),
то может показаться, будто уменьшение этого расстояния
уменьшит ошибку. Однако это справедливо только до тех пор, пока
ошибка округления ие становится существенной.
Ошибка округления возникает из того факта, что компьютер хранит
числа с фиксированным числом знаков . При вычитании двух почти рав
ных чисел, разность может быть очень малой, поэтому необходимо про
верять, что результат является значимым. Для этого нужно разделить
разность иа одно из исходИЪ1Х чисел и сравнить результат с точностью
компьютера. Если полученное число равно или меиьше точности компь
ютера, его необходимо отбросить, поскольку использование таких чисел
приведет к бессмысленным результатам. Например, если два числа, при
мерно равные единице, вычитаются друг из друга, и разность имеет по
рядок 1 х 10-14 на компьютере, проводяшем вычисления с точностью до
14 знаков , такая разность должна считаться равной нулю. Таким обра
зом, ошибка округления возрастает с умеиьшеиием
h,
одновременно с
уменьшением ошибки отбрасывания. Это означает, что необходимо нахо
дить "золотую середину" между уменьшением h для уменьшения ошибки
отбрасывания и увеличением h для уменьшения ошибки округления.
Суммарная ошибка достигает минимума при каком-то оптимальном, от
личном от нуля, значении
h.
1%1:1
Глава в
Использование разностных формул в рабочем
листе
Разностные формулы, приведенные выше, являются достаточно про
стыми, поэтому наилучшим способом их использование является реали
зация непосредственно в рабочем листе, а не написание функции Vist1al
Basic. Таким способом можно контролировать значения разностей, чтобы
определить рост ошибки отбрасывания.
Свободное падение
Классической лабораторной работой
первокурсников,
связанной
с
движением с постоянным ускореmtем, является свободНое падение тел .
Для этого металлическому грузу позволяют упасть вдоль полоски воше
ной бумаги . Во время падения на
rpyJ
и металлическую проволоку, нахо
дящуюся позади бумаги , подается высоковольтное переменное напряже
ние. Каждые полпериода происходит искровой разряд между проволокой
и грузом. Искра прожигает в бумаге отверстие, отмечая таким образом
положение груза в момент разряда . Зная частоту напряжения и положе
ние отверстий на полоске бумаги, можно вычислить скорость груза.
Ниже приведены данные из такого эксперимента по свободному па
дению. Искры генерировались каждые 60 секунд. Для определения ско
рости необходимо вычислить первую производную, а для определения
ускорения свободНоrо падения, вызванного притяжением Земли, необхо
димо вычислить вторую производную.
Д.анные числа показывают расстояния до отверстий от произвольной
точки (в сантиметрах):
0,00
1,55
3,25
5,30
7,55
10,20
13,05
16, 15
19,50
23, 15
27,05
31,30
35,77
40,55
45,55
50.80
Введите несколько названий и время между генерациями искр.
1.
2.
3.
Создайте новый рабочий лист и назовите его рис.
8. 1.
В ячейку А 1 введите название листа Свободное падение.
В ячейку С1 введите метку ЛТ• и выровняйте ее по правому краю.
••-
Примечание
.
Для ввода символа Л необходимо набрвть заглавную букву
D
из шрифта
SymЬol.
4.
5.
В ячейку 81 введите =1/60 и присвойте ячейке имя
В ячейку Е1 введите метку с .
DT.
Введите названия столбцов.
6.
В ячейки АЗ:DЗ введите метки
правому краю.
t, х, dx/dt, d2xldt2 н выровняйте их по
Uнтегрuрованuе
7.
u
дuфференцuрованuе
ifJi
В ячейки А4:04 введите метки (с), (см), (см/с), (см/с2) и выронняйте
их по правому краю.
Вычислите время в столбце А. Обратите внимание, что нулевое время,
указанное в таблице, не предполагает нулевой скорости в этот момент.
Несколько первых отверстий были недостаточно четкими и потому не
попали в таблицу. Данные о положении падаюшего груза вводятся в
столбец В.
8.
9.
Введите О в ячейку А5.
В ячейку А6 введите формулу
=AS+DT и скопируйте ее в ячейки
А7:А20.
10. В ячейки 65:620 введите данные свободного падения тел, перечис
ленные выше.
В столбце С вычислите первую производную с помошью цеитра11ьной
разностной формулы для середины интервалов между точками. В столбце
О вычислите вторую производную с помощью центральной разностной
формулы для каждой точки и усредните полученные значения.
-·-
Поимечан\1е
Вместо вычисления второй производной ~111 определения ускорения
можно было бы вычислить первую производную скорости. Результат был
бы тем же.
11. В ячейку С5 введите формулу a(B6·B~jIOT и скопируйте ее в ячейки
С6:С19.
12. В
13.
ячейку 06 введите формулу =(B7.:~'"e$+B5)/(DTA2) и скопируйте ее в
ячейки D6:D19.
В ячейку С2 введите метку CpeдHt'f~= и выровняйте ее по правому
краю.
14. В ячейку D2 введите формулу =СРЗНАЧ(D6:D19).
15. В ячейку Е2 введите метку см/с2.
16. Измените формат ячеек 65:020 на числовой с двумя
знаками после
запятой и формат ячеек А5:А20 на числовой с тремя знаками после
запятой.
17. Оrключите отображение линий
сетки.
Теперь рабочий лист должен выr:Лядеть, как показано на рис. 8.1,
только без результатов регрессии в ячейках F5:G5 (которые мы сейчас
добавим). Столбец С содержит скорость груза, график которой представ
лен на рис. 8.2. Как и ожидалось, это гладкая кривая движения с посто
янным ускорением.
Гnава
Свободное паден11е
дт
= 0,016667
8
с
Среднее= 951.4286 см!с1
х
o:bldt
rA!cJ?
(с)
(см)
(СМ/с)
0,0000
0,0167
0,0333
0.0500
0,00
1.55
0,0667
7,55
0.0833
10,20
0.1000
О, 1167
0,1333
0,1500
0,1667
13.05
16, 15
93.00
102.00
123.00
135.00
159,00
171,00
186,00
201,00
219,00
234,00
255,00
267,00
288,00
0.1833
0.2000
\11if::!
3.25
5.30
19,50
23.15
27,05
31,30
35,75
:H%i!
о.21ы
4o.ss
н1.$'"тн.··~~,- 'Q'··rc:,
Рис.
8.1.
Реэультатырегресс11и
Сдвиг
540,00
1260,00
720,00
1440,00
89.65
1.326619
973.2857
стд ощибка
Наклон
Стдоши15ка
9,676316
0,998717
10117.21
г
F
СС-Рег
СС-Ост.
73677,73
94.67143
Стд. ош оценки
2.698595
Степ. свободы
13
Равноускоренное движение: численное дифференцирование
Поскольку объект падает свободно, ускорение в столбце О должно
быть постоянным и равным ускорению свободноrо падения
Как видно из рабочеrо листа и рис.
8.3,
(980 см/с2 ).
существует большой разброс вы
численных значений ускорения, но их среднее имеет вполне подходящую
величину
(951,43
см/с2).
J~r~;H~l~~Jiru[i;jj)jlti:gjillJцШJH!i;;;~;цш~!;;·:;i:~'N::·~·ш Ш;~[)~i1Шblii~.:iЫBlli'JttiJi~ШШ~t\ШШ~J!~Шlli!~~lli~Щi.•,;
[i;~J!:
~~~р;1
Скорость свободного падения
::
~f
JJ
350,00
;~
эm.rn
13' 250,!XI
!200.rn
~
!
150.00
1(:0,00
50.00
0.00 +-----+----+------.-----t-------i
O,IIXXJ
0,0500
0,10CXJ
Вре...,
Рис.
8.2.
объекта
0.1500
(q
0.200J
•'
0,2500
-
Равноускоренное движение: скорость свободно падающего
Интегрuрованuе
u
,,,,
дuфференцuрованuе
Ускорение с:вободноrо nадения
1600
1АОО
"\;" 1200
."
!нm
:1:
•"
IOJ
600
!!
> 400
200
о
о
2
1)
6
8
10
Врв""
1<1
12
1~
16
'18
8.1
Рис.
8.3.
Равноускоренное движение: ускорение свободно падающего
объекта
•
Предупреждение
Вычисление среднего от разностных формул может привести к неожи
данным результатам. Если подставить разностные формуль1 в выраже
ние для среднего, то результат будет вычисляться только по двум пер
вым и двум последним точкам, полностью игнорируя все остальные.
При вычислении ускорения, при каждом вычитании случайная по
грешность становится все больше. Это связано с тем, что исходные дан
ные сами содержат случайную погрешность. При вычитании двух при
мерно равных величин, результат яв;щется малой величиной, однако ве
личина погрешности остается неизменной ввиду ее случайного характера.
Например, если х1 содержит погрешность ЛХ и значение х2 примерно
равно значению х 1 , то разность между этими двумя числами равна
(х 1 +Лх)-х 2 =(х 1 -х 2 )+Лх
Результат является малой величиной х2 - х 1 , содержащей ту же слу
чайную погрешность, что и исходные числа. У вас может возникнуть во
прос, не получится ли.так, что оба"числа содержат одинаковую погреш
ность, которая при вычитании полностью исчезнет? Да, такое может
происходить, но для случайных nогрещностей существует такая же веро
ятность, что обе погрешности будут иметь разные знаки и в результате
суммарная погрешность будет в цва раза больше. Таким образом, после
вычитания получаются меньшие величины при том же значении случай
ной погрешности, что означает увеличение относительной погрешности.
ijfj
Гnава
8
что увели-
Если известно, что погрешность экспериментальных данных одного знака
и величины, такая погрешность является систематической, а не случай
ной. Вычитание
щественно
меньшает системсJтичес
ю по
шность.
Обычно, перед вычислением производных, экспериментальные дан
ные сглаживают, то есть аппроксимируют какой-либо известной кривой,
и вычисляют производную уже от этой кривой. При таком подходе сле
дует быть внимательным, чтобы не "сrлалить" важные детали. В нашем
случае известно, что движение является равноускоренным, поэтому ско
рость можно аппроксимировать прямой линией. Угол наклона этой пря
мой равен производной от скорости, то есть ускорению.
1.
В ячейку
2.
Выделите ячейки
F5
введите метку Результаты регрессии.
G8:H12
введите в них формулу
=ЛИНЕЙН(С5:С19;А5:А 19;ИСТИНА;ИСТИНА)
в качестве формулы массива, нажав комбинацию клавиш
<Ctrl+Shift+Enter> (<Cmd+Enter> для компьютеров Maciпtosh).
Добавьте метки для результатов регрессии и отформатируйте рабочий
лист для придания ему вида, более удобного для чтения. Поскольку часть
массива невозможно просто передвинуть, значения из столбца Н пере
местить невозможно. Для улучшения внешнего вида рабочего листа, по
сле отображения резупътатов регрессии можно скрыть весь столбец Н.
3.
4.
Введите следующие значеиия в указанные ячейки.
Fб
Сдвиг
F7
F8
F9
F10
Стд. Оwибка
Накnон
СтдОwибка
r2
F11
F12
F13
F14
F15
F
CC-Per
СС-Ост.
Стд.
ow.
оценки у
Степ. саободы
G6
G7
G13
G14
G15
=Н8
=Н9
=Н12
=Н10
=Н11
Выделите ячейку Н и выберите команду Формат> Столбец> Скрыть.
Наклон линии скорости (973 см/с2) отображается в ячейке G8. Полу
ченное значение довольно близко к ожидаемому (980 см/с2).
Интегрирование
Интегрирование дискретных данных включает в себя аппроксимацию
этих данных известной функцией с последующим ее интегрированием. В
большинстве случаев не удается подобрать одну функцию для аппрокси
мации на всем интервале, поэтому область интегрирования разделяется
на большое количество подинтервалов, на каждом из которых использу
ется простая функция типа линейной, квадратической или кубической.
После чего результаты для отдельных подинтервалов складываются вме
сте для получения полного интеграла.
Интегрuрованuе
u
,,,,
дuфференцuрованuе
Типы формул интегрирования
"
Наиболее часто при численном интегрировании используются прави
ло прямоугольников, правило трапеций, интегрирование по Ромбергу,
правило Симпсона и квадратура Гаусса. Каждый из этих методов являет
ся более точным, чем предыдущий, поскольку производит аппроксима
цию данных более сложной кривой.
Правило прямоуrольников
Согласно правилу прямоугольников, область между точками заполня
ется прямоугольником, высота которого соответствует координате у од
ной из точек, а ширина равна расстоянию между точками. Значение ин-
теграла определяется по следующей формуле:
·
SOCIJ
400)
DJJ
200)
нm
11-!
.__.......
~.
о
+--...._____,___....___.__,
о
5
10
1= LY;(x;+i -х;)
r=I
Такое приближение может показаться очень грубым, например для
случая, указанного на рисунке, однако при малой ширине интервала и
гладх.ой функции результаты получаются достаточно точными.
Кроме
того, такой метод очень просто реализовать, поскольку достаточно про
сто перемножить данные в каждой точке на ширину ин~рвала и сложить
результат.
Прввило трвпеций
Согласно этому правилу, каждая .пара соседних точек соединяется
прямой линией, образуя последовательность трапеций.
scm
.с((()
DJJ
<аю
100)
..._____....,.
D -t-~-т-"-~---t
о
5
10
[ =~(У;+
~
i=I
Yi+I ) (
2
Х1+1
-
.)
х1
Площадь трапеции равняется полусумме оснований, умноженной на
высоту - расстояние между точками в данном случае. Обший интеграл
равняется сумме площадей всех трапеций.
,,,,
Гnава
8
Интегрирование по ,Ромберrу
Правило трапеций можно улучшить с помощью интегрирования по
Ромбергу, использующее две различных оценки для экстраполяции зна
чения интеграла. При вычислении первой оценки используется правило
трапеций для каждой точки, а при вычислении второй оценки использу
ется правило трапеций для каждой второй точки.
400J
:
ЗООJ
~ (У1 + Yi+I ) ( X;+l
I 1= L..J
100J
2
1=!
5
-
Xi
)
10
Полученные оценки соответствуют различным интервалам между точ
ками. Согласно методу Ромберга, ошибка при вычислении интеграла
пропорциональна квадрату расстояния между точками.
I = / 1 +Ch 2
1=12 + C(2h) 2
где С
-
'
постоянная. Решение этих двух уравнений приводит к сле
дующему выражению для интеграла
1 = 11 +
t (!1 - l 2)
Превило Симпсонв
Согласно правилу Симпсона, для аппроксимации данных использует
ся уравнение параболы, построенной по трем точкам (правило
по четырем точкам (правило 3/8).
1/3)
или
п-2
500)
l =
4(Ц)
L t(Yi + 4У,+1 + Yi+2 )h
1~1.З,5.-··
п-3
l =
L i(Y + Зу1+1 + Зу1+2 + Ym )h
1
i=ot.4,7".,
о
5
10
Квадратура Геуссе
При интегрировании аналитических выражений,
в противополож
ность интегрированию отдельных точек, можно использовать квадратуру
Интегрuрованuе
u
F)i)j
дuфференцuрованuе
Гаусса. Число необходимых точек определяется порядком кривой, кото
рую должна быть использована для аппроксимации. Для кривой третьего
порядка достаточно двух значений функции.
5(0)
4!Ц)
'
.
DXJ
'
'
j,
zm
·-·--
,•
1СОО
.\
·2
о
+t
2
f f(t)dt = f(-0. 5773) + f(O. 5773)
_
1
Хотя такая простая формула может показаться каким-то волшебством,
для нее существует строгое математическое обоснование (см. список ли
тературы в конце главы). Для использования этого выражения необходи
мо провести замену переменных таким образом, чтобы интегрируемая
функция имела выш~приведенный вид (формулы более высокого поряд
ка приведены в литературе). Затем достаточно вычислить сумму значений
функции в указанных точках.
Несобственные интегралы
Часто встречаются интегралы, у которых один или оба предела интег
рирования равны бесконечности или подынтегральная функция не опре
делена где-либо на участке интегрирования.
Например, большинство
специальных функций в физике и технике (гамма-функция, функция
ошибок и т.д.) определены с помощью интегралов, один из пределов ко
торых равен бесконечности. Обойти эту проблему можно несколькими
способами.
Простейшим способом является замена переменных таким образом,
чтобы оба предела интегрирования стали конечными. Например, рас
смотрим следуюшую функцию.
1=
J: х е -х dx
2
Разобьем ее на два интеграла
l =
J: Х 2 е-х dx + J.''" Х 2 е-х dx
и проведем замену переменных у
1=
i
=
1/х во втором интеграле.
i е-1/у
r х2 е-х dx + Jor -4-dy
Jo
у
Теперь имеется два интеграла с конечными пределами.
Подынте
гральная функция второго интеграла на нижнем пределе не определена
1\1&
Гnава
(неопределенность типа
0/0),
8
однако предел равен нулю, так что это не
проблема.
Многие выражения с бесконечными пределами быстро сходятся при
увеличении аргумента. Фактически, они должны быстро сходиться, что
бы значение самого интеграла было конечным. В таком случае можно
продолжать интегрирование функции до тех пор, пока значение измене
ния интеграла не станет намного меньше
ero
значения, и прекратить ин
тегрирование в этот момент.
Функция во втором интеграле вышеприведенного уравнения не опре
делена в нижнем пределе интегрирования. Если известно, что предел
функции в этой точке равен нулю, этот факт можно использовать для
вычисления интеграла. Если же значение предела не известно, или он
равен бесконечности, как в случае
r~
Jo "\/ х
1
I=
'
необходимо заменить нижний предел на малое число Е и выполнить
интегрирование. Затем нужно уменьшать значение Е до тех пор, пока ин
теграл не сойдется (если он сойдется). Обратите внимание,
что это
именно тот способ, каким бы этот интеграл вычислялся аналитически.
Использование методов интегрирования
Использование методов интегрирования достаточно просто. В каждой
ячейке происходит вычисление значения интеграла между двумя точка
ми. В последней ячейке все эти значения суммируются.
·
Гамма-функция
Гамма-функция принадлежит к так называемым специальным функ
циям науки и техники. Она возникает в физических задачах, например,
при вычислении вероятностей в статистической механике или при нор
мировке волновых функций в кулоновском поле. Вы встречались с ними
в предыдущей главе в виде сомножителя в выражении для функции Бес
селя Jп(х) в случае нецелого значения п. При целых значениях аргумента
гамма-функция становится обычным факториалом.
Г(n+l)=n!
Гамма-функция определяется следующим интегралом
Г(х) = (ф e-r tx- 1dt
Jo
не
имеющим
'
аналитического
выражения.
обычно задаются таблично. На рис.
ной функции для х
8.4
Значения
гамма-функции
приведен график подынтеграль
= 1,5. Обратите внимание, что выражение быстро
Интегрuрованuе
111
дuфференцuрованuе
u
стремится к нулю, поэтому интеграл можно оборвать при
t = 10,
что
приведет к точности более чем в три знака.
В следующем примере, вычислите гамма-функцию с помощью чис
ленного интегрирования. Используйте все методы, описанные ранее, и
сравните результаты. Значение гамма-функции в точке х =
г
\/1t
1,5
равно
12.
Используйте именно. такое значение х, чтобы сравнить результаты ин
тегрирования с правильной величиной.
1.
2.
3.
Создайте новый рабочий лист и назовите его рис.
Установите ширину столбца А равной
8.5.
11.
В ячейку А 1 введите название Гамма функция.
Введите .значения и присвойте имена ячейкам для значений х и шага
интегрирования
dt.
График функции, иктеграл которой определяет rамма
функцию при к=
1,5
0.5
0.45
0,4
о.зs
":;-
о.з
0.25
• 0.2
0.15
0.1
o.os
o.j._~~-+-~~~+-======-.-~~---1e---~~--~~---1
о
10
8
12
r-
Рис.
График функции, интеграл которой определяет гамма функцию при
х=
8.4.
1,5
4.
В ячейку С1 введите метку х= и выровняйте ее по правому краю.
5.
В ячейку
6.
7.
8.
В ячейку Е1 введите метку
В ячейку
В
01
F1
ячейки
введите значение
dt=
введите значение
ВЗ:GЗ
введите
1,5
и присвойте ячейке имя Х.
и выровняйте ее по правому краю.
0,1
и присвойте ячейке имя
метки
'Истина,
Прям.,
DelT.
Tpan.2,
Трап.,
Ромберг., Симп.1/3 и выровняйте их по центру.
- . _ Примечание
Перед меткой Истина необходимо поставить одинарную кавычку, чтобы
Excel не воспринял
ее в качестве логического значения.
Hi
~~в
Напишите формулу сложения содержимого всех ячеек для получения
полного интеграла каждым методом. Вычислите ошибку каждого метода,
сравнив вычисленный интеграл с правильным значением в ячейке 84. В
ячейке
F4
находится формула Ромберга, объединяющая два правила тра
пеций.
9.
Введите следующие значения в указанные ячейки.
Ячейка
Содержание
Примечание
А4
А5
Интеграл=
выравнивание по правому краю
Ошибка=
=КОРЕНЬ(ПИ())/2
=СУММ(С8:С102)
выравнивание по правому краю
84
С4
cs
=(С4-$В$4)/$В$4
скопировать в
скопировать в
D4:E4
D5:G5
==D4+(D4-E4)/3
=CYMM{GB:G 102)
F4
G4
В столбuы А и В введите
96
значений переменной t и интегрируемого
выражения.
10.
Введите следуюшие значения в указанные ячейки.
Ячейка
Содержание
Примечание
А7
А8
t
выравнивание
А9
=A8+DelT
f(x,t)
no
правому краю
о
87
11. Измените
скопировать в А 1О:А103
выравнивание по правому краю
формат ячеек А8:А103 на числовой, с четырьмя знаками
после запятой.
12. В
ячейку
88
введите формулу =ЕХР(-А8)*А8"(Х-1) и скопируйте ее в
ячейки С9:С102.
Теперь введите формулы для правила прямоугольников
13. В
ячейку СВ введите формулу
=B8*DelT и скопируйте ее в ячейки
89:8103.
Дважды проведите вычисления по правилу трапеций, первый раз с
использованием одинарного шага, а второй раз с использованием двой
ного шага интегрирования. Второе вычисление необходимо для вычисле
ния по формуле Ромберга в ячейке F4. Обратите внимание, что при вто
ром вычислении по правилу трапеций используется каждая вторая точка,
поэтому в столбце Е происходит обнуление некоторых формул, чтобы не
учитывать их дважды.
14. В ячейку 08 введите формулу =Dе1Т*(В8+В9)/2 и скопируйте ее в
15.
ячейки D9:D102.
В ячейку ЕВ введите формулу =Dе1Т*(В8+В10) И скопируйте ее в ячейки Е9:Е101.
.
16. Замените
... ,
формулу в каждой второй ячейке столбца Е (Е9, Е11, Е13,
Е101) на О.
Интегрuрованuе
u
,,,,
дuфференцuрованuе
./Совет
Для быстрой замены формул можно использовать поочередное нажатие
клавиш <О> и <стрелка вниз>
Введите формулы для вычисления по правилу Симпсона. Как и ра
нее, обнулите каждую вторую формулу в столбце
17.
В ячейку
в ячейки
18. Замените
... , G101)
G8 введите
G9:G101.
G.
формулу =Dе1Т*(В8+4*В9+В10)/З и скопируйте ее
формулу в каждой второй ячейке столбца
G (G9, G11,
G1З,
на О.
19. Отключите
отображение линий сетки.
Теперь ваш рабочий лист должен выглядеть, как показано на рис.
8.5.
Значения, вычисленные по правилу прямоугольников и трапеций, прак
тически одинаковы. Интегрирование Ромберга уменьшает ошибку для
правила трапеций почти на 50 процентов, до значения, близкого вычис
ленному по правилу Симпсона. Во всех вычислениях, область интегри
рования была разделена
Ге~мма функция
х
ИС1'111НЗ
равноотстоящими точками.
96
=
Прям.
1,5
Трал.
0,1
dt=
Tpan.2
Ромберг
Сl<!МП
113
Ин;еrрап= 0,886227 0,879481 0.879492 0,867836 0,883378 0,883346
Ошибка=
-0,00761
-0.0076 -0,02075 -0.00321
-0.00325
f{x.t)
0.0000
0,1000
0.2000
0,3000
0,4000
0.5000
0.6000
0.7000
0.8000
0,9000
о
о
0,286135
0,366148
0.405763
0,423948
0.428882
0.425108
0.415473
0.401892
0,385706
0.028613
0.036615
0,040576
0,042395
0.042888
0,042511
0,041547
0.040189
0,038571
0,014307 О.0?>6615
о
0.032614
0.038596 0.07901
0,041486
о
0,042641 0.084906
о
0.042699
0,0827
0.042029
о
0,040868
0,03938 0.076977
0,037679
о
·'
0,050356
.
о
0.080438
.__,;
о
0.085486
о
0.082963
о
:·,,
"
'
~:
0,077086
о
8.5
Рис.
8.5.
Гамма-функция: вычисление интеграла с помощью правила
прямоугольников, трапеций, Ромберга и Симпсона
Формула квадратуры Гаусса в данном рабочем листе не, использова
лась, поскольку она является более точной и требует меньшего числа то
чек. Для нее достаточно
15
точек вместо
96.
Фактически, будут использо
ваны 43 точки, поскольку квадратура третьего порядка вычисляет значе
ния в двух дополнительных точках .!lЛЯ каждого интервала. Расположение
данных на рабочем листе остается прежним. Для сравнения, значение ин
теграла будет вычислено по тем же точкам с помощью правила трапеuий.
IJf~j
Гnава
8
Для использования квадратуры Гаусса, необходимо вначале провести
замену переменных таким образом, чтобы пределы интегрирования стали
-1 и 1. Используйте следующую подстановку:
(Ь-а)у+Ь
t = ..;._
_ __..;....;,.___+а
_
2
где а
-
нижний предел интегрирования, а Ь
-
верхний.
В результате выражение для гамма-функции принимает следующий
вид.
Г(х) = Г' е- 1 tx-idt
Jo
= (Ь -
а) J+le -((b-ti)y+h+"!/2 ( ( Ь - а )у+ Ь +а) x-i dy
2
2
-1
В данном случае значение интеграла вычисляется для каждого интер
вала межлу точками, поэтому верхний и нижний предел интегрирования
совпадают со значением
t
в этих точках. Обратите внимание, что такой
:метод можно применять только в том случае, если известно аналитиче
ское выражение для подынтегральной функции, а не экспериментальные
точки, или же известны значения интеграла в этих точках.
1.
2.
Создайте копию рабочего листа из предыдущего примера и назовите ее.
Установите ширину столбца А равной 11.
Введите значения точек области интегрирования. В начале области,
где функция изменяется быстро, точки должны быть расположены чаще,
чем в конце, где изменения функции более плавные.
3.
Введите следующие значения в ячейки А8:А22
АВ
А9
А10
4.
О
0,2
0,4
А11
А12
А13
0,6
0,8
1
А14
А15
А16
2
3
4
А17
А18
А19
5
6
7
А20
А21
А22
8
9
10
Очистите содержимое ячеек А2З:D103, E1:G103 и C22:D22.
Вычислите значение квадратуры для кажлой пары соседних точек в
ячейках С8:С21 и сложите полученные значения в ячейке С4.
5.
6.
7.
В ячейку СЗ введите метку Гауссиан и выровняйте ее по центру.
Измените содержимое ячейки С4 на =СУММ(С8:С21).
В ячейку С8 введите формулу
=((А9-А8)/2)*(ЕХР(-((А9-А8)*(-1/КОРЕНЬ(З))+А9+А8)/2)
"({(А9-А8)*(-1 /КОРЕНЬ(З) )+А9+А8)/2)"(Х-1)
+ЕХР(-((А9-А8)*(1 /КОРЕН Ь(З))+А9+А8)12)
*(((А9-А8)*(1/КОРЕНЬ(З))+А9+А8)/2)"(Х-1 ))
и скопируйте ее в ячейки С9:С21.
8.
Оставьте вычисления по правилу траnеЦ11и в столбце D для сравнения.
Измените содержимо~ ячейки D4 на =CYMM(D8:D21).
Интегрuрованuе
u
дuфференцuрованuе
Теперь ваш рабочий лист должен вь1глядеть, как показано на рис.
8.6.
Обратите внимание, что ошибка квадратуры Гаусса составляет примерно
одну пятую от ошибки интегрирования по правилу трапеций .
.-.·_,l;JJ&i;;;~;~j:ll.'ffu\.J;~Щl':'~,:L'>L···.::.!:C~-''..:'J.:~~,·~.:"•...:.:·~·-·,:t=.:-.:;~;;:_"_c.:»:»t;;;i•;:_•.~:.:.~.>~~-;"'~-;;;_c_•:cl':l~.:±:~.t:·.'.:';;,;i1.~1
:J;i~ Ге~мма функция
~~;i~
х
=
Истина Гауссиан Трап
·;!~: и~т~~:: o.ssв221 ~:~~~~~~ ~о~~~~~
<?~~
i§1:J
f(x.t)
0,0000
о 0,053628
0,2000 0,366148 0,080454
0,4000 0,423948 0,085489
0,6000 0,425108 0,0829~4
0,8000 0,401892 0.077087
1,0000 0,367879 0,275676
2,0000 0, 191393 0,13281
з.оосо 0.086234
4,0000 0.036631
5.0000
"~i
0,036615
0,07901
0,084906
0,0827
0,Q76977
0.279636
0,138813
С.061433
~.r:
.-
Рис.
8.6.
:...:~:
;·;:i
~ _~: ; " ~
;+:~~, ;: ~;!
• ·; ·<"
Г~мма-функция: использование формулы квадратуры Гаусса
Реализация формул интегрирования в виде·
функций
Visual Basic
Как и следовало ожидать, все формулы интегрирования могут быть
реализованы в виде функций
Просто,
вместо
Visual Basic.
Уравнения остаются теми же.
вычисления частей интеграла в
отдельных ячейках и
сложения их вместе с помощью функции СУММ, используется uикл
Программы
Visual Basic
FOR.
обладают большей гибкостью, чем метод не
посредственного интегрирования на рабочем листе. В первом случае, дr1я
изменения пределов или шага интегрирования достаточно изменить зна
чение переменной или константы, по сравнению с добавлением или уда
лением ячеек во втором. С другой стороны, при интегрировании экспе
риментальных данных
пределы
и
шаг
интегрирования являются
задан
ными, данные уже находятся в ячейках, и поэтому непосредственное ин
тегрирование становится настолько же удобным, как и использование
функций
....
Visual Basic.
Примечание
Хотя функции
Visual Basic
предоставляют больше возможностей при вы
числении интегралов, формулы рабочего листа позволяют наблюдать
значения в процессе вычислений, что позволяет убедиться в правильно
сти расчетов.
Г(lава
IJ fj
Функция
Visual Basic для аычислания
Программа
Visual Basic
8
гамма-функции
из следующего примера вычисляет rамма
функцию с помощью правила трапеций.
1.
2.
Visual Basic
Макрос
Visual Basic, создайте новый модуль и присвойте
>-
Редактор
с помощью команды меню Сервис
ему имя Gammaf.
Введите следующую процедуру:
Option Exp1icit
'
'
'
.
Вычисление гамма-функции
по правилу трапеций
Function Gamma(dЫX As DouЫe) As DouЫe
Dim dЫТ As ОоuЫе ' Переменная икrеrрирования.
Dim dЫTerm As DouЫe' Член суммы.
Dim dЫTerm1 As DouЫe 'Две части члена суммы.
Dim dЫTerm2 As DouЫe
Const !Start =О
'Нижний nредел икrеrрироаания.
Const tEпd = 20
' Верхний nредел икrеrрирования.
Const ОеlТ 0.01 ' Шаг икrеrрирования.
Const CutOff = 0.000000001 ' Образающее значение для члена суммы
' Обнуляем пераменную суммирования.
Gamma =О
' Цикл икrеrрирования, за один цикл вычисляется одkи член суммь1.
For dblT = tStart То tEnd Step DelT
' Вычисляем один член суммы по правилу трапеций.
dЬITerm1 = Ехр(-dЫТ) * dЫТ" (dblX - 1)
dЫTerm2 = Exp(-dblT - ОеlТ) * (dЫТ + ОеlТ)" (dЫХ - 1)
dЫTerm De1T * (dЫTerm1+db1Тerm2)/2
=
=
'Добавляем полученное значение к разультату.
Gamma = Gemma + dЫTerm
' Завершаем, если nосnедний член
lf dЫТerm / Gamma < CutOff Тhеп
Exit For
End lf
NextdblT
End Function
'
>
Запустите редактор
меньше, чем 1е-9 от всей суммы.
Небольшая процедура, исполt:.Зуемая при отладке
'
SuЫest1()
Dim dЫХ As ОоuЫе
Const Pi = 3.14159265358979
'Тестируемое значение
dЫХ= 1.5
' Выводим значение, результат и правильный разультат
' в окно отладки.
DeЬug.Print dblX, Gamma(dЫX), Sqr(Pi) 1 2
Stop
End Sub
Интегрuрованuе
u
дuфференцuрованuе
В начале процедуры происходит объявление нескольких переменных,
и определяются три константы, соответствующие предел ам и шагу интег
рирования. Использо вание констант заметно упрощает измен ение цикла
интегрирования при тестировании. Затем инициализируется переменная
суммирования
Gamma
и начинается цикЛ, выполняющий интегрирова
ние. В пределах цикла вычисляются два значения подынтегрального вы
ражения , и находится их среднее, которое затем умножается
тегрирован ия для
получения
площади трапеции.
на шаг ин
Найденн ая площадь
прибавляется к переменной суммирования. В конце цикла происходит
сравнение величины последнего слагаемого со всей суммой. Если сла
гаемое меньше суммы более чем в
1 х 1О-9
раз, то цикл прекращается.
После функции находится небольшая процедура, используемая при
отладке.
Процедура вызывает функцию для
проверки синтаксических
ошибок и правильности вычисляемых значений . Для этого переменным
присваиваются значения, вызывается функция и результаты выводятся в
окно отладки. Затем выполнение ~:~рекращается и отображается окно от
ладки, в котором можно видеть текущие значения. При возникновении
проблемы для проверки значений других переменных в этот момент
можно использовать команды отладки.
Для использования новой функции в рабочем листе , создайте новый
рабочий лист и вызовите функцию с заданным аргументом. Вновь ис
пользуйте значение
1.
2.
1,5
для проверки точности результата .
Создайте копию рабочего листа рис. 8.6 и присвойте ему имя рис.
Введите следующие значения в ячейки Е3:Е5
ЕЗ
Гамма
Е4
=Gamma(X)
Е5
=(Е4-$8$4)/$8$4
8.7.
Через несколько секунд рабочий лист должен выглядеть, как показано
на рис. 8.7. Ошибка в данном случае составляет всего 0,02 %. Точность
можно увеличить еше больще. уменьшив значение шага и обрезающее
значение. В результате увеличится время вычислений , но это может быть
допустимым, в зависимости от конкретной ситуаuии.
Резюме
В этой главе вычисляются численные производные данных и функ
ций . В часrnости , рассмотрены методы, используюшие формулы рабо
чего листа для вычисления правых, левых и центральных производных , и
показаны некоторые проблемы численного дифференцирования, а имен
но: окруrление , отбрасывание и рост ошибки при вычитании.
Кроме того, рассматривается численное интегрирование данных и
функций , как непосредственно на рабочем листе, так и с помощью
функции Visual Basic. Реализовано несколько стандартных методов чис
ленного
интегрирования,
обычно
применяющихся
в языках
высокого
уровня. Указанные методЫ включают в себя правила nрямоуrольников,
трапеций , Ромберга, Симnсона и квадратуру Гаусса.
Гnава В
Интеграл=
Истина
Гвуссиан
0,886227
О.886216
Ошибка"
Трап.
Гамма
0.867413 0.88601 9
-0,02123 -0,00023
-1,2Е-05
~,
i.
,"
,:·
f(x,!)
0,0000
0,2000
0.4000
0.6000
0,8000
1.0000
1,2000
1,4000
1.5000
1.8000
Рис.
8.7.
о
0,366148
0.423948
0,425108
0.401892
0.367879
0.329942
0,291777
0,255381
0.221772
0,053628
0.080454
0,085489
0.082964
0,077087
0,06981
0,062155
0.054676
0,047664
0.041251
0.036615
0.07901
0.084906
0.0827
0,076977
0,069782
0,062172
0,054716
0.047715
0.041316
Использование функции
Visual Basic при
, ··
-,
вычислении гамма
функции
Если вас заинтересовало математическое обоснование этих методов,
его можно найти в книгах по численным методам. Большинство алго
ритмов дифференцирования и интегрирования могут быть легко реали
зованы на рабочих листах
Excel.
Дополнительная литература
Специальные функции
G. Arfken, Mathematica/ Methods of Physics (Orlando, Fla: Academic Press,
1970).
Численное интегрирование и дифференцирование
C.Gerald, Applied Numerical Analysis, 2nd ed. (Reading, Mass.: AddisonWesley, 1978).
W.H. Press, et al" Numerical Recipes: Тhе А11 of Scientific Computing (Cambridge, Eng.: Cambridge Un.iversity Press, 1986).
Обзорные задачи
1.
Свободное падение тела на Луне описывается следующими цифрами ,
соответствующими положению тела через каждую
1/60
секунды. Объ
ект начинает движение из состояния по.коя. Используя метод цен
тральных
производных , вычислите скорость и
ускорение .объекта в
каждой точке. Чему равняется ускорение свободного падения на Луне?
Интегрuрованuе
Точка
Положение(см)
Точка
Положение (см)
1
о
6
2
3
0,023
0,093
0,203
0,370
7
0,578
0,833
1, 134
1,481
1, 187
2,314
4
5
8
9
10
11
2.
ij~i
дuфференцuрованuе
u
Используя данные для х и у из следующей таблицы, вычислите и по
стройте график первой и второй производной у по х. Сравните значе
ния, полученные численными методами, с аt:1алитическим решением
=
у'= бх + 12х2 и у"
6 + 24х. (Ошибка в результатах вызвана аппрок
симацией непрерывной кривой дискретным множеством точек.)
3.
х
у
х
у
х
у
0,0
0,5
1,0
1,5
2,0
2,5
3,0
2,00
3,25
3,5
4,0
4,5
5,0
5,5
6,0
6,5
210,25
306,00
427,25
577,00
758,25
974,00
1227,25
7,0
1521,00
1858,25
2242,00
2675,25
3161,00
3702,25
9,0
22,25
46,00
83,25
137,00
7;5
8,0
8,5
9,0
9,5
10,0
Закон Ампера используется для вычисления тоюl
"
4302,00
!
в проволнике, ин
тегрированием магнитного поля по замкнутому контуру, охватываю
щему проводник. Магнитное поле i"JМеряется в нескольких точках
вдоль границы квадрата, расположенного таким образом, что провод
ник находится в центре. Ниже привсд::ны значения измерений в точ
ках, расположенных меЖду серединu;i одной стороны и углом квадра
та. Ввиду симметрии задачи, интеrр;~лы вдоль других половинок сто
рон квадрата имеют такое же значение и полный ток в восемь раз
больше интеграла по одной половине стороны. Вычислите ток в про
воднике с помошью рабочего листа с формулами для правила прямо
угольников, трапеций, Ромберrа и Симпсона. Закон Ампера имеет
следующий вид:
I=
~ (в(у)dу
µ0
.
µ 0 =1.26х10--6
Hlm
у, м
В(у), Вб/м2
у, м
_В(у), Вб/м2
0,0
1,20*10-5
1, 19*10-5
1.16"10·5
2,5
963*10·6
a:ss*10-6
8 08*1Q•6
7:34*10·6
о,5
1,0
1,5
2,0
4.
°
1,10*1О-5
1,04*10·5
з,о
3,5
4,0
4,5
5,0
б,65*1Q•б
6,02"10-б
Интегральный синус является специальной функцией, которая зада
ется формулой:
иr&
rnaвa
8
л J;xsin(t)dt
S1.( х ) = - J"'sin(t)dt = --+
х
t
2 о t
Вычислите значение
Si(x)
= 0,5 с помощью правил прямоуголь
при х
ников и трапеций на рабочем листе.
5·. Интегральная показательная функция является специальной функци
ей, которая задается формулой:
Ei(x)=-
J.
~ е-'
-х
х<О
-dt
t
-i:e -1
-х t
"'е -1
]
= - liin [ J. -dt + J. -dt х >о
t--.O
Вычислите значение
f.
Ei(x)
реализованноrо в функции
t
при х =
-3 с
Visual Basic.
помощью правила трапеций,
7.
Выполните задачу 4 с помощью формулы квадратуры Гаусса.
Выполните задачу 5 с помощью правила Симпсона, реализованного в
виде функции Visual Basic.
8·.
Интегральное представление функции Бесселя целого порядка имеет
6.
вид:
J п (z) = _!_
7t
rтт cos( n8 -
Jo
zsin(8) )d8
Вычислите значение Jп(Z) при п
= 1 и
z = 0,5
с помощью правила
трапеuий на рабочем листе.
9.
Выполните задачу
8
с помощью правила Симпсона, реализованного в
виде функции Visual Basic.
1О. Выполните задачу 5 с помощью формулы квадратуры Гаусса, реализо
ванной в виде функции Visual Basic. Сравните результаты с приведен
ными на рис.
7 .2
Упражнения
1.
С помощью следующих пар значений х и у, вычислите и постройте
график первой и второй производной у по х. Сравните численные ре
зультатъ1 с аналитическим решением у'= 6х2
I5x4 и у'= l2x + 6Ох3.
+
х
у
х
у
х
у
о
7,00
7,02
7,16
7,67
9,01
12,00
17,92
1,4
1,6
1,8
2,0
2,2
2,4
2,6
28,62
46,65
75,35
119,00
182,90
273,53
398,59
2,8
3,0
3,2
3,4
3,6
3,8
4,0
567,22
790,00
1079, 17
1448,67
1914,30
2493,80
3207,00
0,2
0,4
0,6
0,8
1,0
1,2
Интегрuрованuе
2.
Ниже приводится таблица с данными о высоте над поверхностью
Земли небольшой ракеты во время взлета . Вычислите и постройте
график зависимости скорости и ускорения ракеты от времени. Може
те ли вы сказать, когда двигатель остановится?
Время
3.
l)Q
u дuфференцuрованuе
Высота (м)
Время
высота (м)
о
о
0,2
0,4
0,6
0,8
1,0
1,2
1,4
1,6
1,8
2,0
2,2
2,4
2,6
2,8
3,0
3,2
3,4
3,6
3,8
4,0
4,2
4,4
4,6
4,8
4
18
41
71
108
151
199
251
308
367
428
490
552
620
687
753
820
885
951
1016
1080
1145
1209
1272
5,0
5,2
5,4
5,6
5,8
6,0
6,2
6.4
6,6
6,8
7,0
7,2
7,4
7,6
7,8
8,0
8,2
8,4
8,6
8,8
9,0
9,2
9,4
9,6
9,8
10,0
1335
1398
1460
1522
1584
1645
1706
1766
1826
1885
1945
2003
2062
2120
2177
2235
2291
2348
2404
2459
2515
2570
2624
2678
2732
2785
Резервуар имеет глубину
х х
d = 80 -
и ширину
.w = 1000
rде х
d,
описываемую формулой
0,04 футов
w,
описываемую формулой
+ х/2
футов,
расстояние от дамбы до поверхности воды. Вычислите объем
-
воды в резервуаре в акро-фуrах (объем прямоугольного параллелепи
педа с площадью верхней грани один акр и глубиной один фуr) с по
мощью правил прямоугольников и трапеций.
4.
Интегральный логарифм является специальной функuией, которая
задается формулой
Li( х) =
0
=
х <l
ln(t)
rсю
.
Lt(x)
Г~
х J,
dt
t 1 (lп(x)- ln{t))
х
>1
iji:I
5.
Гnава
8
Вычислите значение Li(x) для х из интервала от О до l с помощью
правила Ромберга.
Представьте, что вы находитесь на комете Шумейкера-Леви (Schoemaker-Levy) на пуrи к Юпитеру. Оцените скорость столкновения,
численно проинтегрировав произведение ускорения на время (а х Лt),
необходимое для движения из состояния покоя на бесконечности (а
мало) до поверхности Юпитера (r1) . Для определения времени столк
новения необходимо также знать положение кометы
(v
х Лt). Уско
рение описывается формулой:
т;
a=:.G-
r2J
G = 6,67
х
10-11
1,9 х 1027
т1 =
Н-м2/кг2
кг
r1= 7,0 х 107 м
Сравните полученный результат с аналитическим решением:
v= f2Gm 1
~
6.
r;
Количество грунта, вынимаемое из траншеи при прокл адке дороги ,
вычисляется с помощью числ енного интегрирования. Сечение тран
шеи приведено на рисунке. Ширина дороги
r
фиксирована
в данном случае) , также как и уrол наклона склонов
к
1,5
(l
(20
фуrов
по вертикали
по горизонтали). По результатам земельной съемки, план тран
шеи представляется в виде последовательных сечений холма, через
который должна пройти дорога. Результаты замеров для каждого слоя
привелены в таблице. Количество грунта, который необходимо вы
нуть, оценивается путем определения объема одного слоя и после
дующего суммирования всех слоев. Для вычисления объема слоя вы
числяется средняя площадь поверхности ограничиваюших его трапе
ций, которая затем умножается на толщину слоя. Вычислите объем
грунта, который необходимо вынуrь для прокладки дороги .
Сечение
Глубина траншеи
Сечение
(футы)
А
в
с
D
Е
F
G
н
Глубина траншеи
(футы)
О
;
2
4
7 ,5
12
13,5
j
k
1
n
13
12
10
7
4
2
14
14
о
О
m
Интегрuрованuе
u
дuфференцuрованuе
.
'
а
7.
8.
9.
Ь
d
е
f'
g
h
k
m n
о
Выполните упражнение
4 с помощью правила Симпсона.
4 с помощью формулы квадратуры Гаусса.
Visual Basic для вычисления интегрального лога
Выполните упражнение
Напишите функuию
рифма при произвольном значении х.
10. Три
интеграла Френеля определены следующим образом
Ф( х) = ~ Ге_,
"\f 1t
S(x)
2
dt
о
= ;_ rx sin(t 2 )dt
v 2n Jo
С(х) = ~ rxcos(t 2 )dt
'V2rt
Jo
Напишите функuию
Visual Basic
произвольном з начении х.
для вычисления этих интегралов при
Гпава
9
Решение не11инейных
а11rебраических уравнений
В зтой таае...
./
./
./
./
Метод посnедоватепьных nри611ижений
Метод верхней репаксации
Метод нижней репаксации
Метод Ньютона
Решение нелинейных алгебраических уравнений - работа трудная и
неблагодарная. Уравнение , которое внешне выглядит предельно просто,
может не поддаться решению никакими аналитическими методами . За
исключением уравнений с левой частью в виде многочлена не выше чет
вертого порядка и простейших трансцендентных уравнений (содержащих
тригонометрические функции или эксПоненты), большинство нелиней-:
ных алгебраических уравнений не допускает аналитического решения.
Кроме того, аналитические выражения для корней многочленов треn,его и
четвертого порядка стоJiЪ громоздки, что редко используются на практике.
Все численные методЫ решения нелинейных уравнений основа.Мы на
угадывании начального приближения к . решению и последовательном
улучшении этой догадки. Очередное приближение вносится в уравнение,
а результат используется для построения следующего приближения. Эта
процедура повторяется до тех пор, пока не будет достиrнуrа удовлетвори
тельная точносn, приближенного решения. Итерационный процесс мо
жет оказаться расходящимся; в этом случае бросайте работу и идите до
мой
-
утро вечера мудренее .
Метод последовательных приближений
Хотя для нахождения корней нелинейн.ыХ уравнений существует це
лый ряд методов, лучше всего для реализации в электронных таблицах
подходит метод последовательных приближений. Для его прим енения
уравнение необходимо переписать в следующем виде :
х
= f(x)
Записать уравнение в таком виде можно бесконечным числом спосо
бов, однако некоторые из них мoryr привести к расходимости итераци
онного процесса
..
Peweнue неnuнеuнын аnгебраuческuн уравненuu
После преобразования уравнения необходимо выбрать начальное зна
чение х - первое приближение к решению. В принципе может подойти
любое значение, но чем ближе оно к точному решению, тем быстрее к
нему сойдется итераuионный процесс. Следует помнить, что в задачах с
несколькими решениями различные начальные приближения мoryr при
вести к различным корням, то есть конечный результат существенно за
висит от выбора первого приближения .
Подставьте начальное значение х в функцию f (х) и вычиСлите новое
значение х. Это значение будет являться вторым приближением, которое
снова подставляется в
f
(х). Продолжайте вычисление новых . приближе
ний х таким же образом до тех пор, пока последовательность не сойдется
к пределу с удовлетворительной точностью.
Хо
= первое приближение
х, =/(Хо)
Х2
= /(Х1)
Xn = f (Xn-1)
На рис. 9. l показана последовательность приближений к решению
нелинейного уравнения. График иллюстрирует поиск решения уравнения
х
Cos(x), которое находится в точке пересечения кривых у = х и у
=
=
Cos(x).
На этом рисунке итерационный процесс напоминает приближе
ние к решению по сужающейся спирали; вычисления прекращаются то
гда, когда очередное приближенное значение оказывается достаточно
близким к точному решению.
Рис.
9.1.
Последовательные приближения к решению нелинейного
уравнения
Гnава
9
..... Прим~чание
Исторически
первым
и
классическим методом
решения
нелинейных
уравнений является графический метод. Хотя его точность оставляет же
лать лучшего, графический метод обычно позволяет найти удачное пер
вое приближение для последующего применения численных методов.
Так, чтобы найти грубое приближение к решению рассматриваемого не
линейного уравнения, начертите графики функций у= х и у=
казано на рис .
9.1, и
f(x), как по
на глаз определите абсциссу точки пересечения этих
графиков .
Сходимость процесса последоаательных
приближений
Н е дпя всех уравнений процесс последовательных приближений схо
дится к точному решению. Для обеспечения сходимости метода необхо
димо, •1тобы абсолютное значение производной от функции в правой
части уравнен ия было строго меньше единицы :
lf '<x>I < t
Вообще
говоря ,
существует бесконечное
уравнений в виде х =
f
множество
форм
записи
(х). Для некоторых из них производная
меньше единицы, а дпя других
-
f
'(х)
больше. Можно, конечно, всякий раз
проверять, удовлетворяет ли nроизводмая приведенному условию, ио бы
стрее будет просто записать уравнение в простейшем виде и проверить
его на сходимость. Если сходимость отсутствует, перепишите уравиеиие в
другом виде и снова попробуйте решить его. Н ап ример, обе приведенные
ниже записи эквивалентны одному и тому же у равнению
Cos(x) -
х
=
О,
но только первая из них обеспечивает сходимость итерационного про
цесса:
= Cos(x)
х = ArcCos(x)
х
Уравнение
Рассмотрим
Cos(x) =
следующее
х
простейшее
нелинейное
трансцендентное
уравнение:
Cos(x) -
х =О
Его можно сразу же переписать в требуемом для метода последова
тельных приближений виде:
х
= Cos(x)
Решенuе неnuнеuнык аnгебраuческuн уравненuu
Решим это
уравнение с
использованием
итерационного
аппарата
электронных таблиu. Формулы записываются в электронной таблице в
том же виде, что и на бумаге, но для этого м ожно использовать не всю
рабочую страниuу, а всего лишь несколько ячеек. Для реализации метода
отключите автоматический пересчет листа и введите формулы с рекурси
ей (циклическими ссылками).
Как правило , ячейки листа пересчитываются в нормальном порядке.
Это означает, что аргументы ячейки (то есть те ячейки, от которых зави
сит ее значение) вычисляются до того, как пересчитывается значение са
мой ячейки. Это правило применяется ко всем ячейкам листа, пока все
они не будут пересчитаны. При изменении зна•1ения ячейки пересчиты
ваются все ячейки, значения которых зависят от нее прямо или косвен
но. Рекурсия, или циклическая ссылка, имеет место в том случае, когда
значение ячейки зависит от нее самой, как прямо, так и косвенно через
значения других ячеек. В нормальном порядке такое значен ие вычисл ить
нельзя, поскольку нельзя определить аргументы ячейки, в число которых
входит она сама
-
получается, что мя определения значения ячейки не
обходИ?>Ю сразу з нать его заранее!В итерационном режиме вначале пересчитываются только те ячейки
листа, которые не содержат циклических ссылок. Затем ячейки, содер
жащие циклические ссылки, итерируются ОдИН или несколько раз, в за
висимости от значения, установленного на вкладке Вычисления диалого
вого окна Параметры (Сервис:>-- Параметры)
.
Яt.Jейки, содержащие цик
лич еские ссылки, вычисляются с текущими значениями аргументов без
их предварительного пересчета. Пересчет прекращается после вьшолне
ния указанного в окне Вычисления количества итераций . Чтобы заново
пересчитать все ячейки, щелкните на кнопке Вычислить (либо нажмите
клавиши
<F9> или <Ctrl+=>; на Maci11tosl1 им соответствуют клавиши
<Cmd+=>). Этот способ используется для последовательного вычисления
значения по заданной формуле и поnстановки его в ту же формулу.
В нашем примере установим количество итераций равным l, чтобы
наблюдать за изменением значений при пересчете листа . На практике
мя более быстрого нахождения решения лучше выбрать большее коли
чество итераций .
1.
2.
Откройте новый лист и назовите его Рис.
Выберите
команду
Вычисления,
Сервис
включите
режим
:>--
9.2.
Параметры.
Вручную ,
Откройте
сделайте
вкладку
значение
поля
Предельное число итераций равн ым 1 и уберите отметку с переключа
теля Пересчет перед сохранением. Щелкните на кнопке ОК.
3.
4.
Сделайте ширину столбuа А равной 38.
ВведИте в ячейку А1 строку x=cos(x}; последовательные
nриближения .
Теперь необходимо создать таблицу с начальным значением и флагом
иниuиализации. Флаг инициализации переводит лист в заданное началь
ное состояние.
i)ji
Гnава
9
l ,i\
;;1 :'·,.~:.l_i,: ;~, , ~,, , ,ji1!\i1~,)f
.: ~.:~~-·~ :~j::" .~:.···;<··
'
..
:·
5. В ячейки АЗ:В4 введите приведенные ниже значения. Выровняйте
вправо содержимое ячеек АЗ:А4 .
6.
Ячейка
Значение
Ячейка
Значение
АЗ
А4
Нач. значение
Нач. флаг
83
84
О
ИСТИНА
Назовите ячейки ВЗ и
В ячейке
84 соответственно НАЧ_ЗН и НАЧ.
86 будет вы полняться проверка, равно ли ИСТИНА значение
ячейки НАЧ. Если Это так, х будет установлено равным начальному зна
чению, а в противном случае - равным ячейке 87, т.е. косинусу х. В
ячейке
87
вычисляется косинус ячейки
86,
и тем самым организуется
цикл ическая ссылка.
7. Введите указанные ниже значения в ячейки А6:87 . Выровняйте впра
во их содержимое.
Ячейка
Значение
Ячейка
Значение
Аб
А4
х
86
87
=COS(86)
Cos(x)
Далее следует вычислить погрешность
=ЕСЛИ(НАЧ,НАЧ_ЗН,В7}
-
разницу между х и
Cos(x) -
которая будет служить критерием сходимости процесса последовательных
приближений.
8. В ячейку А9 введите строку Поrреwност~ и выровняйте ее по право
му краю .
9. В ячейку 89 введите =87-86.
10. ПреобразуЙте ячейку 89 в экспоненuиальный формат с двумя цифра
ми после запятой .
Теперь организуем вторую циклическую ссылку
-
дпя подсчета коли
чества итераuий.
l l. В
12. В
ячейку А11 введите Итераций и выровняйте ее по правому краю.
ячейку 811 введите =ЕСЛИ(НАЧ,0,812+1).
Решенuе неnuнеuныи аnгебраuческuн уравненuu
13. В ячейку 812 введите =811.
14. Отключите линии сетки.
15. Для выполнения расчета установите
ячейке 64 равным ИСТИНА, и нажмите
значение начального флага в
клавишу
•
<F9>
(Вычисли~ь) для
запуска решения задачи.
16. Измените
вишу
значение начального флага на ложь и снова нажмите кла
<F9>.
При каждом нажатии клавиши
<F9>
выполняется одна итерация и
вычисляется следующее приближенное значение х.
17. Н ажимайте
клавишу <FЭ> до тех пор, пока значение х не достигнет
необходимой точности.
Точность полученного приближенного значения х проверяется путем
его сравнения со значением
(х); разность между ними отображается в
ячейке В9. К этому моменту рабочий лист должен выглядеть так, как на
рис. 9.2. Значение х, являющееся корнем уравнения, приведено в ячей
f
ках В6 и
87.
Щ~:f:~~~~i·~Л~l·~ш~:?~i~~~~!;?:~-~~~-:Ni~~~;:~~i
.:!;1!)' • = Со~(•); nос11едоаатепь•ы• nриб11""'ен••
.Я;,,
11
:}J'f
Н•ч. 1нач ени.е
Нач. флаг ЛОЖЬ
;~i
1
О, 739035
'11!'
Соф) 0,739085
~~
Поrрешwост• 1.641:·10
~~
1т
ИТерэц•i!
:u.
5б
56
!ЗЭ'.
~:t;
•>15':
:j~·
к:':t",t;:)li'
Рис.
9.2.
Применение метода последовательных nриближений для решения
уравнения
Cos(x)
=х
Если бы итерационный процесс для данной формы уравнения оказал
ся расходящимся, это уравнение следовало бы переписать в эквивалент
ной форме (мя арккосинуса) и попробовать решить заново:
х
= Cos·I(x)
Отслеживание значений х и прекращение вычислений после достиже
н ия нужной точности может выполняться в Excel автоматически. Для
демонстрации этой возможности изменим наш пример так, чтобы вместо
непосредственного наблюдения за изменением приближенных значений
х воспользоваться критерием остановки итераuий. Для начала очистите
ячейки А9:В12 , поскольку их значения с каждой итерацией постоянно
изменяются, что не позволяет критерию остановки корректно сработать.
Гnава
9
Затем выберите количество итераций и критерий остановки на вкладке
Вычисления диалог.овоrо окна Сервис>- Параметрь1.
1. Скопируйте лист Рис. 9.2, и назовите ero Рис. 9 . З.
2. Удалите содержимое ячеек А9:812.
· з. Выберите
команду
Сервис >Параметры,
откройте
вкладку
Вычисления, и установите значение поля Предельное число итераций
равным 100, а поля Относительная погрешность равным 1.ОЕ-7.
Включите режим Автоматически в группе Производить пересчет и
щелкните на кнопке ОК.
Инициализируйте вычисления путем ввода значения ИСТИНА в ячейку
84 и пересчета листа. Запустите процесс последовате11ьных приближений
путем ввода в ячейку 84 значения ложь . Лист будет пересчитываться до
тех пор, пока максимальное относительное изменение значения л юбой
ячейки не станет меньше 1.0 х
Нач. )качt н"е
Нац. фnar
J0-7, как показано на рис. 9.3 .
О
ЛОЖЬ
• 0,739085
О, 739035
Соф)
Рис.
9.3. Реализация
метода последовательных приближений с
автоматическим контролем точности
Решенuе нелuнеuнын алгебраuческuн уравненuu
-~ Примечание
Если процесс сходится медленно, предельное количество итераций
заданное на вкладке Вычисления окна Сервис
>-
(100),
Параметры , будет
достигнуто раньше, чем заданная точность . В этом случае нажмите кла
вишу <F9> (на Macintosh <Cmd+=>) для выполнения еще ста итераций.
Повтор~йте эту npoцeдvPv столько ра~. сколько необходи мо .
Метод нижней релаксации
Многие функции характеризуются столь сильной нелинейностью, что
простейший метод последовательных приближений для нахождения их
корней сходится очень плохо или вообще не сходится. Такого рода нел и
нейность обычно возникает из-за наличия на кривой вблизи корня точек
перегиба, так что значение корня х; на каждой итерации осциллирует во
круг точного решения , не приближаясь к нему.
-._ Примечание .
Точка перегиба
зто точка гладкой кривой, в которой ее кривизна · (вто
-
рая производная) меняет знак.
Одним из пугей решения этой проблемы является уменьшение разни
цы между последовательными приближениями на дробный множитель с.
Этот метод известен под названием метода нижней релаксации. С его
nримене.нием последовательные приближения корня х вычисляются сле
дующим образом:
Хо = начальное приближение
Х1
= Хо
х2
=
х1
+ СЛ.У()
+ сЛХ 1
Хп = Хп- 1
+ СЛ.Хп-1
= ./{х11 )
Здесь ЛХ11
-
х11
-
погрешность хна очередной итерации, а с
коэффициент релаксации (О
< с < 1).
При с=
i
-
метод нижней релакса
uии совпадает с обычным методом п оследовательных приближений , а
при с
1 называется методом верхней релаксации , который используется
>
ДJIЯ
ускорения
сходимости
плохо сходящихся
итерационных процессов.
Подставляя значение ЛХ11 в уравнение для Хп, получим расчетное уравне
ние данного варианта метода последовательных приближений:
Хп
= Cf (X11_t)
+
(J -
С)Хп- \
ifj:I
Гnава
9
Метод верхней релаксации
>
Если значение коэффициента релаксации больше 1 (с
1), метод по
следовательных приближений называется методом верхней релаксации.
Его применение нередко ускоряет сходимость плохо сходящихся процес
сов. Если задача медленно решается методом нижней релаксации, по
пробуйте метод верхней релаксации со значением с между 1 и 2. Для
значений с, больших 2, вычислительный процесс практически всегда не
устойчив.
Проделайте несколько итераций и посмотрите, сходится ли процесс к
решению. Если нет, уменьшайте значение с и пробуйте снова до тех пор,'
пока процесс не начнет сходиться.
Наиболее эффективную сходимость дает верхний предел множества
коэффициентов с, при которых процесс сходится. В процессе вычисле
ний этот коэффициент не обязан оставаться постоянным, поскольку
окончательное решение от него не зависит
-
изменение коэффициента
релаксации приводит не...к изменению решения, а только лишь к измене
нию скорости сходимости итераций.
= Xn-I уравнение для приближенного
= f (х"_ 1 ) и перестает зависеть от коэф
После нахождения корня f (хп_ 1 )
значения принимает вид Хп
=
Xn-J
фициента релаксации с. Для ускорения сходимости в процессе итераций
этот коэффициент можно менять так часто, как это необходимо.
Температура электронного газа в
GaAs
Температура электронного газа в арсениде галлия
GaAs,
ускоряемого
электрическим полем, определяется путем совместного решения уравне
ний сохранения энергии и импульса. Решение осложняется наличием в
арсениде галлия двух зон провопимости, в одной из которых подвиж
ность электронов выше, чем в другой. Разрешающее уравнение получает
ся в следующем виде:
Те= Т + ( ~) 'tq~2 µ (1 + Re-ef(kTe) )-'
Здесь введены обозначения:
Те - температура электронного газа;
Т- абсолютная температура окружающей среды
(300 К);
• -
среднее время релаксации энергии электронов в кристаллической
q-
заряд электрона
решетке
00-12 с);
(1.6
х
10-19
Кл);
Е- напряженность электрического поля;
k - постоянная Планка (1.38 х 10-2з Дж/К);
µ -
электропроводность в нижней зоне
Е -
разность энергий верхней и нижней зон проводимости
(0.85
м2/В-с);
(0.31
эВ);
Решенuе неnuнеuнын аnгебраuческuн уравненuu
R(94.1 ).
коэффициент распределения электронов по зонам проводимости
Это уравнение уже записано в форме, готовой для при менения метода
последовательных приближений. Испробуем метод на з начениях н апря
женности электрического поля от
102 до 108 В/м .
9.4.
>- Параметры ,
Откройте новый л ист и назовите его Рис.
1.
2.
Выберите
команду
Се рвис
откройте
вкладку
Вычисления, включите режим Итерации, установите значение поля
Предельное число итераций равным
1
и включите режим Вручную в
груп пе Производить пе ресч ет. Щелк н ите н а кнопке ОК.
Устан овите ширину столбuа С равной 10.
В ячейку А 1 введите строку Температура электронноrо rаза в
3.
4.
GaAs;
последовательные прпближения.
Далее следует создать таблиuу коэффициентов уравне ния .
Введите в ячейки АЗ:F5 следующие зн ачения :
5.
Ячейка
Значение
Ячейка
Значение
Ячейка
Значение
АЗ
Delt_E
Tau
=О.З1"Q
сз
Дж
С4
с
04
Q
вз
В4
В5
ЕЗ
Е4
05
т
ES
06
R
Еб
А4
А5
u
03
к
зоо
1.бЕ-19
1.38Е -23
1.бЕ-19
300
94.1
Выровняйте значения в ячейках АЗ:А5 и
6.
7.
С5
м2/В-с
FЗ
Дж/К
F4
F5
Кл
03:06
к
по правому краю.
Выделите ячейки АЗ:В5, выберите команду Вставка>- Имя>- Создать,
активизируйте переключатель В столбце слева и щелкните на кнопке ОК.
Выделите ячейки
8.
03:06,
выберите команду Вставка
>- Имя >- Создать ,
активизируйте переключатель В столбце слева и щелкните на кнопке
ОК. Обратите в нимание, что ячейка Е6 имеет имя R_ .
Следующий шаг - создание таблицы из начального з начения и флага
иниuиализаuии.
9. Введите в ячейку А7 строку Нач. значение.
1О. В ведите в ячейку С7 значен ие 300.
11. В ведите в ячейку А8 строку Нач. флаг.
12. В ведите в ячейку СВ значен ие ИСТИНА.
13. Присвойте ячейкам С7 и С8 имена НАЧ_ЗН2
и НАЧ2 .
Дал ее необходимо указать сп исок значений напряженности электри
ческого п оля, лля которых будет решаться уравнение.
ячейки Е8:Е16 следующими значениями:
14. З аполните
Ячейка
Значение
Ячейка
Значение
Ячейка
Значение
Е8
Е
Е11
1ЕЗ
Е1 4
1Еб
Е9
(В/м)
Е12
1Е4
Е15
Е1 0
1 Е2
Е13
1 ES
Е16
1Е7
1Е8
15.
Выровняйте значен ия в ячейках Е8 и Е9 по центру .
liфi
Гоава
9
В столбце F будет выполняться проверка значения флага инициализа
ции. При инициализации листа используется начальное приближение к
решению, в противном случае
-
функция из столбца Е . В столбце
G
вы
числяется значение искомой функции.
16. Заполните
следующие ячейки приведенными значениями и выров
няйте их по центру:
Ячейка
Значение
Ячейка
Значение
F8
F9
Те
G8
f(Te)
(К)
G9
(К)
17. В ячейку F10 введите формуJJу =ЕСЛИ(НАЧ2,НАЧ_ЗН2,G10) и скопи
руйте ее в ячейки F11:F16.
18. В ячейку G10 введите формулу
=Т+(2/З)*Tau*Q*E10"2*Ul(K*(1 +R*EXP(-Delt_E/(K*F1 О))))
и скопируйте ее в ячейки G11 :G16.
19. Выберите для ячеек Е10:Е16 экспоненциальны}! формат с одной циф
рой после запятой.
20. Выберите
для ячеек
F10:G16 экспоненциальный формат с двумя циф
рами после запятой.
21 . Отключите линии
сетки .
Для расчета по данному листу установите флаг инициализации в
ячейке F8 равным ИСТИНА и нажмите кл авишу <F9> (Вычислить; на
компьютерах M acintosl1 это клавиши <Cmd+=>). После каждого нажатия
этой клавиши лист пересчитывается заново. К этому моменту рабочий
лист должен выглядеть так, как · на рис.
9.4.
После примерно пяти итераций все уравнения, кроме пятого, сходят
ся к решению, тогда как при напряженности электрического поля, рав
ной
106
В/м, температура колеблется между значениями
6.76
х
103
и
4.17
-х 102 К. Причина этой проблемы видна из графика зависимости f (Те) от
Те, показанного на рис.
9.5.
Графи к функции имеет два пологих участка ,
разделенных точкой перегиба , между которыми и колеблется решение .
Обратите внимание, tпо абсолютная величина производной слева от точ
ки пересечения превосходит
1,
что является нарушением нашего условия
сходимости.
Для решения этой проблемы вычисления необходимо вести в непо
средственной близости от решения. Следует прибегнуrъ к методу нижней
релаксации, чтобы уменьшить длину стрелок на рис.
9.5
и привести про
цесс в нужную область.
l.
2.
Скопируйте лист Рис.
9.4,
и назовите его Рис.
rаза в GaAs; нижняя релаксация.
Введите коэффициент релаксации , равный
3.
9.6.
Исправьте строку в ячейке А 1 на строку Температура электронного
0.5,
Те по уравнениям метода нижней релаксации .
В ячейку А9 введите строку Коэф-т релаксации_
и вычислите значения
Решенuе неnuнеuнык аnгебраuческuн уравненuu
De~_E
Tau
U
4.9бЕ·20 Дж
К
Ц8Е-2З Д>'l'К
1,ООЕ·12 с
Q
1,бОЕ-19 Кл
0,85
м21В-с
т
300
R
94,1
к
300
nожь
Е
Те
f(Те)
(В/м)
(К)
(К)
1,ОЕ+О2 З,ООЕ+О2 Э.ООЕ+О2
1,ОЕ+ОЗ З,ООЕ+О2 З,ООЕ+О2
1,ОЕ+О4 3,01Е+О2 З,01Е+02
1,ОЕ+О5 3.б5Ы2 Э.Б5Е+О2
1,ОЕ+Об б. 7бЕ+ОЗ
4.1 i'E+02
1.ОЕ+07 1.01Е+04 1.01Е+О4
1,ОЕ+О8 6,95Е+О5 6,95Е+О5
TJ19:i!1~цt'l~~~Pм<, ~
Рис.
9.4.
""
, , .:.':.:
~;\~'L~\%И\i:?,i:Юi!l:P;(JЩjfJ#J!rЩ. :.· )'
Температура электронного газа в GaAs; метод последовательных
приближений
4.
5.
6.
7.
Введите в ячейку С9 значение
0.5.
Присвойте ячейке С9 имя С_.
Измените содержимое ячейки
G8
Измените содержимое ячеек
на С*f(Те)+(1~С}'*Те.
G10:G16 на следующее:
=С_*(Т+(2/З)*Таu*Q*Е1 QЛ2*U/(K*(1+R_*EXP(-Delt_E/(K*F10)))))+(1-C_)*F1 О
Рис.
9.5. Темпера-тура электронного газа в GaAs: график зависимости f (Те)
от Те при напряженностv. поля 106 8/м, демонстрирующий причину расходи
мости процесса последовательных приближений
В этом случае вычислительный процесс весьма быстро сойдется к ре
шению для всех значений напряженности электрического поля, как по
казано на рис. 9.6. Причиной улучшения сходимости является введение
коэффициента релаксаuии, который уменьшает приращение решения на
каждом шаrе итерации.
Гnава
9
·~~:1~+·:щ~~~~i·?1 :·:~1::Ek<> \::·:>c1~;;ч~~п~~J)(.i~.j~·~>:?:J::~~;.;, ::·:·;:;:..~f=::
;1'f;~ Teunepaтyi:i1 ~лекrрон+1сrо газ~·! GiilAS; 1оtи>31111" ре.лакс.ациR
9бЕ-20 Дж
1;J:·
К 1.38Е-2З Дж/К
Dolt_E 4.
TaiJ 1 ,ООЕ-12 t
u
о. ss м21В-<:
i;ti(
З~:
:s(
);;~ на~. )Н3Ч8НИ8
.... фnar
·:в··· н
Q 1,бОЕ-19 Кn
т
зоо к
R
U4, 1
300
JЮЖЬ
\~i.•· КО>Ф-Т ре11а.сацм•
0,5
Е
Те
(6/w)
(К)
C'f(fe)+(1-C)"Тe
(К)
1,ОЕ+О2 3,ООЕ+О2 З,ООЕ+02
:m:i"
"11·
1 ,ОЕтОЗ 3.ООЕ+О2 З,ООЕ+О2
12
1, ОЕ+04 3,01Е+02 З, 01Е+02
ц
1.ОЕ+05 З,б5Е+02 З,55Е+О2
'\.("
1.ОЕтОб 1,28Е+ОЗ 1.28Е+ОЗ
1 .ОЕ+О7 1,01Е+О4 !,01Е+О4
:'JS:
1, ОЕ• 08
:IБ·
б, 95Е+05 б, 95Е+О5
ifi
li >Ч' ·tt · ;,,.;;9.z ;{f"iic; ~1~ 9:~1~:.;o.s),P>oe. 'J.6 .(Pit\• ~.1, 1•.1·,
Рис.
·..,:
::1
•. IГ
9.6. Температура электронного газа в GaAs; меrод Н'1жней релаксации
Хоrя для различных задач применяются различные коэффициенть1 ре- :
1
лаксации, но, как правило, значение этого коэффициента между 0.1 и 0.9
практически всегда обеспечивает сходимость , если ее не наблюдалось !
при значении
1. Как уже упоминалось, некоторые задачи сходятся быстR~~ П,1?~ з-~-~~~-~!1.и к9~ффи_4~~н.!_~.R-~J1а1<s:а~ии~-~..о~.Ь.ше.~. 1_:
Метод Ньютона
Никакое изложение численных методов решения нелинейных уравне
ний не может быть полным без метода Ньютона, или метода касатель
ных. Методы, рассмотренные в этой главе ранее , имеют первый порядок
сходимости к корням уравнений, тогда как метод Ньютона является ые
тодом второго порядка, и тем самым позволяет добиться большей точно
сти за меньшее число итераций. Однако для реал изации метода Ньютона
необходимо уметь вычислять производную функции , входящей в уравне
ние , анал итически или численно .
Для применения метода Ньютона вначале перепишем уравнение в не
явной форме:
g(x) =О
Затем вычислим производн ую функции, стоящей в левой части урав
н ения :
g '( х ) = dg(x)
dx
Прибавим к обеим частям функции перем енную х и выполним итера
ции по методу последовательных приближений :
Решенuе неnuнеuныи аnгебраuческuи уравненuu
х 0 =нулевое приближение
Х
=
Х
11
11- \
.....
g(x11-I)
g ' ( хп-1 )
п~~мечание
Основным недостатком метода Ньютона является необходимость вь1чис
nения производной . Хотя оно обычно выполняется достаточно стандарт- .
но, выражение может получиться громоздким. Если производную трудно
вычислить аналитически , можно воспользоваться численными формула-·
ми центральных разностей, изу_ченными в главе
8.
Модифицируем рассмотренный ранее пример , решив
его методом
Ньютона вместо метода нижней релаксации. Для температуры электрон- ноrо rаза в
GaAs
функция левой части уравнения и ее производная вы
глядят следуюшим образом:
g(Te ) ~
Т-Те + ( ~) т:q~
g'(Te)= -l1.
2.
2
µ ( 1+ Re-F-f(kтe) ) -
R · t/(kTe)
~:Тее2
1
~
(t+Re -tf(kTe))-"
Скопируйте предыдущий рабочий лист и присвойте ему имя Рис.
9.7.
Изм ените заголовок в ячей·ке А 1 на Температура электронного газа в
GaAs;
3.
(32) tqЕ
2
метод Ньютона.
Очистите ячейки А9: С9 .
Теперь заменим уравнение
метода нижней рел аксации уравнением
метода Ньютона.
4.
Введите в ячейку
5.
Введите в ячейку
GB
выражение Te-g(Te)/g'(Тe) .
G10 следующую формулу:
=F1 O-(T-F10+(2/З)*Тau*Q*E10Л2*U/(K*(1 +R_
*EXP(-Delt_E/(K*F10)))))/(-1-(2/З)*Тau*Q*E10Л2
*U*Delt_PR_*EXP(-Delt_E/(K*F1O))/((K*F10)"2
*(1 +R_*EXP(-Delt_E/(K*F10}))"2))
и скопируйте ее в ячей ки
G11:G16.
11§1
Гnава
9
К этому моменту рабочий лист должен выглядеть так, как на рис. 9. 7.
Он обрабатывается точно так же, как и в предыдущих примерах. Устано
вите значение флага иниuиализаuии равным ИСТИНА и нажмите клави
шу <F9>. Затем измените его значение на ЛОЖЬ и снова нажмите кла
вишу <F9>. При каждом нажатии этой клавиши выполняется одна ите
рация.
Данный метод сходится значительно быстрее, .чем описанные ранее.
Так, для вычисления корня с точностью в три uифры после запятой ме
тодом нижней релаксации потребовалось
16
итераuий, тогда как с при
менением метода Ньютона на это понадобилось всего
4
итераuии. Метод
простых последовательных приближений дает решение с той же точно
стью за пять итераций для всех уравнений, кроме одного, но для этого
одного итерационный процесс вообше не сходится.
К
t.ЗiE·23 11></К
Q
<,бОЕ·19 К•
т
300 к
R
94,1
300
ложь
Е
Те
(8/w)
(К)
t,OE+02
Te11(Тe)lg'(fe)
(К)
З.ООЕ+О2 З,ООЕ+О2
t.ОЕ+ОЗ З.ООЕ+О2 З.ООЕ+О2
1,ОЕ+О4 З,01 E+Q2
3,01 Е+О2
t .ОЕ+О5 З,65Е+02 З,65Е+О2
~
t,Ol'i+OO 1.28Е+ОЗ 1,28Е+ОЗ
1.ОЕ+О7 1,0tE+04 1.01Е+04
;~
!1$.:
1,ОЕ+О8 б,95Е+~5 б,95Е+05
· :,
~~;-"к~щ~~!X~;:~~~*'}.Pмc,_~,A~~;.J.~~,;;',;:i''~f"rii'!',;:,::·_;: 0:::0 г:::::;f1: ·.·••1ffm
Рис.
9.7. Температура
электронного газа в
GaAs;
метод Ньютона
Использование модуля поиска решения
Для управления решением нелинейных уравнений можно использо
вать модуль поиска решения
Excel.
Работа этого модуля организована
следуюшим образом. Он "угадывает" пробное решение. подставляет его
для проверки в уравнение и использует результат для подбора следую
щего пробного решения. Поскольку модулю поиска решения требуется
целевое значение, вначале необходимо перенести все члены уравнения в
правую часть, чтобы результат, или uелевое значение, стал равным нулю.
1.
2.
З.
Скопируйте лист Рис.
9.4
и присвойте копии имя Рис.
9.8.
Выделите ячейки А7:С8 и очистите их командой Правка>- Очистить.
Выберите
команду
Сервис
>-
Параметры
и
откройте
вкладку
Вычисления. Включите режим Автоматически в группе Производить
пересчет и отключите режим Итерации, сняв отметку с
чателя.
ero
переклю
Решенuе неnuнеuнын аnгеБраuческ.uн уравненuu
4.
Измените заrоловок в ячейке А 1 на Температура электрониоrо газа в
модуль поиска решения.
Введите в ячейки F10:F16 значение 300.
Введите в ячейку G10 следующую формулу:
GaAs;
5.
6.
=Т+(2/З)'*Tau'*Q*E1 QЛ2*U/(K*(1 +R_*EXP(-Delt_E/(K'*F10)))}-F1 О
и скопируйте ее в ячейки
G11:G16.
Поскольку необходимо найти решения семи различных уравнений,
применим модуль поиска решения к каждому из них по отдельности.
-.._ Примечание
В принципе, можно объединить решения уравнений в одну ячейку и ис
пользовать ее как общее целевое значение для модуля поиска решения,
хотя это не всегда срабатывает. Для объединения уравнений возьмите
абсолютное значение каждого решения, чтобы они не уничтожались вза
имно, и сложите их. Это значение и будет целевым,
-
если оно равно
нулю, результаты вычисления по всем формулам таюке равны нулю, и
реше1:1ие n~лучено.
7.
Выберите команду Сервис~ Поиск решения. В открывшемся диалого
вом окне введите строку
$G$10 n
поле Установить целевую ячейку,
включите переключатель Значению в группе Равной и введите в соот
ветствующее поле значение О. Введите в поле Изменяя ячейки строку
$F$10. Щелкните на кнопке Выполнить и ожидайте, пока решение бу
дет найдено.
..... Примечание
Модуль поиска решения может исчерпать заданное количество итераций,
прежде чем будет найдено достаточно точное решение. В этом случае
для получения ответа необходимо запустить модуль несколько раз,
8.
Найдите решения оставшихся шести уравнений с помощью модуля
поиска
решения,
изменив
ячейку и Изменяя ячейки,
значения
в
полях
Установить
целевую
i1ffN
Гnава
17
К
1.38Е·2З Дж1К
Q
1,бОЕ-19 Кn
т
300
R
94.1
9
к
Е
Те
(8Jw)
(К)
f(Те)
(К)
1,ОЕ+О2 Э.ООЕ+О2
О,ООЕ+ОО
1.ОЕ+ОЗ З.ООЕ+О2
1.ОЕ+О4 з.он:+О2
О.ООЕ+ОО
О,ООЕ+ОО
1.ОЕ+05 З.б5Е+О2
8,75Е.07
1.ОЕ+О6 1.28Е+ОЗ
-5.54Е.04
1.ОЕ+О7 1.01Е+О4
-1,07Е-08
1.ОЕ+О8 5.95Е+О5
0.ООЕ+ОО
,.;;
:' ~:•,')il~·~'~;(~;;;s,'l~~l!!i!Шf(f; Рмс.g.а ,;T'Ш;i;t~H ;!i;щ;;;;ii!l!;;;;•;;;;щш!iioi;;:;;)~: - !ilfm
Рис.
9.8. Температура
электронного газа в
GaAs;
модуль поиска решения
Рабочий лист должен выглядеть так, как на рис.
9.8.
Для нескольких
уравнений модуль поиска решения может работать довольно долго, по
скольку он разыскивает решение поочередно для каждого из них. Теоре
тически возможно объединить несколько уравнений таким образом, что
бы модуль решал их вместе, но это не всегда срабатывает, тогда как для
одного уравнения модуль легко настраивается и работает достаточно бы
стро. Для повторного применения метода внесите в ячейки
F10:F16
и
выберите команду Поиск решения .
. . _ Примечание
Если модуль поиска решения испытывает затруднение с нахождением
корня, можно наложить на значения ячеек дополнительные ограничения,
которые бы удерживали их в непосредственной близости от решения. Это
полезно сделать и в том случае, когда уравнение имеет несколько реше
ний, а разыскивается только одно из них, находящееся в определенном
диапазоне.
Резюме
В этой главе были изучены четыре различных метода решения нели
нейных уравнений с помощью электронных таблиц
Excel:
метод последо
вательных приближений, методы верхней и нижней релаксации, метод
Ньютона и применение модуля поиска решения. Первые два метода
пригодны для решения практически всех задач подобного рода, особенно
в тех случаях, когда одновременно необходимо решить много уравнений.
Метод Ньютона хорош для ускорения решения большого количества
уравнений, а модуль поиска решения
-
для нахождения корней одного
уравнения или небольшого количества несложных уравнений_
Решенuе неnuнеuныи аnгебраuческuк уравненuu
Дополнительная литература
Численные методы решения нелннейнь1х уравнений
C.Gerald, Applied Numerica/ Analysis, 2пd ed. (Reading, Mass.: Addisoп
Wesley, 1978).
W.H.Press, B.P.Flaппery, S.A.Teukolsky, W.Т.Vetterling, Numerical
Recipes; The Art of Scientific Computing (Caшbridge, UК: Carnbridge Uпiversity
Press, 1986).
Бахвалов Н.С" Численные методы (анализ, алгебра, обыкновенные диф
ференциальные уравнения), М: Наука,
1973.
Островский АМ., Решение уравнений и систем уравнений, ИЛ,
Температура электронноrо rаза в
&
S.M.Sze, Physics of Semicondиctor Devices,
1981), р.647.
1963.
GaAs
2пd
ed. (Ne\V York:
Johп
Wiley
Soпs,
Зеrер К. Физика полупроводников. //Пер. с англ. Р. Бразиса и др., под
ред. Ю.К. Пожелы. М.: Мир,
1977.
Кесаманлы Ф.П., Наследов Д.Н. и др. Арсенид галлия. Получение, свой
ства и применение. М.: Наука,
1973.
Обзорные задачи
1.
Используя метод последовательных приближений, найти нетривиаль
ные решения (х
х
2.
* 0) следующего уравнения:
=tan(0.805x)
Решить задачу
1
х
;i:O
с помощью метода верхней релаксации и сравнить
количество итераций, необходимое в каждом из методов для получе
ния решения одной и той же точности.
3.
Плотность тока в барьерном диоде Шоттки зависит от температуры
следуюшим образом:
J
= АТ 2 е
(
В')
iJ
'
где
А=
в=
3.8 х 10-10 Nсм2-К2
1.7 х 1оз к
Методом последовательных приближений или, при необходимости,
нижней релаксации найдите температуру, соответствующую плотно-
сти тока
4.
J= 10-2 А/см2.
·
Разрешающее уравнение для
стоящей из сопротивления
R
простейшей электрической
цепи, со
и конденсатора емкостью С, последова
тельно соединенных с источником тока, напряжение на котором рав
но
V,
выглядит следующим образом:
IJфl
где
Гnава
заряд конденсатора, а
q-
t -
9
время. Найти емкость конденсато
ра, необходимую для накопления заряда q = 10-s Кл за время t = 4 х
I0-3 с, методом последовательных приближений и нижней релакса
uии. Напряжение на источнике равио V = 10 В, сопротивление R =
5.
2000 Ом.
Энергетический уровень Ферми в полупроводнике n-типа определяет
ся из решения следующего уравнения:
-( ~<-![)
Nt. е кт
N
( E,-HI)
(d~f_-EJ) + Nv е кт
1+2е" кт
где:
Nc - плотность состояний в зоне проводимости= 1019 см-3;
Nv - плотность состояний в пограничной зоне= 1019 см-3;
Nd - rшотность донорных состояний = JOl6 см-3;
Ее - энергия зоны проводимости = 1.1 эВ;
Ed - энергия донорного уровня = 1.05 эВ;
Ev - энергия пограничной зоны =О эВ;
КТ= 0.0259 эВ.
Найти значение уровня Ферми методом последовательных приближе
ний с нижней или верхней релаксаuией.
6.
При проектировании фотоэлектрического преобразователя (солнеч
ной батареи) с максимальным коэффиuиентом полезного действия по
энергоотдаче необходимо решить следующее уравнение·, определяю
щее оптимальное рабочее напряжение:
eV)
( 1+ КТ
е
_
(~~) - l +Js
J0
=
'
=
при Т
300 К (КТ/е = 0.0259 В) и Jsf/0
2 х 1010 (отношение плот
ности тока короткого замыкания к плотности тока насыщения). Най
ти оптимальное напряжение, используя модуль поиска решения.
7.
Методом Ньютона найти значение х, являющееся решением следую
щего уравнения:
3.54 = 2 + О.3х + О.07х 2 + О.004х 3
8.
Методом Ньютона найти три различных решения следуюшего урав
нения относительно х:
27.6=14. 7х 2 е-0.з86 х
9. Решить
10. Решить
задачу
задачу
4
6
методом Ньютона.
методом Ньютона.
Решенuе неnuнеuнын аnrебраuческuн уравненuu
Упражнения
1. Выполните упражнение рис. 9.2 без итераций. Выпишите явные фор
мулы для последовательных приближений в нескольких последова
тельных яче~ках, как показано ниже:
~
= начальное приближение
х 1 = Cos(~)
х2
= Cos(x 1)
Хп
= Соs(хп-1)
Проверьте сходимость последовательных приближений к решению.
Начертите график зависимости результата от п.
2.
Добавьте в пример рис. 9.2 проuедуру Visual Basic и кнопку для ини
uиализации задачи и вычисления первого приближения. Добавьте
вторую кнопку и проuедуру для отображения диалогового окна с за
просом на количество итераций и последующего выполнения этих
итераuий.
3.
Методом последовательных приближений решите уравнение размно
жения биологической популяuии:
Pn+J
= kPn (1- J~J
'
которое связывает численность популяции особей в (п+ 1)-м поколе
нии с ее чис.ленностъю в п-м поколении в зависимости от коэффиuи
ента
k.
Коэффициент
k
описывает такие факторь1, как наличие пиши,
условия существования и плодовитость особей популяuии. Найдите
решение уравнения для значений k от 0.4 до 0.5 с начальным значе
нием для Р, равным 0.5. Для некоторых k значение Р остается посто
янным, тогда как для определенных значений этого коэффиuиента
решение осuиллирует совершенно хаотическим образом. Уравнения
такого типа и их решения лежат в основе исследования динамики де
терминированного хаоса.
4.
Сопроти:вление Rт термометра на платиновом резисторе, работающего
при температурах менее 6600С, описывается следующим уравнением:
Rт = R20 (1 +а(Т-20)+ ~(Т-20) ),
2
где а= 3.6 х 10-з к-1, 13 = -16.0 х JQ-7 к-2, R20 - сопротивление рези
стора при комнатной температуре (200С), а Т- температура в граду
сах
Цельсия.
Определить
температуру
методом
последовательных
приближений (при необходимости с верхней или нижней релаксаци
=
5.
6.
ей) при R20
21.3 Ом и Rт= 28.2 Ом.
Выполните упражнение 4 с использованием метода Ньютона.
Решите задачу 5 из предыдущего раздела методом Ньютона.
FJ~I
7.
Гnава
9
Методом последовательных приближений найдите решение следую
щего уравнения:
О=
Sin(ax) + Cos(bx) -
х,
где а = 1t/4 и Ь = 1t/8.
8. Методом Ньютона рещите следующее уравнение:
7721 = 245 +
9.
718х
Решите задачу
5
+ 29х2 +
зхз
из предыдущего раздела, используя метод Ньютона с
uентральной разностью вместо производной.
10. Напишите на языке Visual Basic программу автоматического примене
ния модуля поиска решения к набору уравнений наподобие того, что
показан на рис.
9.8.
Гпава
10
Реwение систем уравнений
18 этой таrве...
./
Матричнь1е методы дn11 реwени11 систем nинейных уравие
ний
./
Итерационный метод rаусса-Зейдеn11 дnя реwени11 nиней
ных и нелинейных уравнений
./ Методы верхней и ниж.ней релаксации дn11 систем nиней
ных и неnинейных уравнений
./
Использование модуn11 поиска реwени11 дn11 реwени11 св11-
занных уравнений
Моделирование взаимосвязанных проuессов в физике и технике не
редко сводится к решению систем уравнений. Примерами задач, приво
дяших к системам уравнений, могут служить дискретные аналоm урав
нений в частных производных, установившиеся потенuиалы в электриче
ских сетях, уравнения конuентраuии массы для взаимосвязанных (спа
ренных) химических реакций. Большинство подобных проuессов описы
вается системами линейных уравнений, для которых развиты мощные
вычислительные методы. Если уравнения являются нелинейными, то для
их решения обычно используются методы релаксации, хотя для них не
редко бывает трудно добиться достаточно хор_Qшей сходимости.
-.._ Примечание
Набор чисел называется решением системы уравнений, если он удовле
творяет одновременно всем уравнениям системы. Если все уравнения
системы независимы друг от друга, решение системы ничем не сложнее
решения отдельного уравнения, однако, как правило, уравнения, аходя
щие в систему, связаны между собой, что делает их решение более
сложной задачей.
Решение систем линейных уравнений
Большинство встречающихся на практике вычислительных задач сво
дится к решению систем линейных уравнений. Это большая удача, по
скольку такие системы решаются достаточно просто. Большая их часть
поддается решению встроенными матричными функциями
Excel, под
60.
держиваюшими обрашение и умножение матриц размерностью до
iffJ
--
Гnава
18
Примечание
Физические задачи сводятся к системам линейных уравнений, как прави
ло , не благодаря какому-нибудь общему физическому закону, а ввиду уп
рощения математических моделей реаnьных процессов. При замене ис
следуемой физической системы ее математическбй моделью область оп
раделения решения разбивается на достаточно мелкие фрагменты. внут
ри каждого из которых функции, описывающие поведение системы . ап
проксимируются линейными фунt<Циями . В результате получается систе
ма линейных уравнений , соответствующих каждому из фрагментов об
ласти.
В электронных таблицах легко реализуются также итерационный ме
тод Гаусса-Зейделя и метод .верхней и нижней релаксации , которые при
менимы к решению кзк линейных, так и нелинейных систем. Метод Га
усса-Зейделя представляет собой многомерную векторно-матричную
форму метода последовательных приближений, рассмотренного в преды
дущей главе мя скалярных . уравнений. АIJалоrично, методы верхней и
нижней релаксации являются векторными аналогами скалярных методов,
описанных .в предыдущей главе.
Матричные методы
Легче всего в
Excel
реализуются матричные мето.з.ы решения систем
л инейных уравнений. Для их нрименения систему необходимо записать в
матрнчной форме :
Ах-Ь
Здесь А - матрица коэффициентов, х - вектор неизвестных, а Ь вектор правой части уравн~ий. Для решения этого матричного уравне
ни я обе его части умножаются на матрицу, обратную к А:
А-1Ах
=k
1b
По определению, произведение матриuы на обратную к ней дает еди
ничную матрицу, а произвеление единичной матрицы на любой вектор
равно этому же вектору, поэтому предьщущее уравнение преобразуется к
слелующему виду:
х
=
А- tь
Это и есть решение системы уравнений. Хотя в абстрактном виде все
выглядит очень просто , нахождение обратной матриuы
точно нетривиальная.
функция МОБР().
К счастью ,
в Ехсе\
есть для
-
задача достсt
этоrо
встроенная
iiij
Решенuе сш:тем урааненuu
Краткая справка по матричной алгебре
Вкратuе напомним основные правила матричной алгебры
-
действия
с числовыми матрицами и векторами.
Чтобы умножить ,одну квадратную матриuу на другую, для вычисле
ния каждого элемента результата с индексами (m,п) берете~ m-я строка
нз л~вой матрицы и n-й столбец из пр<IВОЙ, все элементы строки умно
жаются на соответствуюшие по порядку элементы столбца, и результаты
умножения складываются:
а
Ь
d
е
lg
/lm
k
h
i
q
1
с!! j
IP
+- Ьт
+ ер ak + Ьп +cq al+bo+cr
dj +ет + fp dk+en + fq dl +ео+ fr
z1
aj
r1
1gj+hm+ip
п о\=
Произнедение матрицы на nектор
-
gk+hn+iq
gl + /10 +
irl
это. по сути, лроизведе-ние квад
ратной и.1и nрямоутол;,ной \1аtрицы на матрицу, состоящую из одного
столбuа:
ь
е
h
cllJI
laJ + bk + cl
f\kl ~ +ek+ fl
i l11 lgj + hk + il
l
ldj
Матрица, обратная к данной матрице
-
это, по определению, матри
uа, в резупьтате умножения которой на данную получается единичная
матриuа. то есть такая квадратная матриuа, на диагонали которой стоят
единиuы. а нг.. всех остальных местах
11
о
о
1 о
о
-
нули:
1
.. ·1
.··i
1 . ··11
·, i
•1
Умножение единичной матрицы на любую матрицу или вектор дает в
результате ту же матриuу или вектор, что аналогично умножению любого
числа на единицу:
Ix =
х
Матрица называется вырожденной, если какая-либо И3 се строк явля
ется линейной комбинацией других строк. Вырожденная матриuа не со
держит досrс1точной информашш для решения соответствуюшей линей
ной системы. Матрица вырождена тогда и только тогда, когда ее опреде
литель равен нулю.
IЯI
Глава
10
Система из трех уравнений с тремя неизвестными
В качестве примера рассмотрим следующую систему линейных уравнений:
-8 Х1 + Х2 + 2 Х3 = 0
5 XJ + 7 Х2 - 3 Х3 = 10
2 Х) + Х2
-
2 Х3
= -2
Она имеет решение х 1
= 1, х2 = 2, х3 = 3.
В матричной форме эти
уравнения записываются следующим образом:
2
Х1
0
5 7 -3
2 1 -2
Х2
10
-2
-8 1
Х3
Такую систему можно с легкостью решить на листе электронной таб
лиuы. Для этого проделайте следующее.
1.
2.
3.
4.
5.
6.
7.
Создайте новый лист и присвойте ему имя Рис.10.1.
В ячейке А1 введите Решение систем уравнений; обращение матрицы.
В ячейке 83 введите Ах
Ь.
Теперь введите матрицу коэффициентов А и вектор правой части Ь:
В ячейке А5 введите Исходная матрица (А).
В ячейках А6:С8 введите элементы матрицы А:
=
Ячейка
Значение
Ячейка
Значение Ячейка
Аб
А7
А8
-8
5
2
Вб
1
87
88
7
Сб
С7
1
С8
Значение
2
-3
-2
В ячейке Е5 введите Правая часть (Ь).
В ячейках Е6:Е8 введите компоненты вектора правой части:
Ячейка
Значение
Ячейка
Значение
Ячейка
Значение
Еб
О
Е7
10
ЕВ
-2
Далее необходимо обратить матрицу А и умножить вектор Ь на матри
цу, обратную к А. Применяемая для этого функция МОБР возвращает
массив значений, который вставляется сразу в целый столбец ячеек:
8.
9.
В ячейке А10 введите Обраmая матрица (1/А).
Выделите ячейки А11 :С1З, введите следующее:
=МОБР(А6:С8)
и нажмите Юiавищи <Ctrl+Shift+Enter> (на Maciпtosh
для вставки этой формулы во все выбранные ячейки.
10. В ячейке Е10 введите Вектор решениях= (1/А)Ь.
11. Выделите ячейки Е11 :Е13 и введите следующее:
=МУМНОЖ(А 11 :С13,Е6:Е8),
- <Cmd+Enter>)
ifh
Решенuе сuстем уравненuu
а
затем
нажмите
<Cmd+Enter>)
12. Отключите
клавиши
<Ctrl+Shift+Enter>
(на
Maciпtosh
для вставки формулы во все выбранные ячейки.
отображение линий сетки и обведите ячейки контуром ,
как показано на рис.
10.1.
Рабочий лист к этому моменrу должен выглядеть так, как на
рис. 10. l. В ячейках Е11-Е13 должны стоять значения компонентов век
тора решения х 1 , х2 и х3.
~.:;J~: ~:i:~~~~;~;.;;•.-::~;·;пe1i;:·;;~~_;;~;1;Q:;:;;.~ ~:.:~: J~ ;::.~,", : :i::·~.e ~-· :.· .:;\:;f
.~t:; P1tUJeн~ CМCJN уравнениМ; обращеttИе warp.щ,i,.1
:;.;;,:·. ;· :.:;.~-!::::·1. ,·:;·;11•:( ,-:~· ::..:( ~;:i~Ч;:~~ ·.1~~:·:;
j ;,
:'Э/,.
:4:•'
~::, и"
0
сть(Ь}
80
11;:,
2
:м
~
::8ii
·2
;;9::---=----'----""
•1oiiОбра,,.ая wатриц• (1/11)
11;. -0.1 4865 0,054054
-0, 22973
ч; .о 12162 О, 1351з~
-0,82432
о
2
DшениА х
•
(1/1\}Ь
J~i 0, 054054 0.162162 .О, 18919
: 1~'
:1~,
':!!i
"
н. ~: ~· ~:\"~~~10. 1.АЫ<~" _1!;;c:щ4;{Jllic.to.·1: ·<=:;ф:J-;::';:"'":•:~·;,,."!.,::·:·"· :'"'·:~:·н
Рис.
10.1. Решение системы
Excel
·~·
." :,.J >
линейных уравнений с помощью матричных
функций
•
Итерационный метод Гаусса-Зейделя
Итераuионный
метод
Гаусса-Зейделя
представляет
собой
одну
из
форм общего метода Якоби решения систем уравнений. Это многомер
ная разновидность метода последовательных приближений, описанного в
предыдушей главе. Для его применения необходимо разрешить все урав
нения относител ьно одной из неизвестных, которая д.~1я каждого уравне
ния должна быть своей. Для уменьшения погрешности от округления
лучше решать уравнения относительно неизвестных с наибольшими по
модулю коэффициентами при них. Затем делается начальное предполо
жение о решении, то есть выбирается первое приближение , которое под
ставляется в систему для вычисления следующего приближения. Проuесс
подстановки и вычисления очередных приближений продолжается до тех
пор, пока не будет достигнута достаточно хорошая сходимость к реше
нию.
В классическом методе Якоби вычисление всех компонентов очеред
ного приближения выполняется только на основе предыдуших значений
решения. Однако, поскольку компоненты вычисляются поочередно , пе
ред вычислением очередного компонента вектора решения
часть новых
значений уже известна и может испол ьзоваться для вычисления осталь
ных значений нового приближения . Использование только что вычис-
iftN
Гnава
18
ленных компон ентов очере.дноrо приближения для определения осталь
ных компонентов, без ожидания перехода . к следующей итерации, как
раз и составляет сушность метода Гаусса-Зейделя.
Для применения метода Гаусса-Зейделя к нашему примеру перепи
шем
систему в другом
виде,
разреши.в
каждое уравнение относительно
одной из переменных:
Х1
=(t)(x2 +2х3 )
Х 2 =(t)(10-5x1 +Зх 3 )
х 3 =(t)(2 +2x1 +х 2 )
Решим эти уравнени я с применением метода Гаусса-Зейделя в элек
тронной табл иuе
l.
2.
Excel.
Откройте новый л ист и назовите его Рис. 10 . 2.
Выберите
команду
Сервис
>
Параметры,
откройте
вкладку
Вь1числения и включит~ режим Вручную. Поставьте отметку на пере
к.пючатель Итерации , введите в поле Предельное число итераций зна
чение
1,
отключите режим Пересчет перед сохранением и щелкните .
н а кнопке ОК.
3.
В ячейке А1 введите Решение систем уравнений; метод Гаусса-Зейде.ля .
В таблицу необходимо добавить флаг Инициализации, который бы
переводил вычислительный процесс в определенное начальное состоя
ние. Ввод значения ИСТИНА в ячейке ВЗ должен заставить функцию
ЕСЛИ
в
ячейках
С8:С10
возвращать
А8 :А10.
4.
5.
6.
В ячейке АЗ введите Нач. флаг.
В ячейке ВЗ введите ИСГИНА.
Присвойте ячейке ВЗ имя НАЧЗН.
начальные
значения
в
ячейках
ifQ
Решенuе сuстем уравненuu
7.
. 8.
9.
Теперь инициализируем итерационный проuесс начальным значением О.
В ячейке AS введите Начальнwе.
В ячейке А7 введите значения.
В ячейке А8:А10 введите О.
Введем в таблицу три уравнения системы. При итерировании листа
ячейки с циклическими ссылками вычисляются слева направо и сверху
вниз. Если поместить в ячейки столбuа С формулы, использующие зна
чения ячеек столбца В, то в столбец В будет подставляться предыдущая
итерация, а при вычислении столбца С д.rrя определения нового прибли
жения будут использоваться только старые значения. Другими словами,
будет реализован итерационный метод Якоби.
Если изменить порядок вычисления и поместить в столбец В форму
лы, содержащие значения из столбца С, то полученное по формуле в
столбuе В значение будет подставляться в столбец С и тут же использо
ваться в следующей формуле из столбца В. Это новое значение будет ис
пользовано на текущей итерации сразу же после его вычисления, и, та
ким образом, будет реализован метод Гаусса-Зейделя.
1О. В
11. В
12. В
ячейке
ячейке
86 введите Уравнения.
88 введите ={С9+2*С10}/8.
89 введите ={10-5*С8+3*С10)/7.
810 введите =(46·5*С8-7*С9)/9.
ячейке
ячейке
Осталось ввести в уравнения рекурсивные ссылки и проделать тест
13. В
инициализации.
14. В
15.
ячейке С6 введите Решепия.
В ячейке С8 введите формулу =ЕСЛИ(НАЧЗН,А8,В8) и скопируйте ее в
ячейки С9:С1 О.
16. Сделайте
формат ячеек 88:С10 числовым с тремя знача~цими деся
тичными цифрами.
17. Отключите
ьтображение линий сетки и обведите ячейки контуром,
как показано на рис.
10.2.
Для выполнения расчета по этому листу установите флаг иющи:uшза
ции равным ИСТИНА и нажмите клавишу
<Cmd+=>).
<F9>
(на Maciпtosh
-
клавиши
После инициализации листа измените значение флага ини
циализации на ЛОЖЬ и снова нажмите клавишу
<F9>
для выполнения
очередной итерации. Продолжайте итерирование листа путем нажатия
клавиши
<F9>
до тех пор, пока не будет достигнута удовлетворительная
сходимость к решению. К этому моменту рабоч.ий лист должен выглядеть
так, ках показано на рис.
10.2.
Если решается система, для которой итераuионный процесс сходится
ruюxo, нет необх'одимости нажимать клавишу
<F9>
много раз. Достаточ
но выбрать команду Сервис ~ Параметры, открыть вкпадку Вычисления и
изменить значение поля Предельное число итераций на количество ите
раций, которое необходимо выполнять при каждом нажатии клавиши
<F9> ( <Cmd+=>
на
Macintosl1).
Гnава
18
,.
::начаn•нwе Ура1нtннА Pewe111-iя
·~ ~ начен+11111
(
.;
(
(
'
Рис.
10.2.
1, 000
2.000
3.00!!
1.000
2,000
3.000
Решение системы линейных уравнений итерационным методом
Гаусса-Зейделя
Методы верхней и нижней релаксации
Как и в случ.ае скалярных уравнений, сходимость и устойчивость вы
числительного процесса нередко можно улучшить, специальным образом
выбирая вел и<Jину приращения, которое получают искомые значения на
каждой итерации. В методах верхней и нижней релаксаuии к искомому
реш ению на КЮ!}дОМ шаге добавляется дробная доля
с
1
вычисляемого
приращения_. Эта вел ичина может быть как меньше, так и больще еди
ницы ; если она равна единице,
метод релаксации вырождается в метод
Якоби или Гаусса-Зейделя.
Для реализаuии метода вначале новые значения каждой неизвестной
вычисляются точно так же, как в методе Гаусса-Зейделя. Затем, вместо
их использования в качестве очередного приближения, от них отнимают
ся предыдущие значения.
и тем
самым
находится
приращение
вектора
решения. Наконец, это приращение умножается на коэффициент релак
сации с1 и добавляется к старым значениям неизвестных. Полученный
вектор как раз и является следующим Приближением решения.
x;+i = х:' + Cf[(!)(х; + 2х;)- х;']
х;+ 1 = х; +Cf[(~)(io-sx; +Зх;)-х;]
x;+i .=
х;' + Cf[ (t )( 2 + 2х; + х; )-.х;]
Верхние индексы п ·и
итерации.
n+J
относятся соответственно к п-й и (п+l) -й
IШ
Решенuе сuстем уравненuii
Реализуем метод релаксации в электронной таблице. Структура листа
останется практически той же, что и в предыдущем примере, поэтому
вначале сделаем его копию.
1.
Скопируйте лист Рис.
2.
Выберите
ко.манду
10.2
и присвойте ему имя Рис. 10.З.
Сервис
>--
Параметрь1,
откройте
вкладку
Вычисления, включите режим Вручную, поставьте отметку на пере
ключатель Итерации, введите в поле Предельное чиспо итераций зна
чение
3.
1,
отключите режим Пересчет перед сохранением и щелкните
на кнопке ОК.
Установите ширину столбцов В и С равной 11.
Введите n ячейке А 1 строку Решение систем уравнений; методJd релак~
сации.
Данный лист должен содержать как флаг инициализации, так и ко
эффициент релаксации. Флаг иниuиализаuии переводит лист в опреде
ленное начальное состояние. Коэффициент релаксации определяет, ка
кая доля приращения должна прибавляться к решению предыдущей ите
рации мя получения очередного приближения.
Выделите ячейку ВЗ и перетащите ее содержимое в ячейку СЗ.
4.
5.
6.
7.
В ячейке А4 введите Коэф-т релаксации.
В ячейке С4 введите
0.5.
Присвойте ячейке С4 имя
~ J'lримечание
Cf.
.. " .""."" ..
Хотя в качестве начальных могут использоваться практически любые
значения, однако чем ближе они к искомому решению, тем быстрее будет
сходит~.ся итее~цио_ннь.1й процесс.
Внесем в таблицу разрешающие уравнения метода релаксации. В них
нетрудно узнать уравнения метода Гаусса-Зейделя с добавкой, выражаю
щей дробность приращения решения из-за введения коэффициента ре
лаксации. Для формирования этой добавки предыдущие значения вычи
таются из следующих, затем разница умножается на коэффициент релак
сации и прибавляется к предыдушему приближенному решению.
8.
В ячейках
88:810
введите следующие формулы:
Ячейка Содержимое
88
89
810
=CB+Cf*(((C9+2*C10}/8)-C8)
""С9+Сf*(((10-5*С8+З*С10)/7)·С9)
=C10+Cf*(((46-5*C8-7*C9)/9)-C1 О)
В ячейках С8:С10 уже присутствуют циклические ссылки, оставшиеся
там от предыдущего примера.
9.
Обведите
рис.
смысловые
блоки
таблицы
контуром,
как
показано
на
10.3.
Для расчета по построенной таблице введите значение коэффициента
релаксации в ячейке С4. Для данной задачи вполне подойдет коэффици-
iiФI
ент
Гnава
10
0.5. Вообще говоря, д.ля различных задач оптимальными являются
различные значения этого коэффициента, хотя немного существует за
дач, которые бы сошли сь к решению при значениях коэффициента ре
лаксаuии , больших
2.
Меньшие значения обычно обеспечивают лучшую
устойчивость итерационного
npouecca,
но дают более мед.ленную сходи
мость. Рекомендуется вначале оценить сходимость задачи с коэффиuиен
том релаксации между
l
и
1.5,
и если процесс сходится, увеличить коэф
фициент, а в противном случае
-
уменьшИJъ. Заново инициализировать
итерационный процесс при изменении коэффиuиента релаксации нет
необходимости, если уже вычисленные приближения к решению нахо
дятся в разумном диапазоне; если же
npouecc
начал расходиться, необхо
димо инициализировать его новыми значениями .
Установите
значение
флага инициализации
ИСТИНА и нажмите клавишу
<F9>
(на
в ячейке
Macintosh -
Затем измените его значение на ·ложь и снова наж~1ите
жайте нажимать клавиш у
СЗ равным
клавиши
<Cmd+=>).
<F9>. ТJродол
до тех пор , n ока проuесс не соИдется к
<F9>
решению.
После достижения достаточной точности решения лист электронной
таблиuы должен выrдядеть так, как на рис.
10.3.
Помните, что для ите
рирования уравнений нет J-1еобходимости нео1рывно сидеть у компьюте
ра и нажимать клавишу
Предельное
число
<F9>;
итераций
достаточно увеличить знаqение в поле
вкладки
Вычисления
диалогового
оюш
Параметры .
tut~~~~:·- · :~i!~~~~·;·f~;~~i:s--~~~~! .~--r~~J.:;~(tt ~:;t-'s:щ~~
:.~~ Pew1rtИ111 c~Cf*'-' УРil!-<енкК. мет::J:ды рtл111С:с1_,,.м
.
...:~
....,.......------.---~
:J.;· Н$чМ•ным флаr
ЛОЖЬ
,
';~~·· . t<о•Ф·Т •л••С•l!М•
'!!fj! '
Jtj}~ Н.-чал~.w~•
Ypaa!4eНJi1R
Рещвиv~111
..: ЗHIЧfl+Иflll
'
Рис.
о
1,QGO
о
о
1.000
3 00~
10.3.
1,000
2 OOD
З ООО
Решен1,11е с111стем линейных уравнений методами релаксации
Решение систем уравнений с помощью модуля
поиска решения
Если тщательно подготовить структуру ;шста , то для решения систем
линейных уравнений можно использовать модуль поиска решения . Этот
модуль выбирает в качестве uелевой оптимизируемой величины значение
11:11
Решенuе сuстем уравненuu
одной ячейки, поэтому дпя решения системы уравнений их правые части
необходимо объединить в одну скалярную целевую функuию и оптими
зировать ее значение_ Одним из способов построения uелевого значения
является запись всех уравнений с правой частью, равной нулю, и сложе
ния модулей левых частей. Как только эта величина становится равной
нулю, решение получено. Взятие модуля гарантирует, что результаты вы
числений по двум уравнениям не будут в сумме взаимно уничтожены из
за противоположных знаков. Для оптимизации целевого значения модуль
поиска решения автоматически перебирает ряд возможных значений, по
этому. для ячеек с исходными значениями не требуется какой-либо спе
циальной инициализации.
"'
•
Предупрежден1-1.е
Не забудьте взять модуль каждого из слагаемых в целевом значении, по
тому что
в
противном
случае
отрицательное
значение
одного
может
уравновесить положительное значение другого, и целевая функция ста-:
нет равной нулю еще до того, как. система будет решена ...
,"
•
Пре.цупре?Кде1:1ио ." "
Модуль поиска решения справляется с решением системы, если слагае
мые в целевой величине имеют примерно одинаковый порядок величины.
В противном случае одно из слагаемых доминирует в целевой сумме,
ухудшая иnи вообще делая невозможной сходимость процесса подбора·
решения. Если слагаемые в целевой функции имеют различный порядок
величины, их необходимо умножить на весовые коэффициенты для при-
'
ведения к одному порядку. Умножение на весовые коэффициенты не ис- ·
портит требуемого результата, поскольку искомое значение
целевой
функции равно нулю, а сама она положительно определена.
1.
2.
3.
Откройте новый лист и дайте ему имя Рис.10.4.
Сделайте ширину столбца А равной
4.
В ячейке А4 введите Решение систем уравнений; модуль поиска реше
ния.
Теперь введем в таблицу необходимые формулы. Они имеют тот же
вид, что и для предыдушей задачи, за тем исключением, что значение
левой части уравнения
вычитается из правой для того, чтобы правая
часть стала равной нулю. Как только подобран еектор, обращающий все
уравнения в О, задача решена.
4.
В ячейках
88:810
введите следующие формулы:
Ячейка Содержимое
88
==((С9+2"С10)/8)-СВ
89
В 1О
""({46·5·cs- 7*С9)/9)-С1 О
=({10·5·сs+З*С10)/7)-С9
Гnава
IJ:tj
10
Внесем в таблицу первое приближение дл:я искомого решения.
5. В ячейке С8 введите значение 1 и скопируйте его в ячейки С9:С10.
Далее следует сложить абсолютные значения уравнений в ячейках для
построения оптимизируемой модулем поиска решения целевой функции.
В ячейке, соответствующей целевой функции, будет вычисляться сумма
целого
массива
ячеек,
поэтому
она
вводится
с
помощью
клавиш
(на Macintosh - <Cmd+Enter>).
В ячейке С12 введите следующую формулу:
<Ctrl+Shift+Enter>
6.
=CYMM(ABS(B8:B 1О))
7.
и нажмите клавиши <Ctrl+Shift+Enter> (на Maciпtosh Обведите ячейки контуром, как показано на рис. 10.4.
Ур3&Нf'НЮ1
<Cmd+Enter>).
Решения
О.ООО
1,000
0,000
2,000
3,000
0,000
j 2 ШОЗЕ·Обl
Рис.
10.4. Решение систем уравнений с применением
модуля поиска
решения
Присуупим к решению системы с помощью модуля поиска решения.
8. Выберите команду Сервис>- Поиск решения.
9.
В поле Установить целевую ячейку введите $С$12 , а в поле Изменяя
ячейки
-
диапазон
ячеек
$С$8:$С$1 О.
Включите
переключатель
Значению и введите в соответствующем текстовом поле значение О.
Щелкните на кнопке Выполнить дл:я поиска решения.
Решенuе сuстем уравненuu
11:Jj
Найдя решение поставленной задачи, модуль поиска решения отобра
зит диалоговое окно Результаты поиска решения, показанное ниже.
Если модуль не сможет найти решение, он об этом сообщит. В этом
случае попробуйте выполнить поиск решения еще раз
-
возможно, мо
дуль просто исчерпал заданное количество пробных решений и ему тре
буется еще несколько попыток. Если возникла проблема со сходимостью,
можно попробовать другие начальные значения. Результаты решения
нашей задачи приведены на рис.
10.4.
Решение сис-rем нелинейных уравнений
В некоторых случаях для решения систем нелинейных уравнений мо
жет применяться метод Якоби или Гаусса-Зейделя; однако для обеспече
ния хорошей сходимости итерационных методов, как правило, требуется
применение верхней или нижней релаксации. В том случае, если уравне
ния можно записать в виде задачи
на оптимизацию одного скалярного
значения, и абсолютные величины всех левых частей имеют примерно
один порядок, можно с успехом пользоваться модулем поиска решения.
Если же одно из уравнений по модулю значительно превосходит осталь
ные, в целевом значении будет доминировать именно это слагаемое. В
таком случае к нелинейным системам применяются те же описанные ра
нее методы, что и к линейным.
Системы нелинейных уравнений моrут иметь несколько решений, по
этому начальные значения играют здесь ключевую роль. Если уравнения
отличаются сильной нелинейностью, то при достаточно далеком от ре
шения
начальном
приближении
итерационный процесс может расхо
диться. В этом случае рекомендуется изменить начальное приближение, а
также коэффициент релаксации.
Погрешность и нормирование
Одним из недостатков использования матричных и итерационных ме
тодов для решения систем уравнений является зависимость погрешности
решения от порядка, в котором решаются уравнения. При подготовке
системы к численному решению необходимо разрешить каждое уравне
ние относительно одной из неизвестных. Для получения наилучших ре
зультатов постарайтесь выносить в левую часть переменную с макси
мальным по модулю коэффициентом. В идеале каждое уравнение должно
11:JI
Гnава
18
быть разрешено относительно своей переменной, но это далеко не всегда
так. Какую переменную выносить из какого уравнения, вам подскажет
опыт и специфика задачи .
..... Примечание
При выборе переменной, опюсительно которой будет разреwаться урав
нение, следует разыскивать коэффициент, преобладающий над боль
шинством остальных не в два-три раза, а, по меньшей мере, на порядок,
то есть в десять раз и более .
При
использовании
элементов
матрицы
матричных
методов
относительные
коэффициентов решаемой системы
величины
также имеют
большое значение. Все модули элементов матрицы должны иметь при
мерно один порядок; если это не так, точность обратной матрицы и ре
шения линейной системы сильно ухудшается. Для исправления положе
ния следует разделить каждое уравнение (строку матрицы) на преобла
дающий элемент этой строки. Нормируя уравнения, не забудьте, конеч
но, нормировать таким же образом и правую часть (вектор Ь).
Если матрица вырождена (то есть после диаrонализации содержит на
диагонали, по меньшей мере , один ноль). однозначного решения полу
чить нельзя. Для проnеркн на вырожденность можно вычислить опреде
литель матрицы с помощью функции МОПРЕД.
Если он равен нулю ,
матрица вырождена. Если определитель не равен нулю , но очень близок
к нему , то решение существует, но
ero
нахождение сопряжено с боЩ>ши
ми вычислительными погрешностями. Ошибки округления могут сделать
матрицу приближенно вырожденной даже в том случае, если ее опреде
литель строго не равен нулю. При малом по модулю определителе следу
ет тщательно проверить решение на nредмет удовлетворения решаемой
системе. Если у вас возникли такого рода трудности с получением доста
точно точного решения, обратитесь к литературе по численным методам
линейной алгебры за более подробной информацией о матричных мето
дах решения систем линейных уравнений .
Резюме
В этой главе рассмотрены пять методов решения систем линейных и
нелинейных уравнений с помощью электронных таблиц. В
Excel
имеют
ся встроенные средства обращения и умножения матриц, которые могут
использоваться для решения большинства встречающихся на практике
небольших систем линейных уравнений.
Итерационные возМОЖJiОСТИ
электронных таблиu позволяют реализовать на рабочем листе методы Га
усса-Зейделя, Якоби, верхней и нижней релаксации. которые примени
мы к решению как линейных, так и нелинейных систем. Для решения
систем уравнений также применим модуль поиска решения, реализован
ный в
Excel
как вспомогательный программный модуль.
i1:fi
Решенuе сuстем уравненuii
Дополнительная литература
Численные методы решения нелинейных уревнений
C.Gerald, Applied Numerical Analysis, 2nd ed. (Readiog, Mass.: AddisonWesley, 1978).
W.H.Press, B.P.Flaпnery, S.A.Teukolsky, W.T.Vetterliпg, Numerical
Recipes; The Art of Scientific Compиting (Cambridge, UK: Cambridge Unive~ity
Press, 1986).
Бахвалов Н.С., Численные 11tетоды (аншzиз, алгебра, обыкновенные диф
ференцишzьные уравнения), М.: Наука, 1973.
Островский А.М., Рещение уравнений и систем уравнений, ИЛ, 1963.
Обзорные задачи
1.
Решить еле.дующую систему уравнений относительно х, у и
пользованием матричных функций
4 х + 3.3
у+
22х+ 14у+
5.6
2.
х
0.27
z=
zс
ис
Excel:
39.6
5z=39.6
+ 4.8 у+ 2.1 z = 39.6
Решить следующую систему, описывающую ток в изображенной на
рисунке электрической цепи, относительно 11 и 12 с помощью метода
Гаусса-Зейделя:
V= 11 (R1
+ R1) + f2R1
О =
12 Rз - 11 R1
R1= 10 Ом, R2= 5 Ом,
Rз=
10 Ом, V= 10 В.
Rз
3.
Решить следующую систему уравнений относительно х, у и
пользованием матричных функций
zс
ис
Excel:
2 z = 10
1.5 х + 2 у+ 2 z = 1
х +у-
2.5
4.
х
+4 у+ 3 z= 4
Решить следующую систему уравнений относительно х, у,
использованием матричных функций
Excel:
z, w
и
v
с
11:1&
Гnава
18
3 х + 7 у + 5 z + 20 w + 4 v = 96
х + 2 у + 3 z + 9 w + 1о v = 67
5 х +у+ 16 z - 4 w + 6 v = 124
2 х + 2 у+ z + w + 18 v = 73
х + 3 у - z + 5 w + 2 v = 19
5.
Решить следующую систему уравнениn относительно х, у,
z с исполь
зованием метода верхней или нижней релаксации:
x+3y+z=l7
4 х + 2 у+ z = 27
5х+6
6.
у
-
z=
25
В электроизмерительных преобразователях давления широко исполь
зуются уравновешенные мостовые схемы (см. рис.). Резисторы Rs и
~ представляют собой тензодатчики, установленные таким образом,
ч.то nри воздействии давления их сопротивления изменяются в проти
воположных направлениях (сопротивление одного возрастает, а дру
гого падает), и это создает в мостовой схеме неравновесное состоя
ние. В результате возникает разность потенuиалов
Vo, которая регист
рируется вольтметром.
R1
"
Vo
"
При заданных величинах:
R1 = R2 = 1 Ом,
Rз = /4 = 100 Ом,
Rs = 1002 Ом,
~= 998 Ом,
V= 10 В
решить следующую систему уравнений относительно
11, 12
и
V0
мето
дом верхней или нижней релаксации:
V= U1 + /2)(R1 + R2) + /1 (Rз + Rs)
=
Решить ту же систему при величинах R5 = ~
1ООО Ом (в равновес
ном состоянии). Попробуйте решить задачу еще для нескольких зна-
i1:Q
Решенuе сuстем уравненuu
чений
этих двух
сопротивлений,
всякий
раз
увеличивая
одно
и
уменьшая другое на равные величины.
7.
При упругом рассеянии свободно движущейся частицы на неподвиж
ной (см. рис.) начальные н конечные скорости и уrлы рассеяния
можно определить из уравнений сохранения импульса и энергии.
В приведенных уравнениях скорости без штриха
жение до столкновения, а со штрихами
т 1 v 1 = m1v; cos(e 1 ) + т 2 v~
-
(v)
описывают дви
после него:
cos(e 2 )
т 1 v; sin(e 1 ) = m2 v~ siп(e 2 )
1
2 -
2т1 V1 -
_l
12
2 т1 V1
1
12
+ 2т2 Vz
=
=
Пусть частица 1 - это протон (т 1
mv 1.67 х l0-27 кг), движущийся
со скоростью 250 м/с, а частица 2 - ядро гелия (т2 = 4тр)· Частица 1
после столкновения отлетает под уrлом 81 = 250. Определить скорости
v1,
~и уrол В1 •
8. Четыре пружины последовательно соединены и растянуrы между дву
мя стенками (см. рис.). Сила F, действующая со стороны каждой
пружины на соседнюю, дается следующим выражением:
F= k(x -
Хо),
где
жесткость пружины. а Хо
k -
-
ее длина в недеформированном
состоянии.
Если данная система пружин находится в равновесии, все силы рав
ны, и уравнения равновесия можно записать в следующем виде:
k1 (Х1 - Х10) = k1 (Х2 - Х20)
k2 (х2 - х20) = kз (хз - хзо)
kз (хз - хзо) = k4 (х4 - x.io) ,
х1 + х2 + х3 + х4 = L
li:f:i
Гnава
18
Определить х 1 , х2 , х3 и х4 методом верхней или нижней релаксации
при следующих условиях:
Н/м, k2 = 20 Н/м, k 3 = 30 Н/м, !ч = 40 Н/м,
хю = х20 = х30 = х..о = 10 см, L
80 см.
Решить следующие нелинейные уравнения относительно х и t мето
k1 = 10
9.
=
дом верхней или нижней релаксации.
х =а
l О.
e-at
х
= Ь Siп(0t)
а
=
Ь
= 2, 0 = 4, а. = 0.5.
Решить следующие нелинейные уравиеиия отиосительио
0,
а. и р ме
тодом верхней или нижней релаксации.
= 7.548
4 Cos(0) + 4 Cos(a.) + 2 Sin(p) = 6.390
2 Sin(0) + 3 Cos(a.) + 9 Cos(p)
5 Si11 (0) +
Siп (а.)
+ 2 Si11(p)
= 3.587
Упражнения
1.
Решить следующую систему уравнений относительно х, у и
пользованием матричных функций
zс
ис
Excel.
18 х + 3 у + 2.2 z = 493. l
67 х+ 5.9у+ 7 z= 1745.78
14 х + 6 у+ 15.6 z = 609.2
2.
Решить следующую систему уравнений относительно х, у и
z
с ис
пользованием итерационного метода Гаусса-Зейлеля. Обратить особое
внимание иа проблему нормирования уравиеиий системы.
100 х + 120 у+ 220 z = 3840
l х + 2 у + l z = 36
0.1 х + 0.2 у+ 0.3 z = 5.2
3.
Уравновешенная мостовая схема, рассмотренная в задаче
6,
может
использоваться для измерения малых перемещений деформируемых
систем. Для этого тензодатчик прикрепляется, скажем, к изгибаемой
балке, перемещение которой измеряется. В результате смещения бал
ки
изменяется
сопротивление датчика,
регистрируемое
приборами.
Решить задачу для мостовой схемы с применением модуля поиска
4.
решения. Использовать значения величин, указанные в обзорной за
даче 6, за исключением R5 = 1000 Ом и Rt, = 1200 Ом.
Решить следующую систему уравнений относительно а, Ь, с, d, е, и g
f
с использованием матричных функuий
Excel.
iiф)
Решенuе сuстем уравненuu
57 а + 77 Ь + 72 с + 45 d + 54 е + 63 f + 99 g = 20643
4 а + 100 Ь + 16 с+ 23 d + 44 е + 11 f + 67 g = 11902
1 а+ 79 Ь + 94 с+ 27 d + 62 е + 55 f + 88 g = 19526
+ 25
48 а + 73
38 а + 71
17 а + 70
53
5.
а
Решить
+ 62 с + 33 d + 73 е + 2 f + 8 g = 9898
Ь + 58 с + 46 d + 43 е + 56 f + 14 g = 11492
Ь + 94 с + 86 d + 72 е + 78 f + 25 g = 17226
Ь + 1О с + 6 d + 59 е + 69 f + 59 g = 16303
Ь
задачу
из
упражнения
4
итерационным
методом
Гаусса
Зейделя.
6.
7.
Решить задачу из упражнения
Решить задачу из упражнения
4 методом релаксации.
4 с применением модуля
поиска реше
ния.
8. Решить следующие два уравнения относительно х и t с использовани
ем метода релаксации:
х
= аеЫ + cedt + е
х
=
aSiн(bt)
+ cCos(dt),
rде задано:
9.
а= 23, Ь = -2, с= 19, d = 2, е = -158.38.
Решить следуюшую систему из трех уравнений относительно а, Ь и с.
3Sin(a) + 4Cos(b) + 5Tan(c) = 5.69
+ 4Cos(2b) + 5Tan(2c) = 4.01
3Sin(3a) + 4Cos(3b) + 5Тап(3с) = 5.91
3Siп(2a)
10.
Решить задачу для системы nружии из задачи для самостоятельного
решения №
8
в предположении одинаковой жесткости пружин, но
различной их длины в недеформированном состоянии. Задать сле
дующие параметры пружин;
k1 = k2 = k 3 = ~ = 20 Н/м,
10 см, Х20 = 20 см, Хзо = 30
L = 200 см.
Х10 =
СМ, Х40 =
40
см,
rпава
11
Решение обыкновенных
дифференциапьных уравнений
В зтой главе...
./
./
Решение задач Коши
./
./
./
./
./
./
Метод Р•дав Тейпара
Решение краевых задач
Метод Эйлера
Модифицированный метод Эйлера
Методь1 Рунrе-Кутта
Метод стрельбы
Метод конечных раsностей
Большинство пользователей электронных таблиц Excel даже не дога
дываются о возможности их применения для приближенного решения
дифференциальных уравнений. Тем не менее, благодаря динамической
связываемости ячеек и итерационным возможностям в электронных таб
лицах можно разыскивать решения самых разных дифференциальных
уравнений. В частности, численному решению легко поддаются два ос
новных типа задач для обыкновенных дифференциальных уравнений : за
дачи Коши (или начальные задачи) и краевые задачи. Отличие между
этими двумя типами задач состоит не в типе рассматриваемых диффе
ренциальных уравнений, а в локализации граничных условий.
Решение задач Коши
В задачах Коши, или начальных задачах, для однозначного определе
ния решения дифференциального уравнения на одном из концов рас
сматриваемой области определения решения задают начальные (гранич
ные) условия. Целью приближенного решения является интегрирование
уравнения от
конца с
известными
граничными
условиями до другого
конца интервала, на котором они неизвестны . Такого типа задачи обыч
но возникают для уравнений с производными по времени: известно зна
чение искомой функции и некоторых ее производных в данный момент
времени (определенная граница), и требуется найти ее значения для всех
или некоторых моментов в будущем (на неизвестной границе). В этом
Решенuе 0Быкновеннь1и дuфференцuаnьнь1н уравненuu
разделе будут рассмотрены четыре н аиболее распространенных метода
решения задач Коши: метод рядов Тейлора, метод Эйлера, модифициро
ванный метод Эйлера и методы Рунге- Кутта.
Обыкновенное дифференциальное уравнение с од
ним начальным условием
Рассмотрим следующее обыкновенное дифференциальное уравнение
первого порядка:
(1 +х
2
( )
'· d их
)·_
1,
dx
+ u(x) =х
х>О
с начальным условием
u(O) =О
Поставленная задача относится к классу задач Коши, поскольку гра
ничное условие известно только в одиой точке. Задачи для уравнений
первого парядка не должны содержать более одного дополнительного ус
ловия, так как в противном случае задача оказалась бы переопределен
ной и, скорее всего неразрешимой. Для уравнений второго и более высо
кого порядка необходимо задавать большее количество начальных или
граничных условий.
Сущность и назначение граничных условий
Для понимания того, зачем для решения дифференциальных уравне
ний необходимо задавать одио или несколько граничных условий, рас
смотрим следующее функциональное уравнение:
у=/( х)
Имея это уравнение , можно начертить график значений у для всех
требуемых значений независимой переменной х. Это уравнение полно
стью определено, и для одиозначного определения значений у не требу
ется присоединять к нему дополнительных условий . Теперь рассмотрим
другое уравнение:
y'=f(x)
Это уравнение является дифференциальным и имеет первый порядок,
определяя для каждого х значение производной функции у'. Производ
ная описывает тангенс угла наклона касательной к графику функции;
зная ее, можно начертить форму кривой, однако нельзя
сказать, где
именно кривая расположена. Все кривые на приведенном ниже рисунке
удовлетворяют этому уравнению
-
поэтому для выбора решения необхо
димо знать значение функции хотя бы в одиой точке, например, в чер-
'*'
Гnава
11
ной точке н а левом краю рисунка. Значение функции в этой точке н бу
дет представлять собой граничное условие.
O/IЭS
О/Л)
0.025
0.025
0,01S
"'
0.010
О)Ю5
000)
.О)Ю5
.0.010+-~.----.~----..~~~-<
0,000
0))9)
0,100
O,!SO
О :ЮО
о,250
Далее рассмотрим вторую производную функции:
y"=f(x)
Из этого уравн ения нам известна кривизна графика функции для ка
ждого значения х. Определить по ней всю недостающую информацию о
функции можно только в том случае, если в одной точке заданы значе
ние функции и ее производной (начальная задача) или значения функ
ции в двух точках (краевая задача). Эти условия и будут краевыми усло
виями ДЛЯ данной задачи. ИТак, ДЛЯ ПолучеНИЯ ОДНОЗНаЧНОГО решения _
дифференциального уравнения необходимо присоединить к нему столько
граничных условий , каков порядок уравнения . Если в уравнение входит
более одной независимой переменной (например, две для плоских задач
математической физики), граничные условия должны задаваться на гра
ницах изменения каждой из переменных .
В поставленной задаче целью является найти значения функции и в
интервале изменениях от О до
0.2. Для
данного уравнения известно ана
литическое решение:
и(х) _!_[х _ In{х + .Jid)]
=
2
(х + ..J1+ х 2
)
Это решение будет использоваться для оuенки эффективности раз
личных приближенных методов. На рис. 11.1 показано данное решение в
диапазоне от О до О. 2.
Метод рядов Тейлорв
Одним из распространенных методов решения начальных задач явля
ется метод рядов Тейлора. Рассмотрим разложение некоторой функции
и(х) в ряд Тейлора в окрестности точки ,XQ.
Решенuе обыкновенныи дuфференцuаnьныи уравненuu
0,02
0,02
0,02
О,о1
0,01
§ 0!)1
0!)1
0,01
0.00
0.00
о.оо..._""""""=---~~--~~--~~~--~--<
0.00
O/J5
0,10
O.IS
Рис.11.1. Аналитическое решение задачи Коши
и(х)=и(х0 )+
(х - х0 )
l!
~(х - х
+
о
и'(х0 )+
)3
3!
(х - х )
21
и,,, (хо ) +
2
°
(х - х
и"(х 0 )
о
)4
4!
и,, " ( х ()
) + ...
Здесь введены следующие обозначения:
du
и'(х) = d:x.
и"(х) =
Положим
х
h= (
-
d 2 u(x)
dx 2
, ••·
Х{) ); с учетом этого уравнение переimшется в сле
дующем виде:
h
h2
и(х) = и(х 0 ) + -и'(х 0 ) +-и"(х 0 )
1!
2!
hз
h"'+
+-и"'(х ) +-и""(х ) + ···
З!
о
4!
о
В точке Х{) известны значения двух первых членов ряда Тейлора: пер
вый
-
из граничного условия, а второй
-
из дифференциального урав
нения. Вот эти значения:
и (О)= О
и' (О)= О
Последовательно дифференцируя
собой
выражение для
первой
уравнение,
производной,
которое
представляет
получаем выражения для
производных более высокого порядка. Из этих выражений получаем сле
дующие коэффициенты:
и" (О)=
1,
и"'
(0) = -1,
и"" (О)=
-2
IWI
Гnава
11
Подставим эти коэффициенты в первые пять членов ряда Тейлора и
отбросим остальные члены ряда. Получим для решения следующую зп
проксиманту:
2
h
h 3 lz
u(h)=----2
6 ~ 12
4
Это приближенное решение может использоваться для вычисления
значений искомой функции для различных
h.
ПредnР~ждение
'
Усечение ряда Тейлора допустимо только в том случае, если отброшен
ные члены в сумме достаточно малы, что в свою очередь справедливо
только ПDИ малых
h.
В приведенном ниже примере методом рядов Тейлора вычисляются
значения и(х) для хот О до
l.
2.
3.
0.2.
Откройте новый рабочий лист и назовите его Рис. 11.2.
Измените ширину столбцов A:D следующим образом:
Столбец
Ширина
Столбец
Ширина
А
В
7
12
С
11
11
D
В ячейке А1 введите Обыкновенные дифференциальные уравнения; ме
тод рядов Тейлора.
Теперь нам предстоит ввести диапазон изменения х и вычислить зна
чения аналитического решения уравнения для сравнения с численным.
После этого для решения уравнения будет использован метод рядов Тей
лора. В ячейке В будет производиться сравнение аналитического реше
ния с численным.
4.
В ячейках АЗ:DЗ введите приведенные ниже заголовки и выровняйте
их по центру ячеек:
5.
В ячейке
Ячейка Заголовок
Ячейка
Загоповок
АЗ
х
сз
U(x)
83
u(x)
С4
84
Анали:rика
03
По Тейлору
Погрешность
04
%
AS
введите О, а в ячейке Аб введите
0.01;
выделите ячейки
А5:А6 и перетащите маркер заполнения в ячейку А25.
6.
Сделайте формат ячеек А5:А25 числовым с двумя значащими цифра
ми после запятой.
7.
В ячейке
85
введите следующую формулу:
=0.5*(A5-LN(A5+KOPEHb(1-+:A5"2))/(A5+KOPEHb(1 +А5л2)))
и скопируйте ее в ячейки
8.
В ячейке
88
86:825.
введите следующую формулу:
Решенuе обыкновеннык дuфференцuаnьнык уравненuu
=А5"212-А5"З/6-А5"4/12
и скопируйте ее в ячейки С6:С25 .
9.
Сделайте формат ячеек В5:С25 экспоненциальным с двумя значащи
ми цифрами после запятой.
10. В
ячейке
06
введите формулу =(В6-С6)/В6 и скопируйте ее в ячейки
D7:D25.
11. Сделайте
формат ячеек
D6:D25
процентным с пятью значащими циф
рами после запятой .
....
Пр~мечан.ие
Процентный формат, используемый в данном примере, предусматривает
автоматическое домножение значений ячеек на 100 перед их отображе
нием . При этом фактическое значение ячейки не меняется , изменяется
лишь отображаемая в та.блице в.е.!.!_ичина .
:;,:)~ ~ц=~.1:·!;·~~#t?f.~~i)~~~~~~:~ffiJ1t~;;;~~i!·(~~o~;i:~~· .;i~~~~-~~~:: .J:!~r:~rf '=:i:-~';~:~~;·:·-:~r:?:~;н:::·~l!~~:ЫЕ:~
~~~:: Обыкноtеюi~ д"фферt•щ"а1"'1-4\.1~ ~авиtи1tJ1; uvтод рядо• ТtM09a
:§::
.. .
..
Поrрешност.
·~~
....
0.0:0!~i
~~
~:Еш~·
o,ooi74%; ··
~:
il!l!i
'lii'
..
~J
0,00303%
о.оо48б% ;
0,00731%
0,010~9%·
•
~ ..
Рис.
0,01~1."
11 .2.
Решение задачи Коши методом рядов Тейлора
к этому моменту таблица должна выглядеть так, как показано на
рис.
11 .2.
Обратите внимание, что для данных малых значений х при
ближенное решение является исключительно то•шым. Если же взять дос
таточно больши е значения х, предп оложим, от О до 2, погрешность су
щественно возрастет. В данном случае метод рядов Тейлора •ет хоро
шую точнщ;ть для значений
h
(здесь это просто х, поскольку х0 = О) меж
ду о и 1.
Следует обратить внимание , что в рассмотренном примере
h -
это
расстояние от х до Хо, а не шаг численного интегрирования, который бу
дет использоваться в остальных задачах этой главы. Для вычислен ия зна
чений и на больших расстояниях от Хо необходимо пересчитывать значе
ния производных в конце текущего шага, чтобы выполнить следующий
шаг уже от этой точки.
r nава
1§1$
11
Метод Эйлера и модифицированный метод Эйлера
Одной из основных трудностей применения метода рядов Тейлора яв
ляется необходимость аналитического вычисления нескольких прои звод
ных от уравнения. Для некоторых уравнений производные от правых
частей могут выглядеть достаточно просто, но уже в приведенном приме
ре это не так. Метод Эйлера позволяет устранить необходимость в вы
числении производных благодаря усечению ряда Тейлора до члена с пер
вой производной. Для того, чтобы это сработало, необходимо выбирать
h
малые значения
и после каждого шага пересчитывать значения первой
произвол.ной в начале нового малого интервала:
и(х + h)
= и(х) + hu'(x)
Решим дифференциальное уравнение методом Эйлера на листе элек
тронной таблицы. Для этого откроем таблицу, использовавшуюся для
примера с рядами Тейлора, поскольку структуры двух таблиц в основном
совпадают.
1.
2.
3.
Скопируйте лист Рис. 11.2 и назовите его Рис. 11 . З.
Сделайте ширину столбца Е равной 11, а столбца F
-
равной
9.
Введите в ячейке А1 строку Обыкновеннwе дифференциальные уравне1П1я; методы Эйлера.
4.
5.
6.
7.
Очистите ячейки СЗ:С25 .
Найдем численное решение уравнения методом Эйлера.
В ячейке С4 введите По Эйлеру.
В ячейке С5 введите О .
В ячейке Сб введите следующую формулу:
=С5+(А6-А5)*(А5-С5)/КОРЕНЬ(1+д5л2)
и скопируйте ее в ячейки С7: С25.
Лист таблицы должен иметь такой вид, как на рис.
рисунка, данный метод не слишком точен.
u<i>___ - · ; · ---·· · ·· ·
- По
дн.,,..,,..Са
~Q~l;.05.
1.~:(14;
4, 451:::04
0,00E+OO _jOQ,Q~OOOТ.
5.05Е-<14
0.ООЕ-<14
i,7бЕ.ОЗ
1.39е.О3:
з;11Е:0э
•.8Зе~з
5,82€:03
.
Рис .
11.3.
_.
•..1,00!=_-:(!4 . _49. б6362'J(,
2,00E::U4 32.~_!452%
7,!ОЕ.04'
1,2ЗЕ.ОЗ
Э. o:iE.03
-
.... . . %" .. . .
О,ООЕ+ОО
n,QQE+OO'
. !
·.nё-,J;i.Щнос~·
).;Леру
10.~078<jt,
13,7D744Y.,
:i)I Е-63
1D.51101 %
·2,'74е.оЭ
··
24.40477%
1 . ~Е.ОЗ
2,ОбЕ.03
4.З7Ё~:i
5,З2Е.ОЗ
'"~
.
16,10470%11,Dog4б% - ·
o.:i!ii25%
8,47691%:
.
~-
·· ·. ~
~~:~н;:-.,; i•:i··.~·;::~~~::,:·~1н:,:·::...:; : -: ., .
Решение задачи Коши методом Эйлера
11.3.
Как видно из
Решенuе обык.новенныи дuфференцuаnьныи уравненuu
Поскольку в начале каждого шага для определения значения искомой
функции на другом конце интервала берется приближенное значение
производной, которое к тому же подставляется в грубое приближение
для ряда Тейлора, в ходе интегрирования непрерывно возрастает и нака
пливается погрешность. Более приемлемым способом является получе
ние значения
функции с
использованием среднего на шаге
значения
производной:
u(x + h) =
и(х)
(u
1
(x)+u 1 (x+h))
+ h--'---------_;_.
2
Трудность применения этой модификации метода заключается в том,
что производная на дальнем конuе интервала неизвестна. В модифици
рованном
методе
Эйлера
(методе
"nредиктор-корректор"
или
"предсказание-уточнение") для начального предположения о значении
функции используется обычный метод Эйлера. С применением этого
предположения
вычисляется
производная
на дальнем конце
интервала.
Имея значение производной в начале интервала и оценку ее значения в
конце интервала, можно точнее оценить значение искомой функции. Для
уточнения полученного значения можно применить данный метод еще
раз, но при большом количестве итераuий погрешность метода перекры
вает любые поправки в точности, достигнутые итерированием.
Пересчитаем лист таблицы модифицированным методом Эйлера.
Вначале вычислим первое приближение к решению, используя обычный
метод Эйлера.
1. Скопируйте лист Рис. 11.3 и дайте ему имя Рис. 11.4.
2.
3.
4.
В ячейке ЕЗ введите Модиф. метод Эйлера.
Вьщелите ячейки ЕЗ:FЗ и щелкните на кнопке Объединить и
m
~поместить в центре панели инструментов Excel.
В ячейке Е4 введите Предиктор и выровняйте надпись по uентру
ячейки.
5.
В ячейке Е5 введите следующую формулу:
=F5+(A6-A5)*(A5-F5)Л<OPEHb( 1+А5"2)
и скопируйте ее в ячейки Е6:Е25.
Полученное начальное приближение (предиктор) будет использовать
ся для вычисления производной в промежуточной точке и вычисления
скорректированного значения (корректора) искомой функции. Необхо
димо также выполнить сравнение этого значения с аналитическим реше
нием.
6.
В ячейке
F4
введите Корректор и
выровняйте
надпись
по центру
ячейки.
7.
8.
В ячейке
F5 введите О.
В ячейке Fб введите следующую формулу:
=F5+((A6-A5)/2)*((A5-F5)Л<OPEHb(1 +А5"2)+(А6-С6)/КОРЕНЬ(1 +А6"2))
и скопируйте ее в ячейки
F7:F25.
IЩ:I
9.
Гnава
Сделайте формат ячеек
E5:F25
11
экспоненциальным с двумя значащими
десятичными uифрами после запятой.
10. В ячейке GЗ введите Погрешность и выровняйте надпись по центру
ячейки.
11. В ячейке G4 введите % и выровняйте надпись по центру ячейки. '
12. В ячейке G6 введите формулу =(B6·F6)/B6 и скопируйте ее в ячейки
G6:G25.
13. Сделайте формат ячеек G6:G25 процентным с двумя десятичными
цифрами после запятой.
;щ~~ ;·~ц~~;!.):~~i1~~i~~~~:r1~t~~;~~~;:.~щ~~t~щщ;1~i.~i~~~~;~!iш::1:~!~~шЕtи~:шч~~~ш~щ~~~~пr;1}Ьl~~ыш~ш:ш~~~- ~~щ
:·~·:~ 9.~~к.~~~~.н.~.~е.р.~ФферrJмци_:u~~~~-~ ура•.н.•.~~~; .~~~.~~-~..~~лер.а;
.
· дн~:L.а по ~~РУ riarii8~"~ciь' ~2:'~~=~0~:;;0~: rio~e~i.oi:ть
J~~
i~~
о.оо
О,ООЕ+ОО'
'\!J5i ..0.03
4, 45E:G4
0,04
D.DS
1 , 2ЗЕ.ОЗ
О.ООЕ+ОО
О,ООЕ+Оо: О,Оое+оо;
J!i1~-- _. ~,~1 . . 4, 9_81::115; . 0,00~+09 100.00000% .. 1,49E:G4: 5.00_E:Gs:
,7.;;
0.02.. .. 1,~:0~- ...1...0!J.E:IJ4 __ 49,663б2%, ... З,~7~:{1~; J.~9~:0~i
ij~Щ
'1Qii
7,89Е-{)4
;;jfy
~}~::
О.'Об
9,Dl
1ЛЕ.аЗ
i~З,j:
0,08
3,11Е.ОЗ
j!(5i;
0,10
й, 11
4,SЗЕ.03
i~~ii . о,оо
:w:
2,39Е·ОЗ
э. о2Е:.оз
5,82Е.ОЗ
2,99E:IJ4. _32,88452%'
7.42Е-{)4
5,;бЕ-!J4 _ 24,4Q477%
1 ,18Е.03
9.ООЕ.04
19, 46078%
1 ,72Е.ОЗ
1,48Е-ОЭ tб, 10470%
2,35Е.QЗ '
2,ОбЕ.03 . 1.ЗJО.7.~_4":.. ],07Е-{)3
2,74Е.ОЗ
11,909411%
З,89Е.03
з:s1Е.оэ · 10,51101%
4.i9i:-oЗ
4,Э7Е:GЗ
9, 39Ш%
5, 78Е.ОЗ
5,32Е.QЗ
8, 47691%
6,87Е.QЗ
4, 47Е:04~
7,91 Е-{)4:
1,2JE.03'
1,77Е-{)3 :
2,4оЕ.о~ :..
З,12Е-{)3 '
3'9зe:jj3 ,
4,84€.()З,
;:
.О.33%:
.0.29°%
.:ii.~i%i
.Q,26%:
.0, 26%
.Q,25%
.Q, 25%
.Q,25%
- ~.~~~ ·
"'" "
.0,24%;
5, 83Е.03
,
\,
й:t:~:t.i nf ~ ~·:~:!ftil-~~F;.:'1~12/,~&f~ ~ Pwc. ~-~~ " ".tf.1·: · ~ .i. ~~ .й~f;l!;~~~~~~~{?:~;щ:ч !ti'~~ni~Jm ·. ,, =~: ;~~
4
Рис.
11.4. Решение задачи
0
Коши обычным и модифицированным методами
Эйлера
в результате проделанных действий таблица должна приобрести такой
вид, как на рис.
точн ости
11.4.
расчета:
Обратите внимание на существенное повышение
погрешность
неизменно
составляет
около
четверти
процента . Данный метод пригоден для получения приближенного реше
ния на любом расстоянии от начальной точю~ , если только при интегри
ровании используются достаточно мелкие шаги .
Метод Рунге-Купа
В настоящее время наиболее распространенным и часто применяе
мым на практике методом решения задач Коши является метод Рунге
Кутта четвертого порядка. Для получения · достаточно точного значения
приближенного решения в этом методе испол ьзуются четыре промежу
точных значения. Обосн ование и вывод расчетных формул данного мето
да можно найпt в литературе по численным методам .
Очередной шаг интегрирования в методе Рунге- Куrта выполняется по
следующей формуле :
u(x+h)=u(x)+ i (k1 +2k2 +2k3 +k4 )
Здесь введены обозначения :
Решенuе обыкновеннын дuфференцuапьнмн уравненuu
k 1 = hu'(x, и(х))
k2
h
k
2
2
h
k
2
2
= hu'(x +-, и(х) +-1 )
k 3 = hu'(x+-,u(x)+~)
k4 = hu'(x + h, u(x) + kJ
r
В приведенных формулах и' (х,и(х)) обозначает производную
no
х, ко
торая формально является функцией двух аргументов х и и(х).
Решим наш пример на листе электронной таблицы с применением
метода Рунге- Купа. Все условия задачи остаются теми же, несколько
меняется лишь структура таблицы.
1. Скопируйте лист Рис. 11.4 и дайте ему имя Рис. 11 .5.
2. Очистите ячейки СЗ:G25.
3. Измените ширину столбцов А:Н слеД}10шим образом:
Столбец
А
с
Е
G
4.
Ширина
Столбец
Ширина
11
о
10
10
10
F
10
н
11
10
А1 заголовок Обыкновенные
в
7
Введите в ячейке
днфферевцнат.ные
уравнеяия; метОд Рувrе-Кутrа.
Теперь вычислим четыре промежуточные значения. Они необходимы
для получения значения искомой функции в очередной тоt.Iке и перехода
на следующий шаг интегрирования.
5.
В ячейках СЗ:GЗ введите заголовки
kl, k2, k3, k4, u(x)
и выровняйте
их по центру соответствующих ячеек .
6.
7.
В ячейке
CS
введите О.
В ячейке Сб введите следующую формулу:
=(А6-А5)*(А5-G5)/КОРЕНЬ(1 +д5л2)
и скопируйте ее в ячейки С7:С25.
8..
В ячейке
06
введите следующую формулу:
=(А6-А5)*((А5+(А6-А5)/2)-(G5+С6/2))/КОРЕНЬ(1 +(А5+(А6-А5)/2)л2)
и скопируйте ее в ячейки
9.
D7:D25.
В ячейке Е6 введите следующую формулу:
=(A6-A5)*((A5+(A6-A5)/2)-(G5+D6/2))/КOPEHb(1 +(А5+(А6-А5}/2)л2)
и скопируйте ее в ячейки Е7:Е24.
1О.
В ячейке
F6
введите следующую формулу:
=(А6-А5)*(А6-(G5+Е6))/КОРЕНЬ(1+А6л2)
и скопируйте ее в ячейки Е7:Е24.
lfфj
rnaвa
11
Теперь вычислим значение искомой функции, комбинируя промежу
точные значения, И сравн11м полученный результат с аналитическим ре
шением.
11. В ячейке G5 введите О.
12. В ячейке G6 введите следующую
формулу:
=G5+{1/6)*(C6+2"06+2*E6+F6)
и скопируйте ее в ячейки G7:G25.
13. Сделайте формат ячеек B5:G25 экспоненциальным
с двумя десятич
ными позициями после запятой.
14. В
ячейке НЗ введите Погрешность и выровняйте за1·оловок по центру
ячейки.
15. В ячейке Н4 введите % и выровняйте надпись по центру ячейки.
16. В ячейке Нб введите формулу =100*(B6-G6)/B6 и скопируйте
ее в
ячейки Н7:Н25.
17. Сделайте
формат ячеек Н6:Н25 экспоненци альным с двумя десятич
ными позициями после запятой.
Внешний вид листа ПО!\азан на рис.
решения
-
11.5.
Очевидно , что погрешность
его отклонение от анал итического
-
кардинально снизилась.
Хотя расчетная схема метода занимает цел ых пять столбцов таблицы, его
погрешность составляет не более
- I .26x 1о·б,
что на несколько порядков
меньше, чем погреш ность .1tюбоrо другого из рассмотренных методов.
li/: ~~;;~·;;~:~: j)?.t~E-.:~~~-~~ :~:?~~~~~~i;}~~~~:J№.; ~::~ ~-'fh)~~ .;;~·.~;·;Н·~Е·::~;~ц~;~~~~Q~~}::;~~;~~f~Ji~~~~~~J: ·
·~;; ~wккоеt1<11""' A•Ф+tipaH\fll,..,.... ура••-11;
\~:•
•
r;~;
u(x)
k1
.
k2
дноnмntо
''°'DA Румr"КуТТI
kЗ
.
k4
.. O.ciiE+oo . 9i~~
~;~
;.~-.
·1·'.9В99.. ЕЕ~ 09,~,.,.,
€<00.()5 s,ooe.os
1.49E.Q.\
~
4.>15E.Q.4
.• . =.·. :..
"
-''8 •
!~.i
1Ь''
:i :
·
·~:J
~-·~.·~·.:
,"
J6
Рис.
3,92Е~4: 7.89E.Q4·
.з:12е.ш ' :1·
4,ээе.64
4,1!7E.Q4
1.zjE.()3 · - ·2,~~~
6,7.\E.o.i
7.21 ,Е-04
4 ,ВЗЕ.ОЗ
8,57E.Q4
9,47Е-04
.1,26e.ai;-~
4.40е.04 ,
з.11е.оз
5,62Е.QЗ
:6j1E.ri7i _!i
Ose.{)4
s:з.iE:C4
7.б6Е.().1
·,· ·~
~ЕЕ~
"""'
2.95Е.{)4
4 .87Е-04
З,92Е.Q3
"""";;~
. ~
9,95E.0S
1.ii;ii.Ь:З
s:а1е.Ш
%
4,97E.OS
З,Ц!'-04
2.Ре.ОЗ
О.ООЕ-+00
2.47E.Q.4
2,95€.()..1
з~~
: norpewнoc~ 1;
2.47Е.0:."
7.IЭ'JE.Q.4
1 .2ЗE.ffi
~ft-
1.00E.Q.I
~'
'
u(•)
б .28€-04
1,49E-Q4
З.44Е.Q.4
5.З.:Е-04
Б,281:.о.i
7,20Ё.а4
1 :~Е.б4
s§i"E:c:.i . 1)6~~
-2,[J7E.{)7
7.66Е~4
-1 .54Е~7
s.74E~
е .12е.о.с. 8.12Е-04- 8.57Е.04 :
9.02E.Q.\
9Р2Е·О4 •
·417№
9 ,47Е~4 •
2.З9Е.аз
3,11Е.QЗ
J,921:.(13:
4,l!ЗЕ.QЗ
f.j
.
-1.771::~7
:1,37е:СТ
·1.2ЗЕ~7
11.5. Решение задачи Коши методом Рунrе-Кутта
Решение уравнений более высокого пор11дка
Задача Коши может формулироваться не только для дифференциаль
ных уравнений первого порядка. На практике часто встречаются также
уравнения второго или третьего порядка с начальными услови ями . Для
решения этих уравнений 11х следует преобразовать в систему двух или
более уравнений первого nорядка, считая п роизводные новыми неиз
вестными функциями. Для примера рассмотрим следующее уравнение:
Решенuе обыкновенным дuфференцuаnьнын уравненuu
au"+bu'+cu+d=O
Выполним подстановку у
= и' и получим следующую систему из двух
дифференциальных уравнений первого порядка:
и' -у= О
ау' + Ьу +си + d = О
Для решения этих уравнений применяются описанные выше методы.
На каждом шаге интегрирования новые значения искомых функций вы
числяются по промежуrочным значениям и по системе уравнений точно
так же, как если бы это были отдельные уравнения, и в конце каждого
шага приближенные решения становятся известными, готовыми к вы
полнению следующего шага.
Решение краевых задач для обыкновенных
дифференциальных уравнений
Второй класс задач для обыкновенных дифференциальных уравнений
составляют краевые задачи. В то время как в задаче Коши (начальной за
даче) краевые условия задаются только на одном конце области опреде
ления решения, в краевой задаче часть условий задается на одНом конце
интервала, а часть
на другом. Таким образом, необходимо удовлетво
-
рение определенных требований сразу в двух точках интервала.
Двумя наиболее известными методами решения краевых задач явля
ются метод стрельбы и метод конечных разностей.
Метод стрельбы
В методе стрельбы краевая задача решается с применением тех же ме
тодов, что и задача Коши . Для этого неизвестные граничные условия на
одном краю (край
1)
заменяются их предполагаемыми значениями, что
превращает краевую задачу в задачу Коши. После этого уравнение интег
рируется от края
l
до другого конuа интервала определения решения
(края 2) с применением , например , модифицированного метода Эйлера.
После завершения интегрирования граничные условия на краю 2, полу
ченные из решения, сравниваются с заданными. Если они совпадают, за
дача решена; в противном случае необходимо изменить начальные пред
положения о неизвестных краевых условиях на краю
решение под условия на краю
2,
1,
чтобы подогнать
и вновь выполнить интегрирование. Та
ким образом, выполняется своего рода "пристрелка" по rраничным усло
виям
краю
на
краю
2
пуrем
подбора
неизвестных
граничных
условий
на
l.
Например, для решения дифференциального уравнения второго по
рядка необходимо иметь два граничных условия. Если бы ставилась зада
ча Коши, это были бы значения функции и ее производной в одной точ-
eнrJ
Гnава
ке, тогда как в типичной краевой задаче обычно задаются
11
значения
функции на двух концах некоторого интервала. Для интегрирования
этого уравнения от одного конца интервала до другого с использованием
методов решения задачи Коши понадобилось бы также значение произ
водной иа одном из концов интервала. При наличии этого значения
уравнение можно проинтегрировать до другого конца и сравнить полу
ченное решение с граничным условием на нем. При их совпадении зада
ча решена, тогда как в противном случае необходимо вернугься к на
чальной то<.Jке и изменить предполагаемое значение производной. Этот
процесс необходимо продолжать до тех пор, пока не будет найдено ре
шение, удовлетворяющее обоим граничным условиям.
Изгиб равномерно нвrруженной балки
Если шарнирио опереть балку на двух ее концах, оиа слегка прогнет
ся под собственным весом, как показано на рис. 11.б. Величина этого
прогиба описывается следующим дифференциальным уравнением:
J
d -у
dxJ
т
El
-.._ Примечание
Шарнирное, или свободное, опирание балки
-
это способ опирания, при
котором конец балки лежит на опоре, но не прикреплен к ней жестко, так
что ~н может свободно поворачиваться,вокруг горизонтальной оси.
Рис.
11.6. Шарнирно опертая балка, прогибающаяся под собственным
весом
В этом уравнении у обозначает перемещение (прогиб) в точке х,
момент инерции поперечного сечения балки, Е
стали Зх10 7 фнс/кв.д.), а т -
1-
модуль упругости (для
изгибающий момент. Для балки с посто
янным поперечным сечением изгибающий
дующей формулой:
-
момент т выражается сле
Решенuе обыкновенныи дuфференцuаnьныи уравненuu
т
w
=-x(Z-x)
2
Здесь
w-
удельный линейный вес балки, а/
-
ее длина. Рассчитаем
прогиб 50-фуговой стальной балки широкополочного прокатного профи
ля 8-WF-67 (широкий двугавр), весящей 67 фунтов иа фуг. Для случая
горизонтальной ориентации полок момент инерции сечения 1 состамяет
271.8 дюйм4. Для малых перемещений аналитическое решение данной
дифференциальной задачи выглядит следуюшим образом:
wx
у=--(1 3 -2lx 2 +х 3 )
24EJ
Максимальный прогиб достигается в центре и выражается следующей
формулой:
l/2) - 5w/4
у(
- 384EI
К этому дифференциальному уравнению следует присоединить два
граничных условия опирания, по одному на каждом конце:
у(О) =О
y(l) =о
Для решения этой задачи теми методами, которые применялись для
задач Коши, необходимо знать на одном конце еще и производную. Тре
буется
предположить ее
значение
на
конце х = О,
проиитеrрировать
уравнение от одного конца балки до другого и проверить, равен ли про
гиб у в точке х
= /нулю. Если это не так, следует принять для производ
= О другое значение. Обратите внимание, что с тем же ус
пехом можно интегрировать уравнение от точки х = / к точке х = О.
ной в точке х
Решим эту задачу модифицированным методом Эйлера. Вначале све
дем уравнение второго порядка к двум уравнениям первого порядка, за
менив первую производную новой неизвестной функцией и:
у'(х)
= и(х)
и'(х) =-!!!:._
EI
Обычно при использовании модифицированного метода Эйлера зна
чение в следующей точке вначале вычисляется обычным методом Эйле
ра:
+ h) = и(х) + hu'(x)
у(х + h) = у(х) +hy' (х)
и(х
После этого решение уточняется (корректируется):
1в11
Гnава
(
их+
(
h )=их)+
h
11
(u'(x)+u'(x+h))
2
у(х + h) = у(х) + h (у'(х) + у'(х + h))
2
Однако в данном случае можно hропустить первый шаг алгоритма,
поскольку точное значение и ~x+h) известно из дифференциального
уравнения. Решим данное уравнение на листе электронной таблицы,
приняв начальное предположение относительно значения u(O).
1.
2.
3.
Откройте новый рабочий лист и назовите его Рис.
Сделайте ширину столбца
11.7.
F равной 13.
В ячейке А1 введите заголовок Изгиб балки; краевая задача; метод
стрельбы.
Заполним таблицу, содержащую геометрические и физико-механичес
кие параметры балки. Линейный вес балки, который будет вводиться в
ячейку
равен
85,
67
фунтов на фуг; чтобы перевести его в фунты на
дюйм, следует разделить его на
12.
В ячейке
88
будет находиться длина
балки, преобразованная в дюймы умножением на 12.
4. 8 ячейке А4 введите заголовок Параметры балки 8-WF-67.
5.
Введите в таблицу следующие значения:
Ячейка
Значение
Ячейка
Значение
Ячейка
Значение
А5
Аб
w
85
86
87
88
=67/12
271.8
С5
Сб
фи/дюйм
дюйм4
3.ОЕ7
С7
=50*12
св
фнс/кв.д.
дюйм
1
А7
Е.
А8
1
6.
Выровняйте содержимое ячеек А5:А8 по
ячейки А5:В8 и выберите команду Вставка
правому краю.
>- Имя >- Создвть.
Выделите
Включи
те переключатель В столбце спева и щелкните на кнопке ОК.
Поскольку аналитическое решение задачи известно, заполним вторую
таблицу, содержащую Прогиб из аналитического решения для некоторого
значения х (предположим,
в центре (х
7.
72
дюйма) и максимальное значение прогиба
= 1/2).
Введите в указанные ячейки таблицы следующие значения:
Ячейка
Значение
ЕЗ
Анапитичвское
Ячейка Значение
Ячейка
Значение
Е4
х
Е5
Еб
у
F4
G4
G5
ДЮЙМ
y(l/2)
G6
дюйм
дюйм
решение
8. Присвойте ячейке F4 имя Х.
9. 8 ячейке F5 введите следующую
72
формулу:
=(W*X/(24*E*l))*(LлЗ-2*L•хл2+хлз)
10. В
ячейке Fб введите следующую формулу:
Решенuе обыкновеннын дuфференцuаnьнын уравненuu
=5-w*LЛ4/(384*E*I)
11. Сделайте
формат ячеек
F5
и
F6
числовым с пятью цифрами после за
пятой.
Разобьем интервал определения решения, от О до 600 дюймов, сеткой
с шагом 12 дюймов и вычислим производНую искомой функции прогиба
для всех узловых значений х. Это можно сделать на основании самого
дифференциального уравнения задачи.
12. Введите
в указанных ячейках приведенные ниже значения и выров
няйте их по центру ячеек:
Ячейка Значе-
Ячейка Значе-
ние
А10
А11
х
(дюйм)
13. В
810
Ячейка Значе-
ние
ние
С10
(1/дюйм) С11
u(x)
u'(x)
811
ние
010
011
(д/д)
ячейке А12 введите О, а в ячейке А13 -
Ячейка Значе-
12;
у(х)
(дюйм)
выделите ячейки
А12:А13 и перетащите маркер заполнения вниз до ячейки А62.
14. Введите
в ячейке В12 следуюшую формулу:
=-'№А12*(L-A12)/(2*E*I)
и скопируйте ее в я чейку 813:862.
15. Сделайте
формат ячеек
812:862
экспоненциальным с одной цифрой
после запятой.
Теперь нам предстоит вычислить значения и(х) для каждого шага сет
ки, испол ьзуя средНее зн ачение ее производНой на интервале между дву
мя узлами сетки. Первое значение и(х)
-
это недостающее на одном из
концов rраничное условие; его следует заменить начальным предп оложе
нием. Ему соответствует ячейка
F9.
16. В
ячейке С12 введите
17. В
ячейке С13 введите следуюшую формулу:
=F9.
=С12+(А 13-А 12)*~812+813)/2
и скопируйте ее в ячейки С 14:С62 .
Вычислим значения у для каждого шага, используя среднее значен ие
и(х) на интервале между узлами сетки. Начальное значение у равно ну
лю
-
это задано rраничным условием в начале интервала определения
решения .
18. В ячейке D12 введите О.
19. В ячейке 013 введиТе следуЮщую формулу:
=012+(А 13-А 12)*(С12+С13)/2
и скопируйте ее в ячейки 014:062.
Нам осталось заполнить таблицу, подытоживающую полученные чис
ленные результаты и содержащую значение у в точках х = l и х = l/ 2. В
эту таблицу также помешается начальное предположение о значении
и(О).
20.
21.
В ячейке Е8 введите Численное решение .
Введите следующие значения в указанных ячейках :
liнii
Гnава
11
Ячейка
Значение
Ячейка
Значение
Ячейка
Значение
Е9
u(O)
y(l/2)
y(I)
F9
F10
F11
0.01
G9
G10
G11
д/д
Е10
Е11
22.
=DЗ7
=D62
дюйм
дюйм
Выровняйте содержимое ячеек Е9:Е11 по их правому краю. Сделайте
формат ячеек
и
F10
F11
числовым с пятью десятичными цифрами.
Для выполнения расчета по построенной таблице введите в ячейку
начальное предположение для
и(О) .
F9
После пересчета листа проверьте,
равно ли нулю значение у(() в ячейке f 11 . Если это не так, введите дру
гое начальное предположение для и(О). Продолжайте изменение началь
ного предположения до тех пор, пока у(() не станет равным нулю с точ
ностью до требуемого количества десятичных знаков.
Описанную операЦию легко выполнить вручную, и на поиск решения
при этом уйдет всего около пяти минут. Однако данный алгоритм реше
ния краевых задач есть отличное поле деятельности для применения мо
дуля поиска решения
Excel.
Поскольку в построенной таблице имеется
всего одна ячейка исходных варьируемых данных и одна ячейка. содер
жащая критерий оптимальности, модуль поиска решения должен легко
справиться с задачей.
23.
Выберите команду Сервис~ Поиск решения. В качестве целевой ячей
ки укажите
F11 ,
в качестве ее целевого значения задайте О, а в поле
Изменяя ячейки укажите ячейку
24. Для пои ска реш ения
F9.
щелкните на кнолке Выполнить.
После завершения работы модуля поиска решения таблица должна
выглядеть rdк, как показано на рис.
11.7.
Сравните данные аналитического решения в ячейках
логичными результатами численного расчета в ячейках
тите внимание, что
хотя граничные
FS
018
и
и
F6 с ана
F10. Обра
условия удовлетворяются
стью до четырех знаков после запятой,
с точно
во внутренних точках области
точными яаляются только три цифры после запятой . Такая потеря точ
ности присуща самому методу и пропорциональна величине шага сетки ,
нан есенной на интервал определения решения. Уменьшение шага повы
шает точность решения до тех лор, пока не становится существенной
ошибка округления.
Решенuе обыкновенным дuфференцuаnьныи уравненuu
:::'~'1:':Ф~f.1~;,~;~'fl:i;:;:,;:;·i:i€::~'i:::;1,~,':"''·i.-~ч;1i'7;;:,:::;%:,~::f~'fff'~"'i:11ff\~:G"'i'ii:~(;';J;J:;;ii<~;J;~~i
·
:;~,+ Изrиб ба.nюt; краt1J"'3ад.а ...а; w11од cтpe.ntiб~
·1·1 :!_
:Амалктнчоокое
решенмо
·
.
. l i AIO.n.
__
1'!;<•f1.ар1Мtтf)Ы баа«>1 8-Wf-67
5,583З:J3 :ф>tlAIOMW ;
1: ..... 271,8 , фн• ... . •.
;;{jj;'
Е 3,(DЕ-+07 . фН<;/""А·.
i_1f:;
·~х
iAi!!.
1,
.•
u(r)
,
у(•)
,~ ~юйw:~. (~/l~;: о!~: :;;:;
дi
2~
·~5:
0·,43170 ДIO~W
1,15549,ljюйw
.Чнс·"1енное ргwе~~е
~ o'fu>l60155 дoOt..ifAIO ... .
щ~.'-!1'°""
u1X)
х;
у
y(V2)
W
;;§l]i.
ii;",;
. . ... ,.
,
y(V2)
1,15-475 11юИ11
yQ}
0,CUµJ.l\IOKM
..' ·"
-НЕ-00; 0~1аэi 0 .147325'
з; -7 ,ОЕ-<Е О.ООЕlJЗЗ . о.т1за
"8 ·9.1 E.QI 0,005937 0 ,291953
)iJ'
,
·,~~? .-:-.1' ~J:ii~~~йi"~1:n'$:"'~1.1 ~;ii:xl
t
~,
Рис. 11.7. Изгиб шарнирно опертой балки под собственным весом ; решение
краевой задачи методом стрельбы
Метод конечных разностей
Другим методом решения задачи об изгибе балки является замена
производных,
входящих в уравнение, uентральными разностями. Этот
метод уже использовался в главе
8
для численного дифференцирования.
Пуrем центрирования разностей по узлам сетки можно получить систему
уравнений с ленточной структурой, которая должна решаться методами,
развитыми для таких систем. Заменим первую и вторую производную
следующими выражениями для центральных разностей:
du
dx
d 2u
dx 2
и( х + h)
- и( х - h)
2h
u(x+h)-2u(x)+u(x-h)
h2
Если заменить центральной разностью вторую производную в уравне
нии изгиба балки, получим следующее уравнение:
у(х
+ h)-2y(x)+ y(x-h)
=- -
т
EI
Такое ураянение можно записать для всех узлов сетки , кроме двух
крайних, в которых значения у задаются граничными условиями.
Для решения задачи, записанной в такой форме, на листе электрон
ной таблицы можно эффективно реализовать три метода: итерационный ,
итерационный с ускорением сходимости и матричный.
llФI
Гnава
11
Итерационный метод конечных разностей
Итерационный метод конечных разностей является специфической
разновидностью метода последовательных приближений, рассмотренного
в главах 9 и 10. Решим этим методом разностный аналог дифференци
ального уравнения относительно у(х):
у(х) = +[y(x+h) + y(x-h) +h';;]
Это уравнение будет использоваться во всех внуrренних точках интервала, а на его краях будут также использоваться граничные условия:
у(О) =О
у({)= о
Решим поставлен ную задачу итерационным методом конечных разно
стей на листе таблицы
Excel.
П ервая часть таблицы будет выглядеть так
же, как в примере с методом стрельбы, поэтому используем то, что у нас
уже есть.
1.
Скопируйте лист Рис.
11 .7
и дайте ему имя Рис.
11.8.
Включим итерационные возможности· таблиц и зададим выполнение
Итераций до тех пор, пока погрешность не станет меньше 1Q-6.
2.
пересчета
и
· Вычисления диалогового окна Сервис
Включите
режим
ручного
>
Предельное число итераций значение
погрешность - значение lE-6.
3.
на
вкладке
1000,
а в поле Относительная
Введите в ячейке А1 заголовок Изгиб балки; краевая задача; метод ко
нечных разностей.
4.
итерирования
Параметры. Введите в поле
Очистите ячейки
810:062.
Решенuе обыкновенным дuфференцuаnьнын уравненuu
Введем флаг инициализации, который бы переводил таблицу в опре
деленное начальное состояние.
5. В ячейке АЗ введите Нач. флаг.
· 6. В ячейке 83 введите ИСГИНА, а в ячейке СЗ
7. Дайте ячейкам 83 и СЗ имена Нач и Нач_Зв.
введите О.
Внесем в таблицу разностное уравнение, а также граничные условия в
первой и последней ячейках диапазона 812:862. Протестируем флаг ини
циализации для проверки необходимости перевода задачи в начальное
состояние.
8. В ячейке 810 введите у(х) и выровняйте содержимое по центру.
9. В ячейке 81.1 введите (дюйм) и выровняйте по центру.
1О. В
11 . В
ячейке В 12 введите О .
ячейке 813 введите следующую формулу:
=ЕСЛИ(Нач,Нач_Зн,О.5*(814+812+((А 14-А 12)/2)Л2)*W*А13*(L·A13)/(2*E*I)))
и скопируйте ее в ячейки
814:861.
12. В ячейке 862 введите О.
13. Сделайте
формат ячеек
пятой.
Очистите ячейки
14.
15. В
ячейке
F10
E9:G9
812:862
и
числовым с пятью знаками после за
E11:G11.
•837.
введите формулу
Для выполнения расчета по построенной табл ице установите флаг
иннциализации (в ячейке 83) равным ИСТИНА и нажмите клавишу
<F9>
(на
Macintosh - <Cmd+=>).
После перевода листа в начальное со
стояние сделайте этот флаг равным ЛОЖЬ и снова нажмите
<F9>
дr1я
запуска итерационного процесса.
Процесс пересчета таблицы будет длиться до тех пор , по:ка изменение
всех значений на каждом шаге не станет меньше 1О-6; после его завер
шения в таблице будет отображено полученное решение. Сходимость к
решению достигается примерно за
6,5
за считанные секунды на компьютере
минут на компьютере
486DX-80.
386SX-20
и
Если за первую после-
довательность · итераций решение нужной точносrn не получено , снова
нажмите клавишу
<F9>.
После сходимости процесса лист должен выгля
деть так, как показано на рис.
11.8.
Метод конечных разностей с ускоренной сходимостью
Если рабочий лист сходится так медленно, как это наблюдается в
данной задаче , то ускорение сходимости является жизненно необходи
мым . Для ускорения итерационного процесса можно использовать мето
дъ1 рел аксации, которые в предыдушей главе уже применялись для реше
ния систем уравнений . Перепишем разностные уравнения так , чтобы
иметь возможность управлять приращением решения на каждой итера
1
ции. Для этого введем в уравнения постоянный множитель с :
у(х) = у(х)+ с1[ t(y(x + h) + y(x-h)+ h ' ;!) - у(х)]
111~•
Гnава
11
.~,.!':'~;~~~~ШЩi~~~~~?L{~i:ffit, :йЩ~ 1~:~;'"! :.(п~~~} :z:~~=e ~:.;~;~; :~!~\~!T:.ffl~i~~~: ~:l:~~;~~;;?:.1: :~~~.:~~tи~~~:~·!:Ф~t· ~г:
:~~ И:1tttб бi.1'1t:М,
icpaeaa.1111 :1ад1"Ч1;
·';2i"
!~!Hav фnar ЛОЖЬ
~етод коне~~wх р1зносrей
о:
А"аn"тмчес~ое реше"ие
J.:~л:~·"·т:,~-~;~з~~~1юйu ~:: . .:~~~~
.. _.· ;>:.··:. :~.~&~;~-:·" __. · -··· ·
IJ( _
~\\ ~;~.;) \!\~~~)
.
Щi_
:r~Щ
__ _ · •:
" т,.8;фн• . . . .
Е з.ооЕ"от:Фнс/.ад. .
600 ,дюИм
1:
~<
t,15549 ~'°""
y(V2)·
. ;
,Ч•с11е"""е роwонмв
..
.
.·..
;
.. J, !5561 ДЮ,Й!о!"." i
y(L/2)
О· О 00000:
;\~
"1if'
::t~;;
11 ·0:01)91
24 0.14/46:
Зб О,220Н
!~9ii
48
О Ш21 '
iiri.;:·•.i~~; JW~;1:r~f~.~.1'~:.fi;i Рмс.. ~ • .е :~;:it.•~· :~:a i.!i
Рис.
",
. :-·.· ·;~+~~:~>~t:~:::i.~ii~\;;:;;~;,;;~i:~:й~;.~ ,_, .=:.,;: t;
11.8. Изгиб балки; решение краевой задачи итерационным методом
конечных разностей
Внесем необходимые изменения в копию листа.
Вначале введем в
таблицу коэффициент релаксаuии.
1.
2.
3.
4.
5.
Скопируйте лист Рис. 11.8 и назовите его Рис. 11.9.
В ячейке А2 введите С релаксацией.
В ячейке А9 введите К-т релакс.
В ячейке
89
введите
При свойте ячейке
1.9.
89 имя Cf.
Изменим расчетные разностные формулы так, чтобы в них появился
коэффиuиент
релаксаuии,
контролирующий
приращение
решения
на
каждой итерации . Искомое узловое значение, фигурирующее в формуле,
ссылается н а ячейку , в которую эта формула помещена, из-за чего созда
ется циклическая ссылка. С тем же эффектом узловое значение можно
поместить и в другой столбеu.
6. В ячейке 813 введите следующую формулу:
=ЕСЛИ{ Нач ,Нач_Зн,{О .5*{814+812+{(А14-А12)/2)"2)""№А 1З*(L-А13)/(2*Е*\))
В13)*Cf+B1 З)
и скопируйте ее в ячейки
614:861.
Этот лист пересчитывается таким же образом , как и
Вначале необходимо сделать зн ачение флага иниuиализаuии
предыдущий .
(83) равным
ИСГИНА и нажать клавишу <F9> (на Macintosh - <Cmd+=> ), а после
иниuиализаuии процесса изменить его значение на ЛОЖЬ и снова на
жать <F9>. Расчет по построенной таблице на компьютере 386SX-20 дает
решение за
26
секунд , то есть почти на
1500 процентов
быстрее, чем рас
чет другими методами! Результат расчета показан на рис.
11 .9.
Решенuе обыкновеннын дuфференцuаnьнын уравненuii
··fZifu~µш~f.J~~;mы1~н~~i?.Л~Ш~~ш:ШJ1Щ:D~~1n~~ii;·;.fE;1~rurщ;,:~~~zrnmt~1~#:?:1i(~~oih~t~;.::~~i~tlш;~~!{f;,iffщ~
5J.ii И•~б _бал...; !!!!~••• >ад.ача;
WOTo.<j
:
~!С рtлаоссац.t~
j~} Нац. ф~аr: ЛОЖЬ '
·
коне"""'' ра_>н~сrе~
·
· дн111~тмческо1 pewl!н~e
t::
-~~~~м•r~wэ:·~~!~1f
;Jii.
;~;
!13':
~it!
"
i1ti:
ijgi ·
r~ N~~!~ ::щ.
600 дю11w
1-
i~~К-т релакс .
:;ro0i •
1mi.•.(1\юйм)
·
·
.Чисnенно1 реuпнив
1,9!
y(I)
.
•.. (.!\!Ой")
1, 15586 AIOiiW
y(V2)
о
о, 00000
12 о 07392•
24_· сН
Зб О 22039
.t1sa· ·
48 1 о:ш28 .
' ~'TTf:Jщ*-~· ~~~p;Jf'1!7. : ~~r· · Рж.11.•
Рис. 11.9. Изгиб балки; решение краевой задачи методом конечных
разносrей с ускоренной сходимостью
. . _ .Примечание
'
' '·
Если попытаться еще ускорить сходимость процесса путем увеличения
коэффициента релаксации, то метод, наоборот, разойдется . При коэф
фициенте релаксации, равном
2,
узловые значения искомой функции по
сле нескольких итераций становятся очень большими.
следует уменьшить значение коэффициента релаксации
-
8
этом случае
для задач, ко
торые расходятся при решении методом конечных разностей с ускорен
ной сходимостью, следует применять коэффициент· релаксации, меньший ·
1
(который в таких задачах иногда называют коэффициентом торможе
ния) .
Матричное решение разностных уравнений
Для решения систем линейных уравнений можно применять матрич
ные функuии
Excel.
Единственное ограничение, накладываемое при этом
на систему, состоит в том, ч:то ее размерность н е должна превышать
Вообще говоря, строгих оrранич:ений на размерность матрицы в
Excel
60.
не
предусмотрено ; указанное ч:исло определяется объемом свободной памя
ти и структурой матрицы. Если Excel не может обратить матрицу из- за ее
больших размеров, возвращается значение
#VALUEI
.(#ЗНАЧ!).
Для обращения больших матриц необходимо использовать процедуры
Visual Basic
или внешние приложения.
матриц можно написать на языке
ческую
можно
Н апример , модуль обращения
FORTRAN и поместить его в динами
DLL-библиотеку (ресурс CODE на Maciпtosh). Этот модуль затем
зареги стрировать в оболочке
Excel и вызывать функцией
ВЫЗВАТЬ .
lifj
Гnава
Для использования средств обращения матриц
Excel
11
перепишем раз
ностное уравнение в матричной форме. Вначале преобразуем исходное
разностное уравнение
y(x+h)-2y(x)+ y(x-h)
т
h2
El
----------- = -в следующую форму:
у(х + h)-2y(x) + y(x-h) = -h 2
;
1
Присоединим к уравнению граничные условия:
у(О) =у(/)= О
Все перечисленные уравнения леrко объединить в одно матричное
уравнение:
Ах=Ь
1
о
о
о
о
Хо
ho
1
-2
1
о
о
Х1
ь1
о
1
-2
1
о
Х2
Ъ2
о
о
1
-2
1
Х3
Ъз
=
1
-2
1
о
1
-2
о
о
о
о
1
хп-2
ьп-2
хп-1
brt-1
хп
ьп
Здесь введены следующие обозначения:
Ь0
= Ьп =О
Ь
= -h 2 т;
'
El
т.
1
i
= 1,2,3,··· n- l
=wx
-2-1. ( 1-х. )
После
1
преобразования
сравнительно несл.ожным
-
уравнения
его
решение
становится
делом
остается всего лишь обратить матрицу урав
нения и умножить обратную матрицу на вектор правой части. Решим эту
Решенuе обыкновенныи дuфференцuаnьныи уравненuu
задачу на листе электронной таблицы. Воспользуемся копией таблицы из
предъщущеrо примера, поскольку она содержит нужную нам "шапку".
1. Скопируйте лист Рис. 11.9 и назовите его Рис. 11.1 О.
2.
Включите режим пересчета Вручную на вкладке Вычисления диалого
вого окна Сервис )о-- Параметры.
3.
4.
В ячейке А2 введите Матричвwй метод.
Очистите ячейки В12: В62.
S.
В ячейке С 1О введите Ь и выровняйте строку по центру.
Выделим и обозн ачим в таблице место ш~я вектора решения .
Введем в таблицу вектор правой части , содержащий в числе прочих
компонентов граничные условия.
6.
7.
В ячейке С12 введите О.
В ячейке С13 введите следующую формулу:
=-{(А 13-А 12)л2*W*А1З*(L-А13)/(2*E*I))
8.
9.
и скопируйте ее в ячейки С14:С61.
В ячейке С62 введите О.
Присвойте ячейкам С12 : С62 имя В .
Выделим и обозначим в таблице местонахождение матрицы А и об
ратной к ней матрицы А-•.
10. В ячейке .011 введите заголовок А и выровняйте ero
11 . Выделите ячейки D12:ВВ62, дайте этому диапазону
по центру.
нмя А и обведите
его контуром .
12. В ячейке D65 введите заголовок АОБР и выровняйте его по центру.
13. Выделите ячейки D66:BB116, дайте этому диапазону имя АОБР и об
ведите его контуром .
Исходиая матрица будет содержать в основном нули, только на диа
гонали и рядом с ней будут стоять единицы и двойки. Поскольку вам,
очевидно, не захочется набирать 2601 число вручную, напишите ш~я за
полнения матрицы программу на языке Visual Basic.
14. Откройте лист нового модуля и назовите его MakeMat.
15. Введите в модуль следующую программ у:
'
Заполнение матрицы
'
Процедура залолнения ленточной матриць1 конечно-~ностного уравнения
.
Sub MakeМЗtrix()
Dim intl As lnteger
Const numRows 51
=
'Заполнение матрицы нулями
RangeC'A").Select
Selection.Formula = "О"
'Внесение первого граничноrо усповия
'в верхний левый угол матриць1
RangeC'A").Cells(1. 1).Select
ActiveCell.Formula = " 1"
'Заполнение внутренних элементов матрицы в цикnе
For intl = 2 То numRows - 1
1111
Гnава
11
Range(''A").Cells(intl. intl).Select
ActiveCell.Formula =·"-2"
Range("A'1.Cells(intl, intl + 1).Select
ActiveCell.Formula "1"
Range("A").Cells(intl, intl - 1).Select
ActiveCell.Formula "1"
Next intl
=
=
'Внесение второго граничного условия
'в нижний nравый угол матрицы
Range("A").Cells(numRows. numRows).Select
ActiveCell.Formula "1"
End Sub
=
Приведенная. nроцедура вначале вьщеляет всю матрицу и заполняет ее
нулями:
Range('A").Select
Selection.Formula ="О"
После этого программа помещает в верхний левый угол матрицы гра
ничное ус;rовие . Метод
Range("A") возвращает координаты ячеек с име
Cells(1,1) возвращает номер яqейки, находящейся в пер
первом столбце матрицы . Метод Select вьщеляет ячейку, ак
нем А, а метод
вой строке и
тивизируя ее. Оператор ActiveCell . Foпnula вставляет в выбранную ячейку
значение
1.
Range("A").Cells(1, 1).Select
ActiveCell.Formula "1"
=
В следующем блоке программы выполняется цикл с перебором по
строкам (или столбцам), на каждом шаге которого по диагонали в матрицу вносятся три значения.
For intl = 2 То numRows -1
Range(''A").Cells(intl, intl).Select
ActiveCell.Formula "-2"
Range("A").Cells(intl. intl + 1).Select
ActiveCell.Formula "1"
Range("A").Cells(intl, intl - 1).Select
ActiveCelf.Formula "1"
Next intl
=
=
=
В последнем блоке в нижний правый угол матрицы вносится второе
граничное условие; это проделывается точно так же, как и с первым гра
ничным условием.
Range(''A").Cells(numRows, numRows).Select
ActiveCell.Formula "1"
=
Вставим в лист кнопку и ассоциируем ее с процедурой
16. Активизируйте лист Рис. 11 .1О.
MakeMatrix.
Отобразите панель элементов управления , включив в меню
Вид
Панели инструментов переключатель Элементы управ·
17.
>-
ления, затем щелкните на кнопке Кнопка и нарисуйте на листе кнопку.
18. После
появления диалогового окна Назначить макрос объекту выбери
те процедуру
MakeMatrix и
шелкните на кнопке ОК.
Решенuе обыкновеннын дuфференцuальныи уравненuu
19. Выделите
20.
надпись на кнопке и измените ее на Заполнить.
Закройте панель элементов управления.
21. Щелкните
в любом месте листа для снятия выделения с кнопки, а за
тем щелкните на кнопке для выполнения процедуры.
Обратим матрицу в ячейках диапазона АОБР.
списка Имя выберите АОБР, или выберите команду Правка ~
Перейти и в списке переменных щелкните на АОБР.
22. Из
23. В
верхней левой ячейке выделенного фрагмента введите
=МОБР{д) и нажмите клавиши
<Ctrl+Shift+Enter>
(на
формулу
Maci11tosh -
кла
виши <Cmd+Eпter>) для вставки обратной матрицы в выделенный
фрагмент.
Для обращения матрицы может потребоваться несколько минут, если
оно выполняется на компьютере старой модели. Более современные
компьютеры проделывают это за несколько секунд. Если в результате
вычислений возвращаются не числовые значения, а #VALUE! (#ЗНАЧ!),
это означает, что в матрице что-то набрано неправильно или превышен
максимально допустимый в
Excel
размер матрицы. В последнем случае
единственным выходом является уменьшение размерности матрицы, что
достигается путем разрежения сетки, то есть уменьшения общего количе
ства ее узлов за счет увеличения промежутков между ними.
4' Предупреждение
Разрежение сетки приводит к уменьшению точности приближенного ре
шения.
Умножим обратную матрицу на вектор Ь в ячейках С12:С62 и помес
812:862. Это и будет вектор искомого решения.
812:862. В верхней ячейке выделенного диапазона
тим результат в ячейки
24. Выделите
введите
ячейки
формулу
<Ctrl+Shift+Enter>
(на
=МУМНОЖ(Аобр,В)
Macintosh -
клавиши
результирующего вектора в диапазон.
25. Нажмите
клавишу
<F9>
для пересчета листа.
и
НаfКМИТе
<Cmd+Enter>)
клавиши
для вставки
llA
Гnава
11
После проделанных операций лист должен выглядеть так, как на
рис. 11.1 О. Для расчета по этому листу внесите любые желаемые измене
ния в исходные данные и нажмите клавиши
клавиши
intosh -
<F9>
или
<Ctrl+=>
(на
Mac-
для пересчета матрицы. После завершения
<Cmd+=>)
расчета результаты будут отображены в столбце В.
~~~ ~~л.?-'; ~а~•~.~ ~1дач1; ~~~ m~·~~~ Р~3~~~~~ ..
~~ач.фnаr
ЛОЖЬ
·]
o;Jf
Акали,.,,ческое решение
П~Р•"•Т!)ы баl'ки 8W .l;1
w 5, 583333 ф1/дt0йw
у
.
~;:К-т pena~~ З,ОDЕ~~~·:~~u<ад
y(v]j
ЧИсnе"ное реwекие
•
у(х)
;1!)::;
y(l/2):
1.1$536 д10iiu
_ _ _ _ _ _ _ _ _ _ _ _ __
(дюйu)
0,00000
48
Рис.
_..;.А;..._
о
о.оiЭ92 ,(1,О6оз5
1
.1
0.14750 .O,oQ068
о.22озg;
./J,001
0,29228 .(),00131
· .~;1{,s''~tfi;,r,
h
72 дюtiw
О. 43170 дюi!u
1,15549 дюiiu
•·
:i71,8iдЮй"4
1
,~t
·ш~~~1
о
о
о
о
Q
-2
1
1
о
о
о
-2
1
о
о
i•1x«· :flit:ii:i """- i1.1a .•
-2
j' ;·
f,
~
11.10. Изгиб балки- решение краевой задачи методом конечнь1х
разностей
......
Примечание
Если в этот момент снова включить режим автоматического пересчета,
появится диалоговое окно с сообщением о невозможности пересчета
таблиц из-за наличия .циклических ссылок. Эти ссылки находятся не в
рассматDиваемом листе, поэтомv не стоит беспокоиться.
Учет граничных условий более высокого порядка
Дифференциальная задача, которая только что рассматривалась, со
держала граничные условия типа Дирихле, но с тем же успехом она мог
ла бы содержать и условия типа Неймана, а также смешанные граничные
условия
.
...... ПDимечание
В граничных условиях типа Дирихле на границе области задаютСя зна
чения искомой функции.
В· rраничных условиях типа Неймана на границе задаются производ
ные искомой функции.
В смешанных граничных условиях на одном конце интервала задаются
vсловия Пиоихле, а на другом
-
условия Неймана.
Решенuе обыкновеннын дuфференцuаnьныи уравненuu
Для корректного учета гранич:ных условий типа Неймана необходимо
добавить к граниuе дополнительную точку сетки, расположив ее вовне от
точки границы с заданной производной. Для учета заданного значения
производной следует составить центральную разность с использованием
этой дополнительной точки. Например, если бы в предыдущей задач:е
вместо условия у(О)=О было задано условие у'(О)=О.00616015, пришлось
бы добавить в сетку дополнительную точку х
тральную разность первого порядка в точ:ке х
= -h,
=
затем составить цен
О и приравнять ее числу
0.00616015:
(}~h) - }~-h)) (2h)-1
= 0.00616015
Решите это уравнение относительно y(-h) и используйте его для оп
ределения знач:ения функции в дополнительной точ:ке сетки. В точке
границы следует использовать такое же разностное уравнение, как и во
внутренних точках сетки. Граничные условия с производными более вы
сокого человека учитываются таким же образом
-
путем замены произ
водной соответствуюшей конечной разностью. Можно также исключить
y(_-h)
из приведенного выше уравнения с помощью уравнения в гранич
ной точ:ке, и таким образом избавиться от необходимости явного введе
ния дополнительной точки границы.
Граничные условия типа Неймана
Следует помнить, что задачи с граничными условиями типа Неймана
на обоих концах интервала могут не иметь единственного решения. Это
происходит, например, в том случае, если добавление к искомой функ
ции произвольной константы не меняет вида дифференциального урав
нения, что возможно тогда, когда в уравнение входят только ее произ
водные.
Задача об изгибе балки обладает именно таким свойством. Если доба
вить к функции у(х) произвольную постоянную у0 , дифференциальное
уравнение от этого не изменится, потому что производная
от Уо равна
нулю. Если не задать в некоторой точке граничное условие типа Дирих
ле, искомую функцию нельзя будет определить однозначно, поскольку
любая функция, отличающаяся от нее на константу, также будет реше
нием поставленной задачи. По физическому смыслу это соответствует
подъему или опусканию балки как целого на некоторую высоту, что не
отражается на ее упругой деформации
-
балка изгибается одинаково как
в подвале, так и на крыше.
Резюме
В этой главе рассмотрена методика применения электронных таблиц
для численного решения обыкновенных дифференциальных уравнений.
Для решения задач Коши на листе электронной таблицы могут приме-
111:1
Гnава
11
няться метод рядов Тейлора, метод Эйлера и модифицwрованный метод
Эйлера, а также методы Рунге-Кугrа. Все эти методы обладают различ
ной степенью точности и трудности в реализации.
Краевые
задачи для
обыкновенных дифференциальных
уравнений
могуг решаться методом стрельбы, в котором на одном конце интервала
перебираются значения недостающих граничных условий до тех пор, по
ка не будут удовлетворены граничные условия на другом конце. Краевые
задачи могуг также решаться методом конечных разностей; их конечно
разностные аналоги можно решать итерационными или матричными ме
тодами.
Модуль поиска решения
Excel
изначально не предназначен и
не
слишком хорошо приспособлен для решения систем, состоящих из не
скольких десятков уравнений, однако при тщательной подготовке задачи
она может быть решена точно так же, как системы уравнений из преды
дущей главы. Для систем большой размерности итерационные методы
работают гораздо быстрее, чем модуль поиска решения.
Естественно, каждый из перечисленных методов можно реализовать в
виде программы на языке Visual Basic с использованием общеизвестных в
программировании алгоритмов. Однако, как это вообше бывает с про
граммами такого рода, в результате ее выполнения будет отображаться
только конечный результат, но не промежуточные значения, как в элек
тронных таблицах. Вычисления, выполняемые в программах, вообще не
столь наглядны, как вычисления в электронных таблицах.
Дополнительная литература
Изгиб и растяжение-сжатие элементоа конструкций
S.Timoshenko, D.H.Young, Eleтents of Strength of Materia/s,
York D. Vап Nostrand Со., 1968).
5th
ed. (New
(Имеется перевод 3-го издания: СП.Тимошенко. Сопротивление ма
териалов. Пер. с англ. В.И.Федорова с 3-го амер.изд-я. Изд-е 2-е, стерео
типное. М.: "Наука",
1965.
Т.1
-
Элементарная теория и задачи,
363 с.)
Численнь1е матоды решения дифференциальных
ураанений
C.Gerald, App/ied Nuтerica/ Ana/ysis, 2nd ed. (Reading, Mass.: AddisonWesley, 1978).
W.H.Press, B.P.Flanпery, S.A.Teukolsky, W.Т.Vetterling, Nuтerica/·
Recipes; The Art of Scientific Coтputing (Cambridge, UK: Cambridge University
Press, 1986).
Бахвалов Н.С., Численные методы (анализ, алгебра, обыкновенные диф
ференциальные уравнения), М.: Наука,
1973.
Самарский А.А., Гулин АВ. Численные методы. М.: Наука,
1989, 430 с.
Решенuе обыкновенным дuфференцuаnьнын уравненuu
Обзорные задачи
1.
Заряд (q) конденсатора с емкостью С, который заряжается батареей
(V), последовательно соединенной с резистором (R), описывается сле
дующим уравнением:
dq v
q
- = - - -dt
R RC
Решите это уравнение методами рядов Тейлора, Эйлера и модифици
рованным мет,одом Эйлера при заданных значениях R=lOOO Ом,
e=10-s Ф, V=10 В и начальном условии q=O (Г-0) на интервале
О
::;:; t
cv(
q;
2.
$ 5х 1О-2 с. Сравните результат с аналитическим решением:
1-
.-(;с) J
Решите задачу
1 для
разряжаемого конденсатора методом Рунге- Кутта
V=O (Г-0), q=J0- 4 Кл (=CV). Сравните резуль
при начальном условии
тат с аналитическим решением:
q
3.
= CVe -(ic)
Индуктивный колебательный контур описывается следующим диффе
ренциальным уравнением:
L d2 q + R dq + !1_ =
dt 2
dt с
О
Здесь
L=l0-2 Гн, С=ЗхlО-6 Ф, R=20 Ом. Заданы начальные условия
q=J0-5 Кл , dq/dt-=:-0.01 Кл/с (Г-0). Решить данное уравнение на ин
тервале О$ t $ 4x l0-3 с модифицированным методом Эйлера.
4.
Колебания
простейшего гарм онического
осuиллятора
описываются
следуюшим уравнением:
d 2x
dt 2
2
--=-(Ох
Заданы начальные условия х=О,
ние при
ro=6
на интервале О $
dx/dt= I (Г-0). Решить данное уравне
t $ 3 с модифиuированным методом
Эйлера.
5.
Дифференциальное уравнение упругой линии равн омерно нагружен
ной консольной балки выглядит следующим образом :
2
2
d y
dx
2
wx
2El
Длина балки равна L, а координата х отсчитывается от свободного
конuа балки. Заданы начальные условия у = О и dy/dx = О (х = L) и
мщ~•
Гnава
11
следующие параметры балки: Е=ЗхlО6 фнс/:кв. дюйм, /=271.8 дюйм4,
w=lOO
фн/дюйм,
L=lO футов (=120 дюймов). Решить поставленную
L и сравнить результаты с
задачу методом Эйлера на интервале О :S х :s;
аналитическим решением:
у=;(~:- L:x + ~·J
6.
Темп прироста колонии бактерий описывается следующим диФФе
ренциальным уравнением :
dn =kn
dt
Здесь п -
количество бактерий, а
k -
коэффициент прироста. Опре
делить k методом стрельбы при условиях n=l04 (t=O) и п=4х104
(t=lO
7.
с) .
Решите следующее дифференuиальное уравнение методом стрельбы
на интервале О :S х :S
при краевых условиях у(О)=З и у(1)=7. 49:
1
2
d y dy
dx1 + dx -6у=О
8.
Решите следующее дифференuиальное уравнение методом стрельбы
на интервале О::; х :S
2
d
dx
1
при краевых условиях у(О)=2 и у(1)=5.288:
d
dx
х-----2:.2 - 2 + 4х 3 у= D
Сравните результат с аналитическим решением:
2
2
у= 5sin(x ) 2 cos(x )
+
9. Решите· следующее дифференциальное уравнение методом конечных
разностей на интервале
и у(О.5)=9.1:
2
-0.5 :S х :S 0.5
при краевых условиях у(-0.5)=
60.703
d y
dx
dy
dx
-+2--18у=О
2
10. Дифференuиальное
уравнение упруrой линии балки, закрепленной на
обоих конuах и нагруженной сосредоточенной силой в середине, вы
глядит следующим · образом :
1)
d y _ wL (х 3)
dx
2EI L - 4
d y _ wL (х
dx 2 - 2EI L - 4
2
О <х <L /2
2
2 -
L/2<x<L
Решенuе обыкновеннын дuфференцuа11ьнын уравненuu
Здесь L -
/=271.8
длина балки, у=О при х=О и x=L; E=30xl06 фнс/кв.дюйм,
дюйм4,
w=lOO
фн,
уравнение относительно у
L=200 футов (=2400 дюймов). Решите это
на интервале О s; х s; L методом конечных
разностей. Сравните численное решение с аналитическим:
у= ; :1 ( х: -;~)
О <х < L/2
Упражнения
1.
Напряжение в uепи, состоящей из последовательно соединенных ка
тушки индуктивности и заряженного конденсатора, описывается сле
дующим дифференuиальным уравнением:
2
V +LCd V
2
dt
=О
Методом рядов Тейлора определить напряжение на конденсаторе в
2.
течение первых десяти микросекунд при C=l мкФ, L=lO мкГн и
Vo=50 В.
Решить задачу 1 методом Эйлера и модифиuированным методом Эй
лера.
3.
Движение снаряда, вылетевшего из орудия с начальной скоростью
vo
под углом к горизонту а описывается сJiедующим уравнением:
dv
-=-gk
dt
Здесь
k-
вертикальный орт. Если пренебречь сопротивлением возду
ха, это уравнение второго порядка можно свести к двум уравнениям
первого порядка, одно из которых описывает вертикальную скорость,
а другое
-
горизонтальную.
Уравнение для вертикальной скорости:
dvv
-=-g
dt
Уравнение для горизонтальной скорости:
dv" =О
dt
Скорость горизонтального смещения постоянна: vh
= Vo Cos(a),
тогда
как в вертикальном направлении под действием силы тяжести снаряд
вначале летит вверх, затем останавливается и падает вниз. Методом
стрельбы найти а и определить время, в течение которого снаряд на
ходится в воздухе, если
v0=500 мjс, g=9.8 мjс2,
а дальность полета
ltlj
Гnава
снаряда составляет
22300
11
м . Сравните полученные результаты с ана
литическим решением:
2 Va sin(a)
g
Va2 sin(2a)
Range=----g
t=-----
4.
Выполните упражнение
2
с использованием метода конечных разно
стей.
5.
Движение центра параллелепипеда, съезжающего по наклонной плос
кости под углом а к rоризонту, с учетом трения описывается следую
щим уравнением:
2
d x
dt 2
= g(sin(a)- µcos(a))
Здесь
µ -
коэффициент трения, а
g-
ускорение свободного падения.
Рассчитать и начертить график координаты на промежутке
10 с
при
следующих условиях: g=9.8 м/с2, µ=О.6, а=55о, хо=О, х' 0 =О. Свести
задачу
6.
к двум
дифференциальным уравнениям первого порядка
и
применить метод Рунrе-Кутrа .
Итерационным методом конечных разностей определить у(х) из сле
дующеrо дифференциального уравнения на интервале от О до
1
при
условиях у(О)=5 и у(1)=8.
d 2y -3 dy
dx 2
dx
7.
+2у= ех
Выполнить упражнение
матричного аппарата
8.
Решить
уравнение
6 с
Excel.
из
использованием конечных разностей и
задачи
6
с
граничными
условиями
у(О)=О,
y'(l)=O.
9.
Снова решите уравнение из задачи 6, но на этот раз с граничными
условиями у'(О)=5, y'(l)=-5. Обратите внимание на бесконечное воз
растание
и
расходимость
решения
при
граничных
условия.х
типа
Неймана. Зафиксируйте значение искомой функции на левом конце,
сделав его равным нулю, но оставив ненулевую производную на пра
вом конце, и получите сходящееся решение.
1О.
Методом конечных разностей решите следующее уравнение на интер
вале от х=О до х=6 при заданных граничных условиях у(О)=О и
у'(6)=25.
d 2y
dx
dy
dx
.
--2-=sш(х)
2
Гпава
12
Реwение дифференциа11ьных
уравнений в частных производных
В э'ГОЙ таае...
./
Решение эппиптических уравнений
./ Решение nарабоnических уравнений
./ Решение rиnербопических уравнений
./ Решение уравнений nannaca и Пуассона
./ Решение вапновоrо уравнения
Дифференциальные уравнения в частных производных
-
это, по
видимому, наиболее распространенный аппарат математического моде
лирования физических процессов. За исключением таких простейших
процессов, как скольжение параллелепи педа по наклонной плоскости .
описываемое простым аналитическим выражением, мя адекватного опи
сания большинства процессов необходимо применять дифференuиаль
ные уравнения. Например , уже при учете сил трения и сопротивления
воздуха в уравнение движения параллелепипеда необходимо добавить
дифференциальные члены. Во мноrих случаях по причине независимости
пространственных и временных координат вместо обыкновенных диффе
ренциальных уравнений используются уравнения в частных производ
ных.
Как и обыкновенные дифференциальные уравнения, уравнения в ча
стных производных обычно не имеют аналитических решений, или же
эти решения очень трудно отыскать. Поэтому, как и в случае обыкно
венных дифференциальных уравнений, мя решения уравнений в част
ных производных чаше всего применяются численные методы.
Во многих важных задачах науки и техники процессы описываются
главным образом дифференциальными уравнениями в частных произ
водных. Более того , если непрерывный процесс зависит от нескольких
независимых переменных , этот процесс обязательно должен описываться
такими уравнениями.
Для дважды непрерывно дифференцируемой функции и, зависящей
от двух независимых пере менных х, у, можно записать пять
частных производных :
различных
it4•
Гnава
2
2
2
аи д и ди д и
д u
------дх' дх 2
'
ду' ду 2
12
'
дхду
Из них можно составить следующее общее линейное уравнение в частных производных:
д2и Сд2и Dдu Еди F А -д2и+ В --+
- + -+ -+ дх
2
дхду
ду
2
Каждый из коэффициентов
дх
А - F
О
ду
также может представлять собой
функцию двух независимых переменных х, у.
Различие между обыкновенными
дифференциальными уравнениями и уравнениями
в частных производных
Различие между этими двумя классами дифференциальных уравнений
состоит оrnюдь не в употреблении символов
d или д для обозначения
производных. В обыкновенное дифференциальное уравнение входит одна
независимая переменная , функции этой переменной и производные
функций по ней же. Так, следующее уравнение содержит независимую
переменную х, функции этой переменной и(х) и Зх, а также первую и
вторую производные неизвестной функции по независимой переменной .
Оно является обыкновенным, несмотря на символ частной производной:
2
д и
-
дх
2
дu
+4-+2u+3x=O
дх
В дифференциальное уравнение в частных производных входит две
или более независимые переменные, функции этих переменных и част
ные производные функций по этим переменным . Например, следующее
уравнение содержит две независимые переменные (х и у), функции неза
висимых переменных (и(х, у) и Зх+Sу), а также частные производные по
одной или обеим независимым переменным:
ди(х, у)
дх
+
з"д 2и(х, у) д2и(х, у)
+
2
. дхду
ду
(
+и х,у
)
+
3
х
+
5
у=
о
Классификация типов уравнений в частных
производных
Линейные дифференциальные уравнения в частных производных вто
рого порядка подразделяются на три типа: эллиптические , параболиче
ские и гиперболические уравнения. Тип уравнения определяется соот-
Решенuе дuф. уравненuй в частн1t1н nроuзводнын
ношениями между коэффициентами при вторых производных искомой
функции. Например, для уравнений с двумя независимыми переменны
ми тип определяется следующими условиями на знак дискриминанта:
•
•
•
эллиптический:
IJ2 параболический:
IJ2 гиперболический:
IJ2 Поскольку коэффициенты
4АС <О;
4А С = О;
4А С > О.
сами являются функциями независимых
переменных, в разных точках области определения искомой функции
уравнения могуr иметь различный тип.
Решение эллиптических уравнений
Уравнения в частных производных эллиптического типа обычно воз
никают в задачах о равновесии тел или балансе физических величин.
Другими словами, решение эллиптического уравнения обычно описывает
стационарное состояние некоторого физического поля, например, кон
центрации, плотности или потенциала. Хорошо известными примерами
эллиптических уравнений являются уравнения Лапласа и Пуассона. Оба
эти уравнения возникают в самых разных разделах физики; особенно ве
лика их
роль в электростатике и теории теплопроводности.
В обоих
уравнениях коэффициент при смешанной производной (В) равен нулю,
что делает дискриминант
IJ2 -
4АС строго отрицательным (при условии,
что А и С одновременно положительны или отрицательны).
Эллиптические уравнения решаются конечно-разносrnыми методами,
близкими к итерационным методам решения обыкновенных дифферен
циальных уравнений, с той лишь разницей, что приходится иметь дело с
двумерным полем физической величины.
Уравнения Лапласа и Пуассона
Эти уравнения обычно используются для расчета скалярных полей.
Так, стационарный электрический потенциал описывается следующим
уравнением Пуассона:
V'2Ф =
-qE..
Е
Здесь
q
обозначает заряд электрона, р
-
плотность распределенных
зарядов, а с - проводимость. Обратите внимание на употребление диф
ференциального оператора Гамильтона:
.д
.д kд
V'=l-+J-+ дх
Здесь
i, j
ду
и
осей Ох, Оу и
дz
k - единичные векторы в направлениях координатных
Oz. Таково определение этого оператора в трехмерных де
картовых координатах. В других координатных системах данный опера-
Гnава
12
тор имеет другое выражение. Квадрат оператора Гамильтона является
символическим скалярным произведением оператора на самого себя:
а2
а2
а2
v2 = V · Vax2= -ду2
+-+дz2
Если распределенный в пространстве заряд отсуrствует, уравнение
Пуассона сводится к уравнению Лапласа:
\7 Ф =О
2
потенциал между двумя концентрическими цилиндрами
Рассмотрим два длинных концентрических проводника цилиндриче
ской формы с радиусами а и Ь, находящиеся в вакууме, как показано на
рис. 12.1. Если на проводники подать напряжение, потенциал между ни
ми будет описываться двумерным уравнением Лапласа.
Рис.
12.1. Концентрические электропроводящие_ цилиндРы
в вакууме
Внешний проводник заземлен (находится под напряжением О В), то
гда как на внутренний подается напряжение
составляет
5 см,
а наружный радиус Ь
-
20 В . Внутренний . радиус а
15 см. Для расчета потенuиала
между проводниками воспользуемся дв)тмерным уравнением Лапласа.
Двумерная расчетная область допустима вследствие бесконечной длины
цилиндров, из-за которой изменение потенциала вдоль их общей оси
пренебрежимо мало:
V2Ф = д2Ф + д2Ф =О
дх2
ду2
Эта задача допускает аналитическое решение, которое понадобится
нам для проверки результатов численного расчета. В терминах расстоя-
Решенuе дuф. уравненuu в частнын проuзводнын
ния
r
от оси цилиндра аналитическое выражение для потенциала имеет
следующий вид:
ф r = ф ь ln(r /а)- фа ln(r / ь)
ln(Ь/ а)·
( )
Для решения этой задачи в электронной таблице следует вначале за
менить в уравнении
производные на
центральные
ванные относительно точки сетки с индексами
разности,
центриро
(iJ). Шаг сетки h предпо
лагается одинаковым в обоих координатных направлениях.
Ф.1+ 1 ,j.-2Ф 1,)
.. +Ф 1 . Ф" 1
-- - - - - - -/--.)+ 1.j+
h2
-2Ф 1,J
.. +Ф 1,;.. 1
h2
=
о
Решим это уравнение относительно потенциала Фу в узле (iJ):
ф i,j
={
t )( ф
i+l,j
+ ф i-1,j + ф i,j+I + ф i,;-1)
Это выражение означает, что потенциал в произвольной точке ~шля
ется средним арифметическим значений потенциалов в 1.Jетырех окру
жающих точках.
При решении задачи на листе электронной таблицы rрани'-!нЫе зна
чения искомой функции будут определяться из граничных условий, а
внутренние
-
из полученного разностного уравнения.
По сути, в данной задаче достаточно выполнить расчет только попе
речного
сечения
цилиндров,
поскольку
решение
осесимметрично и не
меняется вдоль оси. Поэтому в качестве рабочей области выберем сектор
поперечного сечения цилиндра с углом раствора 900; для каких-либо
других областей труднее задать геометрию и граничные условия. На
внешнем цилиндре потенциал равен нулю, на внутреннем 20. На радиу
сах сектора зададим граничные условия в виде равенства нулю нормаль
ной производной потенциала.
1.
Создайте новый лист и присвойте ему имя Рис.
2.
Сделайте ширину столбцов
/
•
A:R
равной
2.43,
12.2.
а столбцов
S:T -
равной
9.
Экспресс-метод
Для того, чтобы сделать ширину сразу нескольких столбцов равной од
ному и тому же значению,
выделите все столбцы,
последовательно
щелкнув на них и удерживая клавишу <Shift>, а затем измените Ширину
одного из столбцов. Все остальные столбцы автоматически подстроятся
под новую ширину. Таким же способом можно сделать высоту нескольких
строк равной одной и той же величине.
3.
4.
Сделайте высоту строк
3:20
равной
11.25.
Выделите ячейки А 1 :Т20 и сделайте высоту шрифта равной
на вкладке Шрифт, выбрав команду Формат
>- Ячейки.
8 пунктам
it4:1
5.
Гnава
Выберите
команду
>-
Сервис
Параметры
и
откройте
12
вкладку
Вычиспения; включите режим пересчета Вручную, поставьте отметку
на переключатель
итераций значение
6.
Итерации
100.
и
введите
в
поле
Предельное
чиспо
Щелкните на кнопке ОК.
В ячейке А 1 введите заголовок Задача для ур3J1нення Лапласа в облас
ти между цилиндрами; эллиптические ДУЧП.
Введем метки для обозначения координатнь~х осей, а также столбцов
и строк граничных условий.
7.
Введите в указанные ячейки приведенные ниже заголовки; выровняй
те содержимое ячеек А6 , А7 и Вб
no
центру.
Slчейка
Содержимое
Ячейка
Содержимое
Аб
Гр.
вз
А7
усл.
Вб
у
С4
С5
Аналит.
Гр.у .
х
Построим таблицу, содержащую значения потенциала на внешнем и
внутреннем цилиндрах.
8.
9.
В ячейке
S9
введите заголовок Приложенные l}отеициалы.
Выделите
ячейки
59
и
Т9,
а
затем
щелкните
на
кнопке
Объединить и поместить в центре .
10. В
указанных ячейках введите приведенные ниже значения и выров
няйте их по центру ячеек.
Ячейка
Содержимое
Ячейка
S10
S11
Внутренний
Т10
20
Внешний
Т11
о
11. Присвойте ячейкам
Содержимое
Т1 О и Т11 имена Внутр и Внеш.
Введем в таблицу внутренние и внешние граничные условия, то есть
условия вдоль поверхностей внутреннего и внешнего проводников . Для
определения ячеек, попадающих на границу,
можно начертить две
кон-
Решенuе дuф. уравненuu в частнык проuзводнык
центрические окружности, изображающие цилиндры, на миллиметровой
или разграфленной бумаге. Предполагается, что любая ячейка, которой
касается граниuа, является граничной ячейкой.
12. Введите
13.
или скопируйте формулу =Внеш в следующие ячейки:
Р9:Р12, 013, N14:N15, М16, L17, J18:K18, G19:119 и A20:F20.
Введите или скопируйте формулу =Внутр в следующие ячейЮ1:
F8, F9
и
04:08,
G4:G7,
A10:D10.
Граничное условие вдоль радиусов сектора заключается в равенстве
нулю нормальной производной. Для внесения :этого условия в таблицу
необходимо добавить дополнительный ряд ячеек вне границы и устано
вить их значения равными ближайшему внутреннему ряду ячеек. В ре
зультате на самой границе (в ячейках Н5:Р5 и
811 :819)
производная,
точнее, центральная разность, окажется равной нулю.
14.
В ячейке Н4 введите формулу =Н6 и скопируйте ее в ячейки 14:Р4.
15. В ячейке А11 введите формулу =С11 и скопируйте ее в ячейки А12:А19.
Заполним внутреннюю область между двумя цилиндрами конечно
разностными аналогами исходного дифференциального уравнения. Для
этого введем уравнение в ячейку
HS и скопируем его .во все ячейки
Н5:Р5. Затем скопируем строку из ячеек Н5:Р5 в ячейки Н6:Р7. Последо
вательно копируя ячейки целыми блоками, заполним всю область между
ячейками граничных условий.
16. В ячейке HS введите формулу =0.25*(G5+H4+15+H6).
17. Скопируйте содержимое
ячейки
HS
в следующие диапазоны ячеек:
Н5:Р5
Е10:010
В15:М15
Нб:Рб
Н7:Р7
811:011
812:012
817:К17
G8:P8
F9:09
В1З:N13
В14:М14
818:118
B19:F19
B16:L16
Для сравнения расположим вдоль верхней границы значения анали
тического решения. Поскольку для их вычисления необходимы значения
радиуса, введем их в отдельной строке сразу под таблицей.
18. В ячейках G22 и Н22 введите значения 5 и 6 соответственно; вьщели
те ячейки G22:H22 и перетащите маркер заполнения в ячейку 022.
19. В ячейке GЗ введите следующую формулу:
=(Bнeш*LN(G22/5)-Bнyтp*LN(G22/15))/LN(15/5)
и скопируйте ее в ячейки НЗ:QЗ.
::Ю.
Активизируйте панель инструментов рисования, щелкнув на
кнопке
Рисование
стандартной
панели
инструментов.
С
использованием кнопки Вид стрелки нарисуйте стрелки, как показано
на рис. 12.2.
21. Вьщелите все
стрелки с помощью мыши и клавиши <Shift>, а затем
выберите команду Формат )о- Автофигура и откройте вкладку Цвета и
линии;
уменьшите
наконечники
уменьшения дпины и толщины.
стрелок
путем
одновременного
Гnава
22. Выполните
Macintosh -
12
пересчет листа нажатием клавиш <F9> или <Ctrl+=> (на
клавиши <Cmd+=>).
После нескольких минуr работы
Excel
прекратит вычисления, и на
листе появится таблица значений искомой функции (рис. 12.2). Для по
лучения удовлетворительной сходимости может потребоваться несколько
нажатий клавиши
<F9>.
На рис .
12.3
приведено сравнение аналитиче
ского решения в ячейках GЗ : QЗ с численным решением на границе в
ячейках
Кривые на этом рисунке практически совпадают. Неко
G4:04.
торое расхождение объясняется погрешностью', внесенной путем замены
производных разностями.
При уменьшении
значения
h
погрешность
численного решения также снизится.
,....;,..,, __:_.._;. : 20 : 17: Н. 11
. .~;;_· :_' ~:t :~: :·i} :: ·:г::
:j
i:"-t: (
1
1: 1! 4: )
· _, - · ii( 17' i< 12· io"
.
- : 20 : 11: 1.4 11 8 1; 1 ' . :·
: . 28• 18· 11 t ) 11 ' , , 5 : . :
' ·~ •
: :ю: 11: 11· 1•· 12 10 • 1 s s·
, " ~пi:Ja_ jo; ;~·ч ,~; ;i; ;1·· ·· ·гг i. •.: i
• .1.7 .w.~ 7 ~-~ - ~.1 ! ..!~: Н; 12 . '1
• . ~- i
·1:
1 1• •• 1• " , t ) ' 12: "
1: ·, 1· 1 ".4:· 1:·
и'li\.')<;o. ~
!~~
--!•i
1
2:
12 12 12 11 i 11. 10 '
10 10 10 1 g : •
'
.J
1 •
Гi
..
•. •' 1
1 ,, 5
1
•
•
)
, , 2; , ,
2' 1 ! о
1: ( о
1 "Г
1. О
:, :
j , 1:· ~
2: 1· о
1: ~-
i
2: •'
1
о
о·
4· 4 3· i"
7' 1 i 5 ;. . i" 2
s & ;. 1' з ( j . i' о.
2
2
1
э
2: 1'
2
1
1
• · о·
1
о
о
о"
"
~
а:
7"{ ·o·"io- i'1t 12: 1 з 1•
•'
~(
..
1
. внrтР"":".11 " "" ". 2.0•
.!ittouнt1. .:. .. ". . ..о:
1 · ..,
'
1
>·
""'"""'"'о:- ~·......
,, ~
, 1
"
Jj; ' :
.":",
1~
:iJ ~:"'"•~·· '"" .- .
Рис. 12.2. Потенциал между двумя концентриЧескими цилиндрами : решение
двумерного эллиптического уравнения в частных производных
Решение дuф.
равненuu в частнык проuзводнык
"w_"'"'••1
...•••.. ,."...•""м.,._ _
~
1
1 +-~~---~----0~~---~~--~~-<=:::::,......_~
•
12
11
11
14
• !<>oOJ
Рис. 12.3. Сравнение аналитического и конечно-разностного решения
задачи о двух концентрических цилиндрах
После построения таблицы для решения данной задачи ее можно бы
стро модифицировать для учета других заданных потенциалов . Для этоrо
достаточно изменить значения ячеек Т10:Т1 1. Можно также добавить в
исходную конфигурацию новые проводники . Так, если необходимо рас
положить
посредине
между
цилиндрами
проводник
под
напряжением
В, просто замените разносrnое уравнение в ячейке L5 на число 25 и
пересчитайте лист. Результат показан в таблице на рис. 12.4 и графичес
25
ки на рис.
12.5.
На графике для сравнения показано аналитическое ре
шение без учета дополнительного проводника и численное решение с
проводником.
~11'"'.~"""""""·~·~~.~;·~ш.~ ..
:: ~.~:20· ;1 : iEiiI CT : .;з: , о
,Гр.у.__.___._.. 20 : 18 ' 11 17 17 17 13 •• 'i;' 3· о
' ---.:
20: 19: 18 1t
io: 1в : 1.1."!.7
·· jo:
1 u 20· 2020
1:f1~! :~ :: И И'
12 12 12 12. 11 : 10
':
,r1iij]8 5 s .. s·
~; •
!'! :
'
"
~." 3 : э
,
о
Рис.
~ ~
в
&
з
:
:
; ,
о
о
·~ ....:·
9,
: '
:?: ; :.•:1~, ~
а·
1
12.4.
о
s •·
э•
2
}
·
~. · · ·
0
'
1
~~· : ·· ·:~···;· ·:~~ ·~· ~··
4: 4· • . з: 3: 2
о,
а.
i· '
~"°'-;
s s 4'• э 2· 2 · ·; · il .
( 2' 2~
, ,, 1· 1·
о
~
s.·
~:·~;щ:~1 :~: :~ :~ · i~ :: ~. ~·~·· ·~ ,:··~ ·
:~ :~ :~ ~~ :r. :н~: :::
[tf ;: 1~. 1~
19 25• ,5: 10• в. 3
1.1..17'Ч:
1
о'
2; 1: 1
·'
1
о
о'·огiг·
1
о
о.
".
t·
· ··
Потенциал между двумя концентрическими цилиндрами с учетом
проводника, внесенного между ними , под напряжением 25 В (яч~йка LS)
llfJ
Гnава
12
26 · - - - - . - ------- - - - · ----- -----···-···----·-··-----20
10
,.
12
11
•(ао)
Рис.12.5. График решения задачи о потенциале между концентрическими
цилиндрами с дополнительным проводником под напряжением
дено аналитическое решение без проводника)
25
В (приве
Решение параболических уравнений ·в частных
производных
Линейное уравнение в частных производных второго порядка называ
ется параболическим, если ero дискриминант, то есть комбинация коэф
фициентов 02 - 4АС, равен нулю. Параболические уравнения обычно
возникают в задачах, связанных с диффузией и течением жидкости. Как
правило, такие уравнения содержат первую производную по времени и
вторую производную по пространственной координате от концентрации
какой-лнбо скалярной физической величины (плотности заряда, темпе
ратуры, концентрации химиката н т.п.). Наиболее важным из этих урав
нений является уравнение неразрывности.
Уравнение неразрЫВtiОСТИ
Уравнение неразрывности в общем виде
-
это математическая запись
закона сохранения массы, или утверждения о том, что скорость измене
ния концентрации физической величины в определенном объеме равна
скорости притока величины в объем минус скорость вытока ее из объе
ма, плюс интенсивность генерирования этой величины в объеме и минус
интенсивность ее поглощения там же. Если обозначить скорость потока
этой величины через
v,
полу1.ц1м следующее уравнение в частных произ
водных:
ди =-V·(иv)+G-A
дt
Здесь дивергентный член (первое слагаемое в правой части) описыва
ет приток и выток величины в бесконечно малом объеме, слагаемое G
описывает генерирование, а А
-
поглощение плотности.
Решенuе дuф. уравненuu в частныи проuзводныи
Уравнение неразрывности широко распространено в физике и техни
ке, являясь весьма общим для описания разного рода процессов. Движе
ние всякого вещества или физической величины, которая может пере
мещаться в отведенном объеме, описывается, в числе прочих соотноше
ний, уравнением неразрывности. Общий вид уравнения остается, как
правило, одним и тем же для всех видов физических субстанций, будь то
тепло в твердом теле или банки шпрот, движущиеся по конвейеру.
Нестацнонарнея теплопроаодность а медном стержне
Рассмотрим поток тепла
Q в твердом теле. Скорость, с которой тепло
течет в каком-либо направлении, пропорциональна отрицательному гра
диенту температуры (закон Фурье). Подставляя в уравнение неразрывно
сти вместо скорости отрицательный градиент температуры и используя
формулу дифференцирования сложной функции по времени, получим
следующее уравнение:
дQ дТ = V ·(КVT)+G-A
дТ дt
Производная от тепловой энергии по температуре равна удельной
массовой теплоемкости рС, где р
-
плотность, а С
-
удельная объемная
теплоемкость. Подставляя эту величину в уравнение, получим следую
щее:
рСдТ = V·(КVT)+G-A
дt
Если в металлическом стержне отсуrствуют тепловые источники и
стоки, приведенное уравнение сводится к одномерному нестационарному
уравнению в частных производных:
дТ
К д Т
дt
рС дх
1
2
Для решения этого уравнения перепишем производную по простран
ственной координате в виде центральной разности, а производную по
времени
тп+I
1
-
-
в виде разности вперед:
Т"
1
-'------"- =
Лt
к тп
-2Т"
r+I
1
рС
Лх
+ Т"
1-I
2
Здесь ЛХ и Лt - шаги сетки соответственно по пространству и по вре
мени. Верхний индекс (п, п+ 1) обозначает номер шага по времени. Ре
шим это уравнение относительно температуры в будущий момент време
ни
( Т,л+I):
Т"+'
,
=
Тп, + КЛt ( Тп1+1 - 2 Т", + Т",_, )
рСЛх2
EFjl
Гnава
12
Для обеспечения вычислительной устойчивости данного разностного
уравнения коэффициент при сумме температур не должен превышать
1/2:
КЛt
1
----<рСЛх2 - 2
Если этот коэффициент строго равен
1/2,
уравнение сведется к сле
дующему:
Тп+\
1
= 1-(T'i
+ Тп
)
2
1-l
1-\
Для медного стержня:
- к = 1.15 см
рС
' /с
<.
Таким образом, получаем следующее соотношение между шагом сет
ки по времени (М) и по пространству
Лх
2
(il:x):
= 2.3 lЛt
Обоснование критерия устойчивости
Приведем упрощенный вывод критерия устойчивосrn. Более строгое
и подробное доказательство можно найти в пособиях по численным ме
тодам. Итак, критерий устойчивости, заключающийся в требовании сде
лать коэффициент при слагаемых второго порядка меньше
1/2,
из следующих рассуждений.
Пусть Т численное решение разностного уравнения, И
-
вытекает
точное
аналитическое решение уравнения теплопроводности, и е = И- Т
-
погрешность решения. Разностное уравнение выглядит следующим обра
зом:
= Т'I1 + рСЛх2
КЛt ( Т"1+1 - 2 тn1 + тn1-1 )
r11+J
1.
Подставим в него Т = И
-
е и решим относительно погрешности на
будущих шагах по времени. Получим следуюшее уравнение:
e;+t = е; (1- 2r) + (е;+ 1 + е 1"_ 1 )r
Здесь
КЛt
r=---рСЛх2
Для устойчивости численного решения погрешность должна равно
мерно стремиться к нулю при стремлении к нулю шагов
ilx или М (пре-
Решенuе дuф. уравненuu в частным проuзводнын
небрегая ошибками округления). Соответственно, для этого коэффици
енты при каждом из слагаемых погрешности должны быть неотрицатель
ными. В противном случае погрешность может осциллировать, ие при
ближаясь к нулю и делая решение неустойчивым. Путем элементарной
проверки можно убедиться, что оба коэффициента будут неотрицательны
при О
< r ~ 1/2.
Если, например, шаг по пространству равен
1 см,
должен составлять 0.433 с.
Рассмотрим задачу для медного стержня длиной
то шаг по времени
10 см,
на одном кон
uе которого поддерживается температура оос, а на другом 2оос. Рассчи
таем изменение температуры в стержне со временем в электронной таб
лице.
1.
2.
Откройте новый лист и дайте ему имя Рис.
12.6.
Если автоматический пересчет листа отключен (как это было в пре
дыдущем примере), включите его, выбрав команду Сервис ~
Параметры и открыв вкладку Вычисления.
3.
4.
Выделите столбцы A:L и сделайте их ширину равной 6.
В ячейке А 1 введите заголовок Теплопроводностъ в медном стержне;
параболическое ДУЧП.
5. В ячейке СЗ введите заголовок Зависнмостъ температуры от координа
ты н времени.
Введем сетку по времени с шагом
6.
7.
8.
В ячейке
AS
0.433 с.
введите заголовок Время и выровняйте его по центру.
В ячейке А6 введите (с) и выровняйте его по центру.
В ячейке А7 введите О, а в ячейке А8
- 0.433;
выделите ячейки А7:А8
и перетащите маркер заполнения в ячейку А20.
Заполним пространственную сетку узлами, отстоящими на
1 см
друг
от друга.
9. В ячейке AS введите заголовок Координата (см).
10. В ячейке 86 введите О, а в ячейке С6 - 1; выделите ячейки 86:С6 и
перетащите маркер заполнения в ячейку L6.
Введем первое граничное условие фиксированную температуру
2оос. Наличие формулы в ячейках 88:820 позволяет легко изменять это
условие.
11. В ячейке 87
12. В ячейке 88
введите 20.
введите формулу =В7 и скопируйте ее в ячейки
Введем второе граничное условие
13. В ячейке L7
14. В ячейке L8
введите О.
веедите формулу
Введем начальное условие
времени
=L7
L9:L20.
- фиксированную температуру оос.
и скопируйте ее в ячейки
равенства температуры
нулю
L9:L20.
в момент
t=O.
15. В ячейке
С7 введите значение О и скопируйте его в ячейки
D7:K7.
Теперь введем разностное уравнение в первую ячейку расчетного диа
пазона и скопируем ее в остальные.
151&
Гnава
12
16. В
17.
ячейке С8 введите формулу =0.5*(B7+D7) и скопируйте е в ячейки
С8:К20.
Сделайте формат ячеек А 7:L20 числовым с двумя цифрами после за
пятой.
18. Обведите таблицу контуром,
как показано на рис. 12.6.
Лист таблицы после проделанных операций должен выглядеть так,
как на рис. 12.6; в таблице указаны температуры в различных точках в
различные моменты времени. Наблюдая за изменением показанных зна
чений, можно прос.iJедить поведение теплового потока в рассматривае
мом медном стержне.
it~~f;~i~·~~~щ~;1~~~·ri~чY ,~.t~Y
N
.т:~~Ш!! ".j.~-~щ1~k ,.:~:~Nнщщ~ftf~!~Л~~~;~~~~~
r,:Jf,Теnлоnроводность в медно" стерж11е; "•раболмчшое ДУЧП
.
~:
·__ х
.
'заеис~моGlЪ !еw11!р.атуры or ксоминащ и вреwе-н\1
\~....__--~---~~~~~~~~~~~~~~~~~~---.
:$\ ВР•""
(с
о,оо
3, 4З
Координата
i
О.
20.00 о,оо·
20, 00 10, 00
n,&7 20.00 10,tio
1,)0
1,73
2.17
1.бо
3.оз
з.4~
3,00
4,ЗЗ
4.ie
s.20
.~.
20, 00
20,00
20,00
20.oiJ~
20.00
20.00,
20,00
. 20,ОО:
20 оо
?о;оо'
2
(cw)
3
4
5
б
7
0.11.0. . о.оо
О, 0{)
О, 00,
0.00
0,00
0,00
0,00
s,oo
12, 50 5, 00
12,50 7,50
цi5' i,50'
ц 1s 9,о6
14,53 9,06
14.53 10.1б
15,08 10.16
is.oз 10,98
1s~4g 1
15,49: 11.&2;
11,62
o)s
о.оо
2, 50
2,50
4,38
4,38
··· ii.oo
о.оо
о.оо
i(oo
0,00
0,00
1.25
1,25
2,50
0,00
0,00
0,00
0,00
0,00
0,31
0,00
0,00
0,00
. 0,00
D.OD,
0.31
0.16
·0.16
0,43
0,43
...OJ7.
z.so
s,78
sл
;,59
б,83
З,59
О.бЗ
0,63
1,41
1.41
2,19
2.19
о,оо
ол
0,7&
4.53
1,31
4,53 .... 2,92 .. 1,31
б,83
7,r5
5)4
1. 15
о.оо
о,оо
о.оо
о.оо
с.оо
о.ос
0,00,
0,00
о.iю:
0.03
0,03
0,23
0.2з'
Ploc.12.6 •
Рис.12.6. Теплопроводность в медном стержне: решение параболического
дифференциального уравнения
Итерирование шагов по времени
Кроме последовательного вычисления таблиuы сверху вниз, значения
искомой функции на следующем шаге по времени можно выполнить
итерационным методом. В этом методе задействованы всего две строки
ячеек, связанные циклической ссылкой. В одной строке хранятся значе
ния функции с предыдущего шага, а в другой вычисляются значения на
новом шаге.
1.
2.
Решим задачу теплопроводности итерационным методом.
Откройте новый лист и присвойте ему имя Рис. 12.7.
Выберите команду Сервис ~ Параметры и
откройте BJ(Jlaдкy
Вычисления; включите режим пересчета Вручную, поставьте отметку
на
переключатель
итераций значение
Итерации
1.
и
введите
в
поле
Шелкните на кноnке ОК.
Предельное
число
Решенuе дuф. уравненuii в частнын nроuзводнын
3.
Выделите столбuы
B:L
рину столбца А равной
4.
и сделайте их ширину равной
6.
Сделайте ши
7.
В ячейке А 1 ввеD.ите заголовок Теплопроводность в медном стержне;
параболическое ДУЧП.
ВвеD.ем в таблицу флаг инициализации. Для инициализации задачи
будет использоваться значение ИСТИНА в ячейке
5.
6.
7.
84.
В ячейке А4 введите Нач.флаr.
В ячейке
84
введите ИСТИНА.
Присвойте ячейке
84
имя Нач_Фдаr.
Организуем циклическую ссылку для вычисления момента времени
текушей итерации. Формула в ячейке FЗ должна проверять параметры
инициализации и добавлять к текушему моменту шаг по времени. В
ячейке GЗ определяется время для следующего шага.
8. В
9. В
1О. В
ячейке ЕЗ введите ИСТИНА.
ячейке FЗ введИте формулу =ЕСЛИ(Нач_Флаг,О,GЗ+О.433).
ячейке GЗ введИте формулу =FЗ.
Введем в· верхней части таблицы значения координаты х.
11. В
12. В
ячейке Е5 введите Координата (см).
ячейке
86 введите О, а в ячейке С6 -
значение
1;
вьщелите ячейки
В6:С6 и перетащите маркер заполнения в ячейку Lб.
Введем начальные условия равенства температуры нулю, а также гра
=
ничные условия: температура 2оос при х =О и оос при х
10.
13. В ячейке А7 введите Нач.усл.
14. В ячейке С7 введИте значение О и скопируйте его в ячейки D7:K7.
15. В ячейке 87 введите значение 20 и скопируйте его в ячейки В8:В9.
16. В ячейке L7 введИте О и скопируйте ero в ячейки L8:l9.
Введем конечно-разностное уравнение в строке
8.
Вводимая формула
будет также проверять инициализацию процесса. Если флаг инициализа
ции равен нулю, значение функции устанавливается равным начальному
условию из строки
7.
111:1
17. В
Гnава
12
ячейке СВ введите формулу •ЕСЛИ(Нач_Флаr,С7,О.5*(В9+D9)) и ско
пируйте ее в ячейки D8:K8.
В ячейке С9 введите формулу =С8 и скопируйте ее в ячейки
18.
19. Сделайте
формат ячеек
87:L9,
D9:K9.
FЗ и GЗ числовым с двумя десятичны
ми цифрами после запятой.
Для расчета по построенной таблице установите флаг инициализации
в ячейке С4 равным ИСТИНА и нажмите клавишу
Macintosh -
клавиши
ЛОЖЬ и снова
<F9>
или
<Ctrl+=>
(на
Измените значение этого флага на
<Cmd+=>).
нажмите <F9>.
После выполненных операций на листе будут отображены результаты
расчета после первого шага по времени. При каждом нажатии клавиши
текущий момент времени получает приращение 0.433 с. Нажмите
еще 10 раз, и лист приобретет такой вид, как на рис. 12.7, соответ
ствующий расчетному моменту времени 4.76 с. Приведенные результаты
совпадают с данными из строки 18 рис. 12.6.
Одним из преимушеств описанной итерационной методики является
<F9>
<F9>
возможность выполнения любого количества шагов по времени без за
действования больших массивов ячеек. Например, если необходимо вы
числить искомую функцию после
итерационного метода (рис.
12.6)
1ООО
шагов по времени, в случае не
на это ушло бы
1000
строк таблицы,
тогда"' как результаты расчета итерационным методом не заняли бы ни
строки больше, чем при десяти итерациях.
'\iТемопроtОДНОСIЪ. WIДHOW СЩ>•<ме; napaбo.n•ЧtCIQll ДУЧП
-~
'
.
''
.
Рис.
... . Коорди.нат~
2'
о~оо·: ·о."Оо:
3
· о,оо;
15,49 \D,9&
7,75,
15,щ,
7,75~
г
щgа
!~")
4
о:оо
4,53
4,53
12.7. Теплопроводность
i5
7
o,ilo
о,оо'
о.оо
2.92
1,31
D,17
2Л
1,31
0.77
.... 5' .. .
. ~·
0,00
0,23
0.23
9
0,00
О, 12
D, 12
10
0.00;
0.00
0.00
в медном стержне; итерационный расчет
" . : Примечание
Чтобы вь1полнить
1ООО
итераций и при этом не нажимать клав~+шу
<F9>
тысячу раз, выберите команду Сервис )о> Параметры и введите в поле.
Предельное число итераций значение 1000. Щелкните на кнопке ОК,
нажмите клавишу <F9>, и лист будет автоматически пересчитан 1000 раз
или до тех пор, пока не будет достиrнуто стационарное состояние (то
есть значения в таблице nерестанvт меняться).
·
Решенuе дuф. уравненuu в частнык проuзводнык
Еще одним
преимуществом итерационной методики является воз
можность ее обобщения на случай уравнения с двумя пространственны
ми переменными. Пространственные координаты легко представить
строками и столбцами таблицы, итерируя значения по времени. Структу
ра таблицы останется аналогичной листу на рис. 12.7 за тем исключени
ем, что вместо трех показанных там строк значений потребуется три
прямоугольных массива ячеек с тем же назначением . В первом массиве
будут храниться начальные значения, во втором
ные уравнения , а в третьем
-
-
двумерные разност
значения на следующем шаге по времени .
Решение гиперболических уравнений в
частных производных
В гиперболических уравнениях дискриминант В2 - 4АС, составлен
ный из коэффициентов при старших производных, положитеЛен. Таким
образом, в уравнении присутствуют вторые производные по обе им пере
менным. Гиперболические уравнения возникают при исследовании ме
ханических .колебаний и волн, процессов переноса (например , излуче
ния), а также в задачах диффузи~ и газовой пинамики .
Волновое уравнение
По-видимому, из всех гиперболических уравнений в· частных произ
водных наиболее важным llJIЯ современной физики и техники является
волновое уравнение . Оно используется для моделирования всего подряд
от электромагнитных волн в вакууме до электронных свойств твердых
полупроводников. Это уравнение содержит вторые производные по про
странственной координате и времени с коэффициентом пропорциональ
ности между ними в виде квадрата скорости волны :
д2у = c2V2y
дt2
Здесь с
-
скорость бегущей волны. Волновым уравнением описывает
ся как электромагнитная волна в пространстве, так и волна в коЛ.еблю
щейся струне.
Волновое уравнение решается точно так же, как и уравнения из предыдущего цримера. Рассмотрим одномерную форму этого уравнения :
д2у
- 2 д2у
--
-- - с
дt2
дх2
Вначале заменим производные центральными разностями:
n+I _ 2уп
У;
;
Лt
2
+
п-1
У;
11
= с2 У;+1
-
2
11
п
У; +Ун
Лх
2
liнi
Гnава
12
Теперь решим это уравнение относительно значения искомой функ
ции в будущем времени:
п~ 1
У;
=
2 п
У.
n-1
+ Yi
+
С
2л 2
l ( п
Лх2 У;+1
-
2 п
п
У; +Ун
)
Для определения следующего значения функции необходимо знать ее
значения на двух предыдущих шагах. Это представляет некоторую про
блему только на первых двух шагах, когда у нас нет предыстории процес
са, позволяющей определить значения yf'-1. Для запуска итерационного
процесса необходимо каким-то образом найти два недостающих значе
ния. Если в качестве начальных значений заданы значение функции у и
ее производной, то для определения значения функции в момент -Лt
можно воспользоваться простой экстраполяционной формулой:
y~1-I
= у? -
Лt ду
С(
r
1
Для определения недостающего значения функции можно воспользо
ваться и другими видами начальных условий.
Колебания струны
Колебания тонкой упругой струны описываются одномерным волно
вым уравнением. Граничные условия заключаются в равеистве нулю пе
ремещений закреШiенных концов струны. Начальные условия определя
ются амШiитудой и положением точки, в которой струну дергают в нуле
вой момент времени. Предположим, струна имеет длину
нули на
0.1
см в точке, отстоящей на
20 см
70 см
и ее опя
от одного конца. В таком
случае начальные условия будут иметь следующий вид:
х
у
= о .1-
х
=0.1 7О-х
х>20
20
у
50
Для
устойчивости
< 20
разносrnой
уравнении должен быть равен
2
с Лt
схемы
коэффициент
в
разносrnом
1:
2
- =1
Лх'2
Замена этого коэффициента единицей также упрощает само разностное уравнение:
Y ?+I =
1
у?
1+1
+ уп
1-I
-y~t-1
1
Сила натяжения струны определяет скорость бегущей в ней волны.
которая в свою очередь задает сооrnошение между шагами по времени и
по пространственной координате. Например, если растяжение струны за-
Решенuе дuф. уравненuu в частнык проuзводнык
дает скорость волны равной 5xl04 см/с, шаги по времени и пространству
будут соотноситься следующим образом:
4
Лх = 5х10 Лt
Так, если шаг по пространственной координате лх составляет
10 см,
то шаг по времени Лt должен быть равен 2х 1о-4 с.
Из начальных условий известно, что в нулевой момент времени стру
ну оттянули на некоторую величину, не придавая начальной скорости.
Поэтому значение функции на первом шаге Лt должно быть равно ее
значению в момент -Лt
п-1
У;
-yn+I
-
i
Внесем это значение в разностное уравнение для первого шага:
y;+I
= (t )(Y;+I + Yi'-1 )
1
Построим таблицу для расчета колебаний струны, описываемых при
веденными соотношениями.
l.
2.
Создайте новый лист и дайте ему имя Рис. 12.8.
Включите режим автоматического пересчета листа, если он все еще
отключен после выполнения предыдущего примера.
3.
Выделите столбцы В:М н сделайте их ширину равной
столбца А сделайте равной
4.
6.
Ширину
9.
В ячейке А 1 введите заголовок Колебания струны; гвпербОЛИ'Jеское
уравнение.
5.
В ячейке С2 введите заголовок Смещение отrявуrой струны.
Введем в таблицу значения моментов времени с шагом 2х l о-4 с и
пространственные координаты узлов сетки с шагом
1О см.
6.
7.
8.
В ячейке АЗ введите заголовок Время и выровняйте его по центру.
В ячейке А4 введите надпись (с) и выровняйте ее по центру.
В ячейке А5 введите О, а в ячейке А6 - 0.0002; въшелите ячейки
9.
А5:А6 и переташите маркер заполнения в ячейку АЗ5.
Сделайте формат ячеек А5:А35 экспоненциальным с одной цифрой
после запятой.
10. В ячейке ВЗ введите заголовок fр.усл. и выровняйте его по центру.
11. В ячейке ЕЗ введите заголовок Дл:ива (см).
12. В ячейке 13 введите заголовок fр.усл. н выровняйте его по центру.
13. Введите в ячейке 84 значение О, в ячейке С4 - значение 10; въшелите
ячейки 84:С4 и перетащите маркер заполнения в ячейку
14.
Введем в таблицу начальные условия для струны, опянуrой на
в точке, отстоящей на
20
ся от указанной точки до концов струны по линейному закону.
l 4. Введите
0.1
см
см от конца. Значения перемещений изменяют
в указанных ячейках следующие значения:
85:
О
С5:
Е5:
Н5:
0.08
0.02
F5: о.Об
15: О
0.05
05: 0.1
G5: 0.04
J5: Н.усл.
Гnава
12
Введем в таблицу граничные условия вдоль ее боковых столбцов.
15. В ячейке 86 введите формулу =85 и скопируйте ее
16. В ячейке 16 введите формулу =15 и скопируйте ее в
в ячейки
ячейки
87:835.
17:135.
Введем в таблицу специальное разностное уравнение для
первого
шага, содержащее предполагаемое значение искомой функции на первом
шаге.
17. В ячейке
D6:H6.
Сб введите формулу
=0.5*(B5+D5)
и скопируйте ее в ячейки
Завершим построение таблицы, внеся в нее стандартное разностное
уравнение.
18. В
19.
ячейке С7 введите формулу
=B6+D6-C5 и скопируйте ее в ячейки
С8:НЗ5.
Сделайте формат ячеек В5:НЗ5 числовым с двумя значащими цифра
ми после запятой.
Построенная таблица должна выглядеть так, как на рис.
.,,,; ··::.lli: ·:·•• ?'~;:::шп:;;': ,;•·•;~:;'f''"~'"'''' f;i'•
;;е: Колеб~ния струны;
;~:.
~·3•,
j_.\"
5;
:11;
<
12.8 .
-чr 0: ,f::JclПC.:1:"'1''' ~·
rмntрБол1tчес~е уравнение
Смещ~ние опянvтсli. cтpyti~
Вре""
'Дл••• (с")
Гр.усл
о
(с)
О.ОЕ+ОО
2.ОЕ-04
0,00
0,00
10
<i.o5
0,05
О.Об
0,07
30
0,08
0.08
50
0,04
0.04
0,04
о о4
20
o.io
40
о.ое
4,ОЕ-114
о.оо
О.02
о.аз
о.м
0,06
б.ОЕ-04
о.оо
o'!Qj
1,ОЕ-03
0,00
-IJ,01
-0.04
-0,04
0.01
8.0E-IJ4
.(1,02
-0.02
-0,02
О,Ю
i[9!
0,00
'•а:
1'>
:м:
!~2;;
:~э·
1.2Е-ОЭ
li.oo .o.li2
1,4E.(J3
0,00
1.бЕ-03
'rt~i
t)!Ё.Оз
:,~
2.ОЕ-03
2,2Е-03
\1Qi.
.111:
2,4Е-ОЗ
i!I.''
iЗЕ-ОЗ
~;
З,ОЁ.ОЗ
~'
З,2Е.QЗ
~!К
2.бЕ-03
~·
~!
З,4Е·1JЭ
3,бЕ-1JЗ
J,8E.UЗ
~i
~i
O,OD
-0,О?
,0.02
o.rio
.Q,02
0.00
0,00
-IJ,02
0,02
0,05
o;oiJ .o:oi
0,00
о:оо
о:оо
о:оо
0.00
0.00
о.со
О.05
o:as
0.02
-0,02
-IJ.02
.(),02
..
о н усл
о
о
..
-0.01. 0,01
./.) 05 .Q,03
-<!,О~
.о.о:г -О.Об .о:оа -0,07
-IJ,04 ·О.06 -0,08 -IJ,1 о
-IJ,04 -0,Об .Q,08 .Q,07
-0,04 ,о,об, -0,05 -0.ОЭ
0,01
-0.04 ·0,03 .iJ;lii
о.оз
0,04
0,00 0.01
0,03 0,05 О.Об 0,04
0,01 о.оз о.об 0,04
0,10 0,08 О.Об 0,04
0:01 а.оа: о.ое : 0,04
б,\JЗ 0,05
0,06 0,04
0,0!
0,04
о.оо
о.оэ
.{),04 -0.ОЗ .(J,01
0,01
-0,04 .{),06 .(J,05 -0,QЗ
-0.ОЗ
о
о
о
о
о
о
о
о
iJ
о
о
о
о
о
о
о
о
4,ОЕ-03
'>li'"•... " liio!:
Рис.
12.8.
Колебания струны: решение гиперболического уравнения в
частных производных
Если проследить изменения в положении струны, можно заметить,
что она колеблется с периодом 2.8х10-з с, или частотой
357
Гu. Анали
тическое выражение для частоты колебаний дает тот же результат:
f
= .!.._ = 5 х 10
21
Здесь f -
4
см/ с= 357 Гц
2·70см
частота, а
/-
длина струны.
Решенuе дuф. уравненuu в частнь1н nроuзводныи
Резюме
В этой главе, последней в нашей книге , мы рассмотрели решение с
помощью электронных таблиц многомерных дифференциальных уравне
ний в частных проиЗводных, содержащих зависимость от времени. Уди
вительно , однако решение уравнений в частных производных на листе
электронной таблицы
нередко оказывается более легким делом, чем
большинства других задач из этой книги . Методы, описанные в этой гла
ве , основаны на явных конечно-разностных соотнршениях. Явные мето
ды позволяют определить значение искомой функции в будущий момент
времени по их явным выражениям чере:J пр~дыдущие значения.
Конечно-разностные уравнения можно записать и в неявном виде. В
этом случае значени е функции в некоторый момент будет зависеть от ее
значения как в п рошлом, так и в будущем . Таким образом, разностные
уравнения образуют систему л инейных алгебраических уравнений, кото
рую необходимо решать матричными методами. В этом неявные методы
оказываются значительtrо сложнее в численной реализации, чем явные.
После успешной проработки большинства примеров из этой книги у
вас
должно поя виться
помощью
Excel
ясное
представление
о том,
что
можно делать с
или любого другого аппарата электронных таблиц с ите
рациями. Желаем вам успеха в решении ваших собственных научных или
инженерных проблем.
Дополнительная литература
Численные методы решения уравнений в частных
производных
C.Gerald, App/ied Numerical Analysis, 2nd ed. (Readiпg, Mass.: AddisonWesley, 1978).
W.H.Press, B.P.Fla.1111ery, S.A.Teukolsky, W.ТYetterJjпg , Numerica/
Recipes; The Art of Scientific Computing (Cambridge, UK: Cambridge University
Press, 1986).
Бахвалов Н . С., Жидков Н.П. , Кобельков Г.М. Численные методы. М.:
Наука,
1987, 600
с.
Самарский А.А., Гулин А.В. Численн ые методы. М.: Наука,
1989, 430
с.
Общая теория уравнений в частнь1х производных
H.F.Weiвberger, А First Course
PuЫishiпg Со. , 1965).
in Partia/ Dijferential Equations (New York:
Blaisdell
Годунов С.К.
416
Уравнения математической физшси.
М.:
Н аука,
1971,
с.
Михлин С.Г. Линейные уравнения в частных производных. М. : Высшая
школа,
1977, 431
с.
"''
rnaвa
12
Обзорные задачи
1.
Классифицировать следующие дифференuиальные уравнения по типу
{эллиптический, параболический или гиперболический):
д2и
2 д2и
ди О
-=
дх
--+ t--+x
Ь.
-+-+xt-=0
с.
x-+-+u:;:O
d.
t-+5--+x
-+
-=0
2
1
е.
xt--+--+u=
О
2
дt
2
дх
2
2.
2
а.
2
2
д и
д и
ди
дtl
дхl
дх
д2и
д2и
дt2
дх2
д2и
д2и
дt
дхдt
д 2и
д2и
дt
дхдt
2
д1и
ди
дх
дх
Решить уравнение Лапласа в области между двумя бесконечными па
раллельнь~ми пластинами, отстоящими на расстояние 10 см. На верх
нюю пластину с координатой х
1О подается напряжение 200 В, а
нижняя с координатой х =О заземлена (О В).
=
3.
Решить задачу
2
при условии, 'ПО между пластинами проходит про
водник под напряжением
4.
50 В
с координатой х =
6 см .
Для расчета потенциала, создаваемого в некотором объеме приложен
ным напряжением и распределенными зарядами, используется урав
нение Пуассона:
V2<p
=- q р
Е
Здесь q - заряд электрона (l.бxl0-19 Кл), р - плотность заряда, а & удельная электропроводность вакуума (8.85xlO-I4 Ф/см). Решить уравне
ние Пуассона оrносительно <р в области между двумя бесконечно протя
женными параллельными пластинами, как в задаче
2.
Учесть наличие в
нижней половине объема между пластинами распределенного заряда с
постоянной отриuательной плотностью р
= -1О-7 см-3,
ней
с
половине
плоrnостью р
5.
распределенного
= 1os см-3.
заряда
и наличие в верх
постоянной
положительной
Генерирование заряженных частиu в кремнин под воздействием света
описывается следующим уравнением:
дп
( п - по )
дt
т"
-=-
д2п
+D2
дх
Решенuе дuф. уравненuu в частнын проuзводныи
Здесь п0 - равновесная плотность носителей заряда (1 О15 см-3), to среднее время жизни, а D - коэффиuиент диффузии (100 см3/с). На
чальная плотность носителей заряда в
1О-сантиметровом
кремниевом
стержне, освещаемом с одного конuа, составляет 1011 см-3 при
О< х < 0.03 см и 1015 см-3 при 0.03 < х < 0.1 см. На конuах стержня про
изводная от плотности носителей заряда (плотность тока) равна нулю.
Рассчитать спад плотности носителей заряда в течение первых
5
милли
секунд после отключения света.
6.
Термодиффузия примесей в кремнии описывается уравнением Фика:
дС - Dд2С
дt дх 2
Здесь С - конuентрация примеси. При температуре 1200 К бор диф
фундирует в кремний со скоростью D = 8х 10-11 см2/с. Определить плот
ность примеси в первых 1О микронах кремния после того, как в течение
1 часа на поверхности полдерживалась конuентрация С5 = 1019 см-3.
Сравните результат с аналитическим решением (erfc - дополнительная
функuия ошибок):
C(x,t); C,erfcCГnt)
7.
Выполните пример с колебаниями струны, задав в качестве началь
ных условий
О
< х :s; 20 см;
принудительное
у(х) = О при х
разрывное смещение:
> 20 см.
у(х) =
0.5
при
Заданный начальный импульс
будет распространяться по струне и отражаться от ее концов.
8.
Рещить уравнение Бюргера для Т =
5
и п = О. 1, используя явный ме
тод конечных разностей. Попробуйте также решить его для значений
п между 10-2 и 10-4. Для достижения вычислительной устойчивости в
этой
области необходимо применить
метод «предиктор-корректор»
(модифиuированный метод Эйлера).
ди
ди
2
д и
-+u-=u2
дt
дх
дх
9.
O<x<I
O<t<T
Решить следующее дифференuиальное
волны сжатия в газах, в котором
r -
уравнение
распространения
отнощение теплоемкостей при
постоянной плотности и давлении (для воздуха составляет
плотность, а и
-
ди
ди
дt
дх
у-2 др
о
-=
-+и-+р
скорость:
дх
др
ди
др
-+р-+и-==0
дt
дх
дх
7/5),
р
-
,,,,
Гnава
Трубка длиной
1О
12
см содержит в первых двух сантиметрах сжатый
воздух {р = 0.0012 r/смЗ), а далее - вакуум. При t = О открывают клапан
и позволяют воздуху свободно заполнять оставшуюся часть трубки. Рас
считать изменение плотности воздуха в трубке в процессе
ero
движения.
Для этоrо на каждом шаrе придется одновременно решать два уравнения.
10. Найти решение следующего уравнения на интервале от t =О до 2:
д2и
д2и
дt2
дх2
----- =
ех
и(х,О)=и' (х,О)=и' (O,t)=u( l ,t)=O
11. Найти
1
решение
< х < 1,
-1
следующего
< у < 1.
~· д2и
-+-=х
дх2
ду2
2
уравнения
в
квадратной
области
-
На границе значение искомой функuии равно
+у
2
-l < x<l
-l <y< l
Упражнения
1.
В каких дИапазонах изменения х и у приведенное ниже уравнение яв
ляется эллиптическим , параболическим или гиперболическим?
д2и
д2и
д2и
дх2
дхду
ду2
(2х - у)-+(х+ у)-+(2у-3х)- =О
2.
Решить уравнение Лапласа в цилиндрических координатах для на
пряжения в металлической сфере дИаметром 10 см, в которой на сфе
ре дИаметром 1 см поддерживается напряжение 25 В, а поверхность
заземлена (О В). Уравнение Лапласа в цилиндрических коордИНатах
выrлЯдИт следующим образом:
V 2 ф == - 12 -°-(r дф) +
1
2
r дr
дr
82
д (siпCe) дф) +
r 2 siп 2 се) де
ае
1"
2
2
Ф2 =О
siп се) д<р
Обратите внимание, что вследствие сферической симметрии все про
изводные
по
угловым
коордИнатам
равны
нулю,
а
не
равна
нулю
только радиальная производная.
3.
Определить потенциал в полупроводниковом спае, моделируемом че
тырьмя слоями кремния с различными плотностями зарЯда. В сле
дующей таблице приведена толщина и плотность заряда каждого слоя.
Слой
Толщина, мк
Плотность заряда, см-3
1
2
2
0.1
1
2
о
з
4
-101в
1015
о
Решенuе дuф. уравненuu в частнын проuзводнын
Спай имеет длину 5 микрон; к нему между внешней стороной слоя 1
и внешней стороной слоя 4 приложена разность потенциалов 0.85 В.
Рассчитать потенциал внутри устройства на основании уравнения Пу
ассона.
&
4.
Диэлектрическая
= l.04xlo-10
постоянная
для
кремния
составляет
Ф/м.
Определить модуль и направление вектора напряженности электриче
ского поля из упражнения
3
(напряженность электрического поля
-
векторная величина, поэтому она имеет абсолютную величину и на
правление).
Е=-Vф
5.
Решить следующее уравнение в области О< х < 1, О< у<
ными условиями = О при х = О и = О при у = О.
z
z
1
с гранич
2 8z+Здz=l
дх
6.
ду
Химическая реакция следующего вида:
А+В+
D--)> Е
фактически протекает в два этапа:
А+В--)>С
C+D~E
Скорость
каждой
из
реакции
пропорциональна
концентрациям
nx
реаrируюших веществ; реакции могут протекать в обоих направлениях.
дпс
-.-=kАвпАпв
А+В~С
дt
дп" = апв =k п
дt
дt
С~А +В
се
C+D~E
E~C+D
Определить концентрации всех участвующих в реакции веществ в те
чение времени, за которое в среде установится равновесие, при за
данных кинетических коэффициентах реакuий и начальных концен
трациях:
kАВ= 4
kc= 2
kcD= 1
kE= 2
пл= 2
nв= 1
пс= О
flE=
0
rnaвa
llf:J
7.
12
Решить телеграфное уравнение, которое возникает при рассмотрении
передачи
электрических импульсов
по
проводам
с
распределенным
сопротивлением, емкостью и индуКТИвностью:
д2и
-
дt
2
ди
2д2и
.
+2а-+Ьи-с - 2
дt
дх
и( О, t)
и( 7t , t)
=
=
О ~х~ р,
=0,
t>O
О
и(х,О) =О
ди(х,0)
= g(x)
дt
Определить и на промежутке от
t=O
до
4
при g(x)=siп(x) , а=2, Ь= l и
с=2.
8.
Решить следующее уравнение
2
2
2
д z
д z
д Z
дх2
дхду
ду2
-+2--8-=~2х+Зу
в прямоугольной области
5
на
5 см
со следующими граничными усло
виями:
z(O,y) = -
2~0 (Зу)~2
1
z(5,y) = ---(10 + 3у) 512
210
1
z(x,0) = - 210 (2x)s12
1
z(x,5) = --(2х + 15) 512
210
9.
Двумерное волновое уравнение описывает малые колебания гибкой
мембраны, например, поверхности барабана. Волновое уравнение в
полярных координатах выглядит следуюшим образом:
д 2и
2
дt
[1 д ( ди) 1д и]
= с -;. дr r дr + ;т d0
2
2
2
Здесь и(r, О, f) - вертикальное смешение мембраны в момент времени
f. Для случая осесимметричных колебаний круглой мембраны произ
водными по fJ пренебрегают, оставляя только радиальные производ
ные:
Решение дuф. уравненuu в частнык проuэводнын
~;~=с'[;:, (r :~)]
Рассчитать несколько первых колебаний мембраны диаметром
на основе этоrо волнового уравнения.
с= 5xl04 см/с.
Граничное условие
1О см
Скорость волны составляе1
заключается в равенстве нулю
смещений мембраны на закрепленных краях:
u(5,t)=O
Начальное условие состоит в том, что в момент времени
мембраны приподнят на
3
t=
О центр
мм:
и(О,О)=О.3 см
Для получения начального условия в остальных точках сделайте про
изводную по времени в волновом уравнении равной нулю и решите
оставшееся уравнение с начальным и граничным условиями исходной
задачи в качестве граничных условий:
~(rди) =О
дr
дr
Используйте результат как начальное условие для решения исходного
волнового уравнения.
10. Применяя
волновое уравнение к расчету колебаний прямоугольной
стенки металлического ящика, следует рассматривать
ero
в двумерных
декартовых координатах. Оно выглядит следуюшим образом:
a2u
дt2
= с2 (д2и + д2иJ
дх2
Здесь и(х, у,
f) -
ау2
смещение стенки. Граничное условие
-
закрепление
стенки по сторонам ящика:
о
s: х s: 10
Os:ys:5
и(О,У,О)=и( l 0,у,О)=и(х,0,О)=и(х,5 ,О)=О
Начальное условие заключается в том, что точка (2.5, 2.5) в началь
ный момент времени опущена на 0.1 см. Для определения остальных
начальных условий сделайте производную по времени равной нулю и
решите получившееся уравнение с исходными граничными условиями
и одной фиксированной точкой:
au au
-+-=О
2
2
ах2
ду2
Получившийся результат используйте как начальное условие для вол
нового уравнения_ Скорость звука в стали составляет 5х 1оз см/с.
Приложение А
Проrраммы для ученых и
инженеров 2 доnопняющие
Excel
Сушествует несколько зимечательных программ для ученых и инже
неров, которые дополняют nозможности
няющих
Excel
Excel. H;:i
с;:~мом деле допол
программ гораздо больше, однако я считаю, что рассмат
риваемые ниже лрограммы особенно полезны для ученых и инженеров.
DeltaGraph Pro 4.0
Excel
предоставляет широкие возможности по построению графиков,
однако .пля
инженерных и
научных исследований
этого
недостаточно.
Для этих целей лучше использовать программу DeltaGraph Pro 4.0; пред
ставляющую собой пакет для построения графиков с расширенными, по
сравнению со стандартными средствами
Excel,
графическими возможно
стями. Например, на рис. А.1 представлен график, который приведен в
главе 3 на рис. 3.7. Этот рисунок вполне пригоден для лабораторного
дневника, однако, если вы захотите поместить этот график в статью для
солидного научного журнала, то вам придется его либо скопировать в
графическое приложение и подправить вручную, либо воспользоваться
программой типа
DeltaGrap\1 Pro.
Рис. А.1. График удельного сопротивления кремния, построенный в
Чтобы построить график в
данные из листа
Excel,
DeltaGrapl1 Pro,
Excel
нужно просто скопировать
вставить их в лист данных
DeltaGrap\1 Pro,
вы
брать соответствуюший тип графика и создать его. Добавив несколько
надписей и выбрав формат меток осей, вы получите требуемый график,
пример которого приведен на рис. А.2.
Программы дnя ученыи
u
uнженеров, доnоnняющuе Енсеl
Соnротивмние itpeМНIU't
1.QOE:+
з~--~'--------''----~-
9. о о" 2 _.__._____._
_,____.____._
_,____.____.__
_,__
1-'1
!' 8 00 Е • 2 4--1--i--l-~.$:~:::::i'":,.,_.j___j_--Г-"---+--~---::-:---'\
t
:V
'!
...._
e, l .00 Е • 2 +--+---+.Jl-°-./,..q.-~-+--"'-\--i--J
16
Е +---+-_)vo-'9~-t--+--,.'\'....,--+""_.,,·\-t--t
.VO • 2
• 5.ООЕ• 2,
_.. ·
·# .
1.ех10" (е<114)
1-5Х10 1 1 (i;.j~
,....._ 1,l/X1ot~;(.;j.;!),
\.
. -~~~: ~ ··--+----+-+--1----+-~-+-\.""',,~-+-~
[:
,З
·
..
1. ООЕ • 1 +---+----+-+---+---+-+--+---+_
1 .00 Е• 2 Т---.t..---t....----:.±,..::::.",-;,='Jlo-
_...___..
".....,!=='*"°",-,~-4
1_
О ООЕ •О +--+---+-+--+---+-+--1--+~+--Ч
зоо з20 на зsо
эео
400 420
но •6О ~во
500
Рис. А.2. График удельного сопротивления кремния, построенный в Delta-
Graph Pro
Из рис. А.2 видно, что графики, созданные в DeltaGraph Pro, выгля
дят значительно лучше, чем графики, созданные с помощью Excel. Их
можно отправить практически в любой современный журнал, поскольку
с помощью
DeltaGraph Pro
можно представить '!исла в стандартном на
учном формате, а не в компьютерном экспоненциальном, в метках ис
пользуются верхние индексы, а графики выглядят профессиональнее.
Однако
DeltaGraph
Рго не только обеспечивает приемлемое для пуб
ликации качество графиков.
около
60
Она предоставляет в ваше распоряжение
различных типов диаграмм, а также возможности подготовки
слайдов и создания презентаций. К числу возможных типов относятся
графики в полярных координатах, радарные графики, пузырьковые диа
граммы. контурные диаграммы, цветные контурные rрафики, векторные
rрафики, объе.~шые каркасные модели, гладкие и линейчатые поверхно
сти. На рис. А.3 представлены примеры диаграмм, подготовленные с по
мощью новой
DeltaGraph Pro 4.5 -
новой версии системы.
Рис. А.З. Примеры диаграмм. созданные с помощью
Программа
De1taGraph Pro 4.5
DeltaGrapho Pro распространяется компанией американ
SPSS (http://www.spss.com). В странах СНГ продукты
ской компанией
·~+J
Прuаонсенuе Н
компании можно приобрести в московском представительстве, обратив
шись по адресу:
Российская Федерация,
117259, МОСIСВЗ,
ул. Кржижаноескоrо,
24135,
5, kОМН. 406
тел. 095 125-0069, 125-8088. ф. 719-0261
корп.
комnания SPSS
Менеджер no маркетинrу Антон Ковтун
anton@spss.msk.ru '
Стоимость DeltaGraph Pro 4.0 для Windows составляет $295, а DeltaGraph Pro 4.5 для Macintosh - $299 (обновление версии 4.0 - $149).
Пробную версию DeltaGraph Pro 4.0 для WiшJows (полнофункциональная
версия, работоспособность которой сохраняется в течение 30 дней) мож
но получить по адресам:
ftp://ftp.spss.com/puЬ/weЫdeltagraphlwlndows/DG4ТV.ZIP
http://www.spss.com/software/deltagraph
http://www.junlor.ukmet.net/Ьonus./Ьonus_Jr.htm
MathType
Программа MathType не является приложением для Excel, но пред
ставляет собой хорошее средство для построения формул. Пользователям
Microsoft Office эта программа должна быть хорошо знакома, так как
компания Microsoft, как и многие другие, лицензировала у компании
Design Science упрошенную версию этой программы и включила ее в со
став Office под названием Equation Editor. Формулы, созданные с помо
щью MathType, можно вставлять в рабочий лист для иллюстрации вы
полняемых вычислений. Заметим, что все уравнения, представленные в
этой книге, были созданы с испWIЪЗОванием MathType.
Уравнения в MathType задаются с использованием панели инструмен
тов символов .и шаблонов. Шаблоны для таких элементов, как скобки и
дроби, автоматически изменяют размер в зависимости от содержащихся в
них символов.
Программа MathType разработана компанией Design Scjence (Лонг
Бич, шт. Калифорния, http://www.mathtype.com). Полную версию этой
программы для Windows и Macintosh, обладаюшей целым рядом возмож
ностей, необходимых при подготовке научных статей (например, экспорт
форму11 в формат ТеХ), можно приобресm: за $199. ПWIЪЗОватеJiи про
rрамм, в которые ·входит Equatjon Editor, таких как Microsoft Office,
DeltaGraph Pro и многих других (пОJIНЬIЙ список можно найти иа WеЬ
узле компании), мoryr приобрести проrрамму за
$89.
Программы дru1 ученыи
Microsoft Access
Хотя
u
и
uнасенеро~. допоnНJ1Ощuе Еисеl
Visual Basic
Visual Basic for Applications и
утилита
Query
позволяют работать с
базами данных, для этой цели гораздо легче использовать специализиро
ванные программы обработки баз данных типа
Access.
В ней структура
базы данных и запросы изображаются с использованием визуального ин
терфейса, а не создаются с использованием команд или операторов
SQL.
Vtsual Basic, Enterprise Edition является предшественником языка
программирования Visual Basic for Applications. Visual Basic - это полный
отдельный язык программирования, который также поддерживает объек
ты Visual Basic for Applicatioпs. Visual Basic является rораздо более rиб~м
и обладает большими возможностями, чем Visual Basic for Applications,
ВЮIЮчая компилятор, отдельные окна (а не только диалоговые) и гораздо
больше кнопок и управляющих элементов.
Если вы приобрели версию Microsoft Office Pro, то в ее состав входит
и Microsoft Access. В противном случае ее·можно купить отдельно. Вер
сий Access и Visual Basic для Платформы Macintosh не существует.
Подроонее об использовании Visual Basic и Access можно узнать из
книги "Базы данных в Access, Excel и Word 2000 на примерах" издательства
"Юниор"
·
Припожение В
Исnоnьзование отде11ьно
распространяемой дискеты
На отдельно распространяемой дискете содержатся все рассмотрен
ные в тексте книги примеры и решения всех задач, приведенных в конце
каждой главы в формате русифицированной версии
ExceJ 97,
а также
примеры в формате английской версии ExceJ 7. Решения задач в формате
английской версии ExceJ 7, а все остальные файлы, находящиеся на дис
кете можно найти в разделе Бонус WеЬ-узла издательства "Юниор" по
адресу http:/lwwW.Junlor.ukmet.net (суммарный объем файлов для руси
фицированной версии ExceJ 97 и английской версии ExceJ 7 превышает
объем дискеты, поэтому файлы с решениями задач в формате ExceJ 7
можно найти по указанному выше адресу Web).
Примеры и решения задач расположены в рабочих книгах по каждой
главе.
Файлы архивов называются:
0099RUEX:ZIP, 0099RURP.ZIP,
0099RURM.ZIP (файлы для русифицированной версии ExceJ 97) и
0099ENEX.ZIP, 0099ENRP.ZIP, 0099ENRM.ZIP (файлы для английской
версии ExceJ 7).
В файлах 0099RUEX.ZIP и
0099ENEX.ZIP содержатся все примеры,
рассмотренные в главах этой книги (каждой главе соо'rветствует своя ра
бочая книга); а также дополнительные файлы, необходимые для работы с
этими примерами. В них также находятся файлы
YtsuaJ
С++, необходи
мъ1е для работы с примерами из приложения Г. В файлах
и
0099ENRP.ZIP
0099RURP.ZIP
содержатся рабочие книги с решениями задач (для каж
дой главы своя рабочая книга). Подробное описание содержимого фай
лов находится в файлах
0099RURM.ZIP
или
0099ENRM.ZIP,
соответствен
но (файлы README.ТXT).
Для некоторых рабочих листов может понадобиться изменить пара
метры производимых в приложении вычислений (в зависимости от вы
бранного примера). Параметры вычислений относятся ко всей рабочей
книге в це.r~ом, а не к отделънь1м ее рабочим листам. В большинстве слу
чаев необходимые изменения сводвтся к переключению между режимами
Автоматически и Вручную, установке и сбросу флажка Итерации и изме
нении значения в строке Предельное число итераций. Все эти параметры
можно изменить на вкладке Вычисления с использованием команды Сер
. вис> Параметры.
Припожение В
Функции дnв ученых и инженеров,
вкпаоченные в Excel
Приложения
Excel
содержат. много полезных функций для ученых и
инженеров. Некоторые из них являются встрq_енными, а другие состав
ляют часть надстройки Пакет Анализа. В Пакет Анализа данных включе
ны версии функций дпя электронных: таблиц, написанные на Visual
Basic, и несколько специальных дополнительных программ анализа. Все
функции и надстройки, включенные в Ex:cel, перечислены в главе 1. В
этом приложении мы более подробно остановимся на использовании
надстроек и функций для ученых и инженеров.
Надстройка Пакет Анализа для
Надстройка Пакет АналИ3а содержит
19
Excel
программ для углубленного
статистического анализа.
Программы дисперсионноrо анализа
В надстройку Пакет Анализа входит три программы дисперсионного
анализа: однофакт0рный дисперсионный анализ, двухфакторный диспер
сионный анализ без повторения и двухфакторный диспереионный анализ
с повторениями. В техническом смысле дисперсионный анализ представ
ляет..- собой статистический метод проверки гипотезы о сходстве средних:
значений двух или более выборок, принадлежащих одной и той же гене
ральной совокупности (или популяции).
'81>
Примечание
В статистике лолуляцией назыаается набор всех возможных значений не
которого процесса или измерения . Измерение некоторой переменной или
пое..nставляет собой экземnляо nолvляции.
,
Программы дисперсионного анализа используются в основном для
проверки принадлежности нескольких выборок данных одной и той же
популяции ,
то
есть для
определения того, можно ли
рассматривать
их
как измерения одной и той же величины. Например, предположим , что
поле заражено некоторым химическим веществом, и вы хотите удостове
риться , что уровень зараженности не изменяется . Поскольку все поле
(популяцию) невозможно ежемесячно приносить в лабораторию для из
мерения общего уровня заражения, то можно брать несколько образцов
lfM
поLIВы со случайно выбранных участков поля, анализировать их и усред
нять результаты. Несколько месяцев спустя может возникнуть вопрос:
чем вызвано различие ежемесячно вычисляемь•х средних значений? Яв
ляется ли оно следствием изменения УРовНя заражения или просто объ
ясняется статистической природой измерений. Чтобы ответить на этот
вопрос, нужно выполнить дисперсионный анализ. Если анализ покажет,
что выборки принадлежат одной и той же популяции, значит, уровень
заражения не изменился. Если же результаты анализа свядетельствуют о
том, что выборки принадлежат различным популяциям, значит, уровень
заражения изменяется.
Еще одним примером использования программ днсперсионного ана
лиза является проверка адекваrnости усредненных значений или
при
ближений (первой выборки данных) реальному множеству данных (вrо
рой выборке данных} . Если анализ показывает, что приближенные зна
чения принадлежат той же популяции, что и сами данные, значит, при
ближение является достаточно хорошим.
Проверка производится путем вычисления нескольких статисrnческих
характеристик данных.
Однофакторный дисперсионный анализ выполняется по нескольким
столбцам (или строкам) данных рабочего листа. Двухфакторный диспер
сионный анализ вып олняется как по столбцам, тах и по строкам. При
двухфахторном дисперсионном анализе с повторениями каждая точка
выборки используется по несколько раз (то есть для каждой точки вы
борки имеется щсколько измерений). В терминах рассмотренного при
мера повторения необходимы в том случае, если с каждого случайно вы
бранного участка каждый месяц берется по несколько образцов почвы.
Корраляционный анализ
При корреляционном анализе произвQ!lится сравнение двух множеств
данных с
целью определения. имеют ли их поверхности одну и ту же
форму. Корреляционный анализ используется для количественной оцен
ки взаимосвязи двух наборов данных, представленных в безразмерном
виде. Корреляционный анализ дает возможность установить , ассоцииро
ваны ли наборы данных по величине, то есть, большие значения из од
ного набора данных связаны с _большими значениями другого набора
(положи~ьная корреляция), или, наоборот, малые значения одного на
бора связаны с большими значениями другого (отрица~ьная корреля
ция), или данные двух диапазонов никак не связаны (корреляция близка
к нулю).
Ковариационный анализ
Ковариационный ан.ализ также используется для выявления зависи
мости между двумя множествами данных. Коэффициент корреляции вы-
Функцuu дnя ученын
u
uнисенеров, вкnюченнь1е в Еисеl
борки представляет собой ковариацию двух наборов данных, деленную
на произведеиие их стандартных отклонений.
Описательная статистика
Надстройка описательной стаrnстики позволяет вычислять несколько
различных стаrnстичес.ких характеристик для данных из выборки. К чис
лу
стаrnстических
характерисmк
относятся:
среднее
зиачение,
мода,
среднее отклоиение, дисперсия и т.д.
Эксnоненциальное сrлаживание
Экспоненциальное сглаживание
-
это метод аппроксимации множе
ства данных экспоиенциальной кривой с целью использования этой кри
вой для экстраполяции последуюUUIХ значений.
Даухаыборочный F-тест
Подобно тому, как прсграммы днсперсионного анализа предназначе
ны для сравнеиия средних значений выборск, F-тест применяется для
сравнеиия дисперсий двух выборок с целью проверки их принадлежно
сти одной и той же генеральной совокупности. В отличие от среднего
значения популяции, дисперсия является мерсй разброса данных относи
тельно среднего значения. F-тесты обсуждаются в главе
6.
Анализ Фурье
Анализ Фурье - это метод аппроксимации множества данных суммой
триrономе'lричес.ких функций (синусов и косинусов). Анализ Фурье со
стоит в вычислении коэффициеитов, на которые умножаются значения
синусов и косинусов до суммирования. Таким образом, коэффициенты
Фурье определяют вклад конJсре111ых частот колебаний во множество
данных. Анализ Фурье наиболее полезен при исследовании данных, под
верrающихся
периодическим изменениям,
поскольку позволяет опреде
лить осиовные частоты колебаний. Например, функция уровня освещен
иости Земли будет содержать высокие коэффициеиты при тригонометри
ческих функциях с периодами 24 часа и 12 месяцев.
Гистоrраммы
Средство Гистограмма используется для получения данных для по
строения гистограмм. Гистограмма отображает количество элементов на
бора данных, прииимающих зиачеиия из определенных днапазоиов.
Средство Гистограмма анализирует множество значений данных, вычис
ляет и возвращает количество значений, находящихся в каждом диапазо-
Прunоженuе В
1&i;J
не. Например, оптический спектр почти всегда представляют в виде гис
тограммы количества фотонов для каждого уровня энергии.
Скользящее среднее
Скользящее среднее
-
это метод сглаживания данных пуrем усредне
ния нескольких последовательных значений.. Значение функции в каж
дой точке заменяется средним значением для точек из некоторой ее ок
рестности .
Генерация случайных чисел
Процедура генерации случайных чисел позволяет извлекать наборы
случайных чисел с заданным распределением, в <ЛЛИЧие от стандартной
функции получения равномерно распределенных случайных чисел. Слу- ·
чайные числа с заданным распределением верояrnостей используются
для моделирования физических процессов. Например, энергия ф<Лонов
ионизированного газа имеет нормальное (Гауссово) распределение.
Ранг и персентиль
Это средство вычисляет порядковый и проценrnый ранги для каждого
значения в наборе . данных. Эти значения отражают место конкреrnоrо
элемента данных относительно остальных элементов набора данных.
Регрессия
Линейный регрессионный анализ заключается в подборе графика для
набора наблюдений с помощью метода наименьших квадратов. Регресси
онные методы описаны в главе 6.
Выборка
Средство Выборка извлекает случайную выборку из генеральной сово
купности.
Т-тест
В надстройке Пакет Анализа содержатся три t-теста. Т-тесты пред
ставляют собой статистические методы для определения статистической
эквивалентности двух величин. При сравнении статистических данных
два
различных
числа
мoryr
оказаться
статистически
эквивалентными.
Например, средние значения двух выборок вряд ли окажуrся идентич
ными, даже если эти выборки взяты из одной и той же популяции. Раз
личие объясняется отклоиением данных от среднего значения. Если раз
личие средних значений можно полностью объяснить случайным откло-
Функ.цuu доя учень~н
u
uнженеров, вк.оюченнь~е в Енсеl
нением данных, то с некоторой долей достоверности можно утверждать,
что средние значения совпадают. В Т-тесте вычисляется распределение
Стьюдента и сравнивается с табличным значением этого распределения.
Таблица распределений Стьюдента вычисляется с
помощью функции
СТЬЮДРАСП{}. Т-тесты Стьюдента обсуждаются в главе
6.
Парный даухаыборочный t·тест для средних
Тест для двух выборок, в котором каждому элементу из одной выбор
ки сопоставляется элемент из второй выборки. Тест служит для проверки
гипотезы о различии средних для двух выборок.
Даухвыборочный t·тест с одинакоаыми дисперсиями
Тест для двух выборок, в котором предполагается совпадение диспер
сий. Тест служит для проверки гипотезы о равенстве средних для двух
выборок.
Двухвыборочный t-тест с разными дисперсиями
Тест для двух выборок, в котором предполагается несовпадение дис
персий. Тест служит для проверки гипотезы о равенстве средних для двух
вЬ1борок.
'
Z·тест
Z-тест используется для проверки гипотезы о различии средних для
двух популяций. Если t-тесты используются преимущественно для про
верки гипотезы о равенстве средних двух выборок, то z-тесг применяется
для выявления различия средних.
Специальные функции
Специальные функции используются для получения решений диффе
ренциальных и интегральных уравнений, имеющих особое значение в
науке и технике.
Специальные
функции
. позволяют
решить
большое
множество научных и технических задач.
Функции Бесселя
Сушествует чеТЪiре варианта функций Бесселя. Эти функции предос
тавляют решения уравнения Бесселя, к которому часто сводится решение
волновых уравнений. Четыре функции Бесселя дают решение четырех
вариантов уравнения Бесселя.
БЕССЕЛЬ.J()
Вычисляет решение
ln(x} уравнения
Бесселя.
'®'
Прuаоисенu·е В
d2
d
2
х --1:.+х2-+(х
-n 2)y =О
2
dx
dx
2
БЕССЕЛЬ.1()
Вычисляет решение lп(х) уравнения Бесселя для мнимых аргументов.
fn(X) = (i) -n Jn(ix)
БЕССЕЛЬ.К()
Вычисляет решение Кп(х) модифицированного уравнения Бесселя для
мнимых аргументов.
Кп(х)= 1t ;n+l (Jп(x)+iY,.(i.x))
2
БЕССЕЛЬ.У()
Вычисляет функцию Бесселя Уп(х), которая также называется функ
цией Вебера или функцией Неймана (Nп(х)).
У,, (х) = lim[ Jv (x)co~(V1t )- J -v (х)]
v-.п
Stn(V1t)
ФОW{)
Возвращает значение интеграла функции ошибок. Функции ошибок
часто используются при решении задач диффузии.
2
rz
12
ERF(z) = ~ Jo е- dt
ДФОW()
Возвращает значение дополнительной функции ошИбок. Как и функ
ция ошибок , дополнительная функция ошибок часто применяется при
решении задач диффузии .
ERF(z) = 1 - ERF(z)
Функции распределения
Функции распределения используются для моделирования процессов,
происходящих с измеряемыми данными. Например, случайные данные
формируют нормальное распределение, а распределение Вейбулла ис-
Функцuu доя учень~и
u
uнженеров, вмюченнь~е в Еисеl
пользуется ддя вычисления среднего времени наработки на отказ какого
либо устройства. Функции распределения относятся к категории статис
тических функций
Excel.
БЕТАРАСП
БЕТАОБР()
еления
вычисления таб-
распре-
(формирование таблицы
ВЕИБУЛЛ
/
Припожение Г
Испо11ьзование внеwних биб11иотек
в
Excel
Помимо встроенных функций и функций , созданных с помощью
Vis-
в Excel можно использовать функции, написан
ные вами на дРуrих языках программирования. Для этого необходим
ual Basic for AppJications,
компилятор, который может создавать динамически связываемые биб
лиотеки (DLL) (ее.ли вы работаете с версией Excel д1JЯ Windows) или ре
сурсы CODE (если вы имеете дело с версией Excel ДJJЯ платформе Macin-
tosh).
Большинство
файлы библиотек
DLL
современных
и
компиляторов
позволяют
создавать
CODE.
4' Предупреждение
Не все компиляторы позволяют получать файлы
DLL,
поэтому обратитесь
к документации по выбранному вами компилятору и удостоверьтесь , что
он обладает зтой возможностью. Например, компилятор
создает файлы
DLL, тогда как Microsoft С
Visual Basic
не
и С++ создают.
Чтобы создать надстройку для Excel под Windows, напишите обычную
функцию с использованием языка программирования выбранного вами
компилятора. Эта функция должна иметь 1У же структуру, что и любая
дРуrая функция, написанная на данном языке программирования , одна
ко не должна зависеть ни от каких глобальных переменных или общих
блоков данных. Все данные должны передаваться этой функции через ее
интерфейс. Затем скомпилируйте функцию в файл
компилятор позволяет выбрать тип выходного файла
DLL.
DLL.
Как правило,
Помимо этоrо
нужио создать объявление, описывающее интерфейс вашей функции для
Excel. Оно должно содержать имя функции, а таюке количество и типы
ее входных параметров.
4' П
ед п еждение
Убедитесь, что создаваемая версия DLL соответствует используемой ва
ми версии Excel. Если вы используете Excel версии 5.0, то необходимо
создавать 16-разрядНую библиотеку, а для работы с Excel версий 7 и 97
ве сии 6 ие
ществ ет необходима 32- аз ядная библиотека
DLL.
Например, следующая программа, содержащаяся в файле MYLIB.C,
была написана на языке С и скомпилирована в файл библиотеки
MYLIB.DLL. Эта программа получает два входных значения, выqисляет их
['
Испоn1tзованuе внешнuн бuбnuотек в Еисеl
сумму и возвращает ее. Флаг _export в объявлении функции позволяет
использовать эту функцию во внешних процедурах, не содержащихся в
файле .DLL. Без него функция бьша бы доступна юлько для процедур из
этой :ж.е библиотеки. Флаг _pascal обеспечивает передачу аргументов и
использованием соглашений Pascal, а флаг _far сообщает крмпилятору,
что вызываемая программа будет размещаться в другом сегменте памяти.
DouЫe _export __pascal
_far addem(douЫe, douЫe};
douЫe _export __pascal
_far addem(douЫe опе, douЫe two}
{
douЫe aValue;
aValue = опе + two;
retum(aValue};
}
Помимо самой
MYLIB.DEF
программы
необходимо создать файл
объявления
для объявления внешних переменных функции. В этом файле
должна также содержаться процедура выхода
WEP.
Процедура выхода
необходима для удаления библиотеки из памяти по завершении работы с
ней. Вам необходимо либо написать свою собственную процедуру выхо-
. да,
либо воспользоваться используемой по умолчанию процедурой.
LIBRARY
DESCRIPTION
ЕХЕТУРЕ
CODE
DATA
HEAPSIZE
EXPORTS
WEP
addem
MYLIB
''MyLib example .DLL"
WINDOWS
PRELOAD MOVEABLE DISCARDABLE
PRELOAD MOVEABLE SINGLE
1024
@1
@2
RESIDENTNAME
•ь- ПDимечание
Не все компиляторы имеют используемые по умолчанию процадуры вы
хода. Если выбранный вами компилятор не содаржит та.J<Ую nроцеДуру,
необходимо включить ее а свой код, даже если она не· выполняет никаких
действий.
На платформ~
Macintosh
необходимо создать такую же функцию и
скомпилировать ее в отдельный ресурс
CODE,
задав соответствующие
директивы компилятора. В каждом ресурсе CODE может содержаться
только одна внешняя функция, и при этом она должна в коде ресурса
быть первой.
В
Excel
новая функция объявляется с использованием инструкции
Declare. Инструкция Declare помещается на лист модуля Visual Basic for
Applications.
В ней содержится информация о количестве и типе переда-
1ra1
Прunоисенuе Г
ваемых процедуре аргументов. Инструкция
Declare имеет различный син
таксис в зависимости от того, объявляется в ней процедура или функция.
В отличие от функции, процедура не возвращает значения. Обратите
внимание, что в приведенном ниже синтаксисе инструкции перечислены
не все параметры.
Полное описание синтаксиса инструкцни Declare
можно найти в интерактивной документации.
Объявление подпроrраммы
Declare Sub имя [CDecl] Llb "имяБиблиотеки" [Allas "псевдоним'1
[([списокАргументов])]
Объявление функции
Declare Functlon имя [CDecl] Llb "имяБиблиотеки" [Allas "псевдоним'1
[([списокАргументов])] [As тип]
Имя
Имя процедуры, используемое на рабочем листе.
CDecl
Ключевое слово для платформы
Macintosh,
показываю
щее, что в процедуре используется соглашения о вызо
вах функций языка С.
Имя Библиотеки
Имя файла библиотеки, в котором содержится объяв
ляемая процедура.
Псевдоним
СписокАргументов
Имя процедуры, которое хранится в DLL, если оно отли
чается от уже объявленного имени. Оно используется
для переименования функции в случае конфликта с су
ществующей функцией.
Список передаваемых процедуре аргументов и их типов.
Его структура соответствует структуре списка аргументов
в
Visual Basic for Application.
Тип значения, возвращаемого функцией.
Тип
После объявления в модуле
Visual Basic for Application
функuию мож
но использовать на рабочем лисrе как любую другую функцию.
Например, для объявленИя функции
addem,
ном выше файле MYLIB.DLL, на листе модуля
используемой в создан
Visual Basic for Application
необходимо написать следующую инструкцию:
Declare Function addem Lib "МYLIB.DLL" (ByVal aVal As DouЫe,
ByVal anotherVal As DouЫe) As DouЫe
При объявлении аргументов требуются идентификаторы
ByVal, по
скольку в функцию передаются значения переменных, а не их адреса в
памяти. Kai< правило именно так и поступают, чтобы не давать возмож
ность функции распоряжаться адресами памяти, отведенными для Excel.
В противном случае ошибка при объявлении размера аргумента может
привести к тому, что функция запишет свои данные в область памяти,
используемую Excel. С друtой стороны, при передаче в функцию боль
ших объемов данных, например, массивов, их, как правило, передают по
адресам в целях экономии памяти.
После объявления функции ее можно использовать на рабочем листе
или в программе
Visual Basic for Application.
Например, если в ячейку А2
Испоnьзованuе внешнuн бuбnuотек в Енсеl
18, в ячейку 82 - значение 34, а в ячейку С2 - значе
=addem{A2, 82), то получится результат, представленный на рис . Г.1.
ввести значение
ние
52 =addem(A2.В2)
?2.=flbJ~!З.A.-Тl>{"d:'uc lsebook.lexa~pleslmylib, dll:.·addem· ,_ ·вввг....д2. •. 8;1) -· .
·····.t
2е..00- ;;РЕГИС1РАТОР. ИД("mуliЬ dll" ,"addem. :ввВ1
52_= ВЫЗВАТh(С7 ,А2 , В2)
Рис.
Г.1. Использование внешней функции на рабочем листе. Текст в
столбце D отражает содержимое ячеек столбца С
Существует и друтой способ доступа к функции в файле
.DLL.
Он со
стоит в использовании операторов ВЫЗВАТЬ и РЕГИСТРАТОР. Напри
мер, если в ячейку С4 ввести формулу =8Ы38ATb{"mylib.dll",
"888",
А2,
82),
"addem",
то я этой ячейке будет получен тот же результат, что и в
ячейке С2. Функция ВЫЗВАТЬ как регистрирует (или объявляет) функ
цию, так и выполняет ее. Третий аргумент задает тип :переменных, пере
даваемых в функцию, и тип возвращаемого значения.
Функция РЕГИСТРАТОР.Ид также используется для объявления и
загрузки внешней функции, но не для ее выполнения. Функция
РЕГИСТРАТОР.Ид возвращает идентификатор ' регистрации для внешней
функции . Зарегистрированную функцию можно выполнить с помощью
функции ВЫЗВАТЬ, использующей в ка":lестве параметра идентификатор
регистрации.
Например,
если
в
ячейку
С?
ввести
=PEГИCTPATOP.ИД("myllb.dll", "addem", "888"), то эта функция возвра
тит идентификатор регистрации.
Введите в ячейку
СВ формулу
=ВЫЗ8АТЬ(С7, А2,
82),
первый аргумент которой ссьmается на иденти
фикатор регистрации, а остальные аргументы
-
на аргументы функции,
и вы снова получите сумму значений, содержащихся в ячейках А2 и
82.
Припожение Д
Соответствие анrяийской и
русской версий Excel 97
Соответствие терминов русской и английской
версий Excel 97
Русская версия
Английская версия
#llEЛ/O
Автоматически
#DIV/O
#VALUE!
#NAME?
#N/A
#NULL!
#REF!
#NUM!
Automatic
Автоматически~ режим
AutoQuerv
АвтоmиrvDЗ
OЬiect
#ЗНАЧ!
#ИМЯ?
#Н/Д!
#ПУСТО!
#ССЫЛКА!
#ЧИСЛО!
Библиотеки динамической связи
[)ynamic Link LiЬraries
Бооей
Nwind
В столбце сnева
LeftColumn
Restore
Retum Data То Microsoft Excel
Get Extemal Data
Вернуть
ВеРНУТЪ данные в
Microsoft Excel
Внешние .11.анные
в
Все
"
.".-
Мanual
АИ
Pasta
Всrавюь
Всrавка
>-
lnsert
>-
Выгюлнитъ
\nsert >- Масrо >- Module
Select Data Source
Run
Выполнить
So/ve
Вставка
Mamoc Маnvль
Выбоо мёточника данных
Выполнить заnоос
Вычисления
QueryNow
,
calculation
Вычисnить
ca1cnow
палее
FindNext
ЗАнные
tйнные •Текст по столбцам
IИаnаэон vслови.;\
обавкn.
Data
Data >- Text to Columns
Criteria RaПQe
New
ЕСЛИ
IF
Запись маmоса
Record New Масrо
'
Соответствuе aнrnuucкou
u
русской вepcuii Енсеl
97
Русская варсия
Английская версия
Запуск маКDОСЗ
Контоольное значение
Run Macro
Value of
Ву Changing Cells
Name
Name> Define
Name > Сгеаtе
TRUE
List Range
lteration
Create button
lпstant Watch
Коnиоовать
Сору
КОРЕНЬ .
SQRT
Criteria
FALSE
Macro
Macros
Function Wizard
ChartWJ:mrd
Text lmoort Wizard
Function Wizard
MINVERSE
Значению
Изменяя яче~1<111
Имя
Имя > Пnисаоить
Имя > Создать
ИСТИНА
Исходный диапазон
ИтеDации
Кнопка
Коитеоии
ложь
Макоос
Ма~<росы
мастер Вставка mvнкции
Мастер диаrрамм
Мастер текстов (импорт)
Мастер mvнкций
МОБР
Модуль
Мodule
MOПPEll
MDEТERM
МУМНОЖ
MMULT
Налnись
На.а.стоойка
-
LaЬel
Querv для MS
Ехсе1 5.0
Назад
Назначить маКDОС
Обмен динамическими данными
Обрамление
Общие
Объелинить и поместить в uентое
Остановить запись
Остановка записи
Откоыть
Querv
FindPrev
Assian macro
Dynamic Qata Exchanae
Borders
General
Center .Across Columns
Stor.i Macro
панель инстоvментов Stop
0Den
Отла.а.ка
DeЬug
Относительная nornewнocть
Оrносительная ссылка
Maximum Chanae
Relative mode
ShowAll
Run Oialoa
Analysis тoo/Pak
Отобразить все
Отобразить окно
Пакет анализа
Панель инстоументов рисования
Drawirю too/Ьer
Паоаметры
Ootions
Ootion Button
Recalculate Ьefore save
ПеDеключатель
ПеDесчет nем..11 сnхоанением
ltФI
Прunоженuе А
Русская версия
Английская версия
По возрастанию
Поавка
Ascendino
Descendina
Solver
Comblnation Drop.Down Edit
Drop Down
Comblnation List-Edit
Scroll Ьаг
Coov to
TabOrder
Edit
Правка
0-lистить
Правка
Сетка
Edit> Fill
Edit Моvе или Edit Сору
Maximum iterations
Resume Macro
Soace
OЬiect Browser
Percent
Percent
EaualTo
Group Вох
Advanced Filter
Visual Basic Editor
Delimited
StoP Macro
Control Prooerties
OЬiect Linkina and EmЬeddlno
Tools
Tools .> Macro > Macros
Тools > Record Macro > Record New
Macro
Tools > Record New Macro > Stop Recordina
Tool.s > Add-/пs
Тools > Options
Tooale arid
Символ табvляции
ТаЬ
Скопиоовать nезvльтат в доvгое место
Сору to
Создать
Cre~te
Сортировка
Sort
Соотиоовка диапазона
Стоелка
Sort
List Вох
Reference Styla
Arrow
СУММ
suм
Счетчик
SpJnner
По убь1ванию
Поиск оешения
Поле с расКDь~ваюшимся списком
Поле со списком
Поле со списком
Полоса прокрутки
Поместить оеэvльтат & диапазон
Последоввтельносrь перехода
> Заполнить
Правка > Переместить/скоnиоовать лист
Пr~едельное число итераций
Поеовать
Пообел
Поосмотр объектов
Пооuентный
Процентный (dJОрмат)
Равной
Рамка
Расшиоенный Фильто
Редактор Visual
Basic
С DЗЗllелителями
Сброс
Свойства элемента упоааления
Связывание и внедоение объектов
Сеовис
Сервис> Макоос > Макоосы
Сервис > Макрос > Начвть запись
Сервис
>
Макрос
>
Осrановить запись
Сеовис > Надстоойки
Сеовис > Па~··-• --r
Список
Сntль ссылок R1C1
Another Location
-
Соответствuе aнгnuiicкou
u
русскоu вepcuu Енсеl
97
Русская версия
Английская версия
Считать nоследоввтельные разделители
Treat Consecutive Delimiters As One
одним
Текст nРОmаммы
Текстовое поле
Точка останова
Точност~:. как на экоане
Удалить
Установить целевую ячейку
Файл
Фиксированной ШL-4РИнь1
Фильтр
> АвтофильтD
Фильтооввть список на месте
Флажок
ФоDма
Формвт
> Ячейки
Формула
Формы
Edit Code
Edit Вох
Toaale breakooint
Precision as Displayed
Delete
Set Taraet Cefl
File
Fixed Width
Filter > AutoFilter
Filter the List, in place
Check Вох
Form
Format > Cells
Refers То
Forms
Число
NumЬer
Числовой
Scientific
Числовой lmормат)
NumЬer
Шаг с захол.ом
Step lnto
Step Over
Scientific
Шаг с обходом
Эксnоненuиальный (сЬаnмвт)
Соответствие функций русской и английской
версий
Excel 97
Русская версия
Английская версия
ABS()
ACOS()
ACOSH()
ASINl)
ASINH(}
ATAN()
ATAN2()
ATANH()
COS()
COSH()
ABS(}
ACOS( )
ACOSH()
ASIN()
ASINH()
ATAN()
ATAN2()
ATANH(}
COS()
COSH()
ЕХР()
ЕХР()
ЕХР11)
ЕХР1 ( )
FРАСП()
FDISTC}
FINVl )
LN(}
LOGC)
LOG10l)
FРАСПОБР( )
LN()
LOG()
LOG10()
мю~•
Прnnоженuе д
Русская версия
Анrлийская варсия
МДЛИТ()
MDURATION( )
SINC)
SINH()
SIN()
SINH()
Т()
Т()
TAN(}
TANH()
TAN!)
TANH()
ТИПОШИБКИ(
ERRORТYPE(
)
)
ZТЕСТ()
ZТEST{)
AllPEC()
ADDRESS()
SYD()
AMORLINK()
AMORDEGRC( )
SLN()
DVARP()
АМГД()
АМОРУВ()
АМОРУМ()
АМР()
БППИСПt)
БЛПИСПП()
DSТVAR()
БППРОИЗВЕШ
)
BDPRODUCT( )
DSUM()
BESSELI()
BESSEU{)
BESSELK()
BESSELY()
BETAINV()
BETADIST()
FV()
FVSCHEDULE( )
DGET()
BINOMDISТ( )
DCOUNT()
DCOUNTA()
WEIBULLl)
БдСУМ()
БЕССЕЛЬ.1(
)
)
БЕССЕЛЬ.К( )
БЕССЕЛЬ.J{
БЕССЕЛЬ.У()
БЕТАОБР()
БЕТАРАСП{)
БЗ()
БЗРАСПИС()
БИЗВЛЕЧЬl)
БИНОМРАСПl
)
БСЧЕТ(}
БСЧЕТА()
ВЕИБУЛЛ()
ВЕРОЯТНОСТЬ(
)
РRОВ()
ВНДОХ()
ВОСЬМ.В.ДВ(
IRR()
OCT2BIN()
OCT2DEC()
)
ВОСЬМ.В.ДЕС(
)
ВОСЬМ.В.ШЕСТН(
ВПР()
)
ОСТ2НЕХ()
ВЫБОР!)
VLOOKUP()
TIMEVALUE()
TIME()
CHOOSE()
ВЫЗВАТЬ()
САLЦ)
ГАММАНЛОГ()
GAMМALN!)
ГАММАОБР()
GAMМAINV!)
ГАММАРАСП()
GAMМADISTf)
ВРЕМЗНАЧ()
ВРЕМЯ()
ГИПЕРГЕОМЕТ<)
HYPGEOМOJST!)
ГОД()
YEAR()
HLOOKUP()
ГПР()
Соопетствuе aнrnwcкoii
Английская версия
DEGREES()
DATE()
DATEVALUE()
COUPpCD()
COUPNCD()
дАТАКУПОНЛОl
)
iдАТАКУПОНПОСЛЕ()
ЕDАТЕ()
lllATAMEC()
дВ. В. ДЕС()
BIN2DEC!)
BIN20CT()
BIN2HEX()
IND1RECT()
DDB()
DELTA()
DAY()
WEEKDAY()
DEC20CT()
DEC2BIN()
DEC2HEX()
VAR{)
VARP()
DURATION()
LEB()
.ДВ. В.ВОСЬМl )
.дВ.В.ШЕСТН()
lдВССЫЛ()
IШЮБ()
iдЕЛЬТАf)
lдЕНЫ)
ILIEHbHEШ)
lдЕС . В. ВОСЬМ()
ДЕС. В.ДВ( )
1
ДЕС.В.ШЕСТН(
)
ДИСП()
!ДИСПР{).
IПЛИТ()
длСТР()
IДМАКС()
ОМАХ(}
t дМИН()
LIOXOLIПEPBHEPEГ( )
DMINl) ,
DAYS360()
COUPDAYSf)
COUPDAYBS( )
COUPDAYSNC()
DB()
CONFIDENCE()
YEARFRAC()
YIELD<)
ODDFYIELD()
D.ОХОДПОГАШС)
YIELDМAT(}
аоходПОСЛНЕРЕГt)
ODDLY1ELD()
YIELDDISC( )
TBILLYIELD( }
DAVERAGE()
DSTDEV()
DSTDEVP()
ERFC<)
ISLOGICALC )
ISNA()
ISNONTEXТ( )
ISOOD(}
ISERR()
ISERROR()
lllHEй360()
1
ДНЕИКУПОН( }
дНЕИКУПОНДО(
1
)
ДНЕИКУПОНПОСЛЕ(
)
lдОБ()
lдОВЕРИТ()
1
ДОЛЯГОдА()
lдОХОШ)
1
аоходскидКАr
>
lдОХОдЧЕК()
lдСРЗНАЧ()
:ДСТАНДОТКЛ ( )
1
97
Русская версия
lдАТАЗНАЧ{)
1
pyccкoii вepcl.JU. Енсеl
ГРАдУСЫ()
lдАТА()
1
u
дСТАндОТКЛП(
lдФОШ()
ЕЛОГИЧ(}
ЕНд()
ЕНЕТЕКСТ(
>
ЕНЕЧЕТ()
ЕОШ()
ЕОШИБКА()
)
ltfj -
Прunоисенuе д
Русская версия
Английсквя версия
ЕПУСТОl)
\SBLANK()
IF()
\SREFI )
ЕСЛИ()
ЕССЫЛКА()
ЕТЕКСТ()
\SТЕХТ( )
ЕЧЕТН()
ISEVEN()
ISNUMBER()
REPLACE()
SIGN()
VALUE( )
AND{)
OR()
INDEX()
INTRATE()
INFO( )
TRUE()
DEVSQ( )
QUART\LE( )
RSQ()
COVAR()
CODE()
COMPLEX()
ЕЧИСЛОl)
ЗАМЕНИТЬ()
ЗНАК()
ЗНАЧЕН()
И(}
ИЛИ()
ИНДЕКС()
ИНОРМА()
ИНФОРМ()
ИСТИНАС)
КВАдРОТКЛ(
)
КВАРТИЛЬ()
КВПИРСОН()
КОВАР()
КОДСИМВ()
КОМПЛЕКСН(
КОНМЕСЯЦА(
)
)
ЕОМОNТН()
КРИТБИНОМ( )
SQRT()
SQRTP( )
CORREL()
NPER()
CRITB\NOM( )
ЛГРФПРИБЛ()
LOGESТf}
КОРЕНЬ()
КОРЕНЬПИ()
КОРРЕЛ(}
КПЕР()
ЛЕВСИМВ()
LEFТ()
ЛИНЕИН()
LINEST(· )
LOGINV()
ЛОГНОРМОБР(
)
ЛОГНОРМРАСП()
LOGNORMDISТ(
ЛОЖЪf}
FALSEf}
-
МАКС()
МАХ()
MIRR()
MEDIAN!)
мвспс)
МЕПИАНА()
МЕСЯШ>
MONТHl)
МИН()
МИНУТА()
MIN()
MINUTE()
МНИМАВS()
IM.AВS()
МНИМ.СОS()
IMCOS()
IM.EXPl)
IM.LN()
IM.LOG10()
IM.LOG2()
IMSIN()
МНИМ.ЕХРl)
MHИM.LNl}
MHИM.LOG10()
MHИM.LOG2(
MHИМ. SINC>
}
)
Соответствuе aнrnuucкou
Русская версия
МНИМ.АРГУМЕНТ!
Анrлийсквя версия
)
IМARGUMENT(
МНИМ.ВЕWГ!
МНИМ_DЕЛ
)
IMREALl)
IMDIV( )
IMSQRT()
IMPRODUCT( )
IMSUN()
)
МНИМ.КОРЕНЬП
МНИМ.ПРОИЗВf:Лl)
МНИМ.РАЗ-...\( i
МНИМ.СОПРЯЖ(
u русскоu вepcuu Енсеl 97
)
IМCONGUGATE( )
МНИМ. СТЕПЕНЬ()
IMPO\NER()
IMSUM()
МНИМ.СУММ()
МНИМ.ЧАСТЫ\
IМAGINARY()
МОБРI)
MINVERSE()
MODE( )
"
модАТ\
МОПРFШ\ ·
MDEТERM ()
МУЛ ЬТИНОМl
\
НАИБОЛЬШИW )
MULTINOMIAL( )
MMULT()
LARGEI )
НАИМЕНЬШИЙ()
SМALL()
НАИТИI\
FINDl \
SLOPE!)
ACCRINTI)
ACCRINTM( )
МУМНО>Кi\
НАКЛОН()
НАКопnохош
1
НАКОГШОХОдПОГАШТ)
Нfl(
.
\
NA(l.
HEm
НЕЧЕТI
NОЛ )
\
ODD( )
нoru1
-
нокt·)
НОМИНАЛI
НОМНl=ПЕЛИI
\
НОРМА()
НОРМАЛИЗАUИЯl
НОРМОБРi
НОРМРАСПI
\
НОРМСТОБР( \
НОРМСТРАСП( \
НПЗI
\
ОБЛАСти·i
OБ"""iliПO XOl ll)
DБillПЛATI
OKPBBEPXf)
ОКРВНИЗ7\
ОКРУmП
OКPYmBBEPXl \
ОКРУГЛВНИЗТТ
ОКРУГЛТП
)
G~Pl 1
LCM()
NOM!NALI 1
l/VEEKNUM()
RATE()
STANDARDIZE() .
NORMINVI)
NORMDISП\
NORMSINV()
NORMSDISTl )
NPVl \
AREASl1
CUMPRINC()
CUMIPМТl)
CEILING()
FLOOR()
ROUNDl)
ROUNDUPl \
ROUNDDOWNf )
MROUND( )
ОСНПЛАТl)
РРМТ( )
остлтП
MOD()
,
IUI
Прunоисенuе д
Русская версия
Английская версия
ОТБР()
TRUNC()
NEGBINOMDIST{ )
INTERCEPТ( )
VDB()
PERMUT()
PERCENTILE()
CLEAN{)
ОТРБИНОМРАСП{
)
ОТРЕЗОК()
ПДОБ()
ПЕРЕСТ()
ПЕРСЕНТИЛЬ(
)
ПЕЧСИМВ()
ПЗ()
PV()
ПИ()
PI!)
PEARSON()
IMPT()
ПИРСОН()
ПЛПРОШ)
ПОВТОР()
RЕРТ{)
ПОДСТАВИТЬ(
SUBSTIТUТE{
)
ПОИСК!)
)
SEARCH()
ПОИСКПОЗ()
МАТСН()
ПОЛУЧЕНО()
RECEIVED()
GESTER()
ПОРОГ()
ППЛАТ()
РМТ()
ПРАВСИМВ()
ПУАССОН()
R!GHT()
FORECAST()
CONVERT() PRODUCT()
SUBTOTAL( 1
UPPER()
PROPERI)
LOOKUP()
PERCENTRANK( )
MIDI 1
POISSON()
РАБ.ПЕНЫ)
VVEEКDAY()
РАВНОЧЕКI)
РЕГИСТРАТОР.ИПl)
TBILLEQI)
RADIANS()
RANK()
REGISTERID()
РИМСКОЕ{)
ROМAN()
ПРЕПСКАЗ{)
ПРЕОБР()
ПРОИЗВЕЛ
()
ПРОМЕЖУТОЧНЫЕ.ИТОГИ(
ПРОПИСН()
ПРОПНАЧ{)
ПРОСМОТР()
ПРОUЕНIРАНГ(
)
ПСТР()
РАДИАНЫ()
РАНГ()
)
POCTf)
GROWТH!)
РУБЛЬ()
DOLLAR()
DOLLARDE()
DOLLARFR()
SERIESSUIM()
TODAY()
SECOND()
РУБЛЬ.ДЕС(
)
РУБЛЬ.ДРОБЬ(
)
РЯД.СУММ()
СЕГОДНЯ()
СЕКУНдЬI()
СЖПРОБЕЛЫ(
)
ТRIM{)
СИМВОЛ()
СНАR!)
СКИДКА()
DISCf)
SKEW()
СКОС()
[оответствuе aнrnuiicкoii
Русская версия
u PYCCKoii
вepcuii Енсеl
Английская версия
СЛУЧМЕЖдУ()
RANDBEТWEEN(
СЛЧИС()
RAND{)
OF!=SET{)
СМЕШ()
СОВПАЛ()
НARMEAN()
СРГЕОМ()
GEOMEAN{)
AVERAGE()
AVEDEV()
STDEV()
STDEVP()
TINV()
POV'JER()
COLUMN()
STEXY()
ROW{)
LOV\IER()
TDIST()
TINV()
SUM()
SUMIF()
SUMSQ{)
СРЗНАЧ()
СРОТКЛ()
СТАНПОТКЛОН(
)
СТАндОТКЛОНП(
)
)
СТБЮДРАСПОБР(
СТЕПЕНЬ()
СТОЛБЕШ)
СТОШХУ(J
СТРОКА()
СТРОЧН()
СТЬЮДРАСП(
)
ЕХАСТ()
t
СРГАРМ(
)
СТЬЮДРАСПОБР(
)
СУММА()
СУММЕСЛИ()
СУММКВ()
СУММКВРАЗН(
SUMXМY2()
СУММПРОИЗВ(
SUMPRODUCTC )
SUMX2MY2{)
SUMX2PY2()
CONCATENATE()
COUNT()
COUNTIF()
COUNTA()
NOWI)
}.
)
СУММРАЗНКВ( )
СУММСУММКВ( )
СUЕПИТh{)
СЧЕТ!)
СЧЕТЕСЛИ()
СЧЕТЗf)
ТдАТА{)
ТЕКСТ()
ТЕНДЕНЦИЯ(
ТЕХТ()
)
TREND()
ТУРЕ()
ТИП<)
ТРАНСП<)
TRANSPOSEf )
ТТЕСТ{ >
УРЕЗСРЕдНЕЕ(
ТТЕSТС)
}
ФАКТР()
ФИКСИРОВАННЫИ(
ФИШЕР{)
)
TRIMMEAN()
FACT{)
FIXED
FISHERI)
ФИШЕРОБР()
FISНAERINV(
ФОШl)
ERF{)
ФТЕСТ()
FТESTf)
ХИ20БР()
CHllNVf)
ХИ2РАСП()
CHIDISП)
ХИ2ТЕСТ()
CHITEST{)
INT()
ЦЕЛОЕ()
97
)
lfI
Прunоисенuе д
Русская версия
Анrлийсквя версия
UЕНА()
PRICE()
ODDFPRICE()
PRICEMAT()
ODDLPRICE()
PRICEDISC( )
ТВILLPRICE( )
N()
HOUR()
QUOTIENTC)
FREQUENCY( )
EVEN()
COMBIN()
COUPNUM()
ЦЕНАПЕРВНЕРЕГ(
UЕНАПОГАШ(
)
)
UЕНАПОСЛНЕРЕГ()
UЕНАСКИдКА( )
ЦЕНАЧЕК()
Ч()
ЧАС()
ЧАСТНОЕ()
ЧАСТОТА()
ЧЕТН()
ЧИСЛКОМБС)
ЧИСЛОКУПОН(
)
ЧИСЛСТОЛБ(
COLUМNS()
ЧИСТНЗ()
XIRR( )
XNVP()
)
ЧИСТВНдОХ( )
ЧИСТFW6.ВЛНИ(
NEТWORKDAYS()
)
ЧСТРОК()
ROWS()
ШЕСТН.В . ВОСЬМ(
ШЕСТН .В.дВ(
НЕХ20СТ()
)
ЭФФЕКТ()
HEX2BIN()
HEX2DEC()
EXPONDIST( )
KURT()
RFFRCT()
ЯЧЕИКА()
СЕLЦ)
)
ШЕСТН .В.ДЕС()
ЭКСПРАСП()
ЭКСUЕСС()
Соответствие элементов интерфейса русской
и английской версий
местоположение
Excel 97
в русской версии
В английской
версии
Главное меню
Файл
Главное меню
Вид
Главное меню
Формат
Главное меню
Сервис
Главное меню
Панные
Главное меню
ПDавка
ВСтавка имени
File
View
Format
Tools
Data
Edit
lnsert
Window
Paste name
Дналоговое окно
'Вставка> Имя> Присвоить)
Присвоить имя
Define Name
Диалоговое оюю
Создать имена
Create names
Главное меню
Вставка
Главное меню
Окно
Диалоговое окно
'ВСтавка
>
Имя
'Вставка ~ Имя
>
>
ВСташm.)
Создать)
[оответствuе aнrnuucкou
u
р сскоu вepcuu Ексеl
Местопопо:жение
В русской версии
97
В английской
версии
!диалоговое окно
lПанные
>
Таблица nодстановки
таые
Специальная вставка
Paste Special
Табnиuа nоп.становки)
Димоrовое окно
(Правка > Сnециальная вставка)
Димоговое окно (Сервис> Защита защитить лист
Protect Sheet
> Защитить лист)
Днмоrовое окно
.
Параметры
Options
Формат оси
FormatAxis
Формат ряда данных
Format Data Series
Формат объекта
Form~t OЬject
Цвета и пинии
Patterпs
Пиалоrовое окно формат объекта
Шрифт
Foпt
Диалоговое окно Формат объекта,
ниж11ий индекс
SuЬscript
Формат ячеек
Format Ce\IS
(Сервис> ПаоаметDы)
Диалоговое окно
'Формат> Выделенная ось)
Диалоговое окно
(ФоРмвr >Выделенны й Dяд)
Щиалоговое окно
(Формат> Объект)
Пимоrовое окно Формат объекта
.
вкладка WDиdJт
Диалоговое окно
(Формат> Ячейки)
Дналоговое окно Зашитить лист
солержимоrо
Conteпts
Диалоговое окно Мастер диаграмм
Гладкие графики , Графики
(шаг
(2
1
Диалоговое окно Мастер диаграмм
(шаг 1), вкладка Станп.арrные
тип
Smooth lines, Line
on 2 axes, Logarithmic, Colored lines
Press and hold to
view samp\e
Chart typa
Щиалоrовое окно Мастер диаграмм
Точечная
x:'f
Поверхность
3-D Surface
График
Llne
t), вкладка Нестандартные,
оси), Логарифмическая,
список тиn
Uветные графики
Диалоговое окно Мастер диаграмм
Просмотр результатов
(шаг
(шаг
1),
1),
вкладка Стандарrньrе
(ScaUer)
вкладка Стандартные, спи-
сок Тиn
диалоговое окно Мастер диа11>амм
(шаг
1),
вкладка Стандартные, спи -
сок Тип
Щиалоrовое окно Мастер диаграмм
(шаг
1),
вкладка Стандартные, спи-
сок тип
Щиалоrовое окно Мастер диаграмм Диапазон данных
(шаг
Щиалоrовое окно Мастер диаграмм Ряд
(шаr
Series iп
2)
~иалоговое окно Мастер диаграмм
'шаг
Data Range
2)
2)
Диапазон
Range
Ряды в строках
Rows
Columns
вкладка nиаnазон п.анных
Диалоговое окно Мастер диаграмм
(шаг 2) вкладка Диапазон данных
Ряды в столбцах
lfl:I
Rpunmиeнue
Местоположение
В русской версии
t1
В внrлийской
версии
Диалоговое окно Мастер диаграмм
'шаr 2) вкладка Ряд
Ряд
Series
Диалоговое окно Мастер диаrрамм
Добавить
Add
Имя
Name
Диалоговое окно Мастер диаграмм
'шаr 2). вклалка Ряд
Значения Х
Xvalues
Диалоговое окно Мастер диаrрамм
Значения У
Yvalues
Заголовки, Оси , Линии
сетки, Легенда, Подписи
данных (вкладки)
Тitles , Axes, Grid
Диалоговое окно мастер диаграмм
'шаr 3). вкладка Оси
ось Х (категори~)
Диалоговое окно Мастер диаграмм
Ключ легендь1
Value (Х) Axes,
Cateaory
Legend Кеу
'шаr
2)
вкладка Ряд
Дналоговое окно мастер диаграмм
' шаr
2). вкладка Ря.а
'ша.- 2), вкладка Ряд
Диалоговое окно Мастер диаграмм
(шаг 3)
lines, Legend, Data
laЬels
'шаг 3). вкладка таблИШI .данных
Пиалоговое окно Параметры
Вь1числения
Сетка
Calculation
Pattems
Edit
View
Gridlines
Формулы
Formulas
~иалоговое окно Парамвтры ,
автоматически кроме таб-
Automatic except ta-
вкладка вычисления
лиц
Ыеs
Диалоговое окно Параметры ,
автомвтически
Automatic
вручную
Manual
Диалоговое окно Параметры,
Автозаполнение значений
вкладка Правка
Я'-!еек
Enable AutoComplet e For Cell
Values
Create Сору
налоговое окно Параметрь1
Ви.n
налоговое окио ПаРаметРы
Поавка
иалоговое окно Параметры
Вид
Диалоговое окно Параметры,
вкладка BИll
Диалоговое окно Параметрь1,
-
вкладка Вил.
вкладка Вычисления
Диалоговое окно Параметры,
вкладка Вычисления
Диалоговое окно Перамесrить или
скоnироввть (Правка
Перемес-
Создаваn. копию
>-
титьlС!СОПИDОВаТh лист)
Пиалоговое окно Присвоить имя
формула
Диалоговое окно Присвоиn. имя
Имя
Refers То
Names in
WorkЬook
llиалоговое окно Поисвоиn. имя
/Jиалоговое окно Соз.аать имена
~иалоговое окно Специальная
Добавить
~
Значения У в столбцах
Add
Left Column
Select the COILW11ПS
Категории (значения оси Х)
в первом столбuе
Categories (Х) in
First Column
В столбце слева
вставка
Диалоговое окно Специальная
вставка
Соответствuе aнrnuucкou
u
Местоположение
русскоu вepcuu Ексеl
97
В русской версии
В внrлийской
версии
Диалоrовое окно Специальная
новые ряды
Columns
Трансnонироввть
Transpose
вставка
Диалоrовое окно Специальная
вставка
Диалоrовое окно таблица
Подставлять значения
no
Column lnput Cell
no
Row lnput Cell
строкам в
Диалоrовое окно таблица
Подставлять значения
столбuамв
Диалоrовое окио Формат автофиrу- Цвета и линии
Pattems
Pbl
Диалоrовое окно Формат Области
прозрачная
тransparent
Заливка
Fill
nостооения
Диалоrовое окно Формат Области
nостrюения
Пиалоrовое окно Формвт оси
Щиалоrовое окно ФОрмат оси,
Шкала
Scale
минимальное значение
Мinimum
лоrарифмическая шкала
Logarithmic Scale
Вид
Pattems
линия
Lines
Маркер
Мarker
отсутствует
None
Сглаженная линия
Smoothed line
значение
ShowValue
Лиалоrовое окно Формат ячеек
Выравнивание
Alignment
Лналоrовое окно ФоDмвт ячеек
Число
NumЬer
Пиалоrовое окно Формвт ячеек
Шрифт
Пиалоrовое окно Фоомат ячеек
защита
ЩИалоrовое окно Формвт ячеек,
no горизонтали
Font
Protection
Horizontal
По правому краю
Right
Защищаемая яче~ка
Locked
Скрыть формулы
Hidden
д.иалоrовое окно Формат ячеек,
Разделитель групп разря-
вкладка Чмсло
ДОВ
Use 1000
Separator
вкладка Шкала
Диалоrовое окно Формвт оси,
вкладка Шкала
Щиалоrовое окно Формат ряда данных
Диалоrовое окно Формат ряда данных вклапка Вил
~алоrовое окио Формат ряда данных вкладка Вил
Диалоrовое окно Формат ряда данных вкладка В~.ш
диалоrовое окно Формвт ряда дан-
ных вкладка Вил
lдиалоrовое окно Формвт ряда данных вклап:t'я Поn.nиси данных
вкладка Выоавнивание
Диалоговое окно Формат ячеек,
вющдка Выраениеание
, спиоок по
•-И
Щиалоrовое окно Формат ячеек,
вкладка Защита
Диалоrовое окно Формат ячеек,
вкладка Зашита
IJФI
Местоположение
Прunоисенuе.
В русской версии
В английской
версии
Диалоговое 01що Формат ячеек,
Числовt>Jе форматы
(все форматы)
Numher
Category
Custom
Тип
Тура
Время
Time
Дата
Date
Верхний индекс
Superscript ,
Команда Вс;тавка > Имя
Вс;тавить
Команда меню Сервис
Защита
Контексmое .меию ячейки
очистит~. содержимое
Меню Вид
Во весь экоан
Меню Вид
Панели инструментов
Меню Вид
По размеру окна
Paste
Protect
Documents
Clear Contents
Full Screen
Toolbars
Sized With
Меню Вставка
Диаrрамма
Меню Вставка
Имя
вкладка Число
Диалоговое окно Формат ячеек,
вкладка Число
Диалоговое окно Формат ячеек,
вкладка Число
Дналоговое окно Формвт ячеек,
вкладка Число, список Числовые
d>ормать1
Диалоговое окно Формат ячеек,
вкладка Число, список Числовые
d>орматы
Дналоrовое окио Формат ячеек,
вкладка ШОИ<Ьт
Wiлdow
Меню Вставка > Имя
Присвоить
Chart
Name
Note
Create
Define
Меню Паннь1е
Таблица nодстановки
ТаЫе
Меню Диаграммы
Добавить даннь1е
Меию Окно
Закреnить области
Меню Окно
Снять закраnление облас-
NewData
Freeze Panes
Unfreeze Panes
Меню Вставка
Примечание
Меню Вставка > Имя
СОЗ4вть
.
тей
Меню Правка
Вставить
Меню Правка
Заполнить
МенюПоавка
Меню Правка
Коnиоовать
Сору
Пераместить/скоnировать
Move/Copy Sheet
lnsert
Fill
лист
Меню Правка
Повторить формаП1рование ячеек
Меню Пru:~вка
Специальная всrавка
Меию Правка> Заnолниn.
ВЫDОВНЯТЬ
Меню Поавка > Заполнить
Вниз
МенюСеовис
Защита
Меню Сервис
ПараметDЫ
Меню Сервис > Защита
защитить лист
Меию Файл
3акоыть
Repaat
Formatting
Paste soecial
Justifv
Down
Protection
ODtions
Protect Sheet
Close
11
Соответс:пuе aнrnuuc:кou
u
рус:с:коu
Bepc:uu
Енсеl
97
Местоположение
В русской версии
В внrлийской
Меню Файл
Сохоанить
Save
Меню Файл
Создать
New
Меню Файл
СоХDЭнить
Save
версии
Меню Файл > СоЗАатъ
Книга
WorkЬook
Меню ФоDмвт
Ячейки
Меню Формвт, прн выделенном
Автофиrура
CeJJs
Selected OЬject
:рисованном объе:~сrе
Меню Формвт. режим диаrоаммы
Названне панели ННСТРУМенrов
Выделенный
Название панели ннстоvменrов
Стан.а.аDтная
Рисование
Selected
DrawinQ
Standard
Formatting
Название панели ннструменrов
Форматиоование
Окна мастеоов
Далее
Next
Панель инетруменrов Рисование
Вь1боо объекrов
Панель ННСТРУМенrов Рисование
Линия
Selection
Line
Панель инсrоvменrов Рисование
Надпись
Text
Панель инетрvменrов Рисование
Овал
ElliDSe
Панель инструментов Рисование,
Раэrруnпировать
Group
меню Дейстзия
Панель инсrоvменrов СтаI01артная Мастер таблиц
По правому краю
ChartWizard
MaD
Drawina
Save
Format Painter
Align Right /
Поцантру
Center
Увеличить разрядность
lncrease Decimal
Уменьшить разрядность
Границы
Decrease
Decimal
Borders
Цвет заливки
Fill Color
Центрировать по столбцам
Center across columns
Name
Панель иисrоvментов СтандаDтная Масuпаб
Панель инструментов СтандаРТНая Рисование
Панель инетруменrов Стандартная СоХDЭнить
Панель инсn>УМенrов Стан.а.аDТНая ФоDмвт по oбrmзuv
Панель ннструментов Форматирование
Панель инструментов Форма101рование
Панель ннструменrов Формвтирование
Панель ннструм:енrов Формвтирование
Панель инструм:енrов Форматирование
Панель ииструм:енrов Форма101рование
·
Панель инструментов Форматирование
Стоока dionмvл
Имя
Предметный указате11ь
А
Символы
'
А1, стилъ ссылок на ячейки,
(одинарные кавычки)
в пути к каталоrу при ссылках на
ячейки,
21
для комментариев
185
! (восклнuательный
Visual Basic,
знак)
в синтаксисе объектов,
180
во внешних ссылках на ячейки,
21
#DlV/O!, значенне ошибки, 19, 40
#N/A, значение ошибки, 19, 54
#NAME?, значение ошибки, 19, 85
#NULL!, значение ошибки, 19
#NUM!, значенне ошибки, 19, 30,
35
#REF!, значение ошибкн, 19
#VALUE!, значение ошибки
вычисления обратной матрицы,
415
#VALUE!, значение ошибки, 19, 26,
30, 54, 57, 109, 411
#ДЕЛ/О!, значение ошибки, 19, 40
#ЗНАЧ!, значение ошибки
вычисления обратной матрнuы,
415
#ЗНАЧ!, значение ошибки,
19, 26,
30, 54, 57, 109, 411
#ИМЯ?, значение ошибm, 19, 85
#Н/Д, значение ошибки, 19, 54
#ПУСТО!, значение ошибки,
19
#ССЫЛКА!, значение ошибки, 19
#ЧИСЛО!, значение ошибки, 19, 30,
35
$
(знак доллара), абсолютные
&
ссылки, 24
(амперсанд) конкатенацня,
28
µ (символ расширенного набора
DOS), 95
• (звездочка) символ шаблона, 254
. (точка), в синтаксисе объектов, 180
? (вопросительный знак) символ
шаблона, 254
= (энак равенства), 19
• (снмвол градуса), 79
лвsо; функuия,
20
32, 34
Access, 245, 45 3
ACCRINT(), функция, 52
ACCRINТМQ, функция, 52
ACOS(), функция, 33, 36
ACOSH(), функuия, 33, 37
active cell, 67
ActiveCell, объект, 180, 185
ActiveCell.Formula, свойство, 414
ActiveSheet, объек-r, 180
add-in functioпs, 30, 57
Add-ln Мanager, 57
ADDRESS(), функция, 55
Adjustlt, процедура, 295
Advanced Filter, диалоговое окно,
253
Align Left, кнопка (панель
ннструментов Formatting), 66
Align Right, кнопка (панель
инструментов Formatting), 66
AМORDEGRC(), функция, 52
AМORLINC(), функция, 52
Analysis Toolpack, 57, 456, 459
AND(), функция, 26, 41
ANOVA (дисперсионный анализ),
58, 456
Асс, инструмент (панель
инструмен-rов Drawing),
функuия, 55
Army, пm данных в Visual
162
AREASQ,
Arrow,
Basic, 190
инструмент (nаиель
ннструментов Drawing), 162
ASCII, код, 79
ASIN(), функция, 33, 36
ASINH(), функция, 33, 37
Assign Масrо, диалоговое окно, 186,
298, 414
ATANO, функция, 33, 36
ATAN2Q, функuия, 33, 36
ATANH(), функuия, 33, 37
Auditing, панель инструментов, 65
AutoComplete, 73
li:jj
Предметнь1u указатеnь
Autosum,
кнопка (панель
инструментов
Standard), 66
AVERAOEQ, функция, 47, 291
в
BASICA, 175
BETADIST(), функция, 47, 462
BETAINV(), функuия, 47, 462
BIN2DECQ, функция, 39
BIN2HEXO, функция, 39
BIN20Cf(), функция, 39
BINOMDIST(), функuия, 47, 50, 462
Bold, кнолка (панель инструментов
Formatting), 66
Boolean functions, 41
Boolean, тип данных в Visual Basic
190
Borders,
,
кнопка (панель
инструмекrов Foпnatting),
66, 74,
81, 115
Bring to Front,
команда (панель
инструментов Drawing), 162
с
С, язык проrраммирования, 175
Call, оператор, 199
Cance1Btn_Click, процедура, 210
CEILINGQ, функuия, 32, 34
Се11 Note, диалоговое окно, 115
CELLQ, функция, 54
СеПs, метод, 187
Center Across Columns, кнопка
(панель инструмеитов Formatting)
66, 81
•
Center, кнопка (панель
инструментов Formatting), 66
СНАR(), функция, 42
Chamcter Мар, в Windows 95, 79
Chart Туре, диалоговое окно, 139
Chart, панель инструментов, 65
ChartWiz.ard, кнопка (панель
инструментов Standard), 66, 124,
136
Check Вох, кнопка (панель
инструмекrов Visual Basic Fonns)
200
'
Checkmark, в строке формул, 67
CHIDIST(), функuия, 47, 50, 462
CHIINV(), функция, 462
CНITEST(), функция, 47
CHOOSE(), функция, 55
CLEAN(), функция, 42
Close, кнопка, 63
Close, оператор, 195
CODEQ, функция, 42
CODE, ресурс (Macintosh)
компилятор для создания, 463
CODE, ресурс (Maciпtosh), 59, 411
Color, кнолка (панель инструмеитов
Formatting), 66
COLUМN(), функция,
COMBINQ,
ComЬination
55
функция,
32, 35
Drop-Down Edit,
кнопка (панель инструментов
Visual Basic Forms), 200
ComЬination List-Edit, кнопю~
(nанель инструментов Visual Basic
Forms), 200
Comma Style, кнопка (панель
инструмекrов Forrnatting), 66
COMPLEXQ, функция, 40
CONCATENAТEQ, функuия, 42
CONFIDENCE(), функция, 46
Const, оператор, 192, 203
Control Properties, инструмент
(панель инструментов Visual Basic
Fonns), 200
CONVERTQ, функция, 39
Сору, кнопха (панель инструментов
Standard), 66
Сору, комаНда,
27
Сору, метод, для кнопки,
179
CORREL(), функция, 46, 48
Correlation, проrрамма, 58 ·
COS(), функция, 33, 35
COSHQ, функция, 33, 37
COUNТ(), функция, 47, 291
COUNТA(), функция, 45
COUNТBIANK(), функuия, 32
COUNТIF(), функuия, 32
COUPD'AYВSQ, функция, 52
COUPDAYS(), функuия, 52
COUPDAYSNC(), функция, 52
COUPNCDQ, функция, 52
COUPNUM(), функция, 52
COUPPCD(), функция, 52
COVAR(), функция, 46, 48
Covariance, проrрамм:а, 58, 457
CRAY 1, суперком:пыотер, 18
11:11
Предметнь1ii указатеnь
инструмент (панель
инструментов Visual Basic Fonns),
Create Button,
200
Create Names, диалоrовое окно, 84
CRITBINOMQ, функuия, 47
Criteria range
для расширенноrо филъtра, 253
определение, 253
Criteria, кнoJika, в форме данных,
264
Ctrl, клавиша, для выделения
несмежных диапазонов, 81
CUMIPMT(), функция, 51
CUMPRINCQ, функция, 51
Currency Style, кнопка (панель
инструментов Fonnattiлg), 66
Currency, тип данных, в Visual Basic,
190
curve fltting, 270, 305
взвешивание, 305
по функциям, 46, 49, 271, 286
проверка статиСП1Ческих
характеристик,
286
просмотр таблиц и интерполяции,
305
сложные функции,
288, 298
таблица поиска и интерполяции,
298
экспоненциальное разложение,
49
Cut, кнопка (панель инструментов
Standard), 66
Data Foлn, диалоговое окно, 252
Data, меню
Filter
Advanced Filter, 253, 262
AutoFilter, 252, 261
Show All, 253, 263
Form, 252, 264
Get Extcmal Data, 245
Sort, 265
недостатки,
библиотеки)
доступ к функциям, 466
коМIIИ.11Я1'Ор для создания, 463
DLL (динамически связываемые
библиотеки), 58,
DМAXQ, функция,
D
ТаЫе
ИЗ двух ВХОДНЫХ таблиц,
DAVERAGE(), функция, 50, 265
DAYQ, функuия, 44
DAYS360(), функция, 44
DB(), функция, 53
dBase, 244
DCOUNТ(), функция, 50, 264
DCOUNТAQ, функция, 50
DDB(), функция, 53
DEC2BINQ, функция, 39
DEC2HEX(), функuия, 39
DEC20CfQ, функция, 39
Declare, инструкция, 187, 464
Decrease Decimal, кнопка (панель
инструментов Fonnatting), 66, 74
Define Name, диалоrовое окно, 26,
84
DEGREES(), функция, 33, 36
Delete, кнопка, в форме данных, 264
DELТА(), функция, 39
DeltaGraph Pro, 132, 450, 451
Descriptive statistics, проrрамма, 58,
458
DEVSQO, функция, 45
DGEТO, функция, 50
Ditn, оператор, 188
DlSC(), функция, 52
DLL (динамически связываемые
J03
98
ТаЫе, 97, 103
Text То Columns, 237
DAТEQ, функция, 43
Date, тип данных в Visual Basic, 190
DAТEVALUE(), функция, 43, 108
187, 411
50, 265
DMINQ, функция, 265
Do/Loop, операторы, 196
DOLIARQ, функция, 42
DOLIARDE(), функция, 53
DOLLARFR(), функция, 53
DOS, рас.wирснный набор
символов, 79, 95
Double, тип данных в Visual Basic,
190
DPRODUCf(), функция, 51
drag and drop, для КОПИроВаНИЯ Н
вставки, 87
Drawing Se1ectioп, инструмент
(панель инструментов Drawing),
162
Drawing, кнoJika (панель
инструментов Standard), 66, 161
li:fj
Предметнwii указатеоь
Dmwing,
162
панель инструментов,
145,
форматы файлов, 231
процедура, 209
Excel2For,
отображение, 161
инструмент (панель
инструментов Drawing), 162
Drop Shadow,
DSTDEVO, функция, 51 , 265
DSTDEVP(), функция, 51
DSUMQ, функция, 51, 265
DURATJONQ, функция , 52
DVARQ, функция, 51 , 265
Dynamic Link Libraries (DLL)
доступ к функциям,
466
компилятор для создания,
463
Dynamic Link Libraries (DLL), 58,
187, 411
Е
EDATE(), функция, 44
Edit Вох, инструмент (nанель
инструментов Visual Basic Fonns),
199, 207
Edit Code, инструмент (панель
инструментов Visual Вasic Forms),
200
Edit, меню
Clear, 293
Fill, 27
FillJustify, 108
Paste Special
Transpose, 157
Paste Special, 140, 141
Repeat Formatting, 81
EFFECfQ, функция , 52
Ellipse, инструмент (панель
инструментов Dmwing), 162, 166
EnergyGap, функция, 203
EOMONTHQ , функция, 44
EQV (логическая эквиваленmость) ,
формула для, 41
·
ERF(), функция, 39, 461
ERFC(), функция, 39, 461
ERROR1YPE(), функция, S4
EVEN(), функция, 32, 34
EXACf(), фунхция, 28, 42
EXAМPLES . EXE, файл, 454
Excel
версия для Мacintosh, 1О
версия для Wmdows, 1О
проrрамма конвеJУIИрования в
FORTRAN, 206, 219 .
ЕХРО, функция,
33
EXPONDIST() , функция , 47, 462
expoпential сшvе fits, 49
Exponential smoothing, проrрамма,
58, 458
F
F statistic, 274
Fлcro. функция, 32
FACfOOUBLEQ, функция , 39
FALSE(), функция, 41
False, логическое значение, 38
FDIST(), функция, 47, 50, 462
File Ореп, ошибка, 195
File, меню
aose, 63
New,
WorkЬook,
64
Save, 64, 75
FiUed Arc, инструмент (панель
инструментов Drawing в Excel
7.0), 162
FШed Ellipse, инструмент _(панель
инструментов Dmwing в Excel
7.0), 162
FШed Freeform, инструмент (панель
инструментов Drawing в Excel
7.0), 162
Filled Rectangle, инструмент (панель
инструментов Dmwing в Excel
7.0), 162
Fmd Next, кнопха, в форме данных,
264
FIND(), функция, 42
FINYQ, функция, 47, 274, 462
FISHER(), функция , 46
FISHERINV(), функция , 46
FIXED(), функция, 42
FLOORQ, функция, 32, 34
Font Color, кнопка (панель
инструментов Fonnatting), 66
Font Size, поле (панель
инструментов Foпnatting), 66
Font, поле (nаиель инструментов
Fonnatting), 66
For Each/Next, операторы, 197
For/Next, операторы, 196
FORECAST(), функция, 46, 49
foreground co\or, of chart, 139
IJ:fil
Предметный указатеnь
Fonnat Axis, диалоговое окно, 142
Fonnat Cells, диалоговое окно, 72, 74
Fonnat Object, диалоговое окно, 429
Patterns, вкладка, 145
Fonnat Painter, кнопка (панель
инструментов Standard), 66
Fonnat, меню
Cells, 72
Alignment, вкладка, 72
Font, вкладка, 116
Font, вкладка, sнperscript, 85
Function Wizard, кнопка (панель
инструментов Standard), 31, 66,
204
FV(), функция, 51
FVSCHEDULE(), функция, 51
FРАСП(), фунЮIИЯ, 47, 50, 462
FРАСПОБР(), функция, 47, 274,
F-статистика,
F-тест, двухвыборочиый Д11Я
диспереиониоrо анализа,
NumЬer, вкладка, 80
NumЬer, вкладка, NumЬer
Category, 74
Pattems, вкладка, 101
Protection, вкла.р.ка, 108
Protection, вкладка, Locked, 116
Protection, вкладка, атрибуr
Нidden,
102, 108
139
Chart Туре,
Object, 429
Selected, 139
Selected Axis, 156, 160
Scale, вкладка, 142
Selected Data Series, 287
Names and Values вкладка, 144
Pattems вкладка, I 60
Patterns, вкладка, 169
для диаграмм,
139
Fonnatlt, макрос, 185
Fonnatting, панель инструментов, 65
Fопт, панель инструментов,
65,
177, 199
Fonnula, строка, 67
FORTRAN, 175
конвер'mрование программы
Excel, 206, 219
создание оператора,
216
Fourier Analysis, 58, 458
FoxPro, 244
Freefonn, инструмент (панель
инструментов Drвwing),
Freehand,
162
инструмент (панель
инструментов Drawing), 162
FREQUENCY(), функция, 46
FROM, оператор в операторе SQL,
250
F-test two-sample for variances
program, 58
FГEST(), функция,
47
FuU Screen, панель инструментов, 65
462
274
58
G"H
GAМMADIST(), фун.IЩИЯ,
47, 50,
462
GAММAINV(), функция, 47,
GAММALN(), функция, 47
462
Gaussian quadrature, 334, 339
GCD(), функция, 32, 35
GEDMEAN(), функция, 45, 48
GESTEP(), функция, 40
GetSaveAsFilename, метод, 209
Group Вох, инс;румент (панель
инструментов Visual Basic Forms),
200, 208
Group Objects, команда (панель
инструментов Drawing), 162
Group, инструмент (панель
инструментов Drawing), 166
GROWfH(), фуихция, 46, 49, 276
GW-BЛSIC,
175
HARMEAN(), функция, 45, 48
HasFonnula, метод, 215
Help, кнопка (панель инструментов
Standard), 66
Hertzsprong-Russell, диаграмма, 92
HEX2BIN(), функция, 39
HEX2DEC(), функция, 39
НЕХ20СГ(), функция,
39
Hide, метод, 201
Histogram, программа, 58, 458
HLOOKUP(), функuия, 55, 298
HOUR(), фунхция, 44
HYPOEOMDIST(), функция, 47, 50,
462
1
IF(), функция, 40, 88, 101
lf, оператор в Visual Basic, 197
IМАВS() 1 фующия,
40
li:Q
Предметный gказатеnь
IMAGINARY(), функция, 40
IMARGUMENT(), функция, 40
lMCONJUGATE(), функция, 40
lMCOS(), функция, 40
IMDIV(), функция, 40
IMEXP(), функция, 40
IMLN(), функция, 40
IMLOG 10(), функция, 40
1MLOG2(), функция, 40
IM Р (logical implies),' fonnuia for, 41
IMPOWER(), функция, 40
IMPRODUCГ(), функция,
40
IMREAL(), фунх:ция, 40
IMSIN(), функция, 40
IMSQRT(), функция, 40
IMSUB(), фунх:ция, 40
IMSUM(), фуttкция, 40
Increase Decimal, кнопка
(панель
инструментов Foпnatting), 66, 74
lnteger,
189
тип данных в
INТERCEPТ(), функция,
INТRATE(), функuия,
'ISLOGICAL(), функция, 54
ISNA(), функция, 54
ISNONТEXТ(), функция, 54
ISNUMBER(), фунюrия, 54
lsNumЬer, функция рабочего листа,
215
ISODD(), функция, 54
ISREF(), фунюrия, 54
ISTEXТ(), фунх:ция,
INDIRECГ(), функция,
INFO(), функция, 54
Input, оператор, 195
Jtalic, кноп:ка (панель
Formatting), 66
InputBox, фунх:ция, 193
Insert Module, инструмент (панель
инструментов Visual Basic lI.ЛЯ
Excel 7. 0), 177
lnsert, меню
Axes, команда (для Excel 7.0), 138
Chart, 133
As New Sheet (для Excel 7.0),
133, 150, 155
Data LaЬels (для Excel 7.0), 138,
143, 160
Gridlines (для Excel 7.0), 138
Legend (для Excel 7.0), 138
Macro (для Excel 7.0) 203, 209, 297
Dialog (для Excel 7.0), 177
Module (для Excel 7 .0), 176
Name, 25, 83
Create, 134
Define, 84, 135
Paste, 84
New Data (для Excel 7 .0), 138, 140
Note, 115
Titles (для Excel 7.0), 138
Trendline (для Excel 7.0), 286
lnstant Watch, инструмент (панель
инструментов Visual Bamc lIЛЯ
Excel 7.0), 222
lNТ(), фунх:ция, 32, 34
46
52
investment functions, 5'2
IPMT(), функция, 51
IRR(), фуихия, 53
ISBLANK(), фунх:ция, 54
ISERR(), функция, 54
ISERROR(), функция, 54
ISEVEN(), фунх:ция, 54
INDEX(), функция, 55, 276, 302
55
Visual Basic,
54
инструментов
·
J-K...L
JET, механизм базы данных, 51
KURT(), функцИя, 46
LaЬel, инструмент (панель
инструментов
Visual Basic Foпns),
199, 207
J.ARGE(), функция, 46, 48
LCM(), фунх:ция, 32, 35
LEFГ(), функция, 42
LEN(), функция, 42
Line lnput, инструкция, 195, 244
Line, инструмент (панель
иис-rрументов Drawing), 162, 166
LINEST(), функция, 46, 49, 274, 277,
278, 280
List Вох, инструмент (панель
инструментов Visual Basic Foпns),
200
LN(), функция, 33
LOG(), фунх:ция, 33
LOGlO(), фунх:ция, 33
LOGEST(), фунх:ция, 46, 49, 276
LOG INV(),
функция, 47
функция,
LOGNORMDIST(),
462
Long,
тип данных в
LOOKUP(),
47,
Visual Basic, 189
функция,
55
liфi ~
Предметный указатео1t
_Lotus 1-2-3, вычисление даты, 107
LOWER(), функция, 42
м
Macintosh, компьютер
Excel, требования, 13
версни Excel, 1О
MakeMatrix(), программа, 413
МАТСН(), функции,
NORMSINV(), фунЮIИЯ, 47, 462
NOT(), функция, 41·
Notepad (Windows). 233
NOW(), функция, 44
NPER(), фунЮ1ИЯ, 51
NPV(), фун.~щия, 53
NWind, база nанн:ых, запрос, 245,
250
о
55, 298, 301
MathТype, программа,
452
МАХ(), функция, 47
МDЕТЕRМ(), функция,
OЬject Browser, nиалоrовое окно, 180
OЬject Browser, инструмент (панель
инструментов Visual Basic для
38
MDURAТION(), функция,
52
MEDlAN(), функция, 45, 48
Microsoft Access, 245, 453
Microsoft, nанель ииструмеtпов
Excel 7.0), 65
Excel 7.0), 180
Linking and
OЬject
(для
58
EmЬedding
~
(OLE),
OCR, программное обеспечение, 230
MID$(), функция, 244
MID(), фунЮ1ИЯ, 42
MlN(), функция, 47
ОСГ2В1N(), функция, 39
ОСГ2DЕС(), функция, 39
MlNUTE(), фунЮ1ИЯ, 44
MlNVERSE(), функция, 31, 38, 372,
ODD(), функция, 32, 34
ODDFPRICE(), фунЮIИЯ, 52
ODDFYIELD(), функция, 52
ODDLPRICE(), фунЮIИЯ, 52
ODDLYIELD(), фунЮIИЯ, 52
OFFSET(), функция, 55
Offset, метол, 185
OKBtn_Click, процедура, 213
OLE (связывание и внеnрение
ОСГ2НЕХ(), функ:uия,
374,415
MlRR(), функция, 53
MMULT(), функция, 38, 374
MOD(), фунЮIИЯ, 32, 34, 80
MODE(), функция, 46
МОNТН(), функция,
44
Moving average, программа, 58, 459
MROUND(), фунЮIИЯ, 32, 34
MS Query, надстройка, 231, 244, 749
установка,
244
функция, 193
МULТINОМIАL(),функция,
MsgBox,
32
N
N(), фунЮIИЯ, 54
NA(), фунЮIИЯ, 54
Name, кнопка в строке формул, 67
NEGBINOMDIST(), фунЮIИЯ, 47,
462
NE1WORКDAYS(), функция,
58
On Error, оператор, 218
OnAction, свойство, 200
Open, nиалоrовое.окно, 194
Open, кноnка (панель инструментов
Standard), 66
Open, оператор, 194
Option Button, инструмент (панель
инструментов Visual Basic Foпns),
200, 208
Option Expficit, инСiруКЦИЯ, 188, 209
OR(), функция, 41
Oracle, 244
44
New WorkЬook,
кнопка (пане.ль
инструментов Standard), 66
NOMINAL(), функ:uия, 52
NORМDlST(), фунЮIИЯ, 47,
объектов),
39
462
NORМINV(), фунЮIИЯ, 47, 462
NORMSDlST(), функция, 47, 50,
462
р
Paradox, 244
Pascal, 175
Paste, кноnка (панель инструментов
Standard), 66
Paste.. команда, 27
liф)
Предметньк1 указатеnь
инструмент (панель
инструментов Drawing), 162
РС, компьютер, требования Excel,
Pattem,
13
PEARSON(), функuия, 46
percent fonnat, 395
Percent Style, кнопка (панель
инструментов Fonnatting), 66
PERCENТILE(), функция, 46
PERCENТRANK(), функция,
РЕRМUТ(), фунх:ция,
Pl(), функция, 33, 36
РМТ(), функция, 51
46, 49
46
POISSON(), функuия , 47, 50, 462
POWER(), функция, 32
РРМТ(), функция,
52
PRICE(), функция, 53
PRlCEDlSC(), функция, 53
PRICEМATE(), функция, 53
Print Preview, кнопка (панель
инСJрументов Standard), 66
Print, кнопка (панель инСJрументов
Standard), 66
Print, оператор, 194
PROB(), функция , 46
PRODUCТ(), функция, 32, 35
PROPER(), фунх:ция , 42
Protect Document, команда (меню
Tools), 101
PV(), функция , 52
Q-R
QUARТILE(), функция,
46
Query & Pivot ,..naнeль инструментов
(для Excel 7.0), 65
Query Now, кнопка, 249
Query, надстройка, 231, 244, 249
установка, 244
Qtiery, окно , 247
QU011ENT(), функция, 32, 35
R1 Cl, стиль ссылок на ячейки, 20
оmосите.льные ссылки на ячейки,
23
RADIANS(), фунх:ция, 33, 35
RAND(), функuия , 32, 35
RANDBEТWEEN(), функция,
NwnЬer Generator.
Range, метод , 185, 187
Rаngе,обьект, 179, 187
Random
32, 35
58, 459
Rank and percentile, программа, 58,
459
RANK(), функция, 46
RATE(), функция, 52
RECEIVED(), функuия, 53
Record Macro, кнопка (панель
инструментов Visual Basic), 182
Record New Macro, диалоговое окно,
181
Rectangle, инструмент (панель
инструментов Drawing), 162
Register.JD, функция, 466
Regression Data Analysis, инструмент,
277
Regression, программа, 59, 459
Repeat, кнопка (панель
инструментов Standard), 66
REPLACE(), функция, 42
RЕРТ(), функuия, 42
Reshape, команда (панель
ннструментов Drawing), 162
Restore, кнопка, в форме данных,
264
REVPROB.EXE, файл, 454
RIGHT(), функция, 42
ROМAN(), функция , 32
ROUND(), функция, 32, 34
ROUNDDOWN(), функция, 33, 34
ROUNDUP(), фунхция, 33, 34
ROW(), функция, 55
ROWS(), функция, 55
RSQ(), функция , 46
Run Dialog, кнопка (панель
инструментов Visual Basic Fonns),
200
Run Macro, кнопка (панель
инструментов Visual Вasic), 183
s
Sampling, программа, 59, 459
Save As, диалоrовое окно, 194
Save, кнопка (панель инструментов
Standard), 66, 75
ScaJinger, Joseph, 107
Scenario Manager, 294
Scroll Ваr, кнопка (панель
инструментов Visual Basic Fonns),
200
SEA.RCH(), функция, 42
SECOND(), функция, 44·
1рп1
SeeЬeck, коэффициент, 110
Select Case, оператор, 198, 217
Select Data Source, диалоrовое окно,
245
Select, метод, 414
Select, оператор в процедуре
команды, 185
SELECf, оператор, в операторе:
SQL, 250
Selection, инструмент (панель
инструментов Drawiп8), 166
Send to Back, команда (панель
инструментов Drawing). 162
SERIESSUM(), функция, 33, 35, 310
Show, метод дпя обьехта Dialog, 201
SIGN(), функuия, 33, 34
SlN(), функция, 33, 35
Single, тип данных в Visual Basic, 190
SINH(), функция, 33, 37
SKEW(), функция , 47
SLN(), функuия, 53
SLOPE(), функция, 46
SMALЦ), функuия, 46, 48
So\ver, 59, 293, 295
нелинейных уравнений, 364, 366
ПредметныU указатеоь
Staпdard, панель инструментов,
Fuпctioп Wtzard, кнопка, 31, 66
STANDARDIZE(), функция, 46
Static, оператор, 188
Status bar, 65
STDEV(), функция, 46, 48
STDEVP(), функция, 46, 48
Step, рс:ЖИМ отладки, 224
STEYX(), фунЮJ.ия, 46
Stop Macro, кнопка (панель
инструментов ViS\tal Basic), 182
String, тип данных в Visual Basic, 190
Sub, процедуры, 198
не процедуры Functioп, 202
SUBSTIТUTE(), функция, 42
SUBТOTAL(), функция, 33
SUM(), функция, 33, 35, 293
SUMIF(), функция, 33
SUMPRODUCТ() , функuия, 33, 35
SUMSQ(), функция, 33, 35
SUMX2MY2(), функuия, 33, 35
SUMX2PY2(), функция, 33, 35
SyЬase, 244
SYD(), функция, 53
обыкновенных
дифференциальных уравнений,
т
406
Связанных линейных уравнений,
380, 382
установка,
294
Solver Parameters, JlИаЛоrовое окно,
294, 365
So\ver Results, диалоrовое окно, 294,
383
Sort Ascending, кнопка (панель
инструментов Standard), 66
Sort Descending, кнопка (панель
инструментов Staodard), 66
Sort, диалоrовое окно, 254
Spc:lling, кнопка (панель
инструментов Staпdшd), 66
Spiппer, кнопка (панель
инструментов
Visual Basic Foпns),
200
SQL (Structured Query Language), 244
SQL, кнопка, 250
SQL-cepвepы, 244
SQRT(), функuия, 33, 35, 291
SQRTP(), функция, 33, 35
64,
66
Т(), функция ,
42
ТаЬlе, диалоговое окно,
103
TAN(), функция, 33, 35
TANH(), функция, 33, 37
TaskЬar (Windows 95), 65
TBILLEQ(), функция, 53
ТВILLPRICE(), функция, 53
ТВILLYIELD(), функцщ, 53
TDIST(), функция , 47, 50, 462
Teach Text (Macintosh), 233
Text Вох, кноп~щ (панель
инструментов Drawing), 162, 166
Text lmport Wiurd, 235, 237
Fixed Width, флажок, 237
диалоrовое окно, 233
ТЕХТ(), функция, 42
TIME(), функция, 44, 45
TIMEVALUE(), функция , 44, 108
TlNV(), функция, 47, 273, 462
1ipWwud, кнопка (панель
инструментов Staпdard), 66
TipWizard, nанелъ инструментов (для
Exccl 7.0), 65
1§11
Предметный указатеnь
TODAY(), функuия, 44
Toggle Breakpoint, кнопха (панель .
инструментов Visual Basic для
Excel 7.0), 224
Toggle Grid, кнопха (nанель
инструментов Visual Basic Fonns),
200
Tools, меню
Add-lns, 57
Query, 245
Assign Macro (для Excel 7.0), 182,
202, 219
Data Analysis, Regression tool, 279
MS Query, 245
Options
Calculation, вкладка, 43, 98,
353-360
Edit, вклаnка, 73
General, вкладка, Reference
Style, 21
View, вклацка, 75, 81
Protect Document, 1О1
ProtectionProtect Sheet, 108
Record Macro
Record New Macro, 182
Stop Recording, 182
Use Relatlve References, 182
Solver, 294, 365
назначение процедуры, 182
TRANSPOSE(), функция, 55
TREND(), фукнция, 46, 49
Trendline, дИаЛоrовое окно, 287
ТRIM() , фун.кция, 42
TRIMMEAN(), функция, 46
TRUE(), фун.кция, 41
True, логическое значение, 38
ТRUNC(), функция, 33, 34
1ТЕSТ(), функция, 47
ТУРЕ(), фунКЦШ1, 54
Т-тест, проrраммы, 59, 459
VALUE(), функция, 42
VAR(), фун.кция, 46, 48
Variant, тиn даннЬ1Х в VisUal Basic, 190
VARP(), функция, 46, 48
VAX, миннкомпыотер
числовая точность, 18
числовой диапазон, 18
VDB(), функция, 53
View, меню
Ftill Screen, 90
Sized Witlt Window, 150
ToolЬars, 66, 145, 161
VisiCalc, 9
Visual Basic for Applications
вызов друrих процедур, 198
вычисление rамма-фун.кцин, 342,
344
дос1)'П к объектам, 179
заполнение матриц, 413
И!dПорmрование данных, 242, 244
комментарии, 185
константы, 214
математичес!Q{е операторы, 193
обработка ввода и вывода , 193,
195
оnерации со ссылками на ячейки,
187
отшщка программ,
процедура настройкн сложных
функций,
295, 298
nроцедуры автоматизации
рабочих листов,
180
создание диалоговых окон,
соэдание программ,
СоздаНИС процедур,
типы данных,
205, 219
176
189
формулы интеrриропания,
341,
344
57
фун.кции, создание,
U-V
199,
202
фун.кции,
кнопка (панель
инструментов Foлnatting),
222. 224
188, 192
nереМеиные,
202, 205
316,
фующи11 суммирования рядов,
Underline,
66
Undo, кнопха (панель инструментов
Standard), 66
Undo, кнопц (строка формул), 67
Ungroup OЬjects, команда (панель
инструментов Drawing), 162
UPPER(), функция, 42
320
Visual Bвsic for Applications, 1О, 30,
175, 224
Visual Basic Foлns, nаиель
инструментов, 199
Visual Basic, Enterprise Edition, 453
Visual Вasic, панель инструментов, 65
VLOOKUP(), фун.кция, 55, 148, 298
IДtj
Предметный указатеnь
w
Автосумма, кноnка (панель
инструментов Стандартная),
variaЫe,
regular, 223
WEEКDAY(), фунюmя, 44
WEEKNUMO, фунюmя, 44
WEIBULL(), функция, 47, 50, 462
watcb
66
АДРЕСО, функция, 55
АК111виая ячейка,
67
Алгебра матриц, 373
АМГД(), функция, 53
WНERE опе~тор, в оп~торе SQL,
Амортизации, функции,
250
While/Wend, цикл, 196
АМОРУВ(), фунюmя, 52
АМОРУМ(), фунюmя, 52
АМР(), функция, 53
Анализ Фурье, 58, 458
Аппроксимация кривыми, 270, 305
Wmdow, меню
Frceze Panes, 96
Unfrceze Panes, 97
Wmdows 95
Character Мар, 79
Windows, sерсия Excel, 10
WORКDAY(), функция, 44
Wor.kgroup, панель инструментов
(дJIЯ Excel 7.0), 65
Worksheets, КОJVlекция, 197
Write, опе~тор, 194
взвешивание, 305
по функциям, 46,
53
49, 271, 286
проsер:ка статистических
характеристик,
286
просмотр таблиц и интерполяции,
305
сложные функции,
288, 298
таблица поис:ка и интерполяции,
298
X-Y-Z
XlRRO,
экспоненциальное разложение,
Арrумеиты функций, 30
Арккосеканс,
функция, 53
XNPV(), функция, 54
XOR (исключающее ИЛИ),
формула,
41
ХУ, тип диаrраммы,
данные,
Арккотангенс,
Арксеканс,
86
37
37
86
Арсенид галия
127
редшсrирование,
стили,
37
Арккосеканс, пmерболический,
Арксеканс, rиперболический,
124
49
141, 146
124
температура электроииоrо газа,
358, 361
функция, 44
YEARFRAC(), функция, 44
YEAR(),
YIELD(), функция, 53
YIELDDISC(), фующия, 53
YIELDМAТ(), функция, 53
Zoom, управляющиА элемент
(панель инструментов
Standard),
66, 166
ZТEST(), функция, 47
ZГЕСТ(), функция, 47
Z-тест, проrрамма,
59, 460
теплопроводность,
277, 278, 281
Б
База данных дJIЯ анализа, 266
для включения
экспериментальных данных в
~бочий лист,
251
хранение и дое1)'П к данным в
Ехсе1,
250, 265
Базы даННЫХ
обезвоживания rончих борзых,
А
Абсолюmая величина звеuы, 90, 92
Абсолюrные ссылки на ячейки, 24,
71
Автоза.полнение, 73
Автоматический пересчет, 416
257
извлечение записей из,
253
импорrирование из внешних,
команды для, 251,
реляционные, 246
254
создание диапазона,
251
БДЦИСП(), ФУнкция, 51, 265
БдПРОИЗВЕд(), функция, 51
244
IMJ
Предметныu ук.азатеn1t
БдСУММ(), функция,
51, 265
Бесконечность как предел
ннтеrрирования, 335
Бесселя, функции, 38, 3 11, 460
с кrерацией рабочеrо листа, 315
БЕТАОБР(), функuия, 47, 462
БЕТАРАСП(), функция, 47, 462
БЗО, функция, 51
БЗРАСПИС(), функция,
51
БИЗВЛЕЧЬ(), функция, 50
БИНОМРАСП(), функция,
импортирование из,
244
Во весь экран, панель инструментов,
65
Возведения в сrепенъ, операция,
47, 50,
rиперболические уравнения в
439
442
Волновое уравнение, 439,
Восклицательный знак (!)
в синтаксисе обьектов,
(Wmdows), 233
21
ВОСЬМ.В.ШЕСТНО, функция,. 39
55, 148, 298
ВРЕМЗНАЧ(), функция, 108
ВРЕМЯ(), функuия, 44, 45
Ван дер Ваальса, уравнение
ВРЕМЯЗНАЧ(), функция,
88, 90
Ввод данных, обработка в
Visual
Basic, 193
Ввод, обработка в
Visual Basic, 195
Вебера, функция, 461
ВЕЙБУЛЛ(), функция, 47, 50, 462
Векторные функции поиска, 55, 57
Вернуrь,:кнопка(панель
ИНСiрументов Сrандарrnая), 66
Вернуть, хкопка, в форме данных,
264
ВЕРОЯТНОСТЬ(), функция,
46
85
Веса, в аппроксимации кривыми, 49
Вибрирующей струны, колебания,
440
Вид, меню
Во весь экран, 90
Панели инструментов,
161
По размеру окна,
66, 145,
.
150
Видимая величина звезды,
Вложенность функций,
91
30
IF(), 148
ЕСЛИ(),
39
39
ВОСЬМ.В.дЕС(), функция,
Времени,функции,44
в
148
ВНДОХ(), функия,
.
восьм.в.дво. функция,
ВПРО, функция,
Верхние индексы,
180
во внешних ссылках иа ячеАки,
Борзые, обезвоживание перед
rонками, 265
БСЧЕТО, функция, 50, 264
БСЧЕТА(), функция, 50
состояния,
28
Волновая механика,
часntых производных,
462
Блокнот
59
Внешние функции, 58,
Внешняя база данных,
53
Внедренные диаrраммы, 123, 131
редактирование, 138
Внешние библиотеки, 463, 466
Внешние ~сылки на ячейки, 21
44
Вставить, кнопка (rtанель
инструментов Стандарrnая),
Вставить, команда, 27
66
Вставка
ссылок на ячейки, 21, 68
функции для раООrы с массивами
в диаnазон ячеек,
31
31, 204
функций в формулы,
Вставка функции, кнопка (панель
инструментов Стандарrная),
31,
66, 204
Вставка, меню
Диаrрамма, 133
На новом листе (для
Excel 7.0),
150, 155
Имя, 25, 83
Вставип., 84
Присвоить, 84, 135
Создать, 134
Легенда (для Excel 7.0), 138
Линии тренда (для Весе! 7.0), 286
Макрос (для Excel 7 .О)
Диалоrовое окно (для Excel
7.0), 177
Модуль (для Excel 7.0), 176,
203, 209, 297
Метки значений (для Excel 7.О),
. 138, 143, 160
Названия (для Excel 7.0). 138
IUI
Предметный указатеnь
Новые данные (для
ГАММАРАСП(), функция, 47, 50,
Excel 7.0),
138, 140
462
Оси, команда (для
Примечание,
Сетка (для
Excel 7.0), 138
115
вычисления,
Excel 7.0), 138
Встроенные панели ииструментов,
66
Второrо порядка,
дифференциальные урав~кия.
401
Выбор источника данных,
диалоrовое окно,
Гамма-функция , 336, 339
функuия Visual Basic для
метод, 372, 378
Геяерация случайных чисел,
(панель инструмеН'l'Ов
86, 87
Рисование), 162, 166
обратные,
33, 37, 86
ГИПЕРГЕОМЕТ() , функция,
55
Выборка, программа, 59, 459
Вывод, обработка в Visual Basic,
47, 50,
<Ui2
194,
195
Гистограмма, программа,
Глобальные константы, в
58, 458
Visual
Basic, 186
Выделение
.а,,иапазоиа иепустых ячеек,
136
несмежноrо диапазона с
использованием мыwи,
Выполнения, о1Шfбки,
23
Выхода, процедура,
Глобальные переменные,
ГОД() , функция,
ГПР(), функция ,
191
44
55, 298
(. ), 79
функuия, 33, 36
Градуса, символ
222
Выполнить макрос, кнопка (панель
инструмеН'l'Ов Visual Basic), 183
выравнивание, меток, 72
Вырезать, кнопка (панель
инструментов Сrандартиая) , 66
Вырожденная матриuа, 37 3
464
ГРАДУСЫ(),
Границы, для рабочего листа,
74
Граниuы, кнопка (панель
инструментов Форматирование),
66, 74, 81 , 115
Граничные условия, для
дифференциальных уравнений,
Выходной диапазон
390, 391
нзмечение записей базы данных,
263
Графика, вставка на рабочий лист,
170
Графики, соэддние в
Вычисления
1F, фУJUЩия
для проверки
логического условия, 40
ЕСЛИ, функuия для проверки
логическоrо условия,
40
операторы, 28, 29
Вычисляемые поля , в формах
данных, 264
Вычитаиия,операuия,
28
Газовая динамика, rиперболические
уравнения в частных
439
ГАММАНЛОГ() , функuия,
ГАММАОБР(), функция,
DeltaGraph Pro,
132, 450, 451
Графические методы, для решения
нелинейных уравнений,
352
Группировать, инструмент (панель
инструментов Рксование), 166
д
Далее, кнопка, в форме даННЫХ, 264
Данные, выбор для диаграммы, 125
г
производных,
58, 459
Герметический вомной реактор, 299
ГерUUU1рунrа-Рассела,диаrрамма, 92
Гиперболические уравнения в
частных производных, 439, 442
Гиперболические функuии, 33, 37,
245
Выбор объектов, инструмент
ВЫБОР(), функция,
342
Гаусса-Зайделя, итерационный
47
47, 462
Данные, меню
Внешние даННЫе, 245
Сорmровка, 265
Таблиuа подстановки, 97, 103
из двух входных табmщ, 103
недостатки, 98
-
lt
l@lj
Предметныii указатеntt
Текст по столбцам,
реДаК111рование,
создание, 133
ДИаrраммы
237
Фильтр
Автофильтр,
252, 261
Оrобраэить все, 253, 263
Расширенный фильтр, 253, 262
Форма, 252, 264
Данные, типы в Visual Basic, 188,
189
Данных, ввод, 96
вручную, 230
101
импортироваиие из файла на
диске, 231, 242
Visual Basic, 193
Данных, метки, 143
Данных. форма, 252, 264
ДАТА(), функция, 43
ДАТАЗНАЧ(), функция, 43, 108
ДАТАКУПОНДО(), функция, 52
ДАТАКУПОНПОСЛЕ(), функuия,
52
направлению,
146
логарифмический масштаб по
одному направлению, 151
редактирование, 131, J37, 145
создание, 113, 136, 137
стрелки, 145
улучшение качества, 132
форматирование, 139
ДИаrраммьr, панель инструментов,
44
ДВ .В .ВОСЬМ(), фунхuия,
ДВ.ВДЕС(), функция, 39
139
закрепление содер:жимоrо, 141
лоrарифмическкй масшrаб и
логарифмический по одному
обработка в
ДАТАМЕС(), функция,
124
выбор типа, 124
добавление и изменение
объектов, 138
добамеиие кривых, 140
добамеиие непрю::репленноrо
текста,
защита от случайного ввода,
ДИалоrовые окна
код д1IЯ скрытия в
39
ДБ.В.ШЕСТИ(), функция, 39
Двоичные файлы, запись в
текстовый файл, 23 l
Visual Basic,
назначение процедур
уnравляюu.щм элементам,
прямоуrольиый формат,
92
458
ДВФАКТР(), функция, 39
ДЦОБ(), функция, 53
Деления, операция, 28
202,
219
отображение,
201
рисование, 199
скрытие, 201
соэдание в Vtsual Basic, 199, 202
соэдание польэоваrельских, 193
Двухвыборочный F-тест,
Делианиса, 'lастаrный фильтр,
создание процедур д1IЯ
уnрааляющих элементов,
162,
209
ДИалоrовые рабочие листы, 177
Диапазон вывода
170
опреДеление,
диаграмма передаrочной
функции, а не частоты,
165
ДЕЛЬТА(), функция, 39
Денежный формат, кнопка (панель
инструментов Форматирование),
66
ДЕНЬ(), функция,
44
ДЕС.В.ВОСЬМ(), функция, 39
ДЕС.ВДВ(), функция, 39
ДЕС.В.ШЕСТН(), функция, 39
Десятичные знаки, число
отображаемых,
73
листы, 123
253
диапазон условий
д1IЯ расширеННоrо фильтра,
определение, 253
Диапазон ячеек, 20, 21
вставка функций работы с
массивами,
44
ДЕНЬНЕД(), функция,
65
214
ДВССЫЛ(), функция, 55
Двухвходовые таблицы, 88, 93
параллельные столбцы, 88, 89
Диаграмм,
выбор стиля,
l 38
253
31
вьщелекие непустых ячеек,
136
имена,
25, 83
ссылки, 21
динамически связываемые
библиотеки (DLL), 58, 187,
доступ к функциям, 466
компилятор для создания,
411
46 3
мим
Предметныu ук.азатеnь
Дирнхле , граничные условия,
ДИСП(), фунI01ИЯ, 46, 48
д.tсперсионный анализ , 456
Диспе1Чер сuеиариев,
416
ДОХОДСК.ИДКА() , функция,
ДОХОДЧЕК(), функция , 53
294
ДИСПР(), функция, 46, 48
391
Дуrа, инструмент (панель
ииструменrов Рисование),
ДФОШ(), ф)1{кция, 39, 461
391
обыкновенные, 390, 417
обыкновенные или в частных
производных,
424
391
ДиффереИциальные уравнения в
ЕЛОГИЧ() , ф)1{Ю1ИЯ,
частных производных
не обыкноиеннь1е,
<424
параболические, 432,439
тиnы, 424
элиптические, 425, 430
ЕНЕЧЕТ(), функция,
ЕОШ() , фующия ,
rиперболическне
дифференциальные уравнения
· в частных производных,
439
параболические
цифференциальные уравнения
в частных произво.11Ных,
ДЛИТ(), функция, 52
ДЛСfР() , функция, 42
432
ЕСЛИ(), функция
вложение, 148
ЕСЛИ(), функция, 40, 88, 101
ЕССЫЛКА(), функция , 54
ЕТЕКСТ(), функция, 54
ЕЧЕТН(), функция, 54
ЕЧИСЛО(), функция, 54
Зависимость конuентрации
81
52
ДОБ(), фующия, 53
Добавить модуль, инструмент
(панель инструментов Visual Вasic
для Excel 7.0), 177
Добавить примечание, хоманда,
115
ДОВЕРИТ() , функция, 46
Доверительный интервал, 271
108
Доллара, символ($) , для
абсолютных ссылок на ячейки, 24
ДОЛЯГОДА(), фунЮlИЯ , 44
Дополнительная функция о11Шбок,
53
54
носителей заряда оr. темnературы,
265
ДНЕЙ360(), функция, 44
ДНЕЙК.УПОН(), фунЮlИЯ, 52
ДНЕЙКУПОНДО(), фунЮlИЯ, 52
ДНЕЙКУПОНПОСЛЕ(), фунЮlИЯ,
461
54
54
ЕОШИБКА(), фующия, 54
ЕПУСТОС), функция, 54
Диффузия
Документ, защита паролем,
54
ЕНД(), функция, 54
ЕНЕТЕКСТ() , фунЮlИЯ,
rиперболические,439,442
ДОХОД(), функция,
162
Е-3
первого порядка ,
ДМАКС(), функция, 50,
ДМИН(), фунI01ИЯ, 265
265
51
ДСТАНДОТКЛП(), фующия,
Дифференциальные уравнения
второго порядка, 401
граничные условия , 390,
53
ДСРЗНАЧ(), фунI01ИЯ , 50, 265
ДСТАНДОТКЛ(), фунЮlИЯ, 51,
Дифференuиальное уравнение
первого порядка,
ДОХОДПЕРВНЕРЕГ(), функция, 52
доходпоrлшо, функция, 53
ДОХОДПОСЛНЕРЕГ() , функция, 52
Зависимые переменные , 88
Заrоловки, 71
добавление к диаграммам, 128
закрепление, 96
Заrоловки, выравникание по uентру,
73
Заrоловок процедуры, 176
Задачи Ко11Ш, 390, 400
метод Рунге- Купа, 398,
метод рядов Тейлора,
400
392, 395
метод Эйлера и
модифицированный метод
Эйлера, 396
Захрашенный произвольный контур,
инструмент,
162
Закрашенный прямоуrольник,
инструмент,
162
Закрашенный сектор, инструмент,
162
IЩI
Предметныu ук.азатеnь
Закрашенный эллипс, инструмент,
Закрытие
размеченного табуляциями
63
файлов во время отладки,
Закрыть, кнопка, 63
ЗАМЕНИТЬ(), функция, 42
Замораживание
219
236,
с использованием
Visual Basic for
Applications, 242
таблнчных данных, 237, 238
96
содержимоrо диаграммы,
текстовою файла, 237
размеченных файлов, 233,
237
141
Записать макрос, кнопка (панель
файлов из тексrовоrо процессора,
инструментов
Visual Basic), 182
Записи в базе данных, 50, 250
измечение отфильтрованных, 262
ограничение отображения, 254
Запись макроса, диалоговое окно,
181
Запись процедуры, 181
Запрос и сводные таблнцы, панель
инструменrов (для Excel 7.0), 65
Защита, команда (меню Сервис),
101
238
ИНДЕКС(), функция,
55, 276, 302
Инженерной катеrории, функции,
38
Инженерные вычисления, ЛИС"I',
Инженерные таблицы, 63, 116
абсолютная величина звезды,
12
90,
92
rиперболнческие функции,
двухвходовые таблицы,
86
88, 93
зависимость концентрации
Звезды, абсолютная величина,
ЗНАК(), функция, 33, 34
ЗНАЧЕН(), функция,
90, 93
носителей заряда от
температуры, 81
калькуляrор функции, 116
калькуляторы функций, 106
42
Значение, свойства ячейки,
20
Значения
коэффициент лавинною
вычисление списка, 69
замена формул, 83
функции определения типа,
умиожеиия электронов в
кремнии,
55
неопределенных функций,
"IраНсформатор,
85
103, 106
напряжение и прогиб консольной
Значения по умолчанию
для вида диаграммы,
146, 151
лннейный nеременно
дифференциальный
Значения ошнбок, для
балки,
139
для формата текстовых файлов в
99, 102
подвижность электронов в
кремнии,
Excel, 231
94, 97
построение графиков,
мира,
76, 81
температурный профиль в
26, 41
Изалечение заriисей из базы данных,
253, 262
в целевой диапазон,
ИЛИ(), функция, 41
Имена
констант, 82
133, 136
прецессия северною полюса
и
И(), функция,
231
244
из внешней базы даиных,
рабочею листа,
заrоловков,
Импорmрование
данных из файла на диске,
162
объектов в диалоговом окне,
пераменных, 188
ячеек и диапазонов, 25, 83
152, 155
удельное сопротиалсние крамния,
263
неопраделенные в формулах,
перенапряженном кремниевом
диоде,
133, 134
уравнение состояния Ван дер
85
201
Ваальса, 88, 90
Инженерный формат,
ИНОРМА(), функция,
132
52
Интеrралы, несобственные,
335
IЦl:i
Предметныu указатеnь
Интегрирование данных, 332, 341
бесконечность как предел, 335
- методы
340
на рабочих листах,
добавление на рабочий лист,
как объекты,
336,
прикрепление процедуры
MakeMatrix, 414
46, 48
Интерполяция
кубическая, 303, 305
линейная, 299, 302
КОВАР() , функция,
Ковариациоиный анализ,
программа,
ИНФОРМ() , функция,
54
Информационные функции, 54
Искровые зазоры, импоtуmрование
текстового файла ,
233
58, 457
КОДСИМВ(), функция, 42
Коле&! ння . rи перболические
дифференциальные уравнения в
частных производных ,
Искровые промежутки,
439
импортирование текС1'овоrо
Коллективиая работа, панель
инструментов (для Excel 7.0),
файла ,
КоJШекции объектов, цикл,
237
исrиНАО , функция, 41
ИСТИНА, логическое значение,
Истинности, таблица , для
логических функций,
Итерации
временных шагов,
38
438
372, 378
в
Visual Basic, 185
конвертирование меток, 215, 216
Конвертирование программы для
Excel
к
Кавычка, одинарная
управления,
Visual Basic,
для nyrи к каталоl)' в ссылках на
ячейки, 21
Калькуляторы функций,
106, 109,
116
109, 116
Каталог, во внешней ссылке на
21
Квадратичные кривые,
303
Квадратура Гаусса , 334, 339
КВАДРОТКЛ(), функция , 45
46
функция, 46
КВАРТИЛЬ(), функция ,
КВПИРСОН(),
Квавиатурные эквиваленты,
Macintosh
или РС,
FORTRAN, 206, 219
1О
Клавиатурные эквивалеКJЫ,
назначение макросу,
208
ПОIIЪЗовательское диалоговое окно,
(')
185
ячейку,
в
диалогового окна, процедуры
для комментариев в
сложные,
40
Комментарии
436, 439
задаиие максимального числа,
65
197
Командные процедуры
для автоматизации обработки
рабочих листов, 180
запуск, 186
КОМЛЕКСН() , функция,
41
Итерационный метод
Гаусса-Зайделя,
298
179
181
Классификация типов уравиеиий в
частных производных,
424
Кнопка, инструмент (панель
инструментов Формы) , 200
Кнопки панелей инструментов,
описание, 64, 66
206, 208
Конец процедуры,
176
Конкатенации, операция
(&), 28
КОНМЕСЯЦА(), фуию..r.ия,
44
Консольная балка, напряжение и
прогиб в,
99
Константы в Visual
глобальные, 186
определение,
Basic, 214
203
Константь1 в уравнениях,
Контейнера, модель, 179
82
Контрольное значение, инструмент
(панель инСЧJум:еtпов
для
Visual Basic
Excel 7.0), 222
Концентрация носителей заряда,
зависимость от температуры,
81
Концентрические цилиндры ,
потенциал между, 426, 430
Копирование
и относительные или абсолютные
ссылки Д1IЯ формул, 23
рабочего листа, 140
ссЫJtок на ячейки , 26
ячеек, 80
1рр1
Предметныu указатеnь
температурный профиЛь в
Копирование и вставка, для
отфильтрованных записей базы
данных,
76, 96
66
35, 291
33, 35
КОРРЕЛ(), функция, 46, 48
Корреляции, коэффициент, 272
Корреляционный анализ, 457
Корреляционный анализ,
58
энерrии перехода, 202, 203
Кривые, добавление к лиаrрамме,
140
КРИТБИНОМ(), функция,
rиперболический, 37.
обратный rиперболический,
Котанrенс, 36
rиперболический, 37
обратный rиперболический,
264
Критерия значимости, функции,
Кубические кривые,
37
л
24
ЛГРФПРИБЛ(), функция,
111
272
Коэффициент лавинноrо умножения
электронов в кремние, 146, 151
Коэффициенты возрастания кривой,
49
ЛЕВСИМВ(), функция,
Левые разности,
Леrенда
42
325
для диаграммы,
редактирование,
129
138
ЛИНЕЙНО, функция, 46, 49, 274,
277. 278, 280
Линейная интерполяция,
Коэффициенты лавииноrо
299. 302
Линейная регрессия, вычисление,
147
Коэффициенты ~грессии, таблица,
278
276, 281
теплопроводность арсени.rш rалия,
277, 278, 281
КПЕР(), фун:к:ция, 51
Краевые задачи
для обыкновенных
Линейный переменно
днфференциальный
дифференциальных уравнений,
401, 416
метод конечных разностей,
407
401, 407
удовлетворение условиям более
высокоrо порядка,
Кремний
46, 49,
276
регрессии, 283
Коэффициент детерминированносrи
метод стрельбы,
303
66
71
умножения, таблица,
303, 305
37
в формуле, для абсолютной
определение,
47;
Курсив, кнопка (панель
инструментов Форматирование),
Коэффициент
произвоцительности,
47
Критерии, кнопка, в форме данных,
Кубическая интерполяция,
для функций, 305
ссылки на ячейку,
133, 134
50
36
извлечение,
67, 75
функция макроса для вычисления
КОРЕНЬ(), функция, 33,
КОРЕНЬПИ(), функция,
программа,
теплопроводность,
удельное сопротивление,
Копировать, кнопка (панель
инструментов Стандарmая),
Копировать, команда, 27
Косеканс,
152,
155
Копирование формул, создание
таблиц,
перенапряженном диоде,
262
416
166
коэффициент лавинноrо
умножения, 146
подвижность электронов,
трансформатор, 103, 106
Линии сетки, на рабочем m1cre, 75
Линии тренда, 286, 288
Линия тренда, циалоrовое окно, 287
Линия, инструмент (панель
инструментов Рисование), 162,
94, 96
Лоrарнфмические диаrраммы, 146
Лоrарифмическ:ие функции, 33, 35
Лоrарифмический масштаб
диаrраммы по одной оси, 146
i1Фi
Предметныu указатеnь
Логическая эквивалентность,
формула для, 41
Матричные методы
Логические значения, функции, 41
Логические операции,
28
Логические функции, 38, 41
таблица истинности, 41
Логические функции проверки, 41
ЛОГНОРМОБРО, функция, 47
ЛОГНОРМРАСП(), функция, 47,
462
ЛОЖЬ(), функция,
41
· для систем уравнений, 372, 374
конечных разностей, 411, 416
Матричнь1е функции, 38, 372
МВСД(), функция, 53
МДЛИТ(), функция, 52
МЕДИАНА(), функция, 45, 48
Меню, строка, 64
МЕСЯЦ(), функция,
Метки, 71
выравнивание,
ЛОЖЬ, логическое значение, 38
44
72
конвертирование в примечание,
216
м
Макросы,
на диаграммах,
181
МАКС(), функция, 47
Маркер заполнения, 27, 69, 80
Массивы переменных, ЦИК.,'JЫ для.
197
Массивы, формулы
в надстройке
Solver, 293
в надстройке Поиск решения,
ввод,
293
построение,
диаграмме, 138
Метод конечных разностей
для краевых задач, 407
итерационнь1й, 407, 408
матричное решение, 411, 416
ускоренный, 407. 409
Метод наименьших квадратов, 49
Метод релаксации для нелинейных
уравнений,
276
Массивы, функции,
357, 362
Метод Якоби для решения систем
31
уравнений,
204
375
Мастер диаграмм, кнопка (панель
Методы объектов,
инструментов Стандартная),
МИН(), функция,
66,
179
47
МИНУТА(), функция,
124, 136
Мастер диаграмм, 124, 128, 165, 278
шаr
1, выбор типа диаграммы, 124
шаr 2, выfiор источника данных,
125
шаг 3, выбор параметров
диаграммы, 128
шаг 4, выбор места размещения
диаграммы, 130
Мастер подсказок, панель
инструментов (для Excel
Мастер текстов.
160
Метки данных, редактирование на
44
МНИМ.АВS(), функция,
мним.соsо. функция,
40
40
МНИМ.ЕХР(), функция, 40
MHИM.LN(), функция, 40
МНИМ.10010(), функция,
МНИМ.АРГУМЕНТ(), функция, 40
МНИМ.ВЕЩ(), функция,
7.0). 65
235, 237
233
диалоговое окио,
фиксированной 1Шlрины, флажок,
237
Масuпаб, управляющий элемент
Стандартная), 66, 166
Математические операторы в Visual
МНИМ.СГЕПЕНЬ(), функция, 40
40
мним.чАсrьо, функuия, 40
Мноrовходовые, мноrостолбцовые
таблицы,
Basic, 193
Математические операции, 28
Математические функции, 32,
40
МНИМДЕЛ(), функция, 40
МНИМ.КОРЕНЬ(), функция, 40
МНИМ.ПРОИЗВЕД(), функция, 40
МНИМ.РАЗИ(), функция, 40
МНИМ.СОПРЯЖ(), функuия, 40
МНИМ.СУММ(), функция,
(панель инструментов
40
MHИM.LOG2(), фунхuия, 40
MHИM.SIN(), функция, 40
93, 96
Многомерная линейная регрессия,
38
271
•1~11
Предметныu ук.азатеnь
МОБР(), функция,
31, 38, 372, 374,
Неверные числовые вычисления,
МОДА(), функция, 46
Модифицированный метод Эйлера,
Неверные числовые вычисления,
415
функuия
397, 401
Модуля, лист,
177
238
40
функция ЕСЛИ для проверки,
40
423
Незащишенные ячейки,
МОПРЕД(), функция,
38
МУМНОЖ(), функция.
116
Неймана, граничные условия,
МУЛЬТИНОМ(),функция,
416
Неймана, функция,461
32
38, 374
Нелинейная динамика,
Мышь
17 J50, 366
Нелинейные уравнения,
графические методы решения,
.IVlЯ выделения несмежных
диапазонов,
23
метод Ньютона,
для выделения ссылок на
диапазоны,
метод последовательных
приближений, 350, 355
метод релаксации, 357, 362
н
надстройка
162
166
к диаграмме, 139
Непустые ячейки, выделение
диапазона,
136
пользованием клавншн
Несобственные интегралы,
диалоговое окно, 186, 298, 414
Наиболь11Шй общий делитель, 35
НЕТ(), функция,
НАИБОЛЬШИЙ(), функция, 46, 48
Н::~именьшее общее кратное,
35
НАИМЕНЬШИЙ(), функuия, 46, 48
НАЙТИ(), функция, 42
НАКЛОН(), функция, 46
НАКОПДОХОД(), функция, 52
НАJ(ОПДОХОДПОГАШ(),
функuия, 52
Напряжение и прогиб консольной
балки, 99, 102
35
Небесная механика, вычисления,
335
НЕЧЕТ(), функция, 32, 34
Новой строки, символ, 195
НОД(), функция, 32, 35
НОК(), функция, 32, 35
Номера о!Шlбок,
19
НОМИНАЛ(), функция,
52
НОМНЕДЕЛИ(), функция,
44
НОРМА(), функция, 52
НОРМАЛИЗАЦИЯ(), функция,
46
Нормирование систем связанных
уравнений, 383
47, 462
47, 462
НОРМСТОБР(), функция, 47, 462
НОРМСГРАСП(), функция, 47, 50,
462
нпзо. функция, 53
НОРМРАСП(), функция,
17
<Ctrl>,
41
НОРМОБР(), функция,
Начтъ изменение узлов, команда
(панель инструментов
Рисование), 162
НД(), функция, 54
76
85
Непрерывная производная, 303
Неприкрепленный текст, добавление
;f
omo, 57
Назначить макрос обьеК1)',
Небесный экватор,
приближение, 350
Неопределенные имена, в формулах,
Несмежнь1е диапазоны, выделение с
30, 57 ·
Натуральный лоrарифм,
364,
366
На передний план, команда (ланел.ь
инструмеюов Рисование), 162
Надпись, инструмент (панель
инструмеюов Формь1), 199, 207
Надпись, кнопка (панель
инструмеюов Рисование), 162,
Надстройки, диалоrовое
Soiver, 364, 366
надстройка Поиск решения,
инструмеюов Рисование),
352
362, 364
22
На задний план, команда (паиель
Надстройки,
проверки,
Независимые переменные, 88
в дифференциальных уравнениях,
Моноширинные шрифты и анализ
данных,
IF .IVlЯ
Предметный указатеоь
Ньютона, метод для нетшейных
уравнений,
задачи Коши,
390
416
362, 364
краевые задачи,
о
Обычный лоrарифм,
не в частных производных,
Обычный просмотр переменНЪIХ,
223
Обезвоживание борзых перед
rонками,
424 _,.
35
Овал, инструмент (панель
265
соэдание базы данных,
ОБЛАСТИ(), функция,
инструментов Рисование),
256
162
166
55
Обработка ошибок, 222
в Visual Basic, 218
Data)>Table, 98
Обратная матрица, 37 3
Обратные rиперболические
Одновходовая таблица, команда
функции, 33, 37,86
Обратные тригонометрические
функции, 33, 36
Окно, меню
Данные>-Таблица подстановки,
Закрепить области,
22
Объединение теКстовых строк, 28
Объедиюпь и поместить в центре,
кнопка (панель инструментов
Форматирование), 66, 81
Объектно-ориентированное
лоrические,
Visual
202
179
197
28
математические,
приоритет, 29
унарные,
28
28, 29
Операции с текстом, 28
Описательная статистика,
программа, 58,458
Оптимальные зиачеиия, 109
Орфография., кнопка (пане.ль
124
инструментов Стандар'mая),
66
128
52 .
Осей, метки, для диаграмм,
140
с nропорциоиальной сеткой,
161
соэпание, 151, 161
стили, 124
таблицы, 154
Объемные таблицы, с
156
•
159
Объямение виешней функции, 59
пропорциональной сеткой,
Обыкновенные диффе~нциальные
уравнения,
32, 34
Операции
оnределение свойств и методов,
изменение ориентации,
каркас, 155
327
327
ОКРУГЛТ(), функция,
Basic, 179
Объемные диаграммы,
данные, 127
Окруrление чисел, 34
в разностных формулах,
формулах,
179
цикл для коллекций,
ОКРВНИЗ(), функция, 32, 34
ОКРУГЛ(), функция, 32, 34
ОКРУГЛВВЕРХ(), фущщия, 33, 34
ОКРУГЛВНИЗ(), функция, 33, 34
Окруrления, ~шибки, в разностных
Объекты
в диалоговых окнах, 201
добавление и изменение на
диаграмме, 140
назначение nроцедуры,
97
ОКРВВЕРХ(), фущсция, 3~. 34
Объединение диапазона ссъшок,
доступ с использованием
98
96
Снять закрепление областей,
ОБЩДОХОД(), функция, 51
ОБЩПЛАТ(), функция, 51
программирование,
•
Одновходовая таблица, команда
390, 417
для краевых задач, 401
для начальных задач, 401
ОСНПЛАТ(), функция,
Останова, критерий (для
итерационноrо процесса),
355
Остановить запись, кнопка (панель
инструментов Осrановка записи)
182
'
ОСТАТ(), функция., 32, 34, 80
Остаточная квадратичная ошибка,
- 271
Остаточные члены, сумма квадратов
2~
,
Ось, редактирование на диаграмме,
138
Предметныu указатеnь
ОТБР(), функцня,
33, 34
п
Оrдельно распространяемая ,днекета,
Пакет анализа,
12, 454
Оrклонение эклнnтнки,
78
встроенные,
66
66
Панель задач (Windows 95), 65
Пара, таблицы, 299, 300
вычисление ежеrодноrо
изменения,
78
отображение,
Оrкрь1тие документа, диалоговое
окно,
194
Открытые файлы
Параболические дифференциальные
195
использование Visual Basic для
заnиси в, 194
процедура закрытия, 219
и сбой программы,
уравнения в частных
производных,
инструментов Стандартная),
Отладка, 318
двухвходовых таблиц,
Переrретоrо пара, точки данных,
219
Basic, 222
299, 302
Перегруппировать, команда (панель
Оrмена, кнопка (строка формул),
67
Отменить, кнопка (панель
инструментов Рисование),
инструментов Стандартная),
66
инструментов Формы),
23
в
глобальные,
27
для двухвходовых таблиц,
панель инструментов,
88
27
Перенос, гиперболические
уравнения в частных
201
панелей инструментов,
производных,
66
Рисование, панель инструментов,
161
фармул на рабочем листе,
75
Отобразить окно, кнопка (панель
инструментов Формы),
200
47,
462
46
Пересчет
автоматический,
неопределенной переменной,
Ошибка. открытия файла, 195
Ошибки
188
327
195
переполнения nри вычислениях,
38
18
Пересечение ссьmок на диапазоны,
ПЕРЕСГ(), функuия,
Ошибка компиляции, из-за
18
чувствительность эле1СТр0нных
22
ОТРЕЗОК(), функция, 46
Отрицания, операция, 28
в разностных выражениях,
выполнения, 222
439
Переполнения, ошибка,
чувствительность электронной
таблицы, 18
Переполнения, ошибка,
таблиц,
ОТРБИНОМРАСП(), функция,
Ошибок, фуюшии,
Visua! Basic, 188, 191
191
Перемещение ссьmок на ячейки,
Отображение
открытия файла,
200, 208
Переменные
копирование, а не перемещение
диалоговых окон,
L62
Переключатель, инструмент (панель
Относительные ссылки на ячейки,
Drawing,
161
88, 89
108
Пароль,защить1документа,
ПДОБ(), функция, 53
66
закрытие файлов в проuессе,
фармул,
432, 439
Параллельный столбец, для
Оrкрьпь, кнопка(панель
программы Visнal
57, 456, 459
Панели инструментов
416
Перетащить и опустить, для
копирования и вставки,
87
46
ПЕРСЕНТИЛЬ(), функция,
Печать,кнопка(панель
инструментов Стандартная),
ПЕЧСИМВ(), фунЮlИЯ,
ПЗ(), функция, 52
ПИ(), функция, 33, 36
ПИРСОН(), функция,
ПЛПРОЦ(), функция,
42
46
51
66
•1~11
Предм~tii указатеоь
По левому краю, кнопка (панель
инструментов форматнрования),
66
По правому краю, кнопка (панель
Поле со списком, кнопка (панель
инструментов Формы), 200
Полнлиния, инструмент (панель
инструментов РисоВ3Ние), 162
инструментов Форматирование),
Полиномиальная регрессия ,
66
вычисление, 283
Полиномы Лежандра, 316, 319
Полоса прокруrки, кнопка (панель
инструментов Формы), 200
Полужирный, кнопка (панель
инструментов Форматирование) ,
По центру, выравнивание
73
заrоловков,
По центру, кнопка (панель
инструментов Форматирование),
66
Поворота, уrол, для объемных
11Иаrрамм, 156
ПОВТОР(), функция,
66
42
Подвижность электронов в
кремнии, 94, 97
Подписи данных, 143
Подпрограммы
Пользовательское 11Иалоrовое окно
для конвертирования проrраммы из
Excel в FORTRAN, 206, 208
сщцание, 193
Помощник, кнопка (панель
465
DLL, 58
объяаление,
хранение в
инструментов Стандартная),
хранение в 11ИНамически
связываемых библиотеках. 58
ПОДСfАВИТЬ(), функция, 42
Подчеркивание в именах ячеек, 84
Подчеркивание, для ячеек, 115
Подчеркнуrый, кнопка (панель
инструментов Форматирование),
66
Поиск рещеиия , 59, 293, 295
нелинейных уравнений, 364,
66
40
Порядковый номер даты,
20, 43, 44
Последовательных приближений,
метод, 350, 356
сходимость,
352
Построение графиков, инженерные
таблицы. 133, 136
коиuентрическими uилиндрами,
426, 430
11Иффереициальных уравнений,
406
Связанных mtНейиых уравнений,
380, 382
установка, 294
,
Поиск решения , 11Иалоrовое окно,
294, 365
ППЛАТ() , функция,
Правка, меню
Заполнить.
51
27
Выровнять, 108
Очистить, 293
Повторить форматирование , 81
Специальная вставка, 140, 141
Транспонировать, l 57
ПРАВСИМВ(), функция,
55, 298,
301
Показатель качества, 109, 111
Поле имени, в строке формул,
42
Предварительный просмотр, кнопка
(панель инструмекrов
Стандартная),
67
Поле с рш:крываюшимся списком,
кнопка (панель инструментов
Формы), 200
Поле со списком, ииструмеит
(панель инструментов Формы),
200
ПОРОГ() , функция,
ПоТенuиал между
366
обыкновенных
ПОИСК(), функция, 42
Поиска, функции, 55, 57
ПОИСКПОЗ(), функции,
53
ПОЛУЧЕН О(), функция,
Поля в базе данных, 50
имена, 251
66
ПРЕДСКАЗ(), функция,
П РЕОБ Р(), функция,
46, 49
39
Преобразования tщиниц измерения
уrла, функции, 33
Прецессия севериоrо полюса мира,
76, 81
Предметныii указатеЛJ.
Приближение
для нелинейных уравнений,
Д11J1 суммирования рядов,
Процентный формат, кноnка
(панель инструмеlПОв
350
Форматирование), 66
ПРОЦЕНТРАНГ(), функция, 46, 49
Прямоугольник, инструмент (панель
316
и точность чисел, 17
метод конечных разностей,
407,
инструмеlПОв Рисование),
408
формулы интегрирования,
48
Примечания, добавление к ячейке,
115
Visual Basic, 194
29
Visual Basic, 193
Приоритет операций,
Пустой рабочий лист,
Присвоение именн, диалоrовое
окно,
50, 462
64
26, 84
Присвоить имя, диалоrовое окно, 84
П роrиб бмки, вычнслеиие, 402, 407
Проrиб консольной балки,
99
балки,
402, 407
ПРОИЗВЕД(), функция, 32, 35
Проиэводиая функции, для·метода
Ньютона,
362, 363
Производные, численные,
42
42
Просмаrр объекrов, диалоrовое
180
Проi:маrр обьекrов, инструмент
(панель ииструмеlПОв Visual Basi<:
для Excel 7.0), 180
Просмаrр переменных, обычный,
223
55
Простое аналитическое уравнение,
решение,
202, 205
автоматической обработки
рабочих листов,
вызов друrих, 198
rраницы и сетка, 74
добавление кнопки, 298
как объекты, 180
команды, автоМirl"Изация,
конвертНрование в
180
FORTRAN,
206
копирование,
141
методы интегрирования, 337, 339
ие рабочие книrи, 66
окно, 63
пустые,64
328, 331
21
стрелКИ,
для управляющих элементов
202, 209, 219
назначение объекту, 202
создание, 176"
Процента, операция вычисления,
Процентный формат, 395
123, 131
ссЫJIКа иа ячейку дpyroro листа,
180
диалоrовых окои,
ввод экспериментальных данных,
разностные формулы,
сохранение, 75
67, 75
Процедуры, создание,
Excel 7 .О), 182
66
внедрение диаграмм,
вставка графики, 170
33
ПРОСМОТР(), функция,
не рабочие листы,
вид,
ПРОМЕЖУfОЧНЫЕ.ИТОГИ(),
ПРОПНАЧ(), фунЮIИЯ,
листы модуля (для
229, 251
75
заrоловки,96
ПРОПИСИ(), фунЮIИЯ,
30
Рабочие книrи
Рабочие листы
-325, 332
П рокруrка и закреnленные
функция,
р
РАБДЕНЬ(), функция, 44
Рабочеrо листа, функции,
Проrиб равномерно иаrружеиной
окно,
333
Пµямоуrольный формат, для
двухвходовых таблиц, 92
ПСГР(), функция, 42, 244
ПУАССОН(), функция, 47,
Пуассона, уравнение, 425
Принтер, вывод в
в
162
Прямоуrольиика, правило, для
Пример стандартноrо отклонения,
28
429
суммироващrерцов, 310, 312
форматирование, 80
формление, 71
Рабочих листов, ярлычки, 66
Равенства, знак(=), 19
РАВНОЧЕК(), функция, 53
РАДИАНЫ(), фующия,
33, 35
•1~а
Предметныii указатеnь
Разгруппировать, команда (пане.ль
инстру~в Рисование), 162
матричные методы ,
Размер шрифта, поле (панель
надстройка
иа.qстройка Поиск решения ,
инструментов Формаrnрован ие) ,
66
372, 374
378, 380
Solver, 380, 382
меrод релцксации,
380,
382
Размеченные файлы,
связанные системы уравнений,
импорrnрование , 233,
Разносrей, среднее, 329
Разности вперед, 326
236, 237
380
Решение линейных уравнений,
Разностные формулы
на рабочих листах ,
328, 331
326, 327
325, 327
Ранг и персентиль, проrрамма ,
58,
459
РАНГ() , функuия, 46
Распределений . функции ,
47, 50,
РИМСКОЕ(). функuия, 32
Рисоваиие
диалоговых окон, 199
рисунков, 161 , 170
Рисование, кнопка (панель
инструментов Станд31Уmая),
66,
161
461 , 462
Рисование, панел ь инструментов,
Расширенный набор символов
(DOS), 79, 95
145, 162
Расширенный фильтр , диалоговое
окно, 253
РЕГИСТРАТОР.Ид, функuия , 466
Регрессии, вычисление, 276
полиномиальная,
Регрессия, инструмент,
271
277
279
Регрессия, проrрамма,
отображение, 161
Рисованная кривая, инструмент
(панель инструментов Drawing),
162
Рисунки, рисование,
283
Регрессионный анализ,
таблицы,
371,
374, 380
ошибки,
типы ,
. 371 , 374
Связанные системы уравнений ,
59, 459
275
Регрессия, сумма квадратов,
Редактирование
161, 170
Ромберга , интеrрирование, 334,
РОСТ(), функuия, 46, 49 , 276
РУБЛЬ(), функция, 42
РУБЛЬ.ДЕС(), функция, 53
РУБЛЬ.ДРОБЬ(), функuия , 53
338
Рунге-Купа , метод решения
диаграмм,
131, 137, 145
точечной диаrраммы, 141, 145
формул , 67
'Начальной задачи,
398
РЯД.СУММ() , функция,
33, 35, 310
РядЫ формул
Результаты поиска решения,
для точечных диаrрамм,
диалоговое окно, 294,
Рекурренmая зависимость,
замена ссылок значениями,
383
311
143
141
прикрепление кривых к
Релаксации. коэффиuиент
диаrраммам,
141
включение в разностную
формулу,
409
лля метода релаксаuии,
Релаксаuии, метод, 372
с
379
Сбой проrраммы, открытые файлы,
Д11Я решения линейных
уравнений ,
195
378, 380
Релаксация, 357
Реляuиониые базы данных,
Реuензирование , панель
инструментов,
Свойства
378
201
Свойства элемента управления ,
65
Решение линейных уравнений
итераuионный метод Гаусса9айлеля,
объекта, 179
объекта диалогового окна,
246
инструмент (панель инструментов
·
Формы),
200
Предметный указатеnь
Связанные системы линейных
уравнений, матричные функции,
Вычисления, ВЮiадка,
Предельное число шераций,
353, 359
412, 416
Сьязанные системы уравнений,
37i,
383
матричные меrоды,
375
решение линейных уравнений,
371, 375, 382
rочностъ и нормирование,
Вычисления, вкладка, Точность
как иа экране. l 7
Вычисления, вкладка, флажок
Система дат 1904, 43
Общие, вкладка, Стиль ссылок
383
Связывание и внедрение объектов
RlCl , 21
Правка, В1'Ладка , фЛажок
Автозаполнеиие значений
(OLE). 58
Сrлаживаиие экспериментальных
данных,
332
Северный полюс мира, прецессия,
СЕГОДНЯ(), функция ,
Секанс, 36
гиперболический , 37
Формы).
44
151
Сибека, коэффициент,
37
44
Сервис, меню
MS Query, 245
Анализ данных
Регрессия,
200
СЖПРОБЕЛЫ(), функция,
обратный гиперболический ,
СЕКУНДЫ(}, функция ,
279
101
Защита~Защититъ лист,
108
Макрос
Начать запись, 182
Остановить запись, 182
Относительная CCЬUIIOl, кнопка
(панель инструмеmов
Остановка записи),
Надстройки, 57
182
Query, 245
назначение процедуры,
182
НазначитЪ макрос (для Excel 7.0),
182, 202, 219
СИМВОЛ(), функция ,
42
ll О
42
Симпсона, правило для формулы
интегрирования, 334, 339
Синrулярность в матрицах, 384
Синтаксический анализ, 237
Скалярного поля, задачи, 425
Сканеры, 230
СКИДКА(), функция , 52
Скобки в формулах, 29
Скользяшее среднее, программа,
Вид, вкладка, флажок Сетка ,
58,
459
СКОС(), функция,
Скрытие
47
,
201
код Vis1 i'al Basic, 214
диалоговых окон,
содержимоrо ячеек, l 02
Скэлинджер, Джозеф, 107
Сложения, операuия , 28
Сложные функции
автоматическая настройка,
Параметры
292,
298
настройка вручную,
75, 81
-
294, 365
Сетка, для объемных диаграмм,
Сетка, кнопка (панель инструментов
76, 81
Зашита,
ячеек, 73
Поиск решения,
Вид, вкладка, флажок
Формулы, 75
Вычисления, &кладка,
Вычисления , вхладка,
Итерации,
проuедура
289, 292
Visual Basic для
автоматической настройки,
353, 376
359
295, 298
СЛУЧМЕЖДУ(), функция,
СЛЧИС(), функция, 32, 35
32, 35
переключатель
Смешанные граничные условия, 416
Смешанные ссьvtКИ иа ячейки, 24
Автоматически кроме
СМЕЩ(), функция ,
таблиц,
СОВПАд() , функция , 28, 42
Содержимого ячейки , свойства,
Вычисления , вкладха,
98
55
20
iiФI
Предметиwu указатеn11.
Соединение компьютеров,
программное обеспечение для
эмуляции терминала, 232
Создать, кнопка (пане.ль
инструментов Стандартная),
Сорntровка базы данных, 254
66
254
Сортнровка по возрастанию, кнопка
(панель инструментов
Стандартная),
66
СортнроВЮt по убыванию, кнопка
на диаграммах,
на рабочих JIJfcтax, 429
Стрельбы, метод решения
rраничных задач, 401
Стрельбы, метод решения краевых
задач,
407
65
Стандартная),
Строка формул, 67
СГРОКА(), функция,
Строки , закрепление,
Сохранение
рабочего листа ,
64, 75
64
рабочих кииг,
Сохранение документа, диалоговое
окно, 194
55
96
Строки, функции СОЗдания ,
СГРОЧН(), функция,
42
42
Структурироваиный язык запросов
(SQL), 244
Сохранить, кнопка (панель
инсrрумекrов Стандартная),
Список, инструмент (пане.ль
66, 75
200, 208
Стьюдента, тест,
271, 273
СГЬЮДРАСП(), функция,
47, 50,
462
СГЬЮДРАСПОБР(), функция,
28
СРГАРМ(). функция, 45, 48
СРГЕОМ(), функция, 45, 48
СРЗНАЧ() , функция, 47, 291
СсЬVIок,функции, 57
СУММ(), функuия,
33, 35, 293
для формул интегрирования в
Visual Basic, 34 l
Сумма квадратов реrрессии н
Стандартная QШибка оценки у, 271
функцни д11Я вычисления, 290
Стандартная, панель инструментов,
64, 66
Вставка фующии , кнопка,
Станлартное отхлоненне, 48
47,
273, 462
Сравнения, операцнн,
остаточных членов,
275
СУММЕСЛИ(), фунхция, 33
Суммирование р•дов, 31 О, 318
исnользоаание фушции Visual
31, 66
Basic,
316, 320
итершионные рЦЫ на рабочем листе,
314, 316
Стандартные ошибки
коэффициентов,
429
145
Строка состояния,
66
162
Стрелки
(панель ннструментов
ииструментов Формы).
Сплайиы , 299
46
Стрелка, инструмент (панель
инструментов Рисование),
изменение JЮЗМера конца,
Сортировка диапазона, диалоговое
окно,
ширнна, 73
СГОШУХ(), функция,
271
СГАНДОТКЛОНО, функция , 46, 48
СТАНДОТКЛОНП(), функция, 46,
на рабо'IНХ листах, 31 О, 312
СУММКВ(), функция , 33, 35
СУММПРОИЗВ(), функция,
33, 35
33, 35
СУММСУММКВ() , функция, 33, 35
СЦЕПИТЬ{), функция, 42
СЧЕТ(), функция, 47, 291
СЧЕТЕСЛИ() , фунхция, 32
СЧЕТЗ(), функция:, 45
СУММРАЗНКВ(), функция,
48
Стаruстнческие функции,
баз llЗИНЬlХ,
45, 50
255
Стационарный электростатический
потенциал, 425
Степени свободы,
272
СГЕПЕНЬ() , функция,
СГОЛБЕЩ), функция,
32
55
Столбцы
захреn.1ение,
96
нзмеиение ширины иескольких,
94, 147, 427
Сче"NИК, кнопка (пане.ль
инструмеитов Формы), 200
СЧИТАТЬПУСГОТЫ(), функция,
32
iiфj
Предметныii ук:азатеnа..
Температурный профиль в
т
перенапряженном кремнневом
Таблица nодсr.шовки , диалоговое
окно, 103
Таблица символов, в
Windows 95, 79
Таблицы, функцин поис.ка. 55, 51
двухвходовые. 88, 93
д,1я объемных диаграмм, 154
с несколькими входамн. с
несколькими столбцами,
93, 97
134
создание с использованнем
Теплопроводность,
арсенИда ГWUJИЯ,
команды Данные~Таблица
со~ание с копнрованием формул,
уравненне в частных
производных.
96
298
139
236
данные,
Тейлора ряды, метод для решения
начальных задач,
395
•
ТЕКСГ(), функция, 42
Текстовое поле, ннструмент (панель
инструментов Формы), 199. 207
Текстовые процессоры,
импортнрование файлов, 238
Текстоаые строки
объединение,
28
28, 42
сравнение,
Температура элек-rроиноrо газа в
арсениде галия, 358, 361
метод надстройки Solver, 364
метод надстройки Поиск
решения, 364
метод Ньютона,
363
124
127
редакти роваиие, 141, 146
стили, 124
Точ.ка (.), в сннтахсиt;е объектов,
180
инструментов
Текст проrраммы, инструмент
200
54
Точка останова, кнопка (панель
19
(панеrо. инструментов Формы)
54
ТИП.ОШИБКИ() , фущщия,
Тождественная матрица, 373
Точечная , тип диаграммы,
237
44
Тейлора ряды. метод для решения
задач К:оши, 392
Текст в ячейках,
432
ТИп диаrраммы, диалоговое окно,
ТИП(), функция,
237
Табуляциями, размеченные файлы,
импортирование,
67, 75
Течение .жидкости , параболическое
97
ТДАТА(), функция,
110,
Техника, решение простого
аналитического уравнения,
со~ание с использованием
имлортнрованне,
11 О
277, 278, 283
116
97
Таблицы, функции проемотра,
Табличные данные,
162
133
Теплового пробоя, состояние,
неразрывности. 433, 436
Термоэлек-rрониый радиатор,
76
подстановки,
Тень, инструмент(пане.лъ
инструментов Рисование),
стержне, уравнение
создание пуrем копиравания
командЫ Data~TaЫe,
46
49
уравненне. 67, 75
Теплопроводность в медном
удельного сопротимения
формул,
152, 155
ТЕНДЕНЦИЯ() , фух:нция,
ТЕНДЕНЦИЯ() , функцня,
кремния. аналитическое
создание для вычисления
кремния,
диоде,
Visual
Вasic для
Excel 7.0), 224
Точка перегиба, 357
Точки .nанных, оценка точности.
Точность.
305
16
тригонометрических функций в
окрестиостн нутr, 36
Точность. для систем уравненнй,
384
ТРАНСП(), функцня,
55
Трапеции , правило
для вычисления гамма-функции,
338, 342
для формулы интегрирования,
Требования к аппаратному
обеспечению,
13
333
111~1
Предметн1.1u указатеn1.
Тригонометрические функщiи,
35,
Файлы
36
обратные,
Visual Basic для записи, открытие,
194
Visual Basic для чтения, 195
на диске, 454
36
точиость в окрестиости нуля,
ТТЕСТ(), функция,
36
47
Файлы на диске
импорruрование данных, 231, 244
у
на дополнительно
Увеличить разрядность, кноп.ка
распространяемой диск.ете,
Форматирование),
66, 74
работь1 с
Удалить, кнопка, в форме данных,
ФИКСИРОВАННЫЙ{), функция,
264
Удельное сопротимение,
42
l 10
Уделъиое сопротимение кремния,
133, 134
диаграмма с метками данных,
144
диаграмма с текстом и сТреЛКаМИ
146
'
Умио:жение квадратных матриu,
373
326
Цвета и линии, вкладI<а,
145
66
{панель инструментов
Форматирование),
66
Формат ячеек, диалоговое окно,
72,
74
Формат, меию
Автофиrура, 429
Выделенная ось,
450
46
Ускоренный метод коиечных
разностей, 407, 409
Установка
надстройки MS Query, 244
156, 160
142
Выделеииый ряд, 287
Вид, вкладка, l 60
Шкала, вкладка,
Подписи данных, вкладка,
Query, 244
надстройки Solver, 294
иадстройки Поиск решения,
Устойчивости, крнтерий,434
ф
Файл объямеиия,
окно,429
Формат с разделителями, кнопка
400
УРЕЗСРЕдНЕЕ(), функция,
Файд, меню
200
инструмеитов Стандартная),
425, 426
Уравиения
надстройки
379
Формат оси, димоrовое окио, 142
Формат по образцу, кнопка {панель
Уравиение неразрывности, 432
Уравнеиие первой производной,
построение rрафнков,
релаксации,
Формат автофиrуры, диалоговое
66, 74
Умиожеиия, операция, 28
Уиариые операции, 28
Управляющий элемент, 63
высшего порЯДКа,
коистанты, 82
Флаг иииuиализации, для метода
инструментов Формы),
{панель инструмеитов
Уравнеиие Лапласа,
Фииаисовые функцин, 51, 53
ФИШЕР(), функция, 46
ФИШЕРОБР{), функция, 46
Флажок, кнопка {панель
Умеиьшить разрsrдиость, кнопка
Форматирование),
454
32
}), для функций
массивами, 31
ФАКТР(), функция,
Фиrурные скобки ({
{панель инструментов
294
139
для диаграммы, l 39
Тип диаrраммы, l39
Ячейки, 72
Вид, ВКЛадI<а, l 0 l
Выравнивание, ВКЛадI<а,
72
Заll!ИТа, вклад1<а, 108
Защита, ВКJtадI<а, Защищаемая
464
Закрыть, 63
Создать, Рабочую кииrу,
Сохранить, 64, 75
144
Выделенный ... ,
ячейка,
64
l 16
Защита, вкладХа, Скрьnъ
формулы, 102, 108
Число, вклад1<а, 80
,,,,
Предметн1t1ii указатеnь
Число, вкладка, Числовые
форматы,
математические,
32, 38
38
иадстройки, 30, 57
поиска и ссылок, 55, 57
матричиые,
74
Шрифт, вкладка,
116
Шрифт, вкладка, Верхний
иидекс, 85
Форматироваиие, паиель
ииструментов,
диаграмм,
преобразования единиц
измереиия уrла,
47
распределений,
139
примеиеиие к rpynnaм ячеек,
Форматы файлов, для Excel, 231
Формулы, 20
114
47
распределения, 50
распределения и проверки
зиачимости, 4 7, 50
стапtспtческие, 45, 50
ввод в массив,
276
вставка функuий, 31, 204
замеиа значением, 83
имеиа, 84
иеопределеииые нмеиа, 85
триrоиометрические,
фииаисовые,
формат,
3_3, 36
51, 53
30
Функции преобразоваиия системы
счислеиия,
иесколько формул для
вычислеиия одного результата,
38
Функции работы с базами даииых,
50, 255, 265
99
отиосительные ссылки на ячейки,
23
отображение иа рабочем листе,
75
редакпtрование,67
создание таблиu пуrем
копироваиия, 76
Фуикции с двумя иезависимыми
перемениыми, 423
Функции, объявление, 465
Функции, связанные с
инвеспtрованием,
создаиие таблиu с копироваиием,
ссылки иа ячейки,
20, 68
Формулы иитегрироваиня
тнпы,
333, 334
Visual Basic, 341, 344
Формы, панель ииструмеитов, 65,
177, 199
ФОШ(), функция, 39, 461
ФТЕСТ(), функция, 47
Функции, 30, 59
базы даииых, 50, 255, 265
в Visual Basic for Applications, 57,
192
виешние, 58, 59
вставка в формулы, 31, 204
гиперболические, 33, 37, 86, 87
функции
J1ЛЯ стандартиой ошибки оцеики
У, 290
зиачеиия ошибок для
иеопределенных,
инженерные, 38, 39
информаuиоииые,
логарифмические,
38, 41
85
54
33, 35
52
Х-Ц
96
логические,
массивы, 31
33
проверка зиачимоспt,
65
ХИ20БР(), функция, 462
ХИ2РАСП(). функция, 47, 50, 462
ХИ2ТЕСТ(), функция. 47
Uвет заливки, ииструмеит (панель
ииструментов Рисование), 162
uвет передНеrо плана диаграммы,
139
uвет фона диаграммы, 139
Uвет шрифrа, киопка (панель
ииструментов Форматироваиие ),
66
Uвет ячеек,
116
UЕЛОЕ(), функция, 32, 34
UЕНА(), функция, 53
UЕНАЛЕРВНЕРЕГ(), функция,
UЕНАЛОГАШ(), функция, 53
UЕНАПОСЛНЕРЕГ(), функция,
UЕНАСКИДКА(), функция,
UЕНАЧЕК(), функция, 53
Uентральные разности,
53
325
Uиклическне ссылки, 377, 436
автоматический пересчет, 416
Uиклы в
Visual Basic, 196
52
52
Предметный указатеn1t
ЭлеКТрОнов нонизация, сечение, 289
Элементарные частицы, таблица,
Ч-Ш
Ч(), функция,
54
ЧАС(), функuия,
239, 242
Элементы управления
44
ЧАСТНОЕ(), функция, 32,
ЧАСТОТА(), функция, 46
35
rруппировка в дивлоrовом окне,
199
назначение процедур,
Чебышева, полиномы,
299
ЧЕТН(), функция, 32, 34
присвоенне процедур,
Числа, округление и усеченне, 34
Численные производные, 325, 331
ЧИСЛКОМБ(), функцня, 32, 35
Числовая точность,
Числовой диапазон, 16, 18
ЧИСЛОКУПОН(), функцня, 52
ЧИСТВНДОХ(), функция, 53
ЧИСТНЗ(), функция, 54
ЧИСТРАБДНИ(), функция, 44
ЧСТРОК(), функuия, 55
Шаблона, символы, 254
Шарнирно опертая балка, 402
ШЕСТН.В.ВОСЬМ(), функция,
ШЕСТН.В.ДВ(), функция, 39
ШЕСТН.В.ДЕС(), функция, 39
Ширина столбцов
изменение нескольких,
уравнения в частных
ПроИЗВОдНЫХ,
38
425, 431
текстовый файл,
232
Энергия перехода в кремннн,
функцня макроса,
202, 204
ЭффЕКТ(), функцня, 52
Юлианский календарь, вычисленне
дат
107, 109
ЯЧЕЙКА(), функция, 54
Ячейки,
19
активные,
39
94, 147,
427
Шрифт, поле (панель инструментов
Форматированне),
Эллиптические дифференцивльные
Эмуляцня терминвла, программа,
16, 17
Чнсловоrо сравнения, функции,
202
219
66
67
выбор диапазона непустых, 136
добавить примечание к, 115
заполненне последовательными
значениями,
68
имена для, 25, 82
как объекты, 179
копирование,
80
незащищенные,
116
подчеркиванне в именах.
Э-Я
Эйлера, метод, 3%
Экваториальная система,
процедура форМ<ПИрования Д11Я,
184, 185
76
Эклиптическая долгота, вычнсление
еж:еrодиых нзменеиий,
7i
Эклиптическая система, 77
Экран, вывод в VtSual Basic, 194
Эксперимент со свободным
падением,
Экспериментальные ланные,
132
Экспонетtиальное сrлаживание,
58, 458
Экспоненцивльными кривыми,
аппрокснмация,
49
ЭКСПРАСП(), функция, 47,
ЭКСUЕСС(), функция, 46
l 02
Ячейки, ссылки, 20, 27
абсолютные, 24, 71
в Visual Вasic, 182
68
21
всrаяка, 21, 68
в формулах,
копнрование, а не перемещение,
332 ·
Экспоненциальная функция, 288
Экспоненциальиое представленне,
программа,
скрьпие содержимого,
внешние,
328, 330, 331
сглаживание,
84
nримеиение форматирования к
группам, 114
462
26
на диапазон,
21
.
относительные и абсолютные,
при записн макроса, 182
смешанные, 24
23
Оr11авnение
Предисловие
.......... " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Предисловие к русскому изданию ............................. 7
Введение ............................................................... 8
О чем рассказывается в этой книге ......... " ..... "."."" ............... " ........ 9
Версии Excel для Windows и Macintosh " ... " .... " ...... "" ... " ............. 10
Более ранние версии Excel ................................ " .... " ................... 10
Практические примеры .. "." ... " " .... "." .......................................... 11
Примеры на дискете .... " ...............................................................
Подготовка пользователя ................................................................
Требования к аппаратным средствам ........................ "." ..... "."." ....
12
12
13
Условные обозначения, используемые в этой кНиге ..... " .... " .. " ..... " 13
Путь к пониманию .................... " ........ "." ............................ "." .. " .... 14
Глава
1
Использование Excel в научных и инженерных
приложениях ............................................
111 • • • • • • • • • • • •
16
Точность представления чисел и численный диапазон в Excel ........
Точность представления чисел .....................................................
Численный диапазон" ..... " ........... " .......................... "" .... " ..... " ....
Ошибочные числа ............... " ... "" ". " ..... ". "" .................... " ..........
16
17
18
19
Основные сведения о ячейках и ссылках ..... " ..... "." ............... "...... " 19
Внешние ссылки на ячейки .... " ............................................... " .. " 21
Ссылки на диапазон .................................. "" ... " ....... " ... " ....... ".". 21
Относительные и абсолютные ссылки . " .......... " ....................... " .. 23
Относительные ссылки на ячейки
............................. " .......................... " ..23
Абсолютные ссылки на ячейки ................... ". " ... "."" .. " ............ " ...... " ..... 24
Смешанные ссылки на ячейки" ...... ".:..... " .. " ................. " .. "." .............. ". 24
Имена диапазонов и ссылок ..................... " ............•........ " ..... " .... 25
Копирование и перемещение ссылок на ячейки ........................... 26
Использование операторов в вычислениях .. """ """"." .. " .............. 28
Математические операторы ................................ " ........................ 28
Логические операторы ....... " .. " ..... " ................ " ............................ 28
Приоритет операторов ..... " .............. "" ....... "." .... " ....................... 29
Использование функций рабочего листа ................................. " ...... 30
Ввод функций .............. " ................................ " ........ " ................... 30
Функции массива ............................... " .......... " .............. "." .......... 31
Математические функции . "" ....... " ... " .................. " ...................... 32
Осноаные математические функции .......... " ............................... " .. " ....... 34
Логарифмические функции ......................................... " ............................35
Тригонометрические функции ...................................................................35
Точность значений тригонометрических функций, близких к нулю" 36
Обратные тригонометрические функции .................................................•.36
Гиперболические функции.""" .................................... " .. "" .... " ............... 37
Обратные гиперболические функции ........................................................37
Матричные функции ..... ". " .. " ....................... " .............. "" .........................38
.,,,
Drnaвneнue
Инженерные функции......................................... ... .. " ................ .... 38
Логические функции . ....................: ............................................... 38
Текстовые функции ....... .................................................... ........ .... 42
Функции категории даты и времени .. ................ ... .......... ..... .........• 43
Функции категории даты ....... " ..................... ..................... "." ............."
... 43
Функции времени ............. "" .. " .. " .... " ............................... " ............. " ...... 45
Статистические функции .................... ................... ...... .................. 45
Базовая стати стика ..................................................................................
Сложные статистиче<Жие функции ...........................................................
47
48
Функции аппроксимации кривой ........ .......... " ..................... " ...................
49
Функции распределения и тестироаания значимости. " ......... " ...... " ......".50
Функции для работы с б азами данных .... ... .. "." ...... " .... ... :" .. ". " ... 50
Финансовые функции. " ..... " .... ................. " ........ " .. " .... ............. 9 •• • 51
Функции информационной категории ...........•........ " ......... " .. ...... .. 54
Функции категории Ссылки/массивы" ................................... " ..... 55
Функции просмотра по таблице и направлению" " . " .... " .. " ..... " .." " .. "" ... 55
Функции характеристики ссылок.""" .. "" ........ " .. " ......... " .. " .. " ............... " 57
Функции \!isual Basic for Applicatioпs " " ....... " .. "". "" .. " .""." .. "" ". 57
Надстроечные функции и инструменты ..... " .... "." ............. """ ." ."
Внешние функции ..... " . " ................. .. " " ..........•..................... " .. ....
57
58
Solver ... .................. ..................... ............ " .. ... ....... ........................ 59
Резюме ........................ " ................ " ................•." .............. " .... " ...... 59
Дополнительная литература .. " ... .. .. .. . " ... " .... " .... . "" ..... " .. .... ... " " " .. 60
Обзорные задачи .............., .. " .. " ....... " ... .. .... .......... " ... .. " ............. "" 60
Упражнения ....... " ..... " ... .... ... . " ........ " .. " ....... " "."" " .... •.... .. "" ... " .... 61
Глава
2
Инженерные расчеты ...•..........•.. •.......•.................... 63
Элементы управления Excel .............. .......•...........•.. ................... ...... 63
Рабочие книги и рабочие листы"". """" " ". ".". " ... " .. " ". " .•.. " " .. " 66
Решение простого аналитического уравнения ..... "" ... ... ." ..... " ... " ... 67
Однократный расчет . " " ." ... " .. .. " .•• "" ". " .... .... " ..... . " ................ .. " 68
Использование в формулах ссылок на другие ячейки ... ""." ." ..... 68
Вычисление списка значений ............ " ............. .... " .........•............. 69
Выделение коэффициентов . " ." .. " .. " ......... " .. " .. ............. "" .. "" •... 71
Оформление рабочего листа "." .. ... " ..•.... " .. " ...•.. .. " .......... " ...." ." 71
Соэдание таблиц nутем копирования формул ... ". " .. ... ... " .. " ."." " ... 76
Построение таблиц с одним аргументом ......... " ..•• " .... " " .... " .. "". 76
Прецессия северного полюса мира " .."."." ........ " .. " .... "" ..... " ............ "".76
Зав111Симость концентрации собственных н осителей заряда в
кремнии от температуры " .. " .......... " .......... " ............ " .." ... " ............... " .....81
Гиперболические функци и ...... " .. " ...... " ........................... " ...." ." .............. 86
Создание таблицы значений функции даух аргументов .. .......... ". 88
Уравнение Ван-дер-Ваальса ...... "." ..........." ............... "
.......... " ................ 88
Создание таблиЦы с параллельными столбцами значений
аргументов ............... " ......" ...... " .............. " ...... " ........... "" ...... " ................ 89
Абсолютная звездная величина .. """ ..............•............................... " ........ 90
Создание прямоугольной таблицы значений ФУнкции двух
переменftых ............. " ........ " .................... "
...... " ................... " ...................92
.,~,
Ornaвneнue
Расчет функций многих переменных в таблицах с большим
количеством столбцов ........ .. " .... " ....... " .. " ..... " ."." ....... " ............. 93
Подвижность электронов в кремнии
.. " .................................................... 94
Соэдание таблиц с по мощью команды Данные )о- Таблица
подстановки .. " .... ". ". " ..... " .. " .... " ....... ". " .................. " .. ..... " .......... 97
Таблица фун кции с одним арrументом, созданная с пом ощью
·
команды Данные )о- Таблмца подстановки .....................................................98
Напряжения и деформации в балке, закрепленной одним концом ........... 99
Таблица функции двух аргументов, созданная с помощью команды
Данные )о- Таблица nодстзноеки .................................................................. 103
Линейный переменн о-дифференциальный трансформато р ................. "103
соэдание и использование калькуляторов фун кций ....... .......... " .. 106
Соэдание калькулятора простой функции ....... " ...." .................... 106
Калькулятор юлианских дней
........ :..................... .................................... 106
109
Термоэлектронный радиатор ........................................" ........... ............. 110
Резюме ."." .......... " ........... " .. " " ..... "." ........... " ..................... ......... 116
Дополнительная литература .......... " ........ " ................... ........ " ....... 117
Обзорные задачи .......... .................................................. " ............. 118
Упражнения .................. " .... " .. ......... " .... " .. ............ " ........ .............. 12 1
Соэдание калькулятора сложной функции ...................................
Глава
3
Диаrраммы и графики ...•....................................... 123
соэдание диаграммы · · ····· · ··· · · ...... ......................................... " ...... 123
Внедренные диаграммы ........................ " .. ............. " .....................
Выбор типа диаграммы ............ " .. .. " ............... " ............ ........... " .
Выбор источника данных " ." .•..... " .. " ............ " .......... " ....... ".,.....
Оформление диаграммы ...... ..... " .. ... " ........ " ...... ..... " .... •.. "."." ...
Размещение диаграммы ......... "." ..... "." .. " .......... " .. "." " .. " ........
Изменение диаграммы" ..... " ." .... " ........... " .. " ................ " .. " .......
Соэдание высококачественных диаграм м. " .. " ." .. " ... "." ..... " .... "
Соэдание диаграммы на отдельном листе " .............. " .... " ........ " ..
Соэдание диаграммы по результатам расчетов ". "." .. ""." ...........
Сопротивление кремния ...... .. ... "." ." ..... " ........... " .... " .... " ..........
Соэдание таблицы ..... "." .. ". ""........ " .."." .............. " ....•.............
Соэдание диаграммы" ....... " .".". ".".". " .. " .. " .... "" .. " ."." ........ " .
Редактирование диаграмм .... " ....... " ." ..... " .. "." ... •" .... " ..•.. " .... "."
Соэдание и изменение элементов диаграммы ... ". " ."." .... """ ....
Форматирование диаграммы" .. " .... " ........ ". " ........... " .... " ........ "
Добавление в диаграмму новых наборов данных ..... " ... " ."." .. " ..
Защита диаграммы от изменения ... "." .... " .. "."." ..... ""." .. "." ....
Изменение точечной диаграммы .. " ..... "." .. ". " ........ "." .. . " .. " .... "
соэдание логарифмических и полулогарифмических диаграмм ....
123
124
125
128
130
131
132
132
133
133
134
136
137
138
139
140
141
141
146
Коэффициент лавинного умножения в кремнии ...................................... 146
Соэдание таблицы ." .. " """ .. "." .... " ." ." ..... "." ........ "." .. .. " .". "." 147
Соэдание диаi"раммы " " .. " ." ....... " . " ..... " .... " .. , ............ "" ........... 149
Соэдание трехмерных диаграмм . "." ........ " ........... "." ....... " .. ~ ....... 151
Создание таблицы " ........... " .... " ." ................. " .............. ....... " .... 154
Соэдание диаграммы " . " ..... " .... " .. " ............................. " .... " ....... 155
ii@
Drnaвneнue
Соэдание таблицы с .пропорционально расположенными
линиями сетки. " ...." ................ " ... " ....... " ......... " ....... " .... ."
......... 156
159
161
163
165
Соэдание диаграммы с пропорциональной сеткой "." .. "" ... """.
Соэдание рисунков ....................................... " ...............................
Соэдание таблицы ... " .. ............ ""." .. " .. "." .. ".". "." ... "".". "." .. "
Соэдание диаграммы .. " .. " .. " ..... " ..... "." ...... " .... ". ". " .. "." ". " ... "
Соэдание чертежа электрической схемы с помощью
инструментов рисования ." ............ "
............... " ..................... " .... 165
166
170
Дополнительная литература .......................................................... 171
Обзорные задачи .. " .. ".""" ...... "" .. """. " .. "."." .... """ ..... " .... "."." 171
Упражнения .... " .... ". """." .. " .. ". " .. " .. ". ".". " ... " "." .. "."." ........... " 173
Создание чертежа электрической схемы пе точкам """ ......... """
Резюме ... " .... " .... " .. "." .. "." .. " .. "" .. " .. " .... """." .. " .. "."" .... "." .. ""
Глава
4
Использование Visual Basic for Applications .............. 175
Соэдание процедур Visual Basic .. "." .. "."."." .. " ..:-..... " .. "."." ". " ... 176
Объектно-ориентираванное программиравание ......................... 179
Обращение к объектам в Visual Basic ............................................ 179
Соэдание працедур с целью автоматизации рутинных задач . "" ". 180
Запись процедуры .. " .................................... " ............................
Редактиравание существующих макросов . "."." " ... " .. ".".".".""
181
182
Назначение макроса объекту"." .. "" .. " .. "." .. "."."""."."."."."." 182
Запуск командной процедуры.""".""."".".""."""" .. "".".""."" 183
Процедура форматирования ячейки.. "." .. " ."."." ... "." .... """"." .. "" .. "." 184
Программирование на языке Visual Basic for Applications " ... "."" .. 187
Обращение к ячейкам .... " ... "." .... " .. " .... " .. " .. " ."." .. " .... " ."."." .. 187
Переменные Visual Basic ....................................................... ...... 188
Программирование математических выражений."." ." ""."."."." 192
Обработка операций ввода/вывода ............................................ 193
Управление процессом выполнения программы."" ..... ".".".".". 196
Вызов других процедур .. " ........... " ................................... : .......... 198
Создание форм ....... " ................ " ................................................ 199
Рисование <f>ормы " """" ".""""."""".".".. ".".". """.".".. " .. "".""""." .. 199
Отображение диалогового окна "." .. ".".".""""""." ..... ".".""" ."."." .""201
Сокрытие диалогового окна .. ".".".""" .. " ." """."".""""." .. "."."" .. ".""201
Назначение процедур элементам управления диалогового окна""" .. ""202
Соэдание функций ..... " .. ". " ... " .... " ..... " ..... " .................................. 202
Соэдание функции-макроса ... " ................................................... 202
Соэдание праграмм на Visual Basic .. " .. " .... "." .. "." ........... ".""" " . 205
Праграмма для преобразования рабочих листов Excel в FORTRAN. 206
Соэдание диалогового окна и элементов управления ."." """" .. "".""."206
Соэдание процедур для элементов управления"." .. """""""." .. ".".".".209
Отладка макроnрограмм." ............................................................. 222
Резюме ..............•. " ..... " .......................................... " ........... " ........ 224
Дополнительная литература ... " ..................................................... 225
Обзорные задачи ...... " ............................................................. ...... 225
Упражнения. :" ... " ..... "." .. " ......... """" .. "." .. "."" .. " ..... " .... ".".".". 226
•10
Drnaвneнue
Глава
5
Анализ информации с помощью баз данных
............ 229
Ввод экспериментальных данных ... .•................... ..... " ............... " .. 229
Ввод данных вручную ....... " . . " " .. ".". " .. ... " ... " " .. ... " ... " .. " .. " . " " .. 230
Импортирование данных из файла.....• " ." .. " .. " ..... " .. . " ." .. "."." .. 231
Импортирование стандартных текстовых файлов """"." .. " " " """"""""232
Текстовый файл с разд011енными п робелами эначениями .. " .. """ ..... ." .. 233
Имnортирование разделенных табуляторами эначений ............ " .." " .. ""236
Импортирование табличных данных... " .. .. " ...... "" .. " .. " "."."."."." " " ."."237
Элементарные частицы .. " .. " .. ." .. " ."." .. " """ .. "." .. " ." " "" ... .. "" .. "" .." ...239
Импортирование данных с помощью
Visual Basic for Applications " " "" " .242
Импортирование данных из внешних баз данных"""""""" ." .."" ."." ""244
Хранение данных и манипуляции с ними .. " .. " .. """ ... "."." .... " .. " ..
Создание диапазона базы данных .. "." .. ... " .. " .. " .... " .. •. " ." ....... "
Использование команд баз данных .... " ." ." .... . " ..... "." .". " .... . " ...
250
251
251
Использование форм данных ""." .. "" ......" .. "" ............... "."." ................ 252
Команда Данные~ Фильтр~ Аsтофильтр "". " ... """ " .. """" " ...... "." "."" .. 252
Команда Данные~ Фипьтр ~Отобразить все " " .. " .. " ........ "" .... ."" .. "" ... ".253
Кdманда Данные ~ Фильтр ~ Расширенный фильтр ". """."."" " .... " " .. " "". 253
Оп ределение диапазона условий .... "" .. "" .... " ........ "" .. "" ..... " .... " .... " ... 253
Оп ределение диап азона вывода " .............. " .. " ................ " " "" ...... " .. "."254
Сортировка списка .... .... " .".... " .. """" .."
" ..... " .." ..... " ." .. "." . "". " ....." .". 254
Функции для работы с базами данных .... " .. " ." .. ... ... " ....... " .". ""
Создание базы данных."." ." . " ." .. " .... " ...... " ... . "." .. " ... " ...... " " ...
255
257
Применение команды Даннь1е )>-Фильтр )о-Детофильтр •.... "."" .. " 261
Применение командЬ1 Данные )>- Фильтр )>- Расширеннь1й фильтр ..... 262
Извлечение записей во внешний диапазон ." .. " •... " ..... .•. " ."." .... 263
Применение команды Данные ~ Форма.... "." .. "." ..... ...... "." .. ". " . 264
Применение специальных функций для работы с базами данных. 265
Применение команды Даннь1е )>- Сортировка ... " .......... " •. " ." ......... 265
Резюме .... "."." ... •" ..... " ..... "."." ........... " .... .. .. " .... " .. "." ..... " .... " ... 266
Дополнительная литература . .. " ."." ..... " ..... " ........ " .........•.... "." .... 267
Обзорные задачи .. ... ............................... ........ ..... " ..... ........ ........... 267
Упражнения ................ ..... " .............•.... "" .. " •.. " .... ..•.•...... " •.. .. " ....• 268
Глааа
6
Аппроксимация данных ......................................... 270
Использование встроенных функций ........... .......... " ... .. .. " .... "." .. " 271
Регрессионный анализ ............. " ....... " ." ........... .. ...... " ...... . " ....... 271
Стандартная ошибка для оценки у ...... " .. " ...... " ." ."" ... " ." .... " ... " .. "." .. "271
Коэ ффициент детерминированности ... "
.. " " .. " ." ... " ... " .. "" •. "" ..... " .".".272
Стандартные значения ошибок для коэффициентов" ." " "" . " ....... ."""".272
F-статистика ..................... " " ... " " ........ " .. " .." .. "" ........ " ......•":." .... " .. "".274
Число степеней свободы"" ....."
.... " ........ " ................. " ................. " .... " ..275
Регрессионная сумма квадратов и остаточная сумма квадратов""" .. ""275
Вычисление линейной регрессии •............. ... " ........... ... ... " .........
275
Вычисление регрессии с помощью функций ...... " ."" ....." .......... " ....... ".276
Вычисление регрессии с помощью инструмента анализа "".".. "" ... ...... 277
Теплопроводность арсенида галлия... "
.. " ." ..... " .."".".. " ." ........"" .. " ." ..277
iii:I
Drnaвneнue
Вычисление степенной регрессии .............................................. 283
Проверка статистики ............ " ..................... " .. " ............... "."." ... 286
Использование линий трен да............................. " ....................... 286
Работа со сложными функциями .......................... " .. "."." ". " ........ 288
Подбор коэффициентов вручную ............................... " ... " .......... 289
Автоматический подбор
коэффициентов ...............................
" ... 292
w
•
исnолЬзование надстроики Поиск решения "".~."" .. " .... """." ... """ .. """293
Использование процедуры
Visual Вasic для автоматизации подбора
коэффициентов ......... " ...... " .. ".". " ...... " .. " .. " .. " " .. " ....... " .. " ... " .... ". " . . ". 295
Просмотр таблиц и интерполяция ............... "." ................... " ..... ". 298
Использование линейной интерполяции"" ..... " ................. " .... :..
Кубическая интерполяция ........ " ........... "." ................ """ ..... " ....
Использование весовых коэффициентов"........... " ..... " .. ""." ..... " ..
Резюме" ............ "."." .. "." .. " .. "" .... " .... "" .. " ..... " ............... " ..... " ..
Дополнительная литература ............... " .........................................
299
303
305
306
306
Обзорные зад,ачи ................... " .. " ...................................... .. ,......... 307
Упражнения ................... " ..... " .. " " ...... " ..... ".". " . ". " ................ "" .. 308
Глава
7
Суммирование рядов ............ " ......-. ... ".................. ~. 31 О
Суммирование рядов в рабочем листе"." .. " ....... " ........ "."" .. "."" 310
Функции Бесселя .. " ........ " ......... "" " .... " ..................... "."."." ..... 311
Метод итераций .................... " .. " ..................... "" ... "" ..................
Использование функции Visual Basic для суммирования ряда". " ..
Полиномы ЛежандРа ................. " .... " ..........................................
Резюме ..... " ........................... " ......................................................
Дополнительная литература ..........................................................
Обзорные задачи ... " ....... " .... " .......................................................
Упражнения .............................. " ............... "" .. "" ........ " ..... "." .. ""
Глааа
314
316
316
321
321
321
323
8
Интеrрирование и дифференцирование •н•·············· 325
Численное дифференцирование ........ " .................................... " ... 325
Типы разностных формул.""" .................. " ... " ...... " ... " ...... " .. "." 325
Ошибки разностных формул ................ ~...................................... 327
Использование разностных формул в рабочем листе ............... " 328
Свободное падение "." .. " .... " .. " .... " ..... " .. "."." .. """" ""."" .. "" .. " ... " ..... 328
Интегрирование ...... " ........... " ........................................................ 332
Типы формул интегрирования ... " ... " ........... " .... ".""." .............. " 333
Правило прямоугольников .... "."".".".".""".".. """"."."." .. """"" .. ".". "333
Правило трапеций."."."." .. "."""."."." .. "."""" ... "."" .... " .. ".".".""""".333
Интегрирование по Ромбергу " .. "" .... " ....... """."." ... " ."." .. " ...... " .. ""."334
Правило Симпсона." " .. " " .. " .. " ............ """" .. " .... " .... ". ". ".". " ..... ". " ..... 334
Квадратура Гаусса ......•.... "." .. " ... " ... " ....... " .. """ ......... " .. """ .. " .... " •. " .. 334
Несобственные интегралы ......... " ..... " .... ". " .. " .. " ...... " ....•. " " ..... " """" .. 335
Использование методов интегрирования." ..................... "" .. "" .. 336
Гамма-функция .. " .............. " ........ " ......... " .. ""."." ... "
... "."" ........ " ...... " .. 336
Реализация формул интегрирования в виде функций Visual Basic 341
Функция Visual Basic для вычисления гамма-функции ""."."""" .. ""." ".342
Ornaвneнue
Jipj
Резюме ...... " .. "." ....... " ... "" ............. " ..... "" .. """,." ..... " ......... " .. ".
Дополнительная литература ..... ""." ...... " .. " ...." ." .. " .. ............ " .....
Обзорные задачи .. " ........................................."" ... " ...... " .............
Упражнения . " ....... "." " ... "" ..... "." ... " .... ""." " .... "." ." .... "" .. "" "".
Глааа
343
344
344
346
9
Реwение нелинейных алгебраических уравнений ..... 350
Метод последовательных приближений""."""""""."." ... "" .. "" .. 350
Сходимость процесса последовательных приближений"." "." .. "
352
352
357
358
358
362
Использование модУля поиска решения.".".".""" " "" .. "" " .... ".". 364
Резюме" ... " ......... " .... " ...... " ......... " .. " .. "." ... " .... "." .... " ....... ".:"." 366
Дополнительная литература ......." .. " .......". " "" .. ".".".""."" "" ". " 367
Обзорные задачи... "."."." ..... "." .. " .... """."" ... "" .. " .... "."." .. "."" 367
Упражнения ..... " ...... "" .. " .. " .......... ". " .. ". " .. ". " .. " .. ""." ........ "" .. " 369
Уравнение Cos(x} = х ....... " . " ."" .. " ..... ""." " ... " ." .....". " " ...... " ".
Метод нижней релакс~ции .. " ....... " .... ""."" .. "."" "" ...""" "" ." "."
Метод верхней релаксации ... "".""".""""""" .. "" " ... "."". """".
Температура электронного газа в GaAs ."."."" " ." ... ""."" ..... "."
Метод Ньютона ................... " ..... "." ...... " .. " .. ""." .... " ."" "" ..... ".".
Глава
10
Реwение систем уравнений
...........•............•.......... 371
Решение систем линейных уравнений." .. " ... ""." ...... "
.. " ..... "."" .. 371
Матричные методы "" " .. """ ."." " ... " " ... " ..... " ... ." .:...... " .... " " .... 372
Краткая справка по матричной алгебре ........ "." ........... " .. "." ... " 373
Система из трех уравнений с тремя неизвестными ... """"""""""".".".374
Итерационный метод Гаусса~Зейделя """."".""."."".""""""." 375
Методы верхней и нижней релаксации .. "." """ .. ""." .. " ""." ...". 378
Решение систем уравнений с помощью модуля поиска решения
. 380
383
383
384
385
385
388
решение систем нелинейных уравнений . "." ...... """ ". " .. ". "". """
Погрешность и нормирование ... "."" .. "" "" .... "" ... "."" .. """"""".
Резюме"" ........ " ... " .. """." " ... " ..... :.. " " .. " .. "." .. " .. " ...."." .... " .... ".
Дополнительная литература." .... " .. " .... ""."." ....... "."" .. " ."."."""
Обзорные задачи." .... ".""""".""."." .. " ... " .. """."."."" ... """.".".
Упражнения .. " .. "" .. "" "" .. " ... "" "."" "."" .. " """ ." "." ...... "" "." ... "
главе 11
Реwение обыкновенных дифференциальных
ураанениА .•...•..•.........•.........•..•................•......" ... 390
Решение задач Коши" ... ""." .. " .. "."......""" .. ". " " .. ""................... 390
Обыкновенное дифференциальное уравнение с одним
начальным условием ...... " ..... " .... " ...... " ... ""." ... " " ........ " ..... ".. ". 391
Сущность и назначение граничных условий ." ... " .... "" ." .. "" " .. ". 391
Метод рядов Тейпоре" .•.. " .. ".""" .... """""" .. . " ..... "."""" ..... "" .. "."." ... 392
Метод Эйлере и модифицированный метод Эйлера."" .. " .... """"."" .. " .396
Метод Рунrе·Купа ... " .. """ " ."" ... ". """" .... " .. " ....... "" .. "" .•... " .. "" .. " .. "398
Решение уравнений более высокого порядка"."."" "." " "" •..""""""." "400
Решение краевых задач для обыкновенных дифференциальных
уравнений."."" .... " .... " ...... "
............... ".""."."." .. " .."." "." .... " .. ". 461
Drnaвneнue
Метод стрельбы ................... .. ..... """.""
Изгиб равномерно нагруженной балки
.............. " ................... " 401
................... ......... " ... " ................ 402
Метод конечных разностей ....... ......................." .................... ..... 407
Итерационный метод конечных разностей ........... . "."." ..... " ....... """." " .408
Метод конечных разностей с ускоренной сходимостью ." .. """
...... ... " .... 409
Матричное решение разностных уравнений "" .. " .. " " .. " ."""." ....... """ "411
Учет граничных условий более высокого порядка " ............. " .. .. " 416
Граничные условия типа Неймана . ". ""."." ... "." ....... "" ....... "." .. 417
Резюме. " ... " ....... "" .. "." ............... .." .. "" .. " .......... .... " .... " ." ........ .. 417
Дополнительная литература .. ........... ...... .. ................ "
.. .... .. ....... " .. 418
Обзорные задачи ..... "." .. ...... . " .... " ..... " ." .. ". "."." ... ... " ... "."" .. " ... 419
Упражнения" .... " ............. " ... " .......... "" ..... " ......... "."" .. "." ....... " .. 421
Глава
12
Решение дифференциальных уравнений в частных
производных .. . ...... . ....... . ...... ........ ~ ........•..... ........ 423
Различие между обыкновенными дифференциальными
уравнениями и уравнениями в частных производных ....... "" .. "."
Классификация типов уравнений в частных производных.""" ......
Решение эллиптических уравнений .... " .. " "." ....... .. " ... " "." ...........
424
424
425
Уравнения Лапласа и Пуассона" " " "" .... " ...... " " " .. .. "." .. ". :. " ..... 425
Потенциал между двумя концентрическими цилиндрами " .... "." " " ." ..... 426
Решение параболических уравнений в частных производных ... " .. 432
Уравнение неразрывности ... " ........ " .. " .. .. " ................... .. " .. "." ... 432
Нестационарная теплопроводность в медном стержне " .... "." .". ". ".". " 433
Обоснование критерия устойчивости .. .................. .......... ............ 434
Итерирование шагов по времени .. ........................... " ................. 436
Решение гиперболических уравнений в частных производных ... ". 439
Волновое уравнение ....... " ............ " ... ............. "." " .. ................... 439
Колебания струны ..... " ..... " ........ """." .... " ..... """ .... " .. "" .... """ ........... ..440
Резюме" ............ " ............ " ... " "."." ...... " ... . " .. "." ..... " ... " " .... "" .... 443
Дополнительная литература .....................................•.................... 443
Обзорные задачи.... " ........ " ........ .. ... .. " ................ ................... " ..... 444
Упражнения ............. ........... ... .. .................. ................. ... ............ " .. 446
Приложение А
Проrраммы дnя ученых и инженеров,
дополняющие Excel .............................................. 450
DeltaGraph Pro 4.0 .......... .... "." ......... ". ".".". " ... " .". " .... " .... " ..... " . 450
MathType .................... : ..................... ...................... ....................... 452
Mic rosoft Acc ess и Visual Basic .... " ." .. ......... " " " ........ ". " .. ... " .. " ." .. 453
Приложение
6
Использование отдельно распространяемой
дискеты .............................................•................ 4 54
•+4•
Drnaвneнue
Приложение В
Функции для ученых и инженеров,
включенные в Ex:cel ...................................•... "...... 455
Надстройка Пакет Анализа для Excel " .. ". " ..... """."."."."" ........... 455
Программы дисперсионного анализа" .. "" ... " ..... "."" ... ""."""". 455
Корреляционный анализ " .... ". "." ..... " ....... "". " .. " .. " ". ". ". " ... "" 456
Ковариационный анализ .. " "". "." .. "." .. "." .. "." .. " .. " ". ". " .. " .. "" _456
Описательная статистика" ... "." .. "."." .. "." ... " ... " ... ""." .. """ ... " 457
Экспоненциальное сглаживание" .. " .. "." .. "."""."."" .. "".""."." 457
Двухвыборочный F-тест ." .. ""."." .. "." .. "." ......... " .. ""." ... "" .. "" 457
Анализ Фурье ....... "." ..... " .... "."." .. "."""."""."""" .. "."."."" ... " 457
Гистограммы"~" .. " ..... " .. " ....... " .. " ........... " .. "."." ........ ".".""."" 45 7
Скользящее среднее ............ "."." ..... " .. "" ... "."."." .... " .. ".~" .. "" 458
Генерация случайных чисел "." .. ". " .. " .. " "."."""" " .. " .... """""" 458
Ранг и. персентиль ..... " ..... "." .. "." .... " ..... " .. "." ..... " .. " ... " .. ". " .. " 458
Регрессия ........... " .. "." .... ". " .. " ". " .. ".". "". "." .. " ". """." .. ".". ". 458
Выборка ...... " ...... " .... "" .. "."."""." ..... "."" ... "." .. "." ..... " ..... " .. " 458
Т-тест.... "."."." ..... """" ... " "" ... "".""."."."""." .. "." .... "" .. """ .. 458
Парный двухвыборочный t-тест для средних""""" .. """"".".""" """""459
Двухвыборочный t-тест с одинаковыми дисперсиями """".""""""""".459
Двухвыборочный t-тест с разными дисперсиями""",""""."""""""""" 459
Z-тест............. " .. " ... " .. " .. ". "" ." .. "" "."" "." "".". " .. ". ". ". ". ".:" .. 459
Специальные функции .. "" ...... ".""""""." ... """."." .. "."."." .. "." .. 459
Функции Бесселя ............... " ". " ...... " ..... "."" .......... " .... "." "" " ... 459
БЕССЕЛЬ.J() ."" "" ." ". "" ." "" "." ". "" ". ".""". "" ". "" ". ". ""." ". ". """. " .. 459
БЕССЕЛЬ.1{)."""""."""."."""".""" .. "."."""."""."""."."."."."""""." .. 460
БЕССЕЛЬ.К()"" """. """.""" """.". ". " .. " "" "" ". "" ". "" ". "" .. " .. ". """.""460
БЕССЕЛЬ.У{) """ .. ". """.""" """." "" "" ".""" .""." """. ". "." .". "" ". """"460
ФОШ() ......... " ...... "." ............ " .... " ..... " .... "" .. "" .... " ..... ".""" .. " .. 460
ДФОШ() ........ " .... " .. " .... " ....... " .. " ..... " ......... "." .... "." .. "." .. "." ... 460
Функции распределения .. " .... "." ......... "."""."."."""."." .. " .. "." ... 460
Приложение Г
Использование внешних библиотек в
Ex:cel .............. 462
Приложение А
Соответствие английской и русской версий
Ex:cel 97 .......... "..... "............................... " ............. 466
466
469
Соответствие терминов русской и английской версий Excel 97 ...
Соответствие функций русской и английской версий Excel 97 .....
Соответствие элементов интерфейса русской и английской
.
версий Excel 97 ...... ".""" .......... " ... """" .. "." .. "."""."."."." .. " .. ". 476
Предметный указатель .......................................... 482
Учебное издание
Вильям Орвис
"
EXCEL
для ученых,
инженеров и студентов
Подписано в печать
-
24.03.99. Формат 60х84 1/16.
Усл. печ. л. 33. Усл. кр . -отг. 33.
Бумага газетная . Гарнитура TimesET.
Печать офсетная. Заказ № 99069
ООО "ЮНИОР'',
254214,
г. Киев, ул. Северная,
22
Адрес для корреспонденции:
г. Киев-142, ул. Стуса, 35-37, издательство "Юниор"
телефоны:
(044) 452-82-22, 488-29-70
e-mail: junior-mail@writeme.com
Web: http://www.junior.ukrnet.net
r.
Отпечатано АОЗТ "РОТЭКС"
Киев, у.Л. Машиностроительная,
46
СЕТЕВЫЕ ТЕХНОЛОrии .
кииrА. ВТОРАЯ
В
современном обществе компьютерные
сети стали неотъемлемой частью инфор
маuионной структуры . Однако .все возра
стающее
значение
компьютерных
сетей
требует от спеuиалистов по компьютер
ной обработке информаuии хорошего Зна
ния всего спектра технических и организа- 1
uионных вопросов, связанных с выбором ,
установкой и эксплуатацией сетей.
обусловлено не только
предприятий
Это
потребностями
и организаuий ,
в которых
сети должны быть органичной частью об- \
щей инфраструктуры, но и большим раз-
i
i
ний, широкой палитрой имеющихся на !
нообразием возможных технических Р.еще-
рынке аппаратных средств и разнообраз-
j
нога программного обес!lечения.
1
• В книге в сжатой и понятной форме приведены все основные сведения
1
1
о принuипах организаuии и функuионирования компьютерных сетей , а
также рассмотрены все протоколы и стандарты ,
используемые в сов
ременныхкомпьютерных сетях .
•
Рассмотрены вопросы,
касающиеся работы пользователей компью
терных сетей , работающих с такими операuионными сйстемами, как
DOS, Windows for Workgroups, Wiвdows 95/98 и Unix. Приведено так
же описание характерных проблем. возникающих перед сетевыми .ад
министраторами ,
систем, как
•
при
эксплуатации
таких
сетевых
операuионных
Novell Netware 4.1 / 5.0, Microsoft Wiпdows NT/ 2000
и Uпix.
Несколько глав книги посвящены проблеме выбора и установки аппа
ратных средств и программного обеспечения компьютерных сетей, на
чиная от небольших офисных сетей, и заканчивая крупными сетями
больших предприятий, объединяющих в себе несколько корпоратив
ныхсетей различных подразделений или филиалов .
.
УЧЕБНОЕ ПОСОБИЕ
1
Посетите наш WеЬ-узел по адресу
http://www.junlor.ukrnet.net
D:: Пм•кте: ~ ":~·-; .·.:.: : -: .-.~.:.·:~_=:_;_~:~:i.~:.:~ ..~:.:.
~ Звонмте: +300 44 452-8222
nрмсылаiiте факсы: +ЗВJ
44 452-8433
Наши книги по ценам издател ьства всегда можно найти в виртуальном
магазине компании
INT
по адресу
http://www.lnt-commerce.com
РАБОТА НА
IПР С ОIШIЬНОМ
КОМПЬЮТD'Е.
Пl'АКП!ЧЕСЮIЙ КУР С
В ОЛКОВ ВСD! ОЛОД
20.00 rрн.
КИЕВ
Содержа~mе :
Книrа издана е 1 999г.
содержит 57 0с Являе-rt:я
Уважаемый читатель!
С помощью приведенной ниже карточки Вы сможете стать нашим за
регистрированным читателем и оперативно получать информаuию о но
вых книгах нашего издательства и приобретать их на выгодных условиях.
Мы же , со своей стороны, сможем лучше и быстрее с помощью наших
книг оказы вать вам помощь в решении ваших проблем .
r·-------- -- -·---- ---- -- - -- --- - ------···-------· ·· ··--- -- ····- - --·- - ·····----···· · · ·· -----· ··- -------· ·· ·-- - ···
РЕГИСТРАЦИОННАЯ КАРТОЧКА
читателя издательства "ЮНИОР"
Фамнл11я
._
Отч ество
ло м .
ул .
__ _
н ас . 11у н кт
обл астъ
-·-·
__
_
кор п ус . _
rай ш1
__
·-
кя .
__
стран :~ _
конТШ(ТНЫ й телефон и коr1 насе;~еююю lfУНJ.."ТЗ
E-niail: _
возра ст _
__
ме сто работы или учебы
п араметры домашнего компьютера
·· - -·
__ _
Инде кс
EXCEL для
ученых,
инженеров и студентов
Почтовый адрес издательства :
г. Киев, ул. Стуса, 35-37, офис
Издательство "Юниор"
252142
Телефон/факс:
111.
(044) 452-82-22; 488-29-70
e-mail: junior-mail@writeme.com
Web: http://www.junior.ukrnet.net
Приз!!!
Местомя.
фотографии
Код
при за
Фамилия
Им я
От ч ес т во
Инд екс
и
т о чный
п оч т ов ый
Недорогой
а дрес
~редней
Дорогой
стоимости
Аппаратные средства
Лицензионное програ ммное обеспече н ие
Годовая подписка
на книги ведущих
издательств
Бытовая техника
Правила заполнения карточки "Приз!!!"
Если в т.ексrе книrи вы нашл и стран и цу с кодо м приза, за веренную печатью и здател ьства
" Юниор" - поздравляем с выигрышем! В ам осталось л ишь правильно запол нить данную кар
точку и прислать ее нам - все остальное сделаем м ы . П режде всего, пра вильн о укаJК.Ите код
приза (стратщу с печат ью наШего издательства выреза т ь 11 присылать
IIE НУЖНО -
юшга
остается у Вас как подтвержде1111е Вашего выигрыша . ) Как только мы получим за п олненную
карточку , мы свяжемся с Вами и сообщим какой вы игрыш Ва м достался . Однако при этом мы
можем учесть Ваши пожелания . Для этого Вы можете запол н ить приведенную выше таблицу .
При зы различаются по стоимости и по виду. · вы можете заполнить любое кол ичество яче
ек и даже всю табл ицу
-
это ни ка к не повлия ет на стои мость доставшеrося Ва м вы игрыша, но
позвол ит нам ка к можно более точн о учесть Ваши интерес ы . В графе "Аппаратн ые средства "
укажите параметры необходимых вам устройств, в графе "Ли цензион ное програ ммное обеспе
чение "
-
н азвания программных продуктов , в графе " Годовая подп иска"
-
интересующ>10
Вас тематику . а в графе " Б ьrrовая техни ка" - тип. модел ь и техн ические пара метры того или
иного бытового устройства . Разделе ни е по стоимости достаточно условно - мы надее мся на
В а ше чувство меры !! здравый смысл .
Выигрыш будет тол ько один , н о мы поста ра емся сдела1ъ все . чтобы он стал для Вас по
н астоя щему приятным с юрпризом!
В а ша фотографи я желател ьна в тех случаях , когда Вы зах отите лично пр иехать в Киев для
получ ения приза.
Благодари м за Ваш выбор,
-
оставайтесь с нами '
EROYCorp.
Салои-маrазии: ул. Михайловская, 6А, к.3
тел/факс:
228-00-60; 228-20-03; 228-78-80; 229-51-24
Из - ~OJOCCQJ \П]р~ож~~~LW ~rыJб~р~
СВОЙ
КАЖДОМУ ПОКУПАТЕЛЮ - 5 часов INTERNEТ БЕСПЛАТНО !!!
EROY Corp. теп/факс: 228-00-6
,-·-··--·-·----------------· -·-·············--··-----------·--···-················------------r--------- ·····-····----- -------------·-··--···-··-·---------------------- ----- ·-·····-···
, G~ROY Corp.
-------------
.
Mhcr,-a.~ayo sf tю iel· 221 0060; 211 7180; 229 5114; 2212003 i:
:t
MkfV't"J.oyo
------------- .
· rJf Компьютеры
,~_~ rJl' Принтерь1
s1
b'l. Ttl: 221 0060; 221 7180; 229 5124; 22
~-
~ .~
rJl' Сканеры
·~i; rJl' Коп.аппарать1
;t;: rJl' Мультимедиа
,:-_,; rJl' UPS
~
/
,,
rI Компnектующие
"E,} (("EL д~tя учеНЬLУ:, 1111же11еро11 и студе11тов"
г----~-~
-- -t
, G~ROY Согр.
Mi~oyiovskoyo
''tXCEL
для уче11ых, инженеров и студе11тов
. G~ROY Co rp.
s: 6а ;!1· 221 0060; 228 7UO; 229 S124; 2212003
M·hay~
rJl' Ко~· "..._ютерь1
·~ . rJl' Приh .
1
. ~-.· rJl' Сканерь1
:~. ;· rJl' Kon.annapaть1
f' 1 rJl' Муnьтимедиа
· · rI Компьютеры
·<
: rJl' Принтерь1
гЯ Сканерь1
rJl' Коп.аппараты
rJl' Мультимедиа
. ~~: rJl' UPS
rJl' Комплектующие
.
s: 6о. 1el. 221 0060; 228 7180; 229 S124; 22-'
~-
~:~-
.J
-. . . '· L.11"
UPS
'
~
"EXCJ::L для J•че11ых, инже11еров и студентов r,
•--- ---- - -
.
-- ---- - --- --- ---- - -
-
•
- -- ·- - -- ------------ ---- ·· -
''EX(. .EL для уче11ых, инже1tеров и студенто,
· -· .1-- - -•- -- - ------- .... ··· ·· · -----------
-- -- --·---- - .".
- - - -----·----- -
- --
для
••
учень1х, инженеров
и студентов
Excel
для учёных,
студентов
инженеров и
это великолепный
-
источник информации о реализа
ции сложных численных методов
с помощью
Excel
Воспользуйтесь
Excel
для проведения
вычислений любой сложности. В книге
приводится множество примеров, иллюстри
рующих методы проведения инженерных и
научных расчетов в
Excel.
В книге рассматри
ваются следующие вопросы:
разработка инженерных таблиц функций
одного и нескольких аргументов, а также
калькуляторов функций, облегчающих анализ
"что-если"
•
применение встроенных функций
Excel
для аппроксимации данных, начиная от
простой линейной аппроксимации и заканчи
вая линейной и полиномиальной регрессией
и нелинейной аппроксимацией
• реализация основных методов интегри
рования,
таких как правило прямоугольни
ков, трапеций, Симпсона и метод квадратур
Гаусса
•
использование фунций распределения и
статистических функций
•
решение обыкновенных дифференциаль
ных уравнений и уравнений в частных
производных путем применения новых под
ходов к работе со стандартными средствами
Excel
•
создание новых функций на языке
Basic for Applications
Visual