График функции модуль в модуле: Модуль в модуле. Графический метод

Исследовательский проект по математике на тему: Линейная функция. Модуль. Графики

Муниципальное бюджетное общеобразовательное учреждение

«Средняя общеобразовательная школа №3»

Исследовательский проект по математике

на тему:

Линейная функция.

Модуль. Графики

Выполнили учащиеся 7А класса

Фролов Григорий

Гузь Егор

Руководитель: учитель математики Митрофанова Е.А.

г. Сасово

2018-2019

Оглавление

1.ВВЕДЕНИЕ 3 2.ОСНОВНАЯ ЧАСТЬ 5

2.1. Теоретическая часть 5

2.2. Практическая часть 5

2.2.1. Задание функции несколькими формулами. 5

2.2.2. Построение графиков по формулам с модулем. 6

3.ЗАКЛЮЧЕНИЕ 9 Список использованной литературы: 10 Приложение 1 11

1. ВВЕДЕНИЕ

Актуальность

В 7-м классе мы изучили тему «Функции», на которой получили представление о функции и основных понятиях, связанных с ней. Первое подробное знакомство было с линейной функцией. На уроках рассмотрели основные способы построения графика такой функции. На занятиях внеурочной деятельности, мы столкнулись с трудностями при построении графиков более сложных функций. Проблемы вызвали задания, содержащие функции, заданные с помощью нескольких формул и с модулем. Исходя из всего вышесказанного, мы решили рассмотреть приемы и методы построения графиков, заданных более сложными формулами.

Цель:

Получить навыки построения сложных графиков.

Объекты исследования:

Графики функций и уравнений, заданных «сложными» формулами.

Задачи:

  • Вспомнить необходимый теоретический материал и систематизировать его.

  • Разработать план построения графика функции, заданной несколькими формулами.

  • Выявить закономерности изменения графика линейной функции при наличии знака модуля.

  • Получить представление о графике уравнения, учиться его строить.

Гипотеза:

Предположим, что появление модуля в формуле линейной функции «ломает» прямую, при этом имеет большое значение, где поставлен знак модуля в формуле.

Методы исследования.

  • Проанализировать и обобщить теоретический материал.

  • Опытным путём (по точкам) построить графики уравнений, содержащих модуль.

  • Проанализировав полученные результаты, составить план построения графиков.

Практическая значимость исследования

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

2.ОСНОВНАЯ ЧАСТЬ

2.1. Теоретическая часть

Для работы по данной теме вспомним о линейной функции и ее графике; о модуле числа.

Определение

Линейной функцией называется функция, которую можно задать формулой вида у = kx + b, где х – независимая переменная, k и b – некоторые числа.

Графиком линейной функции является прямая. Для построения графика нужно:

  1. Составить таблицу для двух точек.

  2. Отметить их в системе координат.

  3. Провести через эти точки прямую.

Расположение прямой зависит от значений коэффициентов k и b. Систематизировали все случаи и результаты оформили в таблице. (Приложение1).

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

Определение модуля

Модулем числа  х, называется: само это число, если х – положительное число; нуль, если число х – нуль, число противоположное числу х, если х – отрицательное число. Это определение можно записать в виде:

2.2. Практическая часть

2.2.1. Задание функции несколькими формулами.

На уроке алгебры мы строили график движения туристов по следующим данным: Группа туристов отправилась со станции на турбазу. Первые 2 ч они шли со скоростью 4.5 км/ч. Затем сделали привал на 1ч. На оставшуюся часть пути они затратили полтора часа, проходя ее со скоростью 6 км/ч.(№334).

График получился составленным из трех отрезков, каждый из которых можно задать формулой линейной функции (рис. 1).

Рис.1

Существуют функции, заданные несколькими формулами. Мы рассмотрели несколько таких функций. Построили их графики.

  1. (рис.2) 2. (рис.3)

Рис.2 Рис.3

Итак, как построить графики таких функций? Очень просто. Нужно каждый кусочек функции построить на выделенном участке, не залезая на соседние.

2.2.2. Построение графиков по формулам с модулем.

Свою работу с модулем мы начали с построения графика функции у =│х│. Используя определение модуля, получили кусочную функцию. (Рис.4)

Рис.4

Сделали вывод, что для построения графиков с модулем надо его раскрыть.

Примеры:

1) у =│х│- 2. (Рис.5)

2) у = 3х — │х│+1. (Рис.6)

Рис.5 Рис.6

Итак, для построения графиков подобных функций надо:

1)Раскрыть модуль по определению.

2)Получить функцию, заданную несколькими формулами.

3)Построить график функции, состоящей из нескольких формул.

А как поведет себя график, если модуль в формуле поставить в другом месте? Для этой работы взяли линейную функцию у = х – 2.

Далее, для подтверждения нашей гипотезы о том, что прямая при этом будет «ломаться», были исследованы несколько случаев.

а) у =│х│- 2 ; б) у =│х — 2│; в) │у│= х – 2; г) │у│=│х — 2│.

а) График у =│х│- 2 был построен ранее (рис.5). График симметричен относительно оси Оу.

б) у =│х — 2│

Весь график расположен выше оси Ох (рис. 7).

в) │у│= х – 2.

Так как │у│≥ 0, то х – 2 ≥ 0. Поэтому у = х – 2 выполняется при у ≥ 0. Строим часть прямой, расположенную выше оси Ох. Если х =5, то х – 2 = 3. │у│= 3, а это выполняется при у = 3 и у = — 3. Аналогично для других точек, для которых х–2≥0. График симметричен относительно оси Ох (рис.8).

г) │у│=│х — 2│

Модули равных и противоположных выражений равны, значит, у = х – 2 или у = — х + 2. Графиком в последнем случае является пара прямых (рис.9).

Важно отметить, что в последних двух случаях мы имеем дело не с функциями, так как каждому значению х соответствует не единственное значение у.

Рис.7 Рис.8

Рис. 9

В результате проведенных исследований при построении графиков функций и уравнений, содержащих модули, можно сделать следующие выводы:

  • если независимая переменная стоит под знаком модуля у = k│x│ + b, то от прямой у = kx + b оставляют только часть, где х ≥ 0, а затем отображают ее симметрично относительно оси Оу.

  • если имеем у = │kx + b│, то от прямой у = kx + b оставляют часть, где у ≥ 0, а часть графика, где у симметрично отображают относительно оси Ох.

  • если имеем │у │= kx + b, то от прямой у = kx + b оставляют часть, где у ≥ 0 а за-тем отображают ее симметрично относительно оси Ох.

  • если имеем │у│ = │kx + b│, то строим две прямые у = kx + b и у = — kx – b.

  • в других случаях, где встречается модуль, необходимо

1) Раскрыть модуль по определению.

2) Получить функцию, заданную несколькими формулами.

3) Построить график функции, состоящей из нескольких формул.

3.ЗАКЛЮЧЕНИЕ

Выводы:

  • На основе графика линейной функции с применением некоторых математических знаний мы рассмотрели построение «необычных» графиков не только функций, но и уравнений.

  • Рассмотрев графики, мы поняли, что их достаточно много и они разнообразны.

  • Свои знания мы можем использовать при изучении новых функций. Такие функции встречаются в заданиях ГИА.

Список использованной литературы:

  1. Алгебра. 7 класс: учеб. для общеобразоват. учреждений / [Ю.Н.Макарычев, Н.Г. Миндюк, К.И. Нешков, С.Б.Суворова]; под ред.С.А. Теляковского. – М.: Просвещение, 2017. – 240 с. : ил.

  2. Математика. 6 класс: учеб. для общеобразоват. учреждений / [Н.Я. Виленкин и др.].– М.: Мнемозина, 2015. – 288 с. : ил.

  3. Математика : Наглядная геометрия. 5-6 кл. : учебник / И.Ф.Шарыгин, Л.Н. Ерганжиева. – М. : Дрофа, 2014. – 189, [3] с. : ил.

  4. ОГЭ. Математика : типовые экзаменационные варианты : 36 вариантов / под. Ред. И.В. Ященко. – М. : Издательство «Национальное образование», 2019. –240 с. — (ОГЭ.ФКР – школе).

Приложение 1

12

Модуль Microsoft.Graph.Users.Functions | Microsoft Узнайте

Твиттер LinkedIn Фейсбук Электронное письмо

  • Артикул

Командлеты Microsoft Graph PowerShell

Get — Мгаллусерчатмессаже

Вызвать функцию getAllMessages

Get-MgUserCalendarEventDelta

Получить набор ресурсов событий, которые были добавлены, удалены или обновлены в calendarView (диапазон событий, определяемых датами начала и окончания) основного календаря пользователя. Как правило, синхронизация событий в calendarView в локальном хранилище влечет за собой цикл нескольких вызовов функций delta . Первоначальный вызов представляет собой полную синхронизацию, и каждый последующий вызов дельта в том же цикле получает добавочные изменения (добавления, удаления или обновления). Это позволяет поддерживать и синхронизировать локальное хранилище событий в указанном

calendarView без необходимости каждый раз получать все события этого календаря с сервера.

Get-MgUserChatMessageDelta

Вызов функции дельта

Get-MgUserChatMessageReplyDelta

Вызов функции дельта

Get-MgUserContactDelta

Получить набор контактов, которые были добавлены, удалены или обновлены в указанной папке. Вызов функции дельта для контактов в папке похож на запрос GET, за исключением того, что путем соответствующего \nприменения токенов состояния в одном или нескольких из этих вызовов \nвы можете запрашивать добавочные изменения в контактах в\nэтой папке. Это позволяет поддерживать и синхронизировать локальное хранилище контактов пользователя без необходимости каждый раз получать весь набор контактов с сервера.

Get-MgUserContactFolderChildFolderContactDelta

Получить набор контактов, которые были добавлены, удалены или обновлены в указанной папке. Вызов функции дельта для контактов в папке похож на запрос GET, за исключением того, что путем соответствующего \nприменения токенов состояния в одном или нескольких из этих вызовов \nвы можете запрашивать добавочные изменения в контактах в\nэтой папке. Это позволяет поддерживать и синхронизировать локальное хранилище контактов пользователя без необходимости каждый раз получать весь набор контактов с сервера.

Get-MgUserContactFolderChildFolderDelta

Получить набор папок контактов, которые были добавлены, удалены или удалены из почтового ящика пользователя. Вызов функции delta для папок контактов в почтовом ящике подобен запросу GET, за исключением того, что, \nприменив соответствующие маркеры состояния в одном или нескольких из этих вызовов,\nвы можете запрашивать добавочные изменения в папках контактов.

Это позволяет вам поддерживать и синхронизировать \nлокальное хранилище папок контактов пользователя без необходимости каждый раз получать все папки контактов этого почтового ящика с сервера.

Get-MgUserContactFolderContactDelta

Получить набор контактов, которые были добавлены, удалены или обновлены в указанной папке. Вызов функции дельта для контактов в папке похож на запрос GET, за исключением того, что путем соответствующего \nприменения токенов состояния в одном или нескольких из этих вызовов \nвы можете запрашивать добавочные изменения в контактах в\nэтой папке. Это позволяет поддерживать и синхронизировать локальное хранилище контактов пользователя без необходимости каждый раз получать весь набор контактов с сервера.

Get-MgUserContactFolderDelta

Получить набор папок контактов, которые были добавлены, удалены или удалены из почтового ящика пользователя. Вызов функции delta для папок контактов в почтовом ящике подобен запросу GET, за исключением того, что, \nприменив соответствующие маркеры состояния в одном или нескольких из этих вызовов,\nвы можете запрашивать добавочные изменения в папках контактов. Это позволяет вам поддерживать и синхронизировать \nлокальное хранилище папок контактов пользователя без необходимости каждый раз получать все папки контактов этого почтового ящика с сервера.

Get-MgUserDelta

Вызов функции дельта

Get-MgUserDriveItemActivityByInterval

Вызов функции getActivitiesByInterval

Get-MgUserDriveItemDelta

Вызов функции дельта

Get-MgUserDriveItemListItemActivityByInterval

Вызвать функцию getActivitiesByInterval

Get-MgUserDriveListContentTypeCompatibleHubContentType

Вызов функции getCompatibleHubContentTypes

Get-MgUserDriveListItemActivityByInterval

Вызов функции getActivitiesByInterval

Get-MgUserDriveRootActivityByInterval

Вызов функции getActivitiesByInterval

Get-MgUserDriveRootDelta

Вызов функции дельта

Get-MgUserDriveRootListItemActivityByInterval

Вызов функции getActivitiesByInterval

Get-MgUserEventDelta

Получить набор ресурсов событий, которые были добавлены, удалены или обновлены в

calendarView (диапазон событий, определяемых датами начала и окончания) основного календаря пользователя. Как правило, синхронизация событий в calendarView в локальном хранилище влечет за собой цикл нескольких вызовов функций delta . Первоначальный вызов представляет собой полную синхронизацию, и каждый последующий вызов дельта в том же цикле получает добавочные изменения (добавления, удаления или обновления). Это позволяет поддерживать и синхронизировать локальное хранилище событий в указанном calendarView без необходимости каждый раз получать все события этого календаря с сервера.

Get-MgUserEventInstanceDelta

Получить набор ресурсов событий, которые были добавлены, удалены или обновлены в calendarView

(диапазон событий, определяемых датами начала и окончания) основного календаря пользователя. Как правило, синхронизация событий в calendarView в локальном хранилище влечет за собой цикл нескольких вызовов функций delta . Первоначальный вызов представляет собой полную синхронизацию, и каждый последующий вызов дельта в том же цикле получает добавочные изменения (добавления, удаления или обновления). Это позволяет поддерживать и синхронизировать локальное хранилище событий в указанных calendarView , без необходимости каждый раз получать все события этого календаря с сервера.

Get-MgUserMailFolderChildFolderDelta

Получить набор почтовых папок, которые были добавлены, удалены или удалены из почтового ящика пользователя. Вызов функции

delta для почтовых папок в почтовом ящике похож на запрос GET, за исключением того, что, \nприменяя соответствующим образом токены состояния в одном или нескольких из этих вызовов, \nвы можете запросить добавочные изменения в почтовых папках. Это позволяет вам поддерживать и синхронизировать \nлокальное хранилище почтовых папок пользователя без необходимости каждый раз получать все почтовые папки этого почтового ящика с сервера.

Get-MgUserMailFolderChildFolderMessageDelta

Получить набор сообщений, которые были добавлены, удалены или обновлены в указанной папке. Вызов функции delta для сообщений в папке похож на запрос GET, за исключением того, что, \nприменив соответствующие маркеры состояния в одном или нескольких из этих вызовов, вы можете запросить добавочные изменения в сообщениях в\nэтой папке. Это позволяет поддерживать и синхронизировать локальное хранилище сообщений пользователя без необходимости каждый раз получать весь набор сообщений с сервера.

Get-MgUserMailFolderDelta

Получить набор почтовых папок, которые были добавлены, удалены или удалены из почтового ящика пользователя. Вызов функции delta для почтовых папок в почтовом ящике похож на запрос GET, за исключением того, что, \nприменяя соответствующим образом токены состояния в одном или нескольких из этих вызовов, \nвы можете запросить добавочные изменения в почтовых папках. Это позволяет вам поддерживать и синхронизировать \nлокальное хранилище почтовых папок пользователя без необходимости каждый раз получать все почтовые папки этого почтового ящика с сервера.

Get-MgUserMailFolderMessageDelta

Получить набор сообщений, которые были добавлены, удалены или обновлены в указанной папке. Вызов функции delta для сообщений в папке похож на запрос GET, за исключением того, что, \nприменив соответствующие маркеры состояния в одном или нескольких из этих вызовов, вы можете запросить добавочные изменения в сообщениях в\nэтой папке. Это позволяет поддерживать и синхронизировать локальное хранилище сообщений пользователя без необходимости каждый раз получать весь набор сообщений с сервера.

Get-MgUserManagedAppDiagnosticStatuses

Получает статус проверки диагностики для данного пользователя.

Get-MgUserManagedAppPolicy

Получает ограничения приложения для данного пользователя.

Get-MgUserMessageDelta

Получить набор сообщений, которые были добавлены, удалены или обновлены в указанной папке. Вызов функции

delta для сообщений в папке похож на запрос GET, за исключением того, что, \nприменив соответствующие маркеры состояния в одном или нескольких из этих вызовов, вы можете запросить добавочные изменения в сообщениях в\nэтой папке. Это позволяет поддерживать и синхронизировать локальное хранилище сообщений пользователя без необходимости каждый раз получать весь набор сообщений с сервера.

Get-MgUserOnenoteRecentNotebook

Вызов функции getRecentNotebooks

Get-MgUserTodoListDelta

Вызов функции дельта

Get-MgUserTodoListTaskDelta

Вызов функции дельта

Invoke-MgCalendarUserCalendarAllowedCalendarSharingRoles

Вызов функции разрешеноCalendarSharingRoles

Invoke-MgGraphUserDrive

Вызов функции sharedWithMe

Invoke-MgPreviewUserOnenotePage

Вызов функции предварительного просмотра

Invoke-MgRecentUserActivity

Получить последние действия для данного пользователя. В эту функцию OData включены некоторые варианты поведения по умолчанию, чтобы она работала как «последний использованный» API. Служба запросит самые последние элементы истории, а затем извлечет соответствующие действия. Мероприятия будут отсортированы в соответствии с последними lastModified on the historyItem . Это означает, что действия без historyItems не будут включены в ответ. Разрешение UserActivity.ReadWrite.CreatedByApp также будет применять дополнительную фильтрацию к ответу, чтобы возвращались только действия, созданные вашим приложением. Эта фильтрация на стороне сервера может привести к пустым страницам, если пользователь особенно активен, а другие приложения создали более свежие действия. Чтобы получить действия вашего приложения, используйте свойство nextLink для разбиения на страницы.

Invoke-MgRecentUserDrive

Недавняя функция вызова

Invoke-MgSupportedUserOutlookLanguage

Получите список локалей и языков, поддерживаемых пользователем, в соответствии с настройками на сервере почтовых ящиков пользователя. При настройке клиента Outlook пользователь выбирает предпочитаемый язык из этого поддерживаемого списка. Впоследствии вы можете получить предпочитаемый язык, задав настройки почтового ящика пользователя.

Invoke-MgTimeUserOutlook

Функция вызова поддерживается TimeZones

Invoke-MgViewUserReminder

Вызов функции напоминания View

Поиск-MgUserDrive

Вызов функции поиска

Search-MgUserDriveItem

Вызов функции поиска

Поиск-MgUserDriveRoot

Вызов функции поиска

Test-MgUserDriveListContentTypePublished

Вызов функции isPublished

3.2 Функция пересылки модуля DGL NN — документация DGL 0.9.1post1

В модуле NN функция forward() выполняет фактическую вычисление. По сравнению с модулем PyTorch NN, который обычно занимает тензоры в качестве параметров, модуль DGL NN принимает дополнительный параметр дгл. DGLГрафик . рабочую нагрузку для функции forward() можно разделить на три части:

В оставшейся части раздела подробно рассматривается функция forward() в примере SAGEConv.

Проверка графика и спецификация типа графика

 def forward(self, graph, feat):
    с graph.local_scope():
        # Укажите тип графика, затем разверните входную функцию в соответствии с типом графика
        feat_src, feat_dst = expand_as_pair(feat, graph)
 

forward() необходимо обрабатывать множество угловых случаев на входе, которые могут привести к недопустимым значениям при вычислении и передаче сообщений. Одна типичная проверка в конв модулях как GraphConv , чтобы проверить, что входной граф не имеет узлов 0 в степени. Когда узел имеет степень вхождения 0, почтовый ящик будет пуст, и функция сокращения выдаст нулевые значения. Это может вызвать тихую регрессию в производительности модели. Однако в Модуль SAGEConv , агрегированное представление будет объединено с исходной функцией узла, выход 9{l+1})\]

Необходимо указать функцию исходного узла feat_src и пункт назначения функция узла feat_dst в соответствии с типом графика. expand_as_pair() — это функция, определяющая график введите и разверните feat в feat_src и feat_dst . Детали этой функции показаны ниже.

 по определению expand_as_pair (input_, g = нет):
    если isinstance (input_, кортеж):
        # Случай двудольного графа
        возврат input_
    elif g не None и g.is_block:
        # Случай блока подграфа
        если isinstance (input_, Mapping):
            input_dst = {
                k: F.narrow_row(v, 0, g.number_of_dst_nodes(k))
                для k, v в input_.items()}
        еще:
            input_dst = F.narrow_row(input_, 0, g.number_of_dst_nodes())
        вернуть input_, input_dst
    еще:
        # Однородный граф
        вернуть ввод_, ввод_
 

Для однородного обучения всему графу, исходным узлам и узлам назначения подобные. Все они являются узлами графа.

В гетерогенном случае граф можно разбить на несколько двудольных графики, по одному для каждого отношения. Отношения представляются как (src_type, edge_type, dst_dtype) . Когда он определяет, что входная функция feat — это кортеж, он будет рассматривать граф как двудольный. Первое элементом в кортеже будет функция исходного узла, а второй элемент будет конечным элементом узла.

В мини-пакетном обучении вычисление применяется к выбранному подграфу на основе группы узлов назначения. Подграф называется блок в DGL. На этапе создания блока dst-узлы находятся в начале списка узлов. Можно найти feat_dst по индексу [0:g.number_of_dst_nodes()] .

После определения feat_src и feat_dst вычисление для вышеуказанные три типа графиков одинаковы.

Передача и сокращение сообщений

 импортировать dgl.function как fn
импортировать torch.nn.functional как F
из dgl.utils импортировать check_eq_shape
если self._aggre_type == 'значит':
    graph.srcdata['h'] = feat_src
    graph. update_all(fn.copy_u('ч', 'м'), fn.mean('м', 'ржать'))
    h_neigh = graph.dstdata['ржет']
elif self._aggre_type == 'gcn':
    check_eq_shape (подвиг)
    graph.srcdata['h'] = feat_src
    graph.dstdata['h'] = feat_dst
    graph.update_all(fn.copy_u('ч', 'м'), fn.sum('м', 'ржать'))
    # делим in_степени
    градусы = график.в_градусах().до(feat_dst)
    h_neigh = (graph.dstdata['neigh'] + graph.dstdata['h']) / (degs.unsqueeze(-1) + 1)
elif self._aggre_type == 'пул':
    graph.srcdata['h'] = F.relu(self.fc_pool(feat_src))
    graph.update_all(fn.copy_u('ч', 'м'), fn.max('м', 'ржать'))
    h_neigh = graph.dstdata['ржет']
еще:
    поднять KeyError('Тип агрегатора {} не распознан.'.format(self._aggre_type))
# GraphSAGE GCN не требует fc_self.
если self._aggre_type == 'gcn':
    рст = self.fc_neigh(h_neigh)
еще:
    рст = self.fc_self(h_self) + self.fc_neigh(h_neigh)
 

Код фактически выполняет передачу сообщений и сокращение вычислений. Эта часть кода варьируется от модуля к модулю.

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

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