Daha çox

Sahə kalkulyatorunda birdən çox piton ifadəsi necə əlavə olunur


Mümkünsə ArcMap Field Calculator-a birdən çox piton ifadəsini necə əlavə edərdim?

Hər bir ifadəni yeni bir sətirdə ayırmağı və yarım nöqtəli nöqtə ilə ayırmağı sınadım, amma heç biri işləmədi.

Bir dəfəyə icra etməyə çalışdığım ifadələr:

! field!. Replace ("+", "") '_'. join (num.zfill (4) for num in! field! .split ('_'))! field! [: 9]

Əməliyyatları ardıcıl olaraq yerinə yetirmək istədiyinizi, yəni sahədəki son dəyər! Sahəsindən! [: 9] əməliyyatından gəldiyini düşünməkdə haqlıyam?

Əgər belədirsə, kod blokuna aşağıdakı kimi sahib olardım:

def field_calc (field): str1 = field.replace ("+", "") str2 = "_". join ([num.zfill (4) in num in str1.split ('_')]) str3 = str2 [: 9] return str3

Sonra istifadə edərək zəng edin:

field_calc (! sahə!)

Bu, hər prosesi ardıcıllıqla həyata keçirəcək və nəticəni irəli aparacaqdır. Məlumatım olmadığından bunu sınamamışam, amma hiylə işləməlidir.


Kod blokunda:

def calcField (field): f1 = field.replace ("+", "") f2 = '_'. join (num.zfill (4) in number for field.split ('_')) f3 = field [: 9] f1 + f2 + f3 qayıt

ifadə sətrində: calcField (! field!)


Python-da Menyu yaratmaq [bağlıdır]

Bu sualı yaxşılaşdırmaq istəyirsiniz? Yığın daşması üçün mövzuya uyğun olaraq sualı yeniləyin.

Pythonda lazım olan bir menyu hazırlayıram:

  1. Nömrəli seçimləri olan bir menyu çap edin
  2. İstifadəçiyə nömrələnmiş bir seçim daxil etsin
  3. İstifadəçinin seçdiyi seçim nömrəsindən asılı olaraq həmin əməliyyata xas bir funksiyanı işə salın. Hələlik funksiyanız işlədiyini yazdıra bilər.
  4. İstifadəçi səhv bir şey daxil edərsə, istifadəçiyə bunu etdiklərini bildirir və menyunu yenidən göstərir
  5. menyu seçimlərini, seçim nömrəsini açar olaraq və bu seçim üçün dəyər kimi göstəriləcək mətni saxlamaq üçün bir lüğət istifadə edin.
  6. Bütün menyu sistemi bir döngü içərisində işləməlidir və istifadəçiyə çıxış / çıx seçimini edənə qədər seçim etməsinə icazə verməli və bu zaman proqramınız bitə bilər.

Python üçün yeniyəm və kodla nəyin səhv etdiyimi başa düşə bilmirəm.

Göründüyü kimi istəyirdi:


1 Cavab 1

. ən yaxşı nəticələr ağırlıqlı texnika ansamblından gəlir.

Bəlkə tətbiqetmədən asılı olaraq edirlər. Ancaq bəhs edilən oxşarlıqların hər biri, ən azı xətti sistemlərdən qaynaqlanan siqnallardan bəhs etdiyimiz zaman digərinə bərabərdir.

Çapraz korrelyasiya çox yaxşı nəticələr verir, xüsusən də bir siqnalın səs-küy olub olmadığını anlamağa çalışırsınızsa və bunun çox yaxşı bir tətbiqi dırmıq qəbuledicisindədir. Korrelyasiyanın ayrılıqda Fourier Transform (DFT) ilə əlaqəsi sayəsində bunu tezlik bölgəsində həyata keçirməyə imkan verir, verilmiş ifadələr arasındakı ekvivalentləri görməyə başlaya bilərik.

Daha məlumatlı bölmə xətti "ölçmələr" ilə qeyri-xətti ölçmələr arasında olacaqdır. Ancaq sahə "bənzərlik göstəriciləri" genişdir, buna görə problemdən məlum olanlardan başlamaq və sonra həll yoluna getmək yaxşıdır.

Burada edəcəm faydalı ola biləcəyiniz bəzi oxşarlıq metrikləri haqqında bir az danışmaq, eyni zamanda düşündüyüm kimi oxşarlığın qiymətləndirilməsini tələb etməyən eyni şeyi etmənin başqa yolları barədə bir az yazmaqdır. bu ikinci hissə əldə etməyə çalışdığınız şeyə daha yaxındır (ancaq birbaşa soruşduğunuza deyil).

Bənzərlik Metrikləri haqqında:

Çapraz korrelyasiya, siqnallarınız bir-birinizə davamlı olaraq nümunə götürülmüşdürsə, yaxşı işləyəcəkdir. Yəni, hər cihazın seçmə tezliyi tamamilə sabit qalır, lakin qeydin başladığı nisbi nöqtələr dəyişdirilə bilər. Bu, müxtəlif gecikmələrdə çoxsaylı çarpaz korrelyasiya edərək bərpa etmək çox asan olan dalğa formaları arasında bir gecikmə əlavə edəcəkdir.

Xüsusi tezliklərə baxmaq istəyirsinizsə, qarşılıqlı əlaqədən əvvəl siqnalları süzə bilər və ya uyğunluğu istifadə edə bilərsiniz.

Bir başqa cəhd edə biləcəyiniz bir şey də əsas komponent analizidir. Bunu etmək üçün $ N $ cihazlarından aldığınız bütün siqnalları bir matrisə yığın və PCA-ya göndərin. PCA bu siqnalları daha kiçik bir "əsas" dəstinə ayırmağa çalışacaq (əlaqəsiz) siqnalları və bu elementar siqnallar və onların güclü tərəfləri ilə bir matris qaytaracaqdır. Bunu korrelyasiya ilə çox sıx əlaqəli olan kovaryansdan istifadə edir. Buradakı nöqtə budur ki, bütün siqnallar eynidirsə, "komponentlər" yoxdur və güclü vektor sıfır olacaqdır. Amma, siqnallar daxilində əhəmiyyətli bir dəyişiklik varsa, güclü vektor bir quruluş nümayiş etdirməyə başlayacaq. Güclülər vektorunu göstərilən dəyişikliyin əhəmiyyətsiz və ya həyəcan siqnalına layiq olub olmadığını fərqləndirən sadə bir təsnifatçıda istifadə edə bilərsiniz.

İndi hər bir GPS cihazının seçmə müddəti sabit olmaya bilər (çox güman ki). Və bu artıq o deməkdir ki, "bir siqnalı digərinin üstünə" qoyarsan (sanki şəffaflıq slaydlarında yazılmışdı), düzəltmək mümkün olacaq bəzi zirvələr, ancaq digərləri deyil.

Bu vəziyyətdə Dynamic Time Warping (DTW) istifadə edə bilərsiniz. Təsəvvür edin ki, bir çox vay-vay ilə bir vinil qeydinə qulaq asırsınız. Rekord pleyer yavaşladıqda və əksinə qeydləri sürətləndirərək həmin vayı aradan qaldırmaq olar. Bu DTW-nin etdiyi şeydir. Ona iki siqnal ötürürsən və harada yavaşlamağı və harada sürətləndirəcəyini söyləyən bir matris qaytarır. Bu çevrilməni siqnallardan birinə tətbiq etdikdən sonra zirvələr mükəmməl bir şəkildə hizalanacaqdır. Bu matrisdəki ümumi sapma miqdarı oxşarlıq metrikidir. Lakin, DTW tam sürətli deyil. Xüsusilə $ frac hesab etməlisinizsə<2> $ 2-dan $ 2-ə qədər siqnal arasında $ unikal birləşmələr (bu göstəricilərin hamısı simmetrik olduğundan).

Xüsusi tətbiq haqqında:

Beləliklə, tətbiq GPS müdaxiləsi xəbərdarlığıdır. Bu anda görə biləcəyim iki istifadə ssenarisi var:

  1. GPS tıxanması
    • Yerli bir qaynaq girişini "səs-küy" ilə "basdırdığı" üçün alıcının peyklərdən gələn siqnallara çata bilmədiyi yer.
  2. GPS saxtakarlıq
    • Alıcının olduğu yer düşünür bir peyk dinləyirlər, amma əslində yüksək bir qara qutu dinləyirlər kimi davranır bir peyk.

Yalnız bir cihazda mövcud məlumatlara əsaslanan müdaxilə həyəcanı qaldırmaq mümkün olmadığından, bu cihazdakı GPS alıcısının "hekayəsini" təsdiqləmək üçün digər məlumat mənbələrindən (yaxınlıqdakı cihazlar / məlumatlar) məlumatları birləşdirməkdir. dinləmək.

Müəyyən bir cihazdakı düzəlişin keyfiyyətinə dair bir göstərici necə əldə edə bilərik?

İki açıq seçim var:

Bu ikisi arasında, Həssaslığın Seyreltilməsi düzəlişin keyfiyyətinin "daha yumşaq" bir göstəricisidir (daha geniş dəyərlər üçündür).

Beləliklə, bir sıra cihazlardan (məsələn, Waze və ya Glypmse kimi) GPS məlumatlarını toplamaq üçün bir infrastrukturun olduğunu düşünsək, aşağıdakı siqnalları qaldırmaq olar:


Tkinter, GUI tətbiqində istifadə olunan düymələr, etiketlər və mətn qutuları kimi müxtəlif idarəetmələr təmin edir. Bu nəzarətlərə ümumiyyətlə widget deyilir.

Hal-hazırda Tkinter-də 15 növ widget var. Aşağıdakı cədvəldə və mənfi olaraq bu widgetların qısa təsvirini təqdim edirik

Düymə widgetı tətbiqinizdəki düymələri göstərmək üçün istifadə olunur.

Canvas widgetı tətbiqinizdə xətlər, ovallar, çoxbucaqlılar və düzbucaqlılar kimi şəkillər çəkmək üçün istifadə olunur.

Checkbutton widgetı bir sıra seçimləri onay qutuları kimi göstərmək üçün istifadə olunur. İstifadəçi eyni anda birdən çox seçim seçə bilər.

Giriş widgetı istifadəçidən dəyərləri qəbul etmək üçün bir sətirli mətn sahəsini göstərmək üçün istifadə olunur.

Çerçeve widgetı, digər widgetları təşkil etmək üçün konteyner widgetı kimi istifadə olunur.

Etiket vidceti digər vidcetlər üçün bir sətrli yazı təmin etmək üçün istifadə olunur. Ayrıca şəkillər də ola bilər.

Listbox widgetı bir istifadəçiyə seçimlər siyahısını təqdim etmək üçün istifadə olunur.

Menubutton widgetı tətbiqinizdə menyuları göstərmək üçün istifadə olunur.

Menyu widgetı bir istifadəçiyə müxtəlif əmrlər vermək üçün istifadə olunur. Bu əmrlər Menubutton içərisindədir.

Mesaj widgetı istifadəçidən dəyərləri qəbul etmək üçün çoxsaylı mətn sahələrini göstərmək üçün istifadə olunur.

Radiobutton widgetı bir sıra variantları radio düymələri kimi göstərmək üçün istifadə olunur. İstifadəçi hər dəfə yalnız bir seçim seçə bilər.

Tərəzi widgetı, sürgü vidceti təmin etmək üçün istifadə olunur.

Kaydırma çubuğu widgetı, siyahı qutuları kimi müxtəlif widgetlara sürüşmə qabiliyyəti əlavə etmək üçün istifadə olunur.

Mətn widgetı mətni çox sətirdə göstərmək üçün istifadə olunur.

Toplevel widgetı ayrı bir pəncərə qabı təmin etmək üçün istifadə olunur.

Spinbox widgetı, sabit bir sıra dəyərlər arasından seçim etmək üçün istifadə edilə bilən standart Tkinter Entry widgetının bir variantıdır.

PanedWindow, üfüqi və ya şaquli olaraq düzəldilmiş istənilən sayda bölməni ehtiva edən bir konteyner widgetıdır.

Labelframe sadə bir konteyner widgetıdır. Əsas məqsədi kompleks pəncərə düzülüşləri üçün boşluq və ya konteyner rolunu oynamaqdır.


Sahə kalkulyatorunda birdən çox piton ifadəsi necə əlavə olunur - Coğrafi İnformasiya Sistemləri

Xüsusi simvollarla yanaşı alfasayısal simvolların birləşməsi kimi bir parol götürək və parolun keçərli olub olmadığını bir neçə şərtlə yoxlayaq.

  1. Ən azı bir nömrə olmalıdır.
  2. Ən azı bir böyük və bir kiçik hərf olmalıdır.
  3. Ən azı bir xüsusi simvolu olmalıdır.
  4. 6 ilə 20 simvol arasında olmalıdır.

Verilən bir sətrin parol ola biləcəyini və ya birdən çox yol istifadə etmədiyini yoxlaya bilərik.

Metod # 1: Sadəlövh metod (Regex istifadə etmədən).

Bu kod, bütün şərtlərin yerinə yetirilib-edilmədiyini yoxlamaq üçün boole funksiyalarından istifadə etdi. Kodun mürəkkəbliyi əsas olsa da uzunluğunun xeyli olduğunu görürük.

Metod # 2: Regex istifadə olunur

Regex modulunun compile () metodu Regex obyektini regex funksiyalarının yerinə yetirilməsinə imkan yaradır. astadan əl çalma dəyişən. Sonra nümunənin təyin olunduğunu yoxlayırıq astadan əl çalma giriş sətri izləyir keçid. Əgər belədirsə, axtarış metodu geri qayıdır doğru, bu parolun etibarlı olmasına imkan verəcəkdir.


Xüsusi Növ Konversiyalar

Uyğun sahələrin avtomatik olaraq öz növünüzə çevrilməsini istəyirsinizsə, bir növ çevirmə məlumatı lüğətindən keçə bilərsiniz təhlil ()yığmaq ().

Dönüştürücü uyğunlaşdırılan sahə sətri keçəcəkdir. Nə qaytarırsa, o ilə əvəzlənəcəkdir Nəticə bu sahə üçün nümunədir.

Eyni identifikator təqdim etsəniz, xüsusi tipli dönüşümlər daxili tipləri ləğv edə bilər:

Tip çeviricinin isteğe bağlı olması halında naxış atributu, daha yaxşı naxış uyğunluğu üçün normal ifadə kimi istifadə olunur (standart əvəzinə):

Ayrıca istifadə edə bilərsiniz naxışla (naxış) dekorativ bu məlumatı bir növ çevirici funksiyasına əlavə etmək üçün:

Xüsusi bir növün daha dolğun bir nümunəsi ola bilər:

Növü çeviricisidirsə naxış regex-qruplaşdırma istifadə edir (mötərizə ilə), bunu isteğe bağlı olaraq göstərməlisiniz regex_group_count parametri naxışla () dekorativ:

Əks təqdirdə, bu adsız / sabit parametrlərlə təhlil problemlərinə səbəb ola bilər.


Daha Qabaqcıl Test Ssenariləri

Tətbiqiniz üçün testlər yaratmağa başlamazdan əvvəl hər testin üç əsas addımını xatırlayın:

  1. Girişlərinizi yaradın
  2. Çıxışı ələ keçirərək kodu icra edin
  3. Çıxışı gözlənilən nəticə ilə müqayisə edin

Hər zaman bir simli və ya rəqəm kimi giriş üçün statik bir dəyər yaratmaq qədər asan deyil. Bəzən tətbiqiniz bir sinif və ya bir kontekst nümunəsi tələb edəcəkdir. O zaman nə edirsən?

Giriş olaraq yaratdığınız məlumatlar a kimi tanınır armatur. Armatur yaratmaq və yenidən istifadə etmək ümumi təcrübədir.

Eyni testi aparır və hər dəfə fərqli dəyərlər ötürür və eyni nəticəni gözləyirsinizsə, bu bilinir parametrləşdirmə.

Gözlənilən uğursuzluqlarla işləmə

Əvvəllər sum () testi üçün ssenarilərin siyahısını hazırladığınız zaman bir sual ortaya çıxdı: Tək bir tam və ya simli kimi pis bir dəyər verdiyiniz zaman nə baş verir?

Bu vəziyyətdə sum () səhv atacağını gözləyərdiniz. Bir səhv atdıqda, testin uğursuz olmasına səbəb olar.

Gözlənilən səhvləri idarə etmək üçün xüsusi bir yol var. Kontekst meneceri olaraq .assertRaises () istifadə edə bilərsiniz, daha sonra with block daxilində test addımlarını yerinə yetirin:

Bu test vəziyyəti yalnız cəmi (data) bir TypeError qaldırdığı təqdirdə keçəcəkdir. TypeError-u seçdiyiniz hər hansı bir istisna növü ilə əvəz edə bilərsiniz.

Tətbiqinizdə Davranışları Təcrid Etmək

Dərslikdən əvvəl yan təsirin nə olduğunu öyrəndiniz. Yan təsirlər vahid testini daha da çətinləşdirir, çünki hər dəfə bir test işə salındıqda fərqli bir nəticə verə bilər və ya daha da pis bir test tətbiqin vəziyyətinə təsir göstərə bilər və başqa bir testin uğursuz olmasına səbəb ola bilər!

Tətbiqinizin bir çox yan təsiri olan hissələrini test etmək üçün istifadə edə biləcəyiniz bəzi sadə üsullar var:

  • Tək Məsuliyyət prinsipinə riayət etmək üçün kodun yenidən işlənməsi
  • İstənilən metodu və ya funksiyanı istehza etmək yan təsirləri aradan qaldırmağa çağırır
  • Tətbiqin bu hissəsi üçün vahid test əvəzinə inteqrasiya testindən istifadə

İstehza ilə tanış deyilsinizsə, əla nümunələr üçün Python CLI Testinə baxın.

İnteqrasiya testlərinin yazılması

İndiyə qədər əsasən vahid testləri öyrənirdiniz. Vahid testi, proqnozlaşdırıla bilən və sabit bir kod yaratmaq üçün əla bir yoldur. Ancaq günün sonunda tətbiqiniz başladığında işləməlidir!

İnteqrasiya testi, tətbiqetmənin bir çox hissəsinin birlikdə işlədiyini yoxlamaq üçün test edilməsidir. İnteqrasiya testi tətbiqetmənin istehlakçısı və ya istifadəçisi kimi davranmağı tələb edə bilər:

  • HTTP REST API-yə zəng etmək
  • Python API-yə zəng etmək
  • Veb xidmətinə zəng
  • Bir komanda xətti işləyir

Bu tip inteqrasiya testlərinin hər biri Giriş, İcra et və Təsdiqləmə qaydalarına riayət edərək vahid testlə eyni şəkildə yazıla bilər. Ən əhəmiyyətli fərq, inteqrasiya testlərinin bir anda daha çox komponenti yoxlaması və bu səbəbdən vahid testindən daha çox yan təsirə sahib olmasıdır. Ayrıca, inteqrasiya testləri, bir verilənlər bazası, bir şəbəkə yuvası və ya bir konfiqurasiya faylı kimi daha çox qurğunun yerində olmasını tələb edəcəkdir.

Bu səbəbdən vahid testlərinizi və inteqrasiya testlərinizi ayırmaq yaxşı bir təcrübədir. Bir test verilənlər bazası kimi bir inteqrasiya üçün tələb olunan qurğuların yaradılması və test hallarının özləri çox vaxt vahid testlərindən daha çox vaxt apara bilər, buna görə yalnız hər öhdəlikdə bir dəfə istehsal yerinə təhvil vermədən əvvəl inteqrasiya testlərini aparmaq istəyə bilərsiniz.

Vahid və inteqrasiya testlərini ayırmağın sadə bir yolu, sadəcə fərqli qovluqlara qoymaqdır:

Yalnız seçilmiş bir test qrupunu həyata keçirməyin bir çox yolu var. Müəyyən edilmiş mənbə kataloqu bayrağı, -s, testləri ehtiva edən yol ilə unittest kəşfinə əlavə edilə bilər:

unittest sizə testlər / inteqrasiya qovluğu daxilindəki bütün testlərin nəticələrini verəcəkdir.

Veriyə əsaslanan tətbiqetmələrin sınağı

Bir çox inteqrasiya testləri bir verilənlər bazası kimi backend məlumatlarının müəyyən dəyərlərlə mövcud olmasını tələb edəcəkdir. Məsələn, tətbiqetmənin verilənlər bazasında 100-dən çox müştəri ilə düzgün göstərildiyini yoxlayan və ya məhsul adları Yapon dilində göstərilsə də sifariş səhifəsinin işlədiyini yoxlayan bir test etmək istəyə bilərsiniz.

Bu tip inteqrasiya testləri təkrarlana biləcəyinə və proqnozlaşdırıla biləcəyinə əmin olmaq üçün fərqli test qurğularından asılı olacaqdır.

İstifadə etmək üçün yaxşı bir texnika, test məlumatlarını test məlumatlarını ehtiva etdiyini göstərmək üçün armatur adlanan inteqrasiya test qovluğunuzdakı bir qovluqda saxlamaqdır. Sonra testlərinizdə məlumatları yükləyə və testi apara bilərsiniz.

Verilər JSON sənədlərindən ibarətdirsə, bu quruluşun bir nümunəsi burada & rsquos:

Sınaq vəziyyətinizdə .setUp () metodundan istifadə edərək test məlumatlarını bir fikstür sənədindən bilinən bir yola yükləyin və bu test məlumatlarına qarşı çox sayda test keçirəsiniz. Tək bir Python sənədində birdən çox test vəziyyəti keçirə biləcəyinizi və vahid test kəşfinin hər ikisini həyata keçirəcəyini unutmayın. Hər bir test məlumatı dəsti üçün bir test vəziyyətiniz ola bilər:

Tətbiqiniz uzaq bir API kimi uzaq bir yerdəki məlumatlardan asılıdırsa, testlərinizin təkrarlanmasını təmin etmək istəyərsiniz. API-nin oflayn olduğu və ya bir əlaqə problemi olduğu üçün testləriniz uğursuz olması inkişafı ləngidə bilər. Bu tip vəziyyətlərdə, uzaqdan quraşdırılmış armaturların yerli ərazidə saxlanılması ən yaxşı təcrübədir ki, geri çağırılaraq tətbiqə göndərilə bilsin.

İstəklər kitabxanasında cavab armaturları yaratmağınızı və test qovluqlarınızda saxlamağın yollarını verən cavablar adlı pulsuz paket var. GitHub Səhifəsində daha çox məlumat əldə edin.


Güclü Python One-Liners

Bu səhifə güclü əməliyyatları yerinə yetirə bilən qısa proqramlara həsr edilmişdir Python One-Liners.

Soruşa bilərsiniz: niyə əhəmiyyət verməliyəm? Cavab dərindir: bir xəttli kod parçalarını oxuyub yaza bilmirsinizsə, daha mürəkkəb kod bazalarını necə oxumağa və yazmağa ümid edə bilərsiniz? Python tək laynerləri eyni şeyi etmək üçün hazırlanmış başqa bir dildə yazılmış uzun və yorucu bir proqram qədər güclü ola bilər. Digər dillərdə (düşünün: Java) bu təxminən olar qeyri-mümkün, lakin Python'da bunu etmək çox daha asandır. Hiylə budur ki, az şeylə çox şey söyləyəcək bir şey düşünək. & Quot; Ən əsası, Python tək laynerləri (məsələn, bu yazıda) oxumaq və yazmaq çox əyləncəlidir! Hətta ətrafında müəyyən bir problem üçün ən qısa kodu yaza bilən bütün bir alt mədəniyyət var.

Bu səhifə bir növ təşkilat sisteminə ehtiyac duyduğu nöqtəyə qədər genişlənsə çox zəhmli olardı. (Redaktə edin: Tək laynerlər indi anlamaq asanlığı ilə az-çox çeşidlənir - sadədən sərtə. Zəhmət olmasa yeni bir layneriniz üçün & sitatlaşdırılmış əlavə & quot istifadə edin.)

Mənbə kodu fərqli Python kodlayıcılarından alınır --- Hamısına təşəkkür edirəm! Erkən töhfə verən JAM-a xüsusi təşəkkürlər.

Əlbətdə ki, tək laynerlərin bərabər olub-olmadığı barədə mübahisələr var Pitonik. Bir qayda olaraq: qarışıq, başa düşülməsi çətin və ya bacarıqlarınızı göstərmək üçün bir layner istifadə edirsinizsə, bunlar Unpythonic. Bununla birlikdə, siyahı anlama və ya üçlü operator kimi yaxşı qurulmuş bir xəttli fəndlərdən istifadə edirsinizsə, bunlar Pythonic olur.

Beləliklə, bir layner super gücünüzü ağıllı istifadə edin!


Birdən çox nöqtə ödənişi

Hər hansı bir nöqtə yükünün yaratdığı fəzanın istənilən nöqtəsindəki elektrik potensialı (gərginlik) gərginlik skaler bir kəmiyyət olduğundan nöqtə yükünün ifadəsindən sadə əlavə ilə hesablana bilər. Davamlı yük paylanmasından əldə edilən potensial, mənbə yükünün hər nöqtəsindən olan töhfələrin cəmlənməsi ilə əldə edilə bilər.

Potensialın hesablanması təbii olaraq elektrik sahəsini hesablamaq üçün tələb olunan vektor cəmindən daha asandır.

Sferik simmetrik yük paylanmasının xaricindəki elektrik sahəsi, Gauss Qanunu ilə göstərilə biləcəyi kimi bir nöqtə yükü ilə eynidir. Beləliklə, sferik yük paylanmasının xaricindəki potensial nöqtə yükü ilə eynidir.


Sahə kalkulyatorunda birdən çox piton ifadəsi necə əlavə olunur - Coğrafi İnformasiya Sistemləri

CYMCAP proqramı güc kabeli qurğuları üçün güc və istilik artımı hesablamalarına həsr edilmişdir. Proqramın dəqiqliyi, elektrik kabeli qurğularını təkmilləşdirərkən və onlarla əlaqəli xeyli kapital qoyuluşundan faydaları maksimum dərəcədə artıraraq yenilərini dizayn edərkən daha çox güvən təmin edir. Həm də sistemin etibarlılığını artırmağa kömək edir və quraşdırılmış avadanlıqdan düzgün istifadəni dəstəkləyir.

CYMCAP proqramı, güc kabeli qurğuları üçün güc və temperatur artımı hesablamalarını həyata keçirməyə həsr edilmişdir. Elektrik xüsusiyyətlərinin heç biri pozulmadan davam edə biləcəyi maksimum cərəyan güc kabellərinin təyin edilməsi elektrik qurğularının dizaynı üçün vacibdir.

Neher-McGrath və Beynəlxalq Standartlar IEC 287 və IEC 853 tərəfindən təsvir edilən analitik metodlara uyğun olaraq sabit və keçici termal kabel dərəcəsini həll edir.

Bu proqram Ontario Hydro (Hydro One), McMaster Universiteti və CYME International tərəfindən Kanada Elektrik Assosiasiyasının himayəsi altında birgə hazırlanmışdır.

CYMCAP proqramı ilə əldə edilmiş nəticələrin doğrulanması, mövcud elektrik kabeli qurğularının təkmilləşdirilməsi və yenilərinin dizaynı zamanı artan güvən təmin edir, beləliklə onlarla əlaqəli xeyli kapital qoyuluşundan əldə olunan faydanı maksimum dərəcədə artırır.

Analitik imkanlar

  • Neher-McGrath və IEC-60287 və kopyalama metodlarına əsaslanan təkrarlayıcı texnika
  • Şimali Amerika praktikasına tam uyğunluq və IEC standartlarına uyğunluq IEC 60287 , IEC 60228 ,, IEC 60853 və s.
  • Faktiki olaraq hər hansı bir elektrik kabelinin qrafiki təsviri. Bu qurğu mövcud kabel məlumatlarını dəyişdirmək və kabel kitabxanasını yeniləri ilə zənginləşdirmək üçün istifadə edilə bilər. Buraya tək nüvəli, üç nüvəli, kəmərli, boru tipli, sualtı, örtüklü və zirehli kabellər daxildir.
  • Doğrudan basdırılmış, termal doldurma, yeraltı kanallar və ya kanal bankları kimi fərqli kabel quraşdırma şərtləri
  • Boru tipli kabellər birbaşa basdırılmış və ya termal dolguda
  • Kabellər, kanal bankları, yük əyriləri, istilik mənbələri və qurğuları üçün müstəqil kitabxanalar və verilənlər bazaları
  • Havadakı kabellərin qalxan dirəklərdə, havadakı kabel qruplarının, nəm miqrasiyasının, yaxınlıqdakı istilik mənbələrinin və istilik qəbuledicilərinin modelləşdirilməsi.
  • Bir quraşdırma içərisində fərqli kabel növləri
  • İzotermik olmayan torpaq səthinin modelləşdirilməsi
  • IEC-60853 uyğun olaraq tsiklik yükləmə nümunələri və surəti
  • Dövriyyə edən cərəyan itkilərini böyük dərəcədə təsir edən və bununla da kabellərin gücünü azaldan örtük qarşılıqlı endüktansların dəqiq modelləşdirilməsi ilə faza birdən çox kabel
  • Düz və üçbucaq formasiyalar üçün bütün növ örtük tənzimləmələri kiçik bölmə uzunluqlarının açıq modelləşdirilməsi, qeyri-bərabər kabel aralığı və s. İlə dəstəklənir.
  • Vaxt və temperatur verilən qüsursuzluq
  • Zaman və güc verilmiş istilik analizi
  • Güclüyünü nəzərə alaraq müəyyən bir temperatura çatma vaxtı
  • Zamanın funksiyası kimi genişlik və temperatur analizi
  • Devre başına istifadəçi tərəfindən təyin olunan yük profilləri
  • Quraşdırma başına birdən çox kabel
  • Dövrlər eyni vaxtda və ya bir-bir yüklənə bilər

CYMCAP Əlavə Modulları, daha çox qurğuların, xüsusən standart olmayan qurğuların modelləşdirilməsinə imkan verən CYMCAP proqramına geniş imkanlar təqdim edir. Buraya çoxlu kanallı və hər biri fərqli istilik müqaviməti olan dolguların quraşdırılmasının modelləşdirilməsi daxildir, havalandırılmamış tunellərdə kabellərin gücünün və istiliyinin hesablanması həm doldurulmuş həm də doldurulmamış novlarda kabellərin dərəcəsini və bir və ya daha çox maqnit olmayan kabellərin dərəcəsini. kassalar.

CYMCAP Əlavə Modulları yeraltı kabel qurğusunun yerində və ya üstündə hər hansı bir nöqtədə maqnit axınının sıxlığını qiymətləndirmək, quraşdırmada mövcud olan bütün kabellər üçün pozitiv və sıfır ardıcıllıq empedanslarını və keçidlərini müəyyənləşdirmək kimi kabel qurğuları üçün bir neçə maraq analizini aparmağa imkan verir. , qısa qapanma kabel reytinqlərinin yerinə yetirilməsi, müəyyən məhdudiyyətlər verilmiş bir kanal bankı içərisində bir neçə dövrənin optimal yerləşdirilməsini müəyyənləşdirmək və bir-birinə keçən iki dövrənin gücünü hesablamaq.

Çox kanallı banklar və geri doldurma əlavə modulu (MDB) bir neçə qonşu kanal bankında və / və ya fərqli istilik müqavimətinə malik dolumlarda quraşdırılmış kabellərin sabit vəziyyətini təyin etmək üçün nəzərdə tutulmuşdur. Modul standart və qeyri-standart hesablama metodlarını birləşdirən unikal bir həll təqdim edir. Modul, sonlu element metodu ilə T4 (kabelə xarici istilik müqaviməti) dəyərlərini hesablayır və sonra IEC standart həll üsulu ilə kabel quraşdırılmasının gücünü (və ya işləmə temperaturunu) əldə edir.

Aşağıdakı qabiliyyətlər vurğulanır:

  • Fərqli istilik müqavimətinə sahib olan sınırsız sayda düzbucaqlı sahənin modelləşdirilməsi
  • Tək bir qurğuda üç kanal bankının modelləşdirilməsi
  • Quraşdırmada bir istilik mənbəyi və ya istilik qəbuledicisi modelləşdirmək
  • Sabit vəziyyət və ya temperaturun hesablanması
  • Keçici analiz, tsiklik yükləmə və təcili reytinqlər dəstəklənir
  • Doldurulmuş çuxurlara quraşdırılmış kabellərin istilik dərəcəsinin hesablanması

Tünellər modulundakı isteğe bağlı Kabellər, istifadəçiyə sabit havanın temperaturu və gücünü, dövri yüklənməsini, fövqəladə vəziyyəti və havalandırılmamış tunellərdə quraşdırılmış kabellər üçün keçici təhlili təyin etməyə imkan verir. Diqqət yetirin ki, yalnız eyni tipli və yüklənən eyni dərəcədə yüklənmiş kabellər nəzərə alınır. Bu əlavə modul, tək nüvəli (düz formasiyalar və ya trefoils) və üç nüvəli kabellər üçün çoxsaylı kabel tənzimləmələrini dəstəkləyir. Əsas xüsusiyyətlər bunlardır:

  • Çox müxtəlif quraşdırma metodlarının modelləşdirilməsi: nərdivan tipli dayaqlarda və ya kabel qablarında divardan asılmış yerə qoymaq
  • Kabellər və kabel qrupları tək nüvəli və ya üç nüvəli ola bilər. Tək nüvəli kabellər düz formasiyalarda (şaquli və ya üfüqi) və ya trefoil şəklində düzəldilə bilər
  • Sabit vəziyyət və ya temperaturun hesablanması. Gündəlik, həftəlik və illik yük amillərindən istifadə edərək tsiklik yükləmə. Təcili reytinqlərin hesablanması

Doldurulmamış və ya doldurulmuş çuxurlara quraşdırılmış kabellərin istilik dərəcəsi, müvafiq olaraq CYMCAP / UNF və CYMCAP / MDB modulları istifadə edilərək təyin olunur.

Bu modullarda bir nov (və ya bir xəndək) divarların, dibinin və örtüklərinin betondan hazırlandığı uzun bir dayaz düzbucaqlı formalı bir qazıntı olduğu müəyyən edilir. Kabellər döşəməyə, divarlara və ya raflara dayaqlardan asılı olaraq quraşdırıla bilər. Çuxur yaxşı istilik xüsusiyyətlərinə malik bir material ilə doldurula bilər və ya doldurulmadan (hava doldurulmuş) qoyula bilər. İstilik ötürmə mexanizmi doldurulmuş və doldurulmamış çökəkliklər üçün fərqlidir və buna görə də müstəqil şəkildə müalicə olunurlar.

Başlanğıcda, doldurulmamış nov qurğularını qiymətləndirmək üçün yeganə seçim IEC standartından istifadə etmək idi. Bu yanaşmada kabellərin dərəcələri sərbəst havadakı kabellər üçün hesablanır, lakin nov içərisindəki istilik IEC Standard 60287-2-1 -ə uyğun olaraq hesablanır. Modul əhəmiyyətli dərəcədə yaxşılaşdırılmışdır və IEC standartına əlavə olaraq müəyyən bir nov quraşdırılmasını modelləşdirmək üçün üç variantdan ibarətdir: Slaninka Method 1, Slaninka Method 2 and Anders-Coates Method.

IEC standartı ilə torpağın istilik dayanıqlığı və çökəkliyin örtüyü nəzərə alınmır. Slaninka Metodu 1 ilə novun örtüyünün istilik müqaviməti nəzərə alınır. Slaninka Metodu 2 həm örtüyün istilik müqavimətlərini, həm də novu əhatə edən torpağı nəzərə alır. Anders-Coates metodu ilə torpağın və örtükün istilik müqavimətlərinə əlavə olaraq novun üstündəki külək sürəti nəzərə alınır. Bütün seçimlərdə istifadəçi novun günəş radiasiyasına məruz qaldığını və ya kölgələndiyini seçə bilər. Yanaşmaların hamısı müstəqil tərəflərin sahə araşdırmalarına əsaslanır və elmi jurnallarda dərc olunur.

Doldurulmuş çökəkliklər CYMCAP / MDB modulunda çox sayda doldurma kimi işlənir. Doldurulmuş novlardakı kabellər aşağıdakılardan istifadə edərək CYMCAP proqramında qiymətləndirilmişdir.

  • Xarici kabeldən istilik müqavimətini hesablamaq üçün son elementlər metodu T 4
  • IEC Standartları prosedurları, səmərəliliyi hesablamaları səmərəli həyata keçirir
  • Adətə uyğun olaraq temperaturu və sabit vəziyyəti bərabər olmayan yüklənmiş gücünü hesablayır
  • Çuxurları aşağıya endirmək və asimmetrik çökəkləri modelləşdirmək üçün imkanlar
  • Yük amillərindən istifadə edərək dövri yükləmə reytinqini yerinə yetirmək bacarığı

Birden çox korpus əlavə modulu (MCAS) istifadəçiyə bir və ya daha çox maqnit olmayan korpusda quraşdırılmış kabellərin qeyri-bərabər yüklənmiş gücünü və / və ya temperatur dərəcəsini təyin etməyə imkan verir. CYMCAP proqramında, gövdənin içərisindəki kanallara kabellər və kanallarda olmayan kabellər quraşdırıla bilən, hava ilə doldurulmuş böyük bir maqnit olmayan bir boru kəməri olaraq təyin edilir. Qabıqları suya batırmaq, dəniz yatağına qoymaq və ya yeraltı basdırmaq olar. Korpus (lar) da və kanal (lar) da havadan başqa heç bir doldurma materialı nəzərə alınmır.

Modulda bir çox modelləşdirmə imkanları mövcuddur, bunlar arasında aşağıdakı imkanları vurğulamaq olar:

  • Fərqli dəfn mühitlərinə icazə verilir: su və ya yeraltı
  • Eyni qurğuda paralel olaraq istənilən sayda korpusun modelləşdirilməsi
  • Eyni zamanda bir və ya daha çox gövdə içərisində istənilən sayda kanalın modelləşdirilməsi
  • Bir gövdə və kanal içərisində istənilən sayda dövrü modelləşdirməyə qadirdir
  • Kanallardakı və qapaqlardakı dövrələr faz başına çoxlu kabel ola bilər
  • Maqnit olmayan metal materiallar (PVC, Polietilen, Saxsı qablar, maqnit olmayan metal və s.) Daxil olmaqla kanal və korpusların modelləşdirilməsi üçün bir neçə material mövcuddur.
  • Kanalların və korpusların ölçüləri məhdud deyil

Duct Bank Optimizer əlavə modulu istifadəçiyə bir kanal bankı içərisində bir neçə dövrənin optimal yerləşdirilməsini təyin etməyə imkan verir. Daha konkret olaraq, modul bir kanal bankında müxtəlif dövrə konfiqurasiyalarını tövsiyə edə bilər:

  • Kanal bankının ümumi gücü, yəni bütün dövrələr üçün güclərin cəmi maksimuma çatdırılır
  • Kanal bankının ümumi gücü, yəni bütün dövrələr üçün güclərin cəmi minimuma endirilmişdir
  • Hər hansı bir dövrənin genişliyi maksimuma çatdırılır
  • Hər hansı bir dövrənin genişliyi minimuma endirilir

Üç trefoils və bir üç fazlı dövrə (hər boru üçün bir faz) olan 3 ilə 4 kanal bankı üçün 665,280-ə qədər mümkün birləşmə mövcuddur. Modulun işlənmiş riyazi alqoritmi ekvivalent halların təkrar hesablanmasının qarşısını alır, buna görə həll çox səmərəli alınır. Təsvirin sağ tərəfində göstərilən şərt maksimum güc üçün kabel yerlərini göstərir.

Magnetic Fields Module (EMF), CYMCAP proqramına əlavə bir moduldur. Sabit vəziyyət və ya temperatur simulyasiyasından sonra modul yeraltı kabel qurğusunun yerinin üstündə və ya üstündə istənilən nöqtədə maqnit axınının sıxlığını hesablayır. Çıxış, mövqeyə qarşı maqnit axını sıxlığının bir sahəsidir (və ya bir cədvəldir). Modelləşdirmə xüsusiyyətlərinə aşağıdakılar daxildir:

  • Sonsuz uzunluqlu ince telli iki ölçülü yanaşma
  • Elliptik olaraq qütbləşmiş bir fırlanan maqnit vektoru yaradan zaman dəyişən cərəyanların nəzərə alınması
  • Üç fazalı dövrədəki cərəyanlar balanssız ola bilər (böyüklükdə və fazada)
  • Bütün media homogen, izotrop və xətti qəbul edilir
  • Yaranan cərəyanlar laqeyd qalır

Kabellərin Empedansının Hesablanması əlavə modulu (ZMat), güc axınında (50/60 Hz) yük axını və qısa qapanma işləri aparmaq üçün lazım olan kabellər üçün elektrik parametrlərini hesablayır. Empedansların hesablanması sabit bir güc və ya temperatur simulyasiyası uğurla başa çatdıqdan sonra həyata keçirilir. Son nəticələr, quraşdırmada mövcud olan bütün kabellər üçün pozitiv və sıfır ardıcıllıq empedansları və qəbuledicilərdir.

Bütün empedans və qəbul matrisləri hesabatda əks olunur: metal tərkibli hissə üzrə ibtidai matrislərdən başlayaraq, bağlama matrisləri, daha sonra faz və dövr matrisləri və nəticədə ortaya çıxan simmetrik komponent matrisləri. Aşağıdakı xüsusiyyətlər dəstəklənir:

  • Quraşdırmada mövcud olan bütün kabellər üçün ardıcıllıq empedanslarının hesablanması
  • Quraşdırmada mövcud olan bütün kabellər üçün ardıcıllıq qəbullarının hesablanması
  • Faza başına birdən çox kabel dəstəklənir
  • Bir və ya daha çox neytral təmsil edilə bilər və hesablamalarda nəzərə alınır
  • Torpağın müqaviməti dəyişdirilə bilər

Qısamüddətli Kabel Reytinqi (SCR) əlavə modulu, qısa qapanma cərəyanları üçün kabellərin dərəcəsinə həsr edilmişdir. Həyata keçirilmiş metod IEC Standartı 60949 (1988) Adiabatik olmayan istilik effektləri nəzərə alınmaqla termal olaraq icazə verilən qısaqapanma cərəyanlarının hesablanmasına əsaslanır. CYMCAP proqramı həm adiabatik, həm də adiabatik olmayan dərəcələri hesablayır. The module offers two possibilities according to the known input data.

  • Compute the maximum short-circuit current that a cable component can carry given the short-circuit time together with the initial and final temperatures
  • Compute the final temperature that a given cable component will reach for a specified short-circuit current, initial temperature, and time interval

Short-circuit ratings can be computed for all metallic layers supported in CYMCAP:

  • Conductor
  • Sheath
  • Sheath Reinforcement
  • Concentric Neutral / Skid Wires
  • Armour

The Circuits Crossing (Xing) add-on module allows the user to determine the steady-state ampacity of two circuits crossing each other.

When two circuits cross each other, each of them behaves as a heat source for the other one. The amount of generated heat, the vertical distance between the crossing circuits and the crossing angle are the main parameters that influence the crossing rating. In the absence of crossing calculations, the general practice is to use the conservative result where the circuits are assumed to be parallel. When the circuits are parallel, the thermal interaction is maximum. It goes to a minimum when they cross each other at a right angle. The conservative approach unnecessarily de-rates both circuits. By using the Circuits Crossing module, one can achieve ratings up to 20% higher than the conservative ampacities that are obtained based on the parallel installation scenario. Modeling features include:

  • Modeling of two circuits crossings each other in the same installation
  • Circuits crossing directly buried underground, in buried ducts and in buried pipes underground
  • Rating approach as per the IEC standard 60287-3-3©

  • CYMCAP
  • Additional Modules: Installations
  • Additional Modules: Analyses


Videoya baxın: Sahə vahidləri. Sahə 1 (Oktyabr 2021).