На главную страницу
Русский English
 


Поддержка
Форум
Техподдержка
Закрытый разделПерсональная

Авторизация

Запомнить меня на этом компьютере
  Забыли свой пароль?
  Регистрация



Поиск по сайту


Подписка

Изменение параметров

Hits 67418168
9518
Hosts 3608854
1891
Visitors 53570728
9198

71


Главная / Поддержка / Форумы / Макро

Форум «Макро»

Версия для печати Версия для печати

Список форумов
Новые темы
Список тем
Поиск по форумам
Помощь
Войти
Регистрация

Сообщения 1 - 25 из 33
Начало | Пред. | 1 2 | След. | Конец 

Тема: «методы Rastr » в форуме: Макро   Просмотров: 43685
 
Юрий Федоров
Посетитель
 
Всего сообщений: 39
Дата регистрации: 07.09.2007
Создано: 10.04.2008 15:40:03
 
 
Здравствуйте.
Объект Rastr обладает множеством методов и свойств, и основные из них приведены в описании к программе:
расчетные методы: rgm, opt,kdd,ekv
доступа к данным: Load,Save,Tables
и др.
А за что отвечают методы с названиями jacobi, opf, stes? Если предположить, что первый фомирует матрицу Якоби, а второй имеет отношение к оптимизации (OptimalPowerFlow), то о назначении третьего можно только догадываться С улыбкой
Просьба по возможности прокомментировать методы и набор входных/выходных данных.
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1059
Дата регистрации: 23.04.2007
Создано: 11.04.2008 00:20:15
 
 
jakobi - формирует матрицу для внутреннего использования.
opf - комплексная оптимизация, про входные и выходные данные можно издать отдельную книгу. В обычном комплекте RastrWin эта функция не разрешена. Для оптимизации есть специальный комплекс "LincorWin"
stes - оценивание состояния. Он пока не реанимировано с DOS-версии.
Кроме того там еще много чего интересного есть в интерфейсе. Вас что-то конкретное может быть интересует ? Обращайтесь, расскажем.
 
Профиль
Наверх
Юрий Федоров
Посетитель
 
Всего сообщений: 39
Дата регистрации: 07.09.2007
Создано: 11.04.2008 20:52:16
 
 
Замечательно, спасибо за открытость!
Собственно, аппетит приходит во время еды, поэтому нельзя успокоиться, наверное, пока не узнаешь об объекте RASTR все или почти все С улыбкой
Больше всего интересует оптимизация, но не стандартная, а другая- с распределением генерации с контролем загрузки сечений или линий, минимизацией ограничения нагрузки в случае дефицитных режимов и т.п. Но раз opf не доступна в обычном комплекте Rastr, то по ней вопросов нет.
А вот, про jacobi просьба поподробнее. Как хранится матрица, и как обращаться к ее элементам?
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1059
Дата регистрации: 23.04.2007
Создано: 15.04.2008 19:53:20
 
 
Оптимизация такая и есть как Вы хотите, только не очень понятно что тогда делает стандартная. На этом методе даже вроде бы объемы под САОН считали довольно успешно.

Рекомендую изучить макрос "Расчет матрицы Якоби". Он прямо в каталоге Макро, на виду лежит, его без OleView хорошо видно С улыбкой
 
Профиль
Наверх
Юрий Федоров
Посетитель
 
Всего сообщений: 39
Дата регистрации: 07.09.2007
Создано: 16.04.2008 21:14:53
 
 
Вы, наверное, говорите про opf-оптимизацию. Охотно верю и читаю подробности на http://www.t-s-g.ru/linco­r.htm. Оптимизация на любой вкус, потрясающе!
Облизываюсь С улыбкой, но в Rastr 2.25b имеем opt-оптимизацию с целевой функцией мин(активные потери+отклонения напряжения). Ее и "обозвал" стандартной.
А макроса "Расчет матрицы Якоби" не нашел Печально Все облазил, но... Может, это в полном комплекте Барс-Линкор?
P.S. Вычислить элементы Якобиана не сложно, имеются соответсвующие формулы. А все таки, может можно получить их непосредственно? (Раз Якобиан используется в расчете Влияние/Реация...только выудить его оттуда через dr_p и т.п. почти нереально %))
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1059
Дата регистрации: 23.04.2007
Создано: 18.04.2008 16:41:16
 
 
Макрос в почте на листе смотрите
 
Профиль
Наверх
Юрий Федоров
Посетитель
 
Всего сообщений: 39
Дата регистрации: 07.09.2007
Создано: 23.04.2008 20:51:35
 
 
Маркос получил, спасибо. Но он еще требует соответствующий шаблон 'матрица якоби.mc' С улыбкой
 
Профиль
Наверх
Михаил Одинцов
Постоянный посетитель
 
Всего сообщений: 148
Дата регистрации: 22.07.2008
Создано: 05.02.2013 20:59:44
 
 
Какой методов макро и как запускает автоматику? Пробовал Rastr.RunAutomatic (это правильный метод?), но не получилось, не понятны какие входные переменные, причем две типа int32. Попробовал ради интереса с взятыми из головы, вернулось значение 1, автоматика не сработала. Rastr 2.45.
Есть примеры кода с использованием автоматики? Нужно:
1.расчет режима
2.применение автоматики
3.расчет режима.
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1059
Дата регистрации: 23.04.2007
Создано: 05.02.2013 23:47:35
 
 
http://rastrwin.ru/suppor­t/forum/read...essage3169­

Все ошибки и предупреждения автоматика выводит в протокол.
 
Профиль
Наверх
Михаил Реутов
Постоянный посетитель
 
Всего сообщений: 224
Дата регистрации: 21.11.2007
Создано: 28.05.2013 09:50:13
 
 
Приветствую.

Есть метод или функция, которая "глобально" прерывает выполнение макроса?
 
Профиль
Наверх
Михаил Реутов
Постоянный посетитель
 
Всего сообщений: 224
Дата регистрации: 21.11.2007
Создано: 31.05.2013 13:33:20
 
 
Приветствую.

Имеется ли возможность в макро получить перечень элементов, которые будут отключены, если будет рассчитан режим?
 
Профиль
Наверх
Александр Александров
Администратор
 
Всего сообщений: 659
Дата регистрации: 31.05.2008
Создано: 31.05.2013 14:39:14
 
 
Здравствуйте!

Нельзя получить список откл. линий.

Можно попробовать переделать макрос

http://rastrwin.ru/macro/­vrnt.php

на возврат списка откл. или восстановления исходной топологии.
 
Профиль
Наверх
Сергей Шавловский
Заглянувший
 
Всего сообщений: 2
Дата регистрации: 19.02.2013
Создано: 03.06.2013 17:35:14
 
 
День добрый! Мне для своих нужд необходимо записывать в массивы VBA результаты утяжелений с различными вариантами отключений . Приходится делать это поэлементно с использованием циклов.


Есть ли возможность у Растра (или у языка VBA) записать значения объектной переменной, например,

Set kpr_znach = rastr.Tables("ots_znach")­ (значения контр. величин)


сразу в массив без использования циклов?





 
Профиль
Наверх
Вадим
Гость
 
Создано: 03.06.2013 17:53:13
 
 
а почему бы не экспортировать таблицу с рассчитанными величинами КВ после расчетов сразу в csv через метод WriteCSV? а уже после всех расчетов сделать анализ полученных файлов CSV (запихнуть туда все, что потом понадобиться для расчетов)

Такой метод все равно бы в своей реализации содержал циклы.. Так что можете не расстраиваться Шутливо
в растре вряд ли есть такой
в vba вы можете создать свой класс, в котором можно реализовать такой метод для таблиц Растра)
 
Наверх
Сергей Шавловский
Заглянувший
 
Всего сообщений: 2
Дата регистрации: 19.02.2013
Создано: 03.06.2013 18:19:10
 
 
Вадим, благодарю)

Кстати, в настоящий момент так и происходит. Автоматическая запись вариантных расчетов+утяжелений в csv. Затем обработка. Есть желание уменьшить количество промежуточных элементов и сразу писать в массив. (массив массивов по кол-ву вариантов).

Правильно ли я понимаю, что такой метод все равно будет чем-то типа функции, возвращающей результат расчетов в массив, только циклический процесс будет невидимым для пользователя?

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

В идеале для меня как пользователя - создать массив требуемой размерности и типа, и сразу присвоить ему значения элементов таблицы растра.


 
Профиль
Наверх
Вадим
Гость
 
Создано: 03.06.2013 18:32:41
 
 
я, конечно, не сомневаюсь в гениальности программистов растра, но думаю без цикла они там не смогли обойтись))))
вы можете сделать свой аналог метода WriteCSV, он принимает имя таблицы, нужные столбцы и возвращать массив.. Внутри своего метода вы обойдете всю таблицу через цикл и вернется пользователю массив данных..
Чтобы не утруждаться с созданием и указанием размерности, можно воспользоваться
либо объектом "Scripting.Dictionary"
http://www.script-coding.­com/WSH/Dictionary.html
либо через функцию split
http://www.w3schools.com/­VBscript/func_split.asp
либо через Redim Preserve

Все равно кому-то придется сделать черную работу по обходу значений в цикле)
 
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1059
Дата регистрации: 23.04.2007
Создано: 03.06.2013 19:35:57
 
 
Код

Set spNode = Rastr.Tables("node")
arr = spNode.WriteSafeArray("ny,name","")
for i = LBound(arr) to Ubound(arr)
   for j = LBound(arr,2) to Ubound(arr,2)
      Rastr.PrintP arr(i,j)
   Next
next
 
Профиль
Наверх
Вадим
Гость
 
Создано: 03.06.2013 19:51:02
 
 
O_o может прольете свет на функцию по получению имени файла по шаблону..

http://rastrwin.ru/suppor­t/forum/read...=9&TID=571­




 
Наверх
Вадим
Гость
 
Создано: 06.06.2013 03:49:03
 
 
Цитата
Есть метод или функция, которая "глобально" прерывает выполнение макроса?

http://www.rastrwin.ru/su­pport/forum/...essage3309­
Если основной текст макроса запихнуть в головной sub, то exit sub глобально прервет выполнение без ошибки, подойдет?)
 
Наверх
Михаил Реутов
Постоянный посетитель
 
Всего сообщений: 224
Дата регистрации: 21.11.2007
Создано: 06.06.2013 12:55:41
 
 
Цитата
подойдет?

Это и так понятно, что так можно сделать. Но вопрос был совсем про другое... А если функция вызывается внутри "глобальной" функции, то как остановить выполнение макроса внутри этой функции без создания дополнительных условных конструкций?
 
Профиль
Наверх
Михаил Одинцов
Постоянный посетитель
 
Всего сообщений: 148
Дата регистрации: 22.07.2008
Создано: 24.06.2013 16:56:46
 
 
Я так понимаю, в растре есть встроенные функции sum, max, min. Каким образом из макроса их вычислить (использую Матлаб)
K>> Rastr.Calc('max','node','­ny','na=1')
??? Invoke Error: Incorrect number of arguments
Это реально сделать в матлабе?

P.S. нашел функцию Rastr.CalculateImmediatel­y - это вроде тоже самое
 
Профиль
Наверх
Михаил Одинцов
Постоянный посетитель
 
Всего сообщений: 148
Дата регистрации: 22.07.2008
Создано: 25.08.2015 14:33:23
 
 
Цитата
Set spNode = Rastr.Tables("node")
arr = spNode.WriteSafeArray("ny­,name","")
for i = LBound(arr) to Ubound(arr)
for j = LBound(arr,2) to Ubound(arr,2)
Rastr.PrintP arr(i,j)
Next
next

Обратной штуки нет? Без цикла закинуть (заменить данные) массив в Растр?
 
Профиль
Наверх
bogdanov
Модератор
 
Всего сообщений: 61
Дата регистрации: 11.10.2012
Создано: 25.08.2015 18:59:03
 
 
Код

Set spNode = Rastr.Tables("node")
spNode.ReadSafeArray(CSV_­KOD, "ny?,name", arr)

CSV_KOD: 0 - добавить, 1 - заменить
 
Профиль
Наверх
Вадим Адамец
Заглянувший
 
Всего сообщений: 3
Дата регистрации: 20.03.2019
Создано: 20.03.2019 23:48:14
 
 
Евгений, доброго времени суток, можно тоже получить макрос "Расчет матрицы Якоби"?
 
Профиль
Наверх
Станислав Богданов
Модератор
 
Всего сообщений: 61
Дата регистрации: 11.10.2012
Создано: 21.03.2019 12:35:06
 
 
Макрос и шаблон включены в состав дистрибутива.
 
Профиль
Наверх


Сообщения 1 - 25 из 33
Начало | Пред. | 1 2 | След. | Конец 

Читают тему
гостей: 1, пользователей: 0, из них скрытых: 0


Список форумов
Новые темы
Список тем
Поиск по форумам
Помощь
Войти
Регистрация







Программный комплекс «RasrWin»
Программный комплекс «RastrWin»
© «RastrWin», 1988-2019