Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Язык программирования Python (Питон, Пайтон)

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

Язык программирования Python (Питон, Пайтон)
 ОтветГолосаПроценты
первый раз слышу8
1.37%
слыхал, но ничего сказать про него немогу142
24.40%
изучал, но меня от него не прёт25
4.30%
изучаю и скоро на него перейду258
44.33%
скрипты пишу в основном на нём94
16.15%
пишу только на нём47
8.08%
я из комманды разработчиков Python'а8
1.37%
Гости не могут голосовать, зарегистрируйтесть!Всего Голосов: 582
BagaBaga

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

фортран (параметр art не используется, на вход - географическая долгота и коширота, на выход - геомагнитная долгота [dolm] и коширота [tetm])

Код:
 
      SUBROUTINE GGMRAW(ART,DOLG,TET,DOLM,TETM)
      INTEGER ART
      DOUBLE PRECISION ZPI,FAKTOR,CBG,CI,SI,XLM,BM,CBM,SBM,
     *      CLM,SLM,SBG,BG,SLG,CLG,XLG,YLG
      ZPI=6.28318530718
      FAKTOR=0.01745329252
      CBG=11.4*FAKTOR
      CI=DCOS(CBG)
      SI=DSIN(CBG)
        BG=90.-TET
        XLG=DOLG
        YLG=XLG+69.8
        CBG=DCOS(BG*FAKTOR)
        SBG=DSIN(BG*FAKTOR)
        CLG=DCOS(YLG*FAKTOR)
        SLG=DSIN(YLG*FAKTOR)
        SBM=SBG*CI+CBG*CLG*SI
        BM=DASIN(SBM)
        CBM=DCOS(BM)
        SLM=(CBG*SLG)/CBM
        CLM=(-SBG*SI+CBG*CLG*CI)/CBM
        if(abs(clm).gt.1.0d0)then
          CLM=sign(10.0d-1,CLM)
        endif
        XLM=DACOS(CLM)
        IF(SLM.LT.0.0) XLM=ZPI-DACOS(CLM)
        BM=BM/FAKTOR
        XLM=XLM/FAKTOR
        DOLM=XLM
        IF(ABS(TET-180.).LT.1.E-3)DOLM=0.
        TETM=90.-BM
      RETURN
      END
 

 
 
питон

Код:
 
def ggr2ggm(colat, lon):
    """
    Input:  geographic co-latitude and longitude
    Output: geomagnetic co-latitude and longitude
    """
    if not (0 <= colat <= 180):
        raise ValueError('Colatitude should be in range [0..180]')
    if not ((-180<= lon <= 180) or (0 <= lon <= 360)):
        raise ValueError("Longitude should be in [-180..180] or [0..360]")    
    #GGR colatitude
    TET  = colat
    #GGR longitude
    DOLG = lon    
    ZPI=6.28318530718
    FAKTOR=0.01745329252
    CBG=11.4*FAKTOR
    CI=cos(CBG)
    SI=sin(CBG)
    BG=90.0-TET
    XLG=DOLG
    YLG=XLG+69.8
    CBG=cos(BG*FAKTOR)
    SBG=sin(BG*FAKTOR)
    CLG=cos(YLG*FAKTOR)
    SLG=sin(YLG*FAKTOR)
    SBM=SBG*CI+CBG*CLG*SI
    BM=asin(SBM)
    CBM=cos(BM)
    SLM=(CBG*SLG)/CBM
    CLM=(-SBG*SI+CBG*CLG*CI)/CBM
    if(abs(CLM)>1.0):
        CLM=copysign(10.0E-1,CLM)
    XLM=acos(CLM)
    if SLM < 0.0:
        XLM=ZPI-acos(CLM)
    BM=BM/FAKTOR
    XLM=XLM/FAKTOR
    DOLM=XLM
    if abs(TET-180.0) < 1.0E-3:
        DOLM=0.0
    TETM=90.0-BM
    assert (0 <= TETM <= 180), 'Colatitude should be in range [0..180]'
    assert ((-180<= DOLM <= 180) or (0 <= DOLM <= 360)), "Longitude should be [-180..180] or [0..360]"
    return (TETM, DOLM)
 


Всего записей: 463 | Зарегистр. 14-11-2005 | Отправлено: 21:30 13-05-2013 | Исправлено: BagaBaga, 21:30 13-05-2013
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Интернет » Web-программирование » Язык программирования Python (Питон, Пайтон)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru