Commit 6effaf24 authored by Frank Hellmann's avatar Frank Hellmann
Browse files

Merge remote-tracking branch 'origin/jonathan' into jonathan

# Conflicts:
#	PSD/complex_current_and_nodes.py
parents 6c513eb7 ec25fcd4
from complex_current_and_nodes import *
__all__ = ['complex_current_and_nodes']
\ No newline at end of file
# from complex_current_and_nodes import *
#
# __all__ = ['complex_current_and_nodes_new']
......@@ -3,19 +3,19 @@ import numpy as np
from numba import njit, float64, complex128, void, int32
data=np.array([(917.3500559715608-688.0125419786704j), (-361.4901780229309+271.1176335171981j), (-243.93703618530333+182.95277713897744j), (-311.9228417633265+233.94213132249484j), (329.75517104150185-247.3163782811263j), (-171.81082316872897+128.8581173765467j), (-157.94434787277285+118.45826090457962j), (1037.3128799490623-777.9846599617964j), (-311.5428887780282+233.6571665835211j), (-725.769991171034+544.3274933782753j), (559.0241715320362-419.2681286490271j), (-295.2113955187172+221.40854663903784j), (-263.8127760133191+197.85958200998928j), (483.3387042085871-362.5040281564402j), (-135.20989510938443+101.4074213320383j), (-152.1132219456474+114.08491645923554j), (-196.01558715355526+147.0116903651664j), (504.92515960327205-378.693869702454j), (-265.99789184047796+199.49841888035843j), (-238.9272677627941+179.19545082209552j), (873.2707334443006-654.9530500832253j), (-873.2707334443006+654.9530500832253j), (518.709711714901-389.03228378617564j), (-178.611694955647+133.95877121673524j), (-258.76775977701664+194.07581983276245j), (-81.33025698223732+60.99769273667797j), (599.8520854664337-449.88906409982513j), (-166.50137706101015+124.87603279575757j), (-180.3565098098578+135.26738235739333j), (-141.86258018832407+106.39693514124302j), (-111.13161840724166+83.34871380543122j), (-171.81082316872897+128.8581173765467j), (493.50130017307174-370.1259751298037j), (-114.2942812025076+85.72071090188068j), (-207.39619580183515+155.5471468513763j), (-114.2942812025076+85.72071090188068j), (370.73582261295365-278.0518669597152j), (-95.25620472060842+71.4421535404563j), (-161.18533668983764+120.88900251737822j), (-135.20989510938443+101.4074213320383j), (135.20989510938443-101.4074213320383j), (660.6325929949562-495.47444474621705j), (-385.5844230505761+289.188317287932j), (-275.04816994438005+206.286127458285j), (-166.50137706101015+124.87603279575757j), (312.1590664869168-234.11929986518751j), (-145.65768942590663+109.24326706942995j), (-180.3565098098578+135.26738235739333j), (-385.5844230505761+289.188317287932j), (565.9409328604339-424.45569964532535j), (374.15970010700005-280.61977508025j), (-170.82586457026258+128.11939842769692j), (-203.33383553673747+152.5003766525531j), (-157.94434787277285+118.45826090457962j), (-152.1132219456474+114.08491645923554j), (310.05756981842023-232.54317736381518j), (216.25412595643326-162.1905944673249j), (-117.3791373779949+88.03435303349615j), (-98.87498857843835+74.15624143382874j), (239.20616594658168-179.4046244599362j), (-106.31153743731838+79.73365307798876j), (-132.8946285092633+99.67097138194744j), (318.4257116599883-238.81928374499114j), (-101.13647535065874+75.85235651299404j), (-134.94382213778448+101.20786660333833j), (-82.34541417154504+61.75906062865877j), (-361.4901780229309+271.1176335171981j), (-207.39619580183515+155.5471468513763j), (568.886373824766-426.6647803685744j), (465.6306642108543-349.2229981581407j), (-272.3908766257109+204.29315746928313j), (-193.23978758514343+144.92984068885755j), (-272.3908766257109+204.29315746928313j), (434.7098819843881-326.032411488291j), (-162.3190053586772+121.73925401900787j), (-106.31153743731838+79.73365307798876j), (606.5569762541638-454.9177321906227j), (-155.8343953893149+116.87579654198615j), (-344.4110434275305+258.3082825706478j), (235.42037602060643-176.56528201545478j), (-235.42037602060643+176.56528201545478j), (662.6037320067528-496.95279900506443j), (-120.34430784604574+90.25823088453429j), (-223.32463882958308+167.49347912218727j), (-318.934785331124+239.20108899834293j), (418.15376708817826-313.6153253161336j), (-418.15376708817826+313.6153253161336j), (611.4213542525322-458.566015689399j), (-134.62817386490303+100.97113039867726j), (-476.79318038762915+357.5948852907218j), (-311.5428887780282+233.6571665835211j), (700.3130739260263-525.2348054445196j), (-122.17519929163252+91.63139946872437j), (-266.59498585636555+199.94623939227412j), (-132.8946285092633+99.67097138194744j), (-235.42037602060643+176.56528201545478j), (518.0830639380015-388.562297953501j), (-149.76805940813176+112.3260445560988j), (-178.611694955647+133.95877121673524j), (437.8241387649764-328.36810407373224j), (-259.2124438093294+194.409332856997j), (-155.8343953893149+116.87579654198615j), (432.5776749545746-324.4332562159309j), (-276.74327956525974+207.55745967394475j), (750.2315528659087-562.6736646494313j), (-156.3776087859298+117.2832065894473j), (-340.24285927813787+255.18214445860332j), (-253.61108480184103+190.20831360138072j), (-156.3776087859298+117.2832065894473j), (258.1843699194159-193.63827743956182j), (-101.80676113348605+76.35507085011452j), (147.82460961816014-110.86845721362008j), (-147.82460961816014+110.86845721362008j), (-265.99789184047796+199.49841888035843j), (414.51113132419863-310.8833484931489j), (-148.51323948372067+111.38492961279049j), (402.4262514844603-301.81968861334514j), (-170.07227340910754+127.55420505683061j), (-232.35397807535279+174.26548355651454j), (982.1859400569545-736.6394550427156j), (-446.8839998593799+335.16299989453483j), (-535.3019401975745+401.4764551481807j), (-446.8839998593799+335.16299989453483j), (1359.7775612491803-1019.8331709368849j), (-299.3295200635879+224.49714004769086j), (-613.5640413262125+460.1730309946593j), (67.36091300761294-50.520684755709695j), (-67.36091300761294+50.520684755709695j), (-295.2113955187172+221.40854663903784j), (478.2655250026751-358.6991437520062j), (-183.05412948395787+137.29059711296838j), (170.63083777176442-127.97312832882328j), (-170.63083777176442+127.97312832882328j), (928.193436494605-696.1450773709536j), (-113.79771503134498+85.3482862735087j), (-814.39572146326+610.7967910974448j), (161.02222848586334-120.76667136439747j), (-161.02222848586334+120.76667136439747j), (-340.24285927813787+255.18214445860332j), (340.24285927813787-255.18214445860332j), (405.7833395295494-304.33750464716195j), (-405.7833395295494+304.33750464716195j), (-258.76775977701664+194.07581983276245j), (377.1428190521045-282.85711428907837j), (-118.37505927508792+88.78129445631592j), (210.02936793635945-157.52202595226956j), (-210.02936793635945+157.52202595226956j), (996.5540941808346-747.4155706356258j), (-576.8897752572153+432.6673314429114j), (-198.8688437911477+149.15163284336072j), (-220.7954751324716+165.59660634935366j), (-113.79771503134498+85.3482862735087j), (-161.02222848586334+120.76667136439747j), (274.81994351720834-206.11495763790617j), (-725.769991171034+544.3274933782753j), (-134.62817386490303+100.97113039867726j), (1002.7945740645662-752.0959305484243j), (-142.39640902862908+106.7973067714718j), (106.29686017774306-79.72264513330728j), (-106.29686017774306+79.72264513330728j), (-117.3791373779949+88.03435303349615j), (550.2820287644463-412.71152157333455j), (-432.90289138645136+324.6771685398384j), (-238.9272677627941+179.19545082209552j), (-193.23978758514343+144.92984068885755j), (432.16705534793755-324.12529151095305j), (-145.65768942590663+109.24326706942995j), (255.72566197731274-191.79424648298453j), (-110.06797255140611+82.55097941355457j), (332.25319265863345-249.189894493975j), (-215.03962986896448+161.27972240172332j), (-117.21356278966894+87.91017209225168j), (-98.87498857843835+74.15624143382874j), (419.2066422937189-314.40498172028913j), (-320.3316537152806+240.24874028646036j), (-170.82586457026258+128.11939842769692j), (-432.90289138645136+324.6771685398384j), (840.2007460491923-630.150559536894j), (-236.47199009247834+177.35399256935872j), (-814.39572146326+610.7967910974448j), (954.3427866829073-715.7570900121804j), (-139.94706521964736+104.9602989147355j), (-203.33383553673747+152.5003766525531j), (306.469736719372-229.85230253952898j), (-103.13590118263456+77.35192588697589j), (-253.61108480184103+190.20831360138072j), (669.9877723079198-502.4908292309398j), (-416.37668750607884+312.2825156295591j), (-139.94706521964736+104.9602989147355j), (321.9730916056469-241.47981870423513j), (-182.02602638599956+136.51951978949964j), (-141.86258018832407+106.39693514124302j), (-535.3019401975745+401.4764551481807j), (677.1645203858985-507.87339028942375j), (-101.13647535065874+75.85235651299404j), (-170.07227340910754+127.55420505683061j), (271.2087487597663-203.40656156982465j), (131.5122876630254-98.63421574726904j), (-131.5122876630254+98.63421574726904j), (-263.8127760133191+197.85958200998928j), (-149.76805940813176+112.3260445560988j), (413.58083542145084-310.1856265660881j), (271.78414237185757-203.83810677889312j), (-168.20849069362902+126.15636802022172j), (-103.57565167822857+77.68173875867141j), (-134.94382213778448+101.20786660333833j), (134.94382213778448-101.20786660333833j), (-196.01558715355526+147.0116903651664j), (-122.17519929163252+91.63139946872437j), (318.19078644518777-238.64308983389077j), (-67.36091300761294+50.520684755709695j), (-118.37505927508792+88.78129445631592j), (-182.02602638599956+136.51951978949964j), (367.7619986687004-275.82149900152524j), (-576.8897752572153+432.6673314429114j), (-215.03962986896448+161.27972240172332j), (791.9294051261797-593.9470538446348j), (-299.3295200635879+224.49714004769086j), (299.3295200635879-224.49714004769086j), (-198.8688437911477+149.15163284336072j), (341.59039994755847-256.19279996066876j), (-142.7215561564108+107.04116711730806j), (-103.13590118263456+77.35192588697589j), (-416.37668750607884+312.2825156295591j), (519.5125886887134-389.634441516535j), (-168.20849069362902+126.15636802022172j), (274.25661642339185-205.6924623175438j), (-106.04812572976283+79.5360942973221j), (-147.82460961816014+110.86845721362008j), (265.81487960809056-199.3611597060679j), (-117.99026998993044+88.4927024924478j), (-120.34430784604574+90.25823088453429j), (120.34430784604574-90.25823088453429j), (-266.59498585636555+199.94623939227412j), (-232.35397807535279+174.26548355651454j), (498.94896393171837-374.21172294878863j), (-220.7954751324716+165.59660634935366j), (220.7954751324716-165.59660634935366j), (-142.39640902862908+106.7973067714718j), (142.39640902862908-106.7973067714718j), (-275.04816994438005+206.286127458285j), (275.04816994438005-206.286127458285j), (-223.32463882958308+167.49347912218727j), (530.1368236889259-397.6026177666944j), (-126.76454015136028+95.07340511352018j), (-180.04764470798256+135.0357335309869j), (-82.34541417154504+61.75906062865877j), (-405.7833395295494+304.33750464716195j), (488.1287537010944-366.0965652758207j), (-243.93703618530333+182.95277713897744j), (-344.4110434275305+258.3082825706478j), (588.3480796128338-441.2610597096252j), (-170.63083777176442+127.97312832882328j), (-210.02936793635945+157.52202595226956j), (-106.04812572976283+79.5360942973221j), (486.70833143788667-365.03124857841493j), (-110.06797255140611+82.55097941355457j), (-103.57565167822857+77.68173875867141j), (213.64362422963467-160.232718172226j), (-111.13161840724166+83.34871380543122j), (-95.25620472060842+71.4421535404563j), (206.38782312785008-154.79086734588753j), (-476.79318038762915+357.5948852907218j), (-259.2124438093294+194.409332856997j), (736.0056241969585-552.0042181477188j), (-161.18533668983764+120.88900251737822j), (-162.3190053586772+121.73925401900787j), (323.50434204851484-242.6282565363861j), (-101.80676113348605+76.35507085011452j), (-142.7215561564108+107.04116711730806j), (244.52831728989685-183.39623796742256j), (-418.15376708817826+313.6153253161336j), (-236.47199009247834+177.35399256935872j), (-117.99026998993044+88.4927024924478j), (772.616027170587-579.4620203779401j), (-148.51323948372067+111.38492961279049j), (-117.21356278966894+87.91017209225168j), (265.7268022733896-199.29510170504216j), (-318.934785331124+239.20108899834293j), (318.934785331124-239.20108899834293j), (-613.5640413262125+460.1730309946593j), (-126.76454015136028+95.07340511352018j), (740.3285814775728-555.2464361081795j), (-180.04764470798256+135.0357335309869j), (180.04764470798256-135.0357335309869j), (-276.74327956525974+207.55745967394475j), (-106.29686017774306+79.72264513330728j), (383.0401397430028-287.28010480725203j), (-311.9228417633265+233.94213132249484j), (-873.2707334443006+654.9530500832253j), (1185.1935752076272-888.8951814057202j), (-320.3316537152806+240.24874028646036j), (320.3316537152806-240.24874028646036j), (-81.33025698223732+60.99769273667797j), (-131.5122876630254+98.63421574726904j), (212.8425446452627-159.631908483947j), (-183.05412948395787+137.29059711296838j), (183.05412948395787-137.29059711296838j)])
indptr=np.array([0, 4, 7, 10, 13, 17, 20, 22, 26, 31, 35, 39, 41, 44, 47, 50, 53, 56, 59, 62, 66, 69, 72, 75, 79, 81, 85, 87, 90, 94, 98, 101, 104, 108, 111, 113, 116, 119, 122, 126, 128, 131, 133, 136, 138, 140, 142, 145, 147, 151, 154, 158, 160, 163, 166, 169, 172, 175, 179, 182, 185, 188, 191, 194, 197, 199, 202, 205, 207, 210, 214, 217, 219, 222, 225, 228, 231, 233, 236, 238, 240, 242, 246, 249, 252, 256, 259, 262, 265, 268, 271, 275, 278, 280, 283, 285, 288, 291, 293, 296, 298])
indices=np.array([0, 20, 83, 96, 1, 9, 16, 2, 28, 50, 3, 40, 65, 4, 11, 16, 68, 5, 35, 53, 6, 96, 7, 30, 46, 98, 8, 13, 14, 62, 86, 1, 9, 10, 20, 9, 10, 86, 88, 4, 11, 12, 14, 80, 8, 13, 54, 8, 12, 14, 15, 57, 59, 1, 4, 16, 17, 52, 56, 18, 23, 29, 19, 63, 67, 82, 0, 9, 20, 21, 22, 53, 21, 22, 88, 18, 23, 31, 83, 24, 29, 25, 76, 81, 92, 26, 90, 27, 50, 87, 2, 28, 68, 77, 18, 24, 29, 65, 7, 30, 87, 23, 31, 95, 32, 33, 44, 60, 32, 33, 89, 34, 75, 5, 35, 91, 36, 63, 77, 37, 38, 62, 37, 38, 71, 93, 39, 69, 3, 40, 99, 41, 84, 42, 49, 58, 43, 49, 32, 44, 45, 82, 7, 46, 69, 47, 84, 48, 70, 72, 78, 42, 43, 49, 2, 27, 50, 79, 51, 95, 17, 52, 57, 5, 21, 53, 13, 54, 85, 55, 70, 91, 17, 56, 97, 15, 52, 57, 90, 42, 58, 61, 15, 59, 73, 32, 60, 73, 58, 61, 69, 8, 37, 62, 19, 36, 63, 64, 98, 3, 29, 65, 66, 74, 85, 19, 67, 4, 28, 68, 39, 46, 61, 69, 48, 55, 70, 38, 71, 48, 72, 89, 59, 60, 73, 66, 74, 84, 34, 75, 90, 25, 76, 28, 36, 77, 48, 78, 50, 79, 12, 80, 25, 81, 93, 94, 19, 45, 82, 0, 23, 83, 41, 47, 74, 84, 54, 66, 85, 8, 10, 86, 27, 30, 87, 10, 22, 88, 33, 72, 89, 26, 57, 75, 90, 35, 55, 91, 25, 92, 38, 81, 93, 81, 94, 31, 51, 95, 0, 6, 96, 56, 97, 7, 64, 98, 40, 99])
data=np.array([8j, -8j, -8j, 8j])
indptr=np.array([0, 2, 4])
indices=np.array([0, 1, 0, 1])
@njit(float64[:](float64[:], float64), cache=True)
def network_rhs_numba(y, t):
dydt = np.empty(200 + 100)
dydt = np.empty(4 + 2)
v = y[:200].view(np.complex128)
omega = y[200:]
dv = dydt[:200].view(np.complex128)
domega = dydt[200:]
v = y[:4].view(np.complex128)
omega = y[4:]
dv = dydt[:4].view(np.complex128)
domega = dydt[4:]
i = np.zeros(101 - 1, dtype=np.complex128)
i = np.zeros(3 - 1, dtype=np.complex128)
index = 0
for row, number_of_entries in enumerate(indptr[1:]):
while index < number_of_entries:
......@@ -23,705 +23,9 @@ def network_rhs_numba(y, t):
index += 1
v_abs = np.absolute(v[0])
if v_abs == 0:
dv[0] = 0
else:
dv[0] = 1.j * omega[0] * v[0] + 2.0 * (v[0] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[0] * i[0].conjugate()).imag - 0.203697412466.imag ) )
domega[0] = 2.0 * (0 - omega[0]) - 2.0 * 0.0407394824932 * ( ( v[0] * i[0].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[1])
if v_abs == 0:
dv[1] = 0
else:
dv[1] = 1.j * omega[1] * v[1] + 2.0 * (v[1] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[1] * i[1].conjugate()).imag - -0.192302587534.imag ) )
domega[1] = 2.0 * (0 - omega[1]) - 2.0 * -0.0384605175068 * ( ( v[1] * i[1].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[2])
if v_abs == 0:
dv[2] = 0
else:
dv[2] = 1.j * omega[2] * v[2] + 2.0 * (v[2] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[2] * i[2].conjugate()).imag - -0.192302587534.imag ) )
domega[2] = 2.0 * (0 - omega[2]) - 2.0 * -0.0384605175068 * ( ( v[2] * i[2].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[3])
if v_abs == 0:
dv[3] = 0
else:
dv[3] = 1.j * omega[3] * v[3] + 2.0 * (v[3] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[3] * i[3].conjugate()).imag - -0.192302587534.imag ) )
domega[3] = 2.0 * (0 - omega[3]) - 2.0 * -0.0384605175068 * ( ( v[3] * i[3].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[4])
if v_abs == 0:
dv[4] = 0
else:
dv[4] = 1.j * omega[4] * v[4] + 2.0 * (v[4] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[4] * i[4].conjugate()).imag - 0.203697412466.imag ) )
domega[4] = 2.0 * (0 - omega[4]) - 2.0 * 0.0407394824932 * ( ( v[4] * i[4].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[5])
if v_abs == 0:
dv[5] = 0
else:
dv[5] = 1.j * omega[5] * v[5] + 2.0 * (v[5] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[5] * i[5].conjugate()).imag - 0.203697412466.imag ) )
domega[5] = 2.0 * (0 - omega[5]) - 2.0 * 0.0407394824932 * ( ( v[5] * i[5].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[6])
if v_abs == 0:
dv[6] = 0
else:
dv[6] = 1.j * omega[6] * v[6] + 2.0 * (v[6] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[6] * i[6].conjugate()).imag - 0.203697412466.imag ) )
domega[6] = 2.0 * (0 - omega[6]) - 2.0 * 0.0407394824932 * ( ( v[6] * i[6].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[7])
if v_abs == 0:
dv[7] = 0
else:
dv[7] = 1.j * omega[7] * v[7] + 2.0 * (v[7] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[7] * i[7].conjugate()).imag - 0.203697412466.imag ) )
domega[7] = 2.0 * (0 - omega[7]) - 2.0 * 0.0407394824932 * ( ( v[7] * i[7].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[8])
if v_abs == 0:
dv[8] = 0
else:
dv[8] = 1.j * omega[8] * v[8] + 2.0 * (v[8] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[8] * i[8].conjugate()).imag - 0.203697412466.imag ) )
domega[8] = 2.0 * (0 - omega[8]) - 2.0 * 0.0407394824932 * ( ( v[8] * i[8].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[9])
if v_abs == 0:
dv[9] = 0
else:
dv[9] = 1.j * omega[9] * v[9] + 2.0 * (v[9] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[9] * i[9].conjugate()).imag - 0.203697412466.imag ) )
domega[9] = 2.0 * (0 - omega[9]) - 2.0 * 0.0407394824932 * ( ( v[9] * i[9].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[10])
if v_abs == 0:
dv[10] = 0
else:
dv[10] = 1.j * omega[10] * v[10] + 2.0 * (v[10] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[10] * i[10].conjugate()).imag - 0.203697412466.imag ) )
domega[10] = 2.0 * (0 - omega[10]) - 2.0 * 0.0407394824932 * ( ( v[10] * i[10].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[11])
if v_abs == 0:
dv[11] = 0
else:
dv[11] = 1.j * omega[11] * v[11] + 2.0 * (v[11] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[11] * i[11].conjugate()).imag - 0.203697412466.imag ) )
domega[11] = 2.0 * (0 - omega[11]) - 2.0 * 0.0407394824932 * ( ( v[11] * i[11].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[12])
if v_abs == 0:
dv[12] = 0
else:
dv[12] = 1.j * omega[12] * v[12] + 2.0 * (v[12] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[12] * i[12].conjugate()).imag - 0.203697412466.imag ) )
domega[12] = 2.0 * (0 - omega[12]) - 2.0 * 0.0407394824932 * ( ( v[12] * i[12].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[13])
if v_abs == 0:
dv[13] = 0
else:
dv[13] = 1.j * omega[13] * v[13] + 2.0 * (v[13] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[13] * i[13].conjugate()).imag - 0.203697412466.imag ) )
domega[13] = 2.0 * (0 - omega[13]) - 2.0 * 0.0407394824932 * ( ( v[13] * i[13].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[14])
if v_abs == 0:
dv[14] = 0
else:
dv[14] = 1.j * omega[14] * v[14] + 2.0 * (v[14] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[14] * i[14].conjugate()).imag - -0.192302587534.imag ) )
domega[14] = 2.0 * (0 - omega[14]) - 2.0 * -0.0384605175068 * ( ( v[14] * i[14].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[15])
if v_abs == 0:
dv[15] = 0
else:
dv[15] = 1.j * omega[15] * v[15] + 2.0 * (v[15] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[15] * i[15].conjugate()).imag - 0.203697412466.imag ) )
domega[15] = 2.0 * (0 - omega[15]) - 2.0 * 0.0407394824932 * ( ( v[15] * i[15].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[16])
if v_abs == 0:
dv[16] = 0
else:
dv[16] = 1.j * omega[16] * v[16] + 2.0 * (v[16] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[16] * i[16].conjugate()).imag - -0.192302587534.imag ) )
domega[16] = 2.0 * (0 - omega[16]) - 2.0 * -0.0384605175068 * ( ( v[16] * i[16].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[17])
if v_abs == 0:
dv[17] = 0
else:
dv[17] = 1.j * omega[17] * v[17] + 2.0 * (v[17] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[17] * i[17].conjugate()).imag - -0.192302587534.imag ) )
domega[17] = 2.0 * (0 - omega[17]) - 2.0 * -0.0384605175068 * ( ( v[17] * i[17].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[18])
if v_abs == 0:
dv[18] = 0
else:
dv[18] = 1.j * omega[18] * v[18] + 2.0 * (v[18] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[18] * i[18].conjugate()).imag - -0.192302587534.imag ) )
domega[18] = 2.0 * (0 - omega[18]) - 2.0 * -0.0384605175068 * ( ( v[18] * i[18].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[19])
if v_abs == 0:
dv[19] = 0
else:
dv[19] = 1.j * omega[19] * v[19] + 2.0 * (v[19] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[19] * i[19].conjugate()).imag - -0.192302587534.imag ) )
domega[19] = 2.0 * (0 - omega[19]) - 2.0 * -0.0384605175068 * ( ( v[19] * i[19].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[20])
if v_abs == 0:
dv[20] = 0
else:
dv[20] = 1.j * omega[20] * v[20] + 2.0 * (v[20] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[20] * i[20].conjugate()).imag - -0.192302587534.imag ) )
domega[20] = 2.0 * (0 - omega[20]) - 2.0 * -0.0384605175068 * ( ( v[20] * i[20].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[21])
if v_abs == 0:
dv[21] = 0
else:
dv[21] = 1.j * omega[21] * v[21] + 2.0 * (v[21] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[21] * i[21].conjugate()).imag - 0.203697412466.imag ) )
domega[21] = 2.0 * (0 - omega[21]) - 2.0 * 0.0407394824932 * ( ( v[21] * i[21].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[22])
if v_abs == 0:
dv[22] = 0
else:
dv[22] = 1.j * omega[22] * v[22] + 2.0 * (v[22] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[22] * i[22].conjugate()).imag - -0.192302587534.imag ) )
domega[22] = 2.0 * (0 - omega[22]) - 2.0 * -0.0384605175068 * ( ( v[22] * i[22].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[23])
if v_abs == 0:
dv[23] = 0
else:
dv[23] = 1.j * omega[23] * v[23] + 2.0 * (v[23] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[23] * i[23].conjugate()).imag - -0.192302587534.imag ) )
domega[23] = 2.0 * (0 - omega[23]) - 2.0 * -0.0384605175068 * ( ( v[23] * i[23].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[24])
if v_abs == 0:
dv[24] = 0
else:
dv[24] = 1.j * omega[24] * v[24] + 2.0 * (v[24] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[24] * i[24].conjugate()).imag - 0.203697412466.imag ) )
domega[24] = 2.0 * (0 - omega[24]) - 2.0 * 0.0407394824932 * ( ( v[24] * i[24].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[25])
if v_abs == 0:
dv[25] = 0
else:
dv[25] = 1.j * omega[25] * v[25] + 2.0 * (v[25] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[25] * i[25].conjugate()).imag - 0.203697412466.imag ) )
domega[25] = 2.0 * (0 - omega[25]) - 2.0 * 0.0407394824932 * ( ( v[25] * i[25].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[26])
if v_abs == 0:
dv[26] = 0
else:
dv[26] = 1.j * omega[26] * v[26] + 2.0 * (v[26] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[26] * i[26].conjugate()).imag - -0.192302587534.imag ) )
domega[26] = 2.0 * (0 - omega[26]) - 2.0 * -0.0384605175068 * ( ( v[26] * i[26].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[27])
if v_abs == 0:
dv[27] = 0
else:
dv[27] = 1.j * omega[27] * v[27] + 2.0 * (v[27] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[27] * i[27].conjugate()).imag - -0.192302587534.imag ) )
domega[27] = 2.0 * (0 - omega[27]) - 2.0 * -0.0384605175068 * ( ( v[27] * i[27].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[28])
if v_abs == 0:
dv[28] = 0
else:
dv[28] = 1.j * omega[28] * v[28] + 2.0 * (v[28] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[28] * i[28].conjugate()).imag - -0.192302587534.imag ) )
domega[28] = 2.0 * (0 - omega[28]) - 2.0 * -0.0384605175068 * ( ( v[28] * i[28].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[29])
if v_abs == 0:
dv[29] = 0
else:
dv[29] = 1.j * omega[29] * v[29] + 2.0 * (v[29] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[29] * i[29].conjugate()).imag - 0.203697412466.imag ) )
domega[29] = 2.0 * (0 - omega[29]) - 2.0 * 0.0407394824932 * ( ( v[29] * i[29].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[30])
if v_abs == 0:
dv[30] = 0
else:
dv[30] = 1.j * omega[30] * v[30] + 2.0 * (v[30] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[30] * i[30].conjugate()).imag - 0.203697412466.imag ) )
domega[30] = 2.0 * (0 - omega[30]) - 2.0 * 0.0407394824932 * ( ( v[30] * i[30].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[31])
if v_abs == 0:
dv[31] = 0
else:
dv[31] = 1.j * omega[31] * v[31] + 2.0 * (v[31] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[31] * i[31].conjugate()).imag - -0.192302587534.imag ) )
domega[31] = 2.0 * (0 - omega[31]) - 2.0 * -0.0384605175068 * ( ( v[31] * i[31].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[32])
if v_abs == 0:
dv[32] = 0
else:
dv[32] = 1.j * omega[32] * v[32] + 2.0 * (v[32] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[32] * i[32].conjugate()).imag - 0.203697412466.imag ) )
domega[32] = 2.0 * (0 - omega[32]) - 2.0 * 0.0407394824932 * ( ( v[32] * i[32].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[33])
if v_abs == 0:
dv[33] = 0
else:
dv[33] = 1.j * omega[33] * v[33] + 2.0 * (v[33] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[33] * i[33].conjugate()).imag - -0.192302587534.imag ) )
domega[33] = 2.0 * (0 - omega[33]) - 2.0 * -0.0384605175068 * ( ( v[33] * i[33].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[34])
if v_abs == 0:
dv[34] = 0
else:
dv[34] = 1.j * omega[34] * v[34] + 2.0 * (v[34] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[34] * i[34].conjugate()).imag - 0.203697412466.imag ) )
domega[34] = 2.0 * (0 - omega[34]) - 2.0 * 0.0407394824932 * ( ( v[34] * i[34].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[35])
if v_abs == 0:
dv[35] = 0
else:
dv[35] = 1.j * omega[35] * v[35] + 2.0 * (v[35] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[35] * i[35].conjugate()).imag - -0.192302587534.imag ) )
domega[35] = 2.0 * (0 - omega[35]) - 2.0 * -0.0384605175068 * ( ( v[35] * i[35].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[36])
if v_abs == 0:
dv[36] = 0
else:
dv[36] = 1.j * omega[36] * v[36] + 2.0 * (v[36] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[36] * i[36].conjugate()).imag - -0.192302587534.imag ) )
domega[36] = 2.0 * (0 - omega[36]) - 2.0 * -0.0384605175068 * ( ( v[36] * i[36].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[37])
if v_abs == 0:
dv[37] = 0
else:
dv[37] = 1.j * omega[37] * v[37] + 2.0 * (v[37] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[37] * i[37].conjugate()).imag - -0.192302587534.imag ) )
domega[37] = 2.0 * (0 - omega[37]) - 2.0 * -0.0384605175068 * ( ( v[37] * i[37].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[38])
if v_abs == 0:
dv[38] = 0
else:
dv[38] = 1.j * omega[38] * v[38] + 2.0 * (v[38] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[38] * i[38].conjugate()).imag - -0.192302587534.imag ) )
domega[38] = 2.0 * (0 - omega[38]) - 2.0 * -0.0384605175068 * ( ( v[38] * i[38].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[39])
if v_abs == 0:
dv[39] = 0
else:
dv[39] = 1.j * omega[39] * v[39] + 2.0 * (v[39] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[39] * i[39].conjugate()).imag - 0.203697412466.imag ) )
domega[39] = 2.0 * (0 - omega[39]) - 2.0 * 0.0407394824932 * ( ( v[39] * i[39].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[40])
if v_abs == 0:
dv[40] = 0
else:
dv[40] = 1.j * omega[40] * v[40] + 2.0 * (v[40] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[40] * i[40].conjugate()).imag - -0.192302587534.imag ) )
domega[40] = 2.0 * (0 - omega[40]) - 2.0 * -0.0384605175068 * ( ( v[40] * i[40].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[41])
if v_abs == 0:
dv[41] = 0
else:
dv[41] = 1.j * omega[41] * v[41] + 2.0 * (v[41] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[41] * i[41].conjugate()).imag - 0.203697412466.imag ) )
domega[41] = 2.0 * (0 - omega[41]) - 2.0 * 0.0407394824932 * ( ( v[41] * i[41].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[42])
if v_abs == 0:
dv[42] = 0
else:
dv[42] = 1.j * omega[42] * v[42] + 2.0 * (v[42] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[42] * i[42].conjugate()).imag - -0.192302587534.imag ) )
domega[42] = 2.0 * (0 - omega[42]) - 2.0 * -0.0384605175068 * ( ( v[42] * i[42].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[43])
if v_abs == 0:
dv[43] = 0
else:
dv[43] = 1.j * omega[43] * v[43] + 2.0 * (v[43] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[43] * i[43].conjugate()).imag - -0.192302587534.imag ) )
domega[43] = 2.0 * (0 - omega[43]) - 2.0 * -0.0384605175068 * ( ( v[43] * i[43].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[44])
if v_abs == 0:
dv[44] = 0
else:
dv[44] = 1.j * omega[44] * v[44] + 2.0 * (v[44] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[44] * i[44].conjugate()).imag - 0.203697412466.imag ) )
domega[44] = 2.0 * (0 - omega[44]) - 2.0 * 0.0407394824932 * ( ( v[44] * i[44].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[45])
if v_abs == 0:
dv[45] = 0
else:
dv[45] = 1.j * omega[45] * v[45] + 2.0 * (v[45] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[45] * i[45].conjugate()).imag - 0.203697412466.imag ) )
domega[45] = 2.0 * (0 - omega[45]) - 2.0 * 0.0407394824932 * ( ( v[45] * i[45].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[46])
if v_abs == 0:
dv[46] = 0
else:
dv[46] = 1.j * omega[46] * v[46] + 2.0 * (v[46] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[46] * i[46].conjugate()).imag - -0.192302587534.imag ) )
domega[46] = 2.0 * (0 - omega[46]) - 2.0 * -0.0384605175068 * ( ( v[46] * i[46].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[47])
if v_abs == 0:
dv[47] = 0
else:
dv[47] = 1.j * omega[47] * v[47] + 2.0 * (v[47] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[47] * i[47].conjugate()).imag - -0.192302587534.imag ) )
domega[47] = 2.0 * (0 - omega[47]) - 2.0 * -0.0384605175068 * ( ( v[47] * i[47].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[48])
if v_abs == 0:
dv[48] = 0
else:
dv[48] = 1.j * omega[48] * v[48] + 2.0 * (v[48] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[48] * i[48].conjugate()).imag - 0.203697412466.imag ) )
domega[48] = 2.0 * (0 - omega[48]) - 2.0 * 0.0407394824932 * ( ( v[48] * i[48].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[49])
if v_abs == 0:
dv[49] = 0
else:
dv[49] = 1.j * omega[49] * v[49] + 2.0 * (v[49] / v_abs) * ( (1.0 - v_abs) - -0.0192302587534 * ( (v[49] * i[49].conjugate()).imag - -0.192302587534.imag ) )
domega[49] = 2.0 * (0 - omega[49]) - 2.0 * -0.0384605175068 * ( ( v[49] * i[49].conjugate()).real - -0.192302587534.real )
v_abs = np.absolute(v[50])
if v_abs == 0:
dv[50] = 0
else:
dv[50] = 1.j * omega[50] * v[50] + 2.0 * (v[50] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[50] * i[50].conjugate()).imag - 0.203697412466.imag ) )
domega[50] = 2.0 * (0 - omega[50]) - 2.0 * 0.0407394824932 * ( ( v[50] * i[50].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[51])
if v_abs == 0:
dv[51] = 0
else:
dv[51] = 1.j * omega[51] * v[51] + 2.0 * (v[51] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[51] * i[51].conjugate()).imag - 0.203697412466.imag ) )
domega[51] = 2.0 * (0 - omega[51]) - 2.0 * 0.0407394824932 * ( ( v[51] * i[51].conjugate()).real - 0.203697412466.real )
v_abs = np.absolute(v[52])
if v_abs == 0:
dv[52] = 0
else:
dv[52] = 1.j * omega[52] * v[52] + 2.0 * (v[52] / v_abs) * ( (1.0 - v_abs) - 0.0203697412466 * ( (v[52] * i[52].conjugate()).imag - 0.203697412466.imag ) )