figures_v1

This commit is contained in:
Marco Cammarata 2017-06-09 16:48:29 +02:00
parent b53354da9b
commit 23e631e3bd
31 changed files with 12385 additions and 0 deletions

View File

@ -0,0 +1,29 @@
import sys
sys.path.insert(0,"../../../")
import numpy as np
import matplotlib.pyplot as plt
import xanes_analyzeRun
def run80():
pars = dict( transx = 60, transy = -20, scalex = 0.9, scaley = 1.1, rotation = -0.03 )
r=xanes_analyzeRun.AnalyzeRun(80,initAlign=pars)
# NOTE: calib0 has sample in, so alignment has to be done with odd calibcycles
r.doShots(shots=slice(3,10),calib=1,doFit=True)
r.analyzeScan()
r.save(overwrite=True)
def run82():
pars = dict( rotation = -0.03, scaley = 0.85, transx = 48, transy = 25.8 )
r=xanes_analyzeRun.AnalyzeRun(82,initAlign=pars)
r.doShots(shots=slice(5,10),calib=0,doFit=True)
r.analyzeScan()
r.save(overwrite=True)
def run84():
# run 84 is IN/OUT scan and theta scan
r=xanes_analyzeRun.AnalyzeRun(84)
r.analyzeScan(calibsToFit='even', nImagesToFit=5)
r.save(overwrite=True)

View File

@ -0,0 +1,877 @@
#calib2 target2_RT
7.3916571339748 0.906394205387994
7.3912816484577 0.916352955387994
7.3909061653312 0.906468595387994
7.3905306845953 0.927607145387994
7.39015520625 0.922117915387994
7.3897797302953 0.928138935387994
7.3894042567312 0.922322235387994
7.3890287855577 0.929170575387994
7.3886533167748 0.917554695387994
7.3882778503825 0.929610695387994
7.3879023863808 0.926217515387994
7.3875269247697 0.932973705387994
7.3871514655492 0.922370035387994
7.3867760087193 0.931615075387994
7.38640055428 0.927632295387994
7.3860251022313 0.940428575387994
7.3856496525732 0.927053175387994
7.3852742053057 0.931300845387994
7.3848987604288 0.930293765387994
7.3845233179425 0.932530605387994
7.3841478778468 0.928488575387994
7.3837724401417 0.938892445387994
7.3833970048272 0.931321225387994
7.3830215719033 0.939936125387994
7.38264614137 0.933593475387994
7.3822707132273 0.939775665387994
7.3818952874752 0.928490605387994
7.3815198641137 0.936349475387994
7.3811444431428 0.929147565387994
7.3807690245625 0.942646705387994
7.3803936083728 0.941649635387994
7.3800181945737 0.950500095387994
7.3796427831652 0.950870595387994
7.3792673741473 0.958743535387994
7.37889196752 0.958411065387994
7.3785165632833 0.964919415387994
7.3781411614372 0.959603635387994
7.3777657619817 0.965308395387994
7.3773903649168 0.963891585387994
7.3770149702425 0.974893655387994
7.3766395779588 0.962930525387994
7.3762641880657 0.969844065387994
7.3758888005632 0.964998445387994
7.3755134154513 0.977389065387994
7.37513803273 0.975508415387994
7.3747626523993 0.977940995387994
7.3743872744592 0.977023925387994
7.3740118989097 0.985035385387994
7.3736365257508 0.989770975387994
7.3732611549825 0.998028475387994
7.3728857866048 1.00490232538799
7.3725104206177 1.01295682538799
7.3721350570212 1.01893480538799
7.3717596958153 1.02818258538799
7.371384337 1.02568610538799
7.3710089805753 1.03567989538799
7.3706336265412 1.02486225538799
7.3702582748977 1.02629991538799
7.3698829256448 1.01753934538799
7.3695075787825 1.02896925538799
7.3691322343108 1.02713545538799
7.3687568922297 1.03419693538799
7.3683815525392 1.02655538538799
7.3680062152393 1.03001900538799
7.36763088033 1.02385183538799
7.3672555478113 1.03320487538799
7.3668802176832 1.03003378538799
7.3665048899457 1.03591879538799
7.3661295645988 1.03181906538799
7.3657542416425 1.04080065538799
7.3653789210768 1.04216238538799
7.3650036029017 1.04674275538799
7.3646282871172 1.04106565538799
7.3642529737233 1.04521843538799
7.36387766272 1.04638501538799
7.3635023541073 1.04582472538799
7.3631270478852 1.04640039538799
7.3627517440537 1.05187209538799
7.3623764426128 1.04653068538799
7.3620011435625 1.04836257538799
7.3616258469028 1.04624267538799
7.3612505526337 1.05109711538799
7.3608752607552 1.04340883538799
7.3604999712673 1.04616745538799
7.36012468417 1.04402168538799
7.3597493994633 1.04439290538799
7.3593741171472 1.04315956538799
7.3589988372217 1.03953059538799
7.3586235596868 1.03305383538799
7.3582482845425 1.03829666538799
7.3578730117888 1.03464778538799
7.3574977414257 1.03419014538799
7.3571224734532 1.03048905538799
7.3567472078713 1.03501971538799
7.35637194468 1.03318866538799
7.3559966838793 1.03753145538799
7.3556214254692 1.03231187538799
7.3552461694497 1.03504177538799
7.3548709158208 1.02701707538799
7.3544956645825 1.02774091538799
7.3541204157348 1.02192636538799
7.3537451692777 1.01976426538799
7.3533699252112 1.01455970538799
7.3529946835353 1.01622506538799
7.35261944425 1.01897879538799
7.3522442073553 1.02313073538799
7.3518689728512 1.01681479538799
7.3514937407377 1.01504334538799
7.3511185110148 1.01114472538799
7.3507432836825 1.01275631538799
7.3503680587408 1.01042910538799
7.3499928361897 1.00629945538799
7.3496176160292 1.00039311538799
7.3492423982593 0.997744045387994
7.34886718288 0.994781335387994
7.3484919698913 0.998360005387994
7.3481167592932 0.995030005387994
7.3477415510857 0.996531445387994
7.3473663452688 0.989736635387994
7.3469911418425 0.989725915387994
7.3466159408068 0.988890375387994
7.3462407421617 0.987701255387994
7.3458655459072 0.979780165387994
7.3454903520433 0.981456835387994
7.34511516057 0.982524955387994
7.3447399714873 0.982654295387994
7.3443647847952 0.976248345387994
7.3439896004937 0.977194155387994
7.3436144185828 0.968658645387994
7.3432392390625 0.968642915387994
7.3428640619328 0.966769415387994
7.3424888871937 0.968307695387994
7.3421137148452 0.962736095387994
7.3417385448873 0.962210495387994
7.34136337732 0.957428535387994
7.3409882121433 0.953683105387994
7.3406130493572 0.950583545387994
7.3402378889617 0.948368515387994
7.3398627309568 0.945664015387994
7.3394875753425 0.944830145387994
7.3391124221188 0.946610895387994
7.3387372712857 0.948846545387994
7.3383621228432 0.949282845387994
7.3379869767913 0.944666585387994
7.33761183313 0.942236625387994
7.3372366918593 0.943260995387994
7.3368615529792 0.937210405387994
7.3364864164897 0.939755165387994
7.3361112823908 0.939584935387994
7.3357361506825 0.941559035387994
7.3353610213648 0.940108615387994
7.3349858944377 0.938072765387994
7.3346107699012 0.942593295387994
7.3342356477553 0.943801965387994
7.333860528 0.952956875387994
7.3334854106353 0.951143945387994
7.3331102956612 0.948763925387994
7.3327351830777 0.950236045387994
7.3323600728848 0.949407895387994
7.3319849650825 0.953856785387994
7.3316098596708 0.955465275387994
7.3312347566497 0.959443295387994
7.3308596560192 0.958412965387994
7.3304845577793 0.960241875387994
7.33010946193 0.960664835387994
7.3297343684713 0.960413895387994
7.3293592774032 0.964011875387994
7.3289841887257 0.964436495387994
7.3286091024388 0.960842215387994
7.3282340185425 0.959999885387994
7.3278589370368 0.957339485387994
7.3274838579217 0.963871085387994
7.3271087811972 0.960083085387994
7.3267337068633 0.965519745387994
7.32635863492 0.962413035387994
7.3259835653673 0.967867455387994
7.3256084982052 0.968926755387994
7.3252334334337 0.972990355387994
7.3248583710528 0.971604785387994
7.3244833110625 0.975276315387994
7.3241082534628 0.971450645387994
7.3237331982537 0.975867235387994
7.3233581454352 0.975388605387994
7.3229830950073 0.978890145387994
7.32260804697 0.973649225387994
7.3222330013233 0.970216715387994
7.3218579580672 0.967906795387994
7.3214829172017 0.974526605387994
7.3211078787268 0.980261525387994
7.3207328426425 0.979005415387994
7.3203578089488 0.976317015387994
7.3199827776457 0.971193515387994
7.3196077487332 0.965908255387994
7.3192327222113 0.968727555387994
7.31885769808 0.964927395387994
7.3184826763393 0.968555295387994
7.3181076569892 0.968790495387994
7.3177326400297 0.973421775387994
7.3173576254608 0.969810685387994
7.3169826132825 0.969400015387994
7.3166076034948 0.964461175387994
7.3162325960977 0.966099225387994
7.3158575910912 0.965450135387994
7.3154825884753 0.970382535387994
7.31510758825 0.969784695387994
7.3147325904153 0.968695245387994
7.3143575949712 0.965488035387994
7.3139826019177 0.969080055387994
7.3136076112548 0.963320935387994
7.3132326229825 0.961804475387994
7.3128576371008 0.961237875387994
7.3124826536097 0.967276535387994
7.3121076725092 0.968817315387994
7.3117326937993 0.967114175387994
7.31135771748 0.969797455387994
7.3109827435513 0.969761335387994
7.3106077720132 0.968651495387994
7.3102328028657 0.967035615387994
7.3098578361088 0.970795955387994
7.3094828717425 0.976492125387994
7.3091079097668 0.974429455387994
7.3087329501817 0.974725565387994
7.3083579929872 0.974788155387994
7.3079830381833 0.976487365387994
7.30760808577 0.976560195387994
7.3072331357473 0.978312095387994
7.3068581881152 0.975035275387994
7.3064832428737 0.974527795387994
7.3061083000228 0.976307235387994
7.3057333595625 0.980724295387994
7.3053584214928 0.976234635387994
7.3049834858137 0.979194125387994
7.3046085525252 0.977661815387994
7.3042336216273 0.983891455387994
7.30385869312 0.983787735387994
7.3034837670033 0.986969675387994
7.3031088432772 0.992932645387994
7.3027339219417 0.992163265387994
7.3023590029968 0.995289765387994
7.3019840864425 1.00597663538799
7.3016091722788 1.00672122538799
7.3012342605057 1.01045855538799
7.3008593511232 1.00750466538799
7.3004844441313 1.01041897538799
7.30010953953 1.00964816538799
7.2997346373193 1.01907094538799
7.2993597374992 1.02105887538799
7.2989848400697 1.02748938538799
7.2986099450308 1.03018911538799
7.2982350523825 1.04125436538799
7.2978601621248 1.04165371538799
7.2974852742577 1.05431159538799
7.2971103887812 1.04859539538799
7.2967355056953 1.05452641538799
7.296360625 1.05667289538799
7.2959857466953 1.06387182538799
7.2956108707812 1.05835410538799
7.2952359972577 1.06708391538799
7.2948611261248 1.07160099538799
7.2944862573825 1.07740064538799
7.2941113910308 1.07266815538799
7.2937365270697 1.08610900538799
7.2933616654992 1.08850570538799
7.2929868063193 1.09907384538799
7.29261194953 1.09583660538799
7.2922370951313 1.10314878538799
7.2918622431232 1.09999927538799
7.2914873935057 1.11034210538799
7.2911125462788 1.10896738538799
7.2907377014425 1.11858137538799
7.2903628589968 1.11695285538799
7.2899880189417 1.12132152538799
7.2896131812772 1.11457570538799
7.2892383460033 1.11931165538799
7.28886351312 1.11581786538799
7.2884886826273 1.12443276538799
7.2881138545252 1.11883195538799
7.2877390288137 1.12175615538799
7.2873642054928 1.11939128538799
7.2869893845625 1.12387057538799
7.2866145660228 1.11917825538799
7.2862397498737 1.12342485538799
7.2858649361152 1.11870452538799
7.2854901247473 1.12516339538799
7.28511531577 1.12705429538799
7.2847405091833 1.13318046538799
7.2843657049872 1.12413581538799
7.2839909031817 1.12556251538799
7.2836161037668 1.10819336538799
7.2832413067425 1.11460670538799
7.2828665121088 1.10041125538799
7.2824917198657 1.10302289538799
7.2821169300132 1.09787996538799
7.2817421425513 1.10729070538799
7.28136735748 1.10331948538799
7.2809925747993 1.11649354538799
7.2806177945092 1.10644229538799
7.2802430166097 1.11685606538799
7.2798682411008 1.10119577538799
7.2794934679825 1.10474713538799
7.2791186972548 1.09293802538799
7.2787439289177 1.09599908538799
7.2783691629712 1.08978613538799
7.2779943994153 1.09460660538799
7.27761963825 1.08429595538799
7.2772448794753 1.08490034538799
7.2768701230912 1.07883950538799
7.2764953690977 1.08724900538799
7.2761206174948 1.07506056538799
7.2757458682825 1.07928129538799
7.2753711214608 1.06736084538799
7.2749963770297 1.07548555538799
7.2746216349892 1.07091399538799
7.2742468953393 1.07915767538799
7.27387215808 1.07618113538799
7.2734974232113 1.08142872538799
7.2731226907332 1.06560381538799
7.2727479606457 1.06453558538799
7.2723732329488 1.04990752538799
7.2719985076425 1.05891569538799
7.2716237847268 1.05297192538799
7.2712490642017 1.04994138538799
7.2708743460672 1.04604776538799
7.2704996303233 1.04855235538799
7.27012491697 1.04553373538799
7.2697502060073 1.05157765538799
7.2693754974352 1.04813071538799
7.2690007912537 1.04709287538799
7.2686260874628 1.04228957538799
7.2682513860625 1.03704019538799
7.2678766870528 1.02466186538799
7.2675019904337 1.02452155538799
7.2671272962052 1.01792307538799
7.2667526043673 1.02312215538799
7.26637791492 1.01557572538799
7.2660032278633 1.01647397538799
7.2656285431972 1.01556154538799
7.2652538609217 1.01797124538799
7.2648791810368 1.01482101538799
7.2645045035425 1.01667460538799
7.2641298284388 1.01032897538799
7.2637551557257 1.01280959538799
7.2633804854032 0.999924625387994
7.2630058174713 1.00581296538799
7.26263115193 1.00826116538799
7.2622564887793 1.00869747538799
7.2618818280192 1.00567706538799
7.2615071696497 1.00489016538799
7.2611325136708 1.00443156538799
7.2607578600825 1.01245745538799
7.2603832088848 1.00740977538799
7.2600085600777 1.00793906538799
7.2596339136612 1.00458141538799
7.2592592696353 1.00982817538799
7.258884628 1.00031288538799
7.2585099887553 1.00486870538799
7.2581353519012 0.999594415387994
7.2577607174377 1.00761600538799
7.2573860853648 1.00172539538799
7.2570114556825 1.00310667538799
7.2566368283908 0.999956805387994
7.2562622034897 1.01202174538799
7.2558875809792 1.00459083538799
7.2555129608593 1.00885339538799
7.25513834313 1.00213667538799
7.2547637277913 1.00260087538799
7.2543891148432 0.998328765387994
7.2540145042857 1.00893767538799
7.2536398961188 1.00780304538799
7.2532652903425 1.01555141538799
7.2528906869568 1.01143272538799
7.2525160859617 1.01146134538799
7.2521414873572 1.00770493538799
7.2517668911433 1.01070662538799
7.25139229732 1.00895961538799
7.2510177058873 1.01700457538799
7.2506431168452 1.01274820538799
7.2502685301937 1.02207418538799
7.2498939459328 1.01610275538799
7.2495193640625 1.02290137538799
7.2491447845828 1.01820608538799
7.2487702074937 1.01601775538799
7.2483956327952 1.00551029538799
7.2480210604873 1.01097675538799
7.24764649057 0.996508445387994
7.2472719230433 1.00181134538799
7.2468973579072 1.00137885538799
7.2465227951617 1.00475534538799
7.2461482348068 0.997651305387994
7.2457736768425 1.00308378538799
7.2453991212688 0.995130625387994
7.2450245680857 0.992361275387994
7.2446500172932 0.993415315387994
7.2442754688913 0.987407645387994
7.24390092288 0.974802935387994
7.2435263792593 0.977651675387994
7.2431518380292 0.971441115387994
7.2427772991897 0.973923405387994
7.2424027627408 0.969231805387994
7.2420282286825 0.970908365387994
7.2416536970148 0.964873635387994
7.2412791677377 0.969467485387994
7.2409046408512 0.962698665387994
7.2405301163553 0.969501105387994
7.24015559425 0.967508275387994
7.2397810745353 0.971773115387994
7.2394065572112 0.965790475387994
7.2390320422777 0.970446785387994
7.2386575297348 0.966001595387994
7.2382830195825 0.976987325387994
7.2379085118208 0.977796875387994
7.2375340064497 0.980939235387994
7.2371595034692 0.982183415387994
7.2367850028793 0.989599425387994
7.23641050468 0.995316345387994
7.2360360088713 1.00473114538799
7.2356615154532 1.00222393538799
7.2352870244257 1.00942286538799
7.2349125357888 1.00902434538799
7.2345380495425 1.02317448538799
7.2341635656868 1.02496954538799
7.2337890842217 1.03586622538799
7.2334146051472 1.03273662538799
7.2330401284633 1.04233809538799
7.23266565417 1.03569563538799
7.2322911822673 1.04954858538799
7.2319167127552 1.04353829538799
7.2315422456337 1.05661448538799
7.2311677809028 1.05814536538799
7.2307933185625 1.07196780538799
7.2304188586128 1.08224102538799
7.2300444010537 1.09790714538799
7.2296699458852 1.10132869538799
7.2292954931073 1.11178370538799
7.22892104272 1.11160465538799
7.2285465947233 1.13460548538799
7.2281721491172 1.12904008538799
7.2277977059017 1.13824304538799
7.2274232650768 1.14507528538799
7.2270488266425 1.15650864538799
7.2266743905988 1.15820129538799
7.2262999569457 1.16532548538799
7.2259255256832 1.17723139538799
7.2255510968113 1.17816110538799
7.22517667033 1.18932088538799
7.2248022462393 1.19340726538799
7.2244278245392 1.19796057538799
7.2240534052297 1.19562169538799
7.2236789883108 1.21268459538799
7.2233045737825 1.20927497538799
7.2229301616448 1.21856804538799
7.2225557518977 1.21215494538799
7.2221813445412 1.21027668538799
7.2218069395753 1.21398552538799
7.221432537 1.21108277538799
7.2210581368153 1.20491703538799
7.2206837390212 1.21018346538799
7.2203093436177 1.20848103538799
7.2199349506048 1.20132430538799
7.2195605599825 1.19393654538799
7.2191861717508 1.18450208538799
7.2188117859097 1.17751928538799
7.2184374024592 1.16359528538799
7.2180630213993 1.15955837538799
7.21768864273 1.15552278538799
7.2173142664513 1.15270563538799
7.2169398925632 1.13952156538799
7.2165655210657 1.14120348538799
7.2161911519588 1.12277670538799
7.2158167852425 1.11063727538799
7.2154424209168 1.10255046538799
7.2150680589817 1.09474381538799
7.2146936994372 1.08197256538799
7.2143193422833 1.06712671538799
7.21394498752 1.06274219538799
7.2135706351473 1.05767341538799
7.2131962851652 1.04644688538799
7.2128219375737 1.04024609538799
7.2124475923728 1.03832491538799
7.2120732495625 1.03389855538799
7.2116989091428 1.03467293538799
7.2113245711137 1.02498682538799
7.2109502354752 1.01530762538799
7.2105759022273 1.01424809538799
7.21020157137 1.01582559538799
7.2098272429033 1.00920899538799
7.2094529168272 1.01393302538799
7.2090785931417 1.01678045538799
7.2087042718468 1.02079900538799
7.2083299529425 1.02070005538799
7.2079556364288 1.01967795538799
7.2075813223057 1.01327797538799
7.2072070105732 1.01734312538799
7.2068327012313 1.01245113538799
7.20645839428 1.00777169538799
7.2060840897193 1.00755127538799
7.2057097875492 1.02381464538799
7.2053354877697 1.02337607538799
7.2049611903808 1.01875873538799
7.2045868953825 1.01721855538799
7.2042126027748 1.02833040538799
7.2038383125577 1.04656990538799
7.2034640247312 1.04280706538799
7.2030897392953 1.05732294538799
7.20271545625 1.06401868538799
7.2023411755953 1.08143707538799
7.2019668973312 1.07132216538799
7.2015926214577 1.07687696538799
7.2012183479748 1.06627842538799
7.2008440768825 1.08217104538799
7.2004698081808 1.07818575538799
7.2000955418697 1.08931072538799
7.1997212779492 1.08624693538799
7.1993470164193 1.09810539538799
7.19897275728 1.09942730538799
7.1985985005313 1.10789974538799
7.1982242461732 1.09897097538799
7.1978499942057 1.10420330538799
7.1974757446288 1.09218343538799
7.1971014974425 1.09730239538799
7.1967272526468 1.10664793538799
7.1963530102417 1.11369057538799
7.1959787702272 1.10763414538799
7.1956045326033 1.12146755538799
7.19523029737 1.11456283538799
7.1948560645273 1.12131293538799
7.1944818340752 1.11246939538799
7.1941076060137 1.11497315538799
7.1937333803428 1.10502716538799
7.1933591570625 1.12382575538799
7.1929849361728 1.11090704538799
7.1926107176737 1.10531958538799
7.1922365015652 1.09058829538799
7.1918622878473 1.10182114538799
7.19148807652 1.08791943538799
7.1911138675833 1.09106894538799
7.1907396610372 1.07024046538799
7.1903654568817 1.07368477538799
7.1899912551168 1.05916198538799
7.1896170557425 1.06294067538799
7.1892428587588 1.05554898538799
7.1888686641657 1.05773016538799
7.1884944719632 1.05939992538799
7.1881202821513 1.06944318538799
7.18774609473 1.05260022538799
7.1873719096993 1.05033572538799
7.1869977270592 1.03495689538799
7.1866235468097 1.03663309538799
7.1862493689508 1.02707429538799
7.1858751934825 1.02830358538799
7.1855010204048 1.02730246538799
7.1851268497177 1.03129001538799
7.1847526814212 1.01331385538799
7.1843785155153 1.02507217538799
7.184004352 1.00942774538799
7.1836301908753 1.01921495538799
7.1832560321412 1.01520546538799
7.1828818757977 1.02319379538799
7.1825077218448 1.01209815538799
7.1821335702825 1.02333255538799
7.1817594211108 1.02186199538799
7.1813852743297 1.03232642538799
7.1810111299392 1.01409872538799
7.1806369879393 1.03578516538799
7.18026284833 1.02726241538799
7.1798887111113 1.03624638538799
7.1795145762832 1.04402204538799
7.1791404438457 1.03192218538799
7.1787663137988 1.02859278538799
7.1783921861425 1.03400298538799
7.1780180608768 1.04336448538799
7.1776439380017 1.04236074538799
7.1772698175172 1.06044598538799
7.1768956994233 1.04550894538799
7.17652158372 1.07000967538799
7.1761474704073 1.06049426538799
7.1757733594852 1.07692226538799
7.1753992509537 1.07293280538799
7.1750251448128 1.09281059538799
7.1746510410625 1.08328064538799
7.1742769397028 1.08466418538799
7.1739028407337 1.07300349538799
7.1735287441552 1.08628972538799
7.1731546499673 1.07900949538799
7.17278055817 1.08612509538799
7.1724064687633 1.08464869538799
7.1720323817472 0.871262875387994
7.1716582971217 1.08686455538799
7.1712842148868 1.09909566538799
7.1709101350425 1.09161945538799
7.1705360575888 1.10128744538799
7.1701619825257 1.09635659538799
7.1697879098532 1.10462244538799
7.1694138395713 1.09631451538799
7.16903977168 1.09257157538799
7.1686657061793 1.10158141538799
7.1682916430692 1.10086556538799
7.1679175823497 1.09863897538799
7.1675435240208 1.11601015538799
7.1671694680825 1.09912451538799
7.1667954145348 1.10926612538799
7.1664213633777 1.10011788538799
7.1660473146112 1.11752375538799
7.1656732682353 1.11665006538799
7.16529922425 1.13290878538799
7.1649251826553 1.12355586538799
7.1645511434512 1.14159890538799
7.1641771066377 1.13108667538799
7.1638030722148 1.13786884538799
7.1634290401825 1.12994345538799
7.1630550105408 1.15809389538799
7.1626809832897 1.14877148538799
7.1623069584292 1.14185758538799
7.1619329359593 1.13112112538799
7.16155891588 1.12272246538799
7.1611848981913 1.11027880538799
7.1608108828932 1.14304658538799
7.1604368699857 1.13744171538799
7.1600628594688 1.15814324538799
7.1596888513425 1.14360173538799
7.1593148456068 1.15997549538799
7.1589408422617 1.14240523538799
7.1585668413072 1.15137239538799
7.1581928427433 1.14452298538799
7.15781884657 1.17208214538799
7.1574448527873 1.14698716538799
7.1570708613952 1.14844735538799
7.1566968723937 1.13489910538799
7.1563228857828 1.15601333538799
7.1559489015625 1.14604672538799
7.1555749197328 1.13008829538799
7.1552009402937 1.13676162538799
7.1548269632452 1.12381967538799
7.1544529885873 1.12712308538799
7.15407901632 1.12828978538799
7.1537050464433 1.13314040538799
7.1533310789572 1.13214632538799
7.1529571138617 1.14843042538799
7.1525831511568 1.15957435538799
7.1522091908425 1.15130885538799
7.1518352329188 1.14062973538799
7.1514612773857 1.13962920538799
7.1510873242432 1.12427409538799
7.1507133734913 1.12213095538799
7.15033942513 1.11520882538799
7.1499654791593 1.12587293538799
7.1495915355792 1.13693531538799
7.1492175943897 1.14751740538799
7.1488436555908 1.12073739538799
7.1484697191825 1.11557217538799
7.1480957851648 1.10946889538799
7.1477218535377 1.10750373538799
7.1473479243012 1.09451874538799
7.1469739974553 1.08795651538799
7.146600073 1.07799895538799
7.1462261509353 1.09216519538799
7.1458522312612 1.07741089538799
7.1454783139777 1.08025809538799
7.1451043990848 1.05476757538799
7.1447304865825 1.05683406538799
7.1443565764708 1.05546244538799
7.1439826687497 1.07759269538799
7.1436087634192 1.07928808538799
7.1432348604793 1.08111652538799
7.14286095993 1.06341703538799
7.1424870617713 1.06632681538799
7.1421131660032 1.05742021538799
7.1417392726257 1.05085047538799
7.1413653816388 1.05283745538799
7.1409914930425 1.05898376538799
7.1406176068368 1.06197854538799
7.1402437230217 1.06076272538799
7.1398698415972 1.04787059538799
7.1394959625633 1.05348046538799
7.13912208592 1.06205388538799
7.1387482116673 1.05592461538799
7.1383743398052 1.05420442538799
7.1380004703337 1.05005820538799
7.1376266032528 1.05169995538799
7.1372527385625 1.04922696538799
7.1368788762628 1.05234321538799
7.1365050163537 1.06149860538799
7.1361311588352 1.06162460538799
7.1357573037073 1.05837377538799
7.13538345097 1.06446739538799
7.1350096006233 1.07807966538799
7.1346357526672 1.08468087538799
7.1342619071017 1.09612914538799
7.1338880639268 1.09475394538799
7.1335142231425 1.12010034538799
7.1331403847488 1.11609133538799
7.1327665487457 1.13023253538799
7.1323927151332 1.13432534538799
7.1320188839113 1.13799747538799
7.13164505508 1.11905082538799
7.1312712286393 1.12682970538799
7.1308974045892 1.10993214538799
7.1305235829297 1.11261316538799
7.1301497636608 1.08918090538799
7.1297759467825 1.08159943538799
7.1294021322948 1.06328173538799
7.1290283201977 1.05262263538799
7.1286545104912 1.03311260538799
7.1282807031753 1.02890833538799
7.12790689825 1.00755377538799
7.1275330957153 0.994608125387994
7.1271592955712 0.966243585387994
7.1267854978177 0.957581005387994
7.1264117024548 0.938715655387994
7.1260379094825 0.941088285387994
7.1256641189008 0.923850975387994
7.1252903307097 0.914115865387994
7.1249165449092 0.892467705387994
7.1245427614993 0.893564065387994
7.12416898048 0.868660655387994
7.1237952018513 0.855482065387994
7.1234214256132 0.833621705387994
7.1230476517657 0.826450545387994
7.1226738803088 0.785031165387994
7.1223001112425 0.766974175387994
7.1219263445668 0.728347625387994
7.1215525802817 0.708204355387994
7.1211788183872 0.682316865387994
7.1208050588833 0.649011694387994
7.12043130177 0.610340797387994
7.1200575470473 0.585271977387994
7.1196837947152 0.552229546387994
7.1193100447737 0.525195681387994
7.1189362972228 0.509081088387994
7.1185625520625 0.479682766387994
7.1181888092928 0.454240464387994
7.1178150689137 0.451986216387994
7.1174413309252 0.427945994387994
7.1170675953273 0.407549761387994
7.11669386212 0.403764747387994
7.1163201313033 0.389991485387994
7.1159464028772 0.378441595387994
7.1155726768417 0.368528865387994
7.1151989531968 0.365264617387994
7.1148252319425 0.355938278387994
7.1144515130788 0.348303341387994
7.1140777966057 0.321182929387994
7.1137040825232 0.303965412387994
7.1133303708313 0.284799002387994
7.11295666153 0.253903650387994
7.1125829546193 0.225511573387994
7.1122092500992 0.202645920387994
7.1118355479697 0.168042623387994
7.1114618482308 0.138791554387994
7.1110881508825 0.117283963387994
7.1107144559248 0.100484066387994
7.1103407633577 0.0848326913879943
7.1099670731812 0.0793275163879943
7.1095933853953 0.0691122043879943
7.1092197 0.0645577833879942
7.1088460169953 0.0591323903879943
7.1084723363812 0.0516448253879942
7.1080986581577 0.0451560543879942
7.1077249823248 0.0437423513879942
7.1073513088825 0.0377061893879942
7.1069776378308 0.0377353363879943
7.1066039691697 0.0392402933879942
7.1062303028992 0.0339653723879942
7.1058566390193 0.0253689223879943
7.10548297753 0.0234671163879943
7.1051093184313 0.0148065613879942
7.1047356617232 0.0153378773879942
7.1043620074057 0.00967099538799421
7.1039883554788 0.00765457038799428
7.1036147059425 0.0125250153879942
7.1032410587968 0.0116688543879943
7.1028674140417 0.00940229838799422
7.1024937716772 0.0205924443879942
7.1021201317033 0.0190354813879942
7.10174649412 0.0232925043879942
7.1013728589273 0.0161766343879942
7.1009992261252 0.0207556413879942
7.1006255957137 0.0106283653879942
7.1002519676928 0.0108708073879942
7.0998783420625 0.00268765638799418
7.0995047188228 0.00966905838799426
7.0991310979737 0.0044128233879942
7.0987574795152 0.00968887738799423
7.0983838634473 0.00609552138799413
7.09801024977 0.00958734038799414
7.0976366384833 0.0050562553879942
7.0972630295872 0.00490134238799417
7.0968894230817 -5.9876561200578E-4
7.0965158189668 -6.17600612005831E-4
7.0961422172425 -0.00344008861200584
7.0957686179088 0.00391420038799423
7.0953950209657 0.00356008938799418
7.0950214264132 0.00697880338799417
7.0946478342513 -0.00141972961200582
7.09427424448 0.0051566593879942
7.0939006570993 0.0013175833879942
7.0935270721092 0.0119864273879942
7.0931534895097 0.00595130838799418
7.0927799093008 0.00239508638799424
7.0924063314825 -4.33243612005807E-4
7.0920327560548 0.00669961438799421
7.0916591830177 -0.00342870461200578
7.0912856123712 -0.00535986561200585
7.0909120441153 -0.00500095561200581
7.09053847825 0.0116340743879942
7.0901649147753 0.00268458638799424
7.0897913536912 0.0143290393879942
7.0894177949977 0.0109649233879942
7.0890442386948 0.0151716703879943
7.0886706847825 0.00867845938799416
7.0882971332608 0.0153595733879942
7.0879235841297 0.0091404253879942
7.0875500373892 0.0155799023879942
7.0871764930393 0.00687792238799417
7.08680295108 8.95582387994198E-4
7.0864294115113 -0.00222868461200576
7.0860558743332 0.00670056838799427
7.0856823395457 -0.0063991016120058
7.0853088071488 -0.00922197761200583
7.0849352771425 -0.0141331326120057
7.0845617495268 0.00184949538799423
7.0841882243017 0.00347253038799422
7.0838147014672 0.00800650638799422
7.0834411810233 0.00728973038799419
7.08306766297 0.00919898638799427
7.0826941473073 0.0180472063879942
7.0823206340352 0.0176580773879942
7.0819471231537 0.00234424338799416
7.0815736146628 0.00129827138799421
7.0812001085625 -0.00274110561200575
7.0808266048528 0.00125160138799418
7.0804531035337 -0.00455713961200582
7.0800796046052 8.90123879941918E-5
7.0797061080673 -0.00801200361200582
7.07933261392 0.00289853738799417
7.0789591221633 0.0153934883879942
7.0785856327972 0.0212579893879942
7.0782121458217 0.0163457323879942
7.0778386612368 0.00565599738799422
7.0774651790425 6.96741387994193E-4
7.0770916992388 6.09391387994151E-4
7.0767182218257 -0.0094421276120058
7.0763447468032 -0.00820425861200585
7.0759712741713 -0.00878570161200576
7.07559780393 -0.0185318356120058
7.0752243360793 -0.0205268926120057
7.0748508706192 -0.0156330836120057
7.0744774075497 -0.0188581716120058
7.0741039468708 -0.0113923316120058
7.0737304885825 -0.0143477096120057
7.0733570326848 -0.00562954661200582
7.0729835791777 -0.00862071561200578
7.0726101280612 5.55657387994124E-4
7.0722366793353 -3.74800612005788E-4
7.071863233 -0.00263354861200582
7.0714897890553 -0.0121236516120058
7.0711163475012 0.00292372038799421
7.0707429083377 -0.00160381861200581
7.0703694715648 0.00423317438799431
7.0699960371825 9.31017387994226E-4
7.0696226051908 0.00180327238799427
7.0692491755897 0.00354933038799415
7.0688757483792 0.0058789183879942
7.0685023235593 -0.00743231861200583
7.06812890113 0.00185718438799426
7.0677554810913 0.00279071238799422
7.0673820634432 0.00266253238799424
7.0670086481857 7.00377387994222E-4
7.0666352353188 0.0102548823879943
7.0662618248425 0.0156663883879943
7.0658884167568 0.0207361213879942
7.0655150110617 0.0250911943879942
7.0651416077572 0.0222413473879942
7.0647682068433 0.0174111953879942
7.06439480832 0.0276006093879942
7.0640214121873 0.0227320723879943

View File

@ -0,0 +1,688 @@
7.01825666 0.0581364983894583
7.02325392 0.0544084983894583
7.0282588 0.0502484983894583
7.03325891 0.0461604983894583
7.03825521 0.0427564983894583
7.04325914 0.0385604983894583
7.0482583 0.0347044983894583
7.05325365 0.0303724983894583
7.0582552 0.0263484983894584
7.0632534 0.0228804983894583
7.06825876 0.0193324983894583
7.07326031 0.0154124983894583
7.07825708 0.0120244983894583
7.08326101 0.00915649838945836
7.08776331 0.00622049838945831
7.09127808 0.00438849838945829
7.09380054 0.00318849838945834
7.09534073 0.00232449838945836
7.09583902 0.00191649838945835
7.09633636 0.00134849838945836
7.09683466 0.0013924983894583
7.09733295 0.0012844983894583
7.0978303 0.0013524983894583
7.09834146 0.00134449838945834
7.09883881 0.00130049838945832
7.09933758 0.0010804983894583
7.09983635 0.00110049838945834
7.10033417 0.00114049838945833
7.10083294 0.00123649838945834
7.10133219 0.00125249838945827
7.10183001 0.00177649838945833
7.10234165 0.0019764983894583
7.10283995 0.0022604983894583
7.1033392 0.00225649838945827
7.10383844 0.00283249838945832
7.10433674 0.00319249838945836
7.10483646 0.00348449838945832
7.10533571 0.00317649838945826
7.10583448 0.00391249838945829
7.10633421 0.00414049838945836
7.10683393 0.00517249838945837
7.10733318 0.00638049838945829
7.10783291 0.00853649838945829
7.10833263 0.0101884983894584
7.10883188 0.0124564983894583
7.10933208 0.0160284983894583
7.10983229 0.0205484983894583
7.11033154 0.0290284983894583
7.11083221 0.0437444983894583
7.11133242 0.0718044983894583
7.11183214 0.120408498389458
7.11233234 0.181596498389458
7.11283302 0.235088498389458
7.11333323 0.273853698389458
7.1138339 0.304138898389458
7.11433458 0.331087698389458
7.11483479 0.355132898389458
7.11533546 0.375234098389458
7.11583662 0.387325698389458
7.11633682 0.394219698389458
7.11683798 0.399539698389458
7.11733961 0.406066898389458
7.11783981 0.419444498389458
7.11834145 0.444308098389458
7.11883068 0.478804898389458
7.11933231 0.518780498389458
7.11983299 0.561591298389458
7.12033463 0.607096898389458
7.12083626 0.654661254389458
7.12133837 0.700921298389458
7.12183952 0.745997698389458
7.12234163 0.785817298389458
7.12283134 0.818901298389458
7.12333345 0.848097698389458
7.12383461 0.874470498389458
7.1243372 0.897392098389458
7.12483931 0.918004898389458
7.12534094 0.935695298389458
7.12583113 0.952783698389458
7.12633371 0.969614898389458
7.1268363 0.986009298389458
7.12733841 1.00372009838946
7.127841 1.02343369838946
7.12833166 1.04544289838946
7.12883472 1.07015649838946
7.12933779 1.09709249838946
7.1298399 1.12494049838946
7.13033104 1.15014449838946
7.1308341 1.17264449838946
7.13133764 1.18618849838946
7.13184023 1.18991649838946
7.13233137 1.18352049838946
7.13284683 1.16710049838946
7.13336229 1.14387249838946
7.13387728 1.11962849838946
7.13440514 1.09496049838946
7.13494444 1.07276449838946
7.1354847 1.05386849838946
7.136024 1.03925569838946
7.13658714 1.02993169838946
7.13713932 1.02480649838946
7.13771534 1.02317129838946
7.13829136 1.02480849838946
7.13886833 1.03080369838946
7.1394558 1.03879529838946
7.14005613 1.04853289838946
7.14065742 1.05768049838946
7.14126921 1.06443649838946
7.14188242 1.06969649838946
7.14250708 1.07072449838946
7.14313269 1.06872049838946
7.14376879 1.06451649838946
7.14441872 1.06046849838946
7.14506769 1.05709649838946
7.14572906 1.05688449838946
7.14639091 1.05996049838946
7.14706469 1.06794849838946
7.14773846 1.07853649838946
7.1484251 1.09135249838946
7.14911127 1.10482849838946
7.14980936 1.11711649838946
7.15052032 1.12593649838946
7.15123081 1.13249649838946
7.15195417 1.13696449838946
7.15267754 1.14046049838946
7.15341234 1.14370849838946
7.15414762 1.14618449838946
7.15489531 1.14603649838946
7.15564299 1.14364049838946
7.15640354 1.13961249838946
7.15717602 1.13512049838946
7.15794849 1.13178049838946
7.15873241 1.12906849838946
7.15951777 1.12726849838946
7.16031504 1.12554449838946
7.16111231 1.12494049838946
7.16192198 1.12306049838946
7.16273212 1.12067649838946
7.16355371 1.11678449838946
7.16438818 1.11255249838946
7.16522312 1.10843649838946
7.16605806 1.10483249838946
7.16691732 1.10124049838946
7.16776419 1.09852849838946
7.16863632 1.09531649838946
7.16949606 1.09316849838946
7.17038012 1.08956049838946
7.17126465 1.08470849838946
7.17214918 1.07839249838946
7.17304659 1.07107249838946
7.17395592 1.06218849838946
7.17486572 1.05139049838946
7.175776 1.04039369838946
7.17669773 1.02861569838946
7.17763281 1.01701289838946
7.17856789 1.00673609838946
7.17951536 0.999126498389458
7.18046284 0.992936098389458
7.18142271 0.990197298389458
7.18239546 0.989161698389458
7.18336821 0.990806498389458
7.18434095 0.992830898389458
7.18532658 0.997151698389458
7.1863246 1.00459169838946
7.18732309 1.01257569838946
7.18833351 1.02231529838946
7.18934441 1.03251649838946
7.1903677 1.04277249838946
7.19139147 1.05298929838946
7.19242811 1.06499649838946
7.19346476 1.07596449838946
7.1945138 1.08314849838946
7.19556284 1.08530049838946
7.19662476 1.08259649838946
7.19769955 1.07522049838946
7.19877386 1.06528849838946
7.19984913 1.05298769838946
7.20093679 1.03892089838946
7.20203733 1.02388929838946
7.2031374 1.00810809838946
7.20425081 0.991682898389458
7.20536423 0.975647298389458
7.20649052 0.961254898389458
7.20761728 0.951675298389458
7.20875645 0.947870498389458
7.20989561 0.951912098389458
7.21104765 0.965190098389458
7.21220016 0.986168498389458
7.21336508 1.01616809838946
7.21453142 1.04948809838946
7.21570921 1.08454849838946
7.21690035 1.11817649838946
7.21809149 1.14790049838946
7.21928358 1.17046449838946
7.22048759 1.18550049838946
7.22170496 1.19039649838946
7.22292233 1.18590849838946
7.22415257 1.17197249838946
7.22538328 1.15131649838946
7.22662687 1.12453649838946
7.22787046 1.09546849838946
7.22911501 1.06539249838946
7.23038435 1.03488809838946
7.23164225 1.00540009838946
7.23292542 0.977764898389458
7.23419619 0.953104898389458
7.23549175 0.932287298389458
7.23677588 0.916874098389458
7.23808575 0.906262498389458
7.23938274 0.900950098389458
7.24070597 0.899899298389458
7.24202871 0.902994498389458
7.24335241 0.908888898389458
7.24468946 0.917928098389458
7.24602604 0.928116898389458
7.24737597 0.937851298389458
7.24873924 0.943670098389458
7.25009012 0.947469298389458
7.25146627 0.947645698389458
7.25284338 0.943249298389458
7.25422096 0.936995298389458
7.25561142 0.930478898389458
7.25701475 0.924756498389458
7.25841856 0.922366898389458
7.25982332 0.924275298389458
7.26124048 0.928953298389458
7.26267147 0.934619698389458
7.26410246 0.939711298389458
7.26553392 0.943197698389458
7.26697922 0.946494898389458
7.26842403 0.950706098389458
7.26988268 0.956716898389458
7.2713542 0.965497298389458
7.27282619 0.975587298389458
7.27429914 0.985970898389458
7.27578497 0.993106898389458
7.27728415 0.995599298389458
7.2787838 0.998981698389458
7.28028393 1.00178489838946
7.28179741 1.00711969838946
7.28332376 1.01453009838946
7.28485107 1.02074409838946
7.28637886 1.02771609838946
7.28792048 1.03330049838946
7.28946161 1.03521409838946
7.29101706 1.03145449838946
7.29258537 1.02047769838946
7.29415417 1.00333169838946
7.29572392 0.983502098389458
7.29730701 0.962162498389458
7.29889059 0.942479298389458
7.30048752 0.925191298389458
7.30208492 0.908730498389458
7.30369616 0.895904898389458
7.30532074 0.884118498389458
7.30693293 0.875345298389458
7.30857134 0.868852098389458
7.31019783 0.864740898389458
7.31185055 0.862682898389458
7.31349134 0.862200898389458
7.31515789 0.861397298389458
7.31681299 0.860762498389458
7.31848097 0.859583698389458
7.32016277 0.857218898389458
7.32184553 0.855833298389458
7.32354116 0.854894498389458
7.32523823 0.853516498389458
7.32693577 0.852032898389458
7.32864714 0.850971298389458
7.33037186 0.848710898389458
7.33209705 0.845952498389458
7.33382368 0.840672098389458
7.33556366 0.834816898389458
7.33731699 0.828460498389458
7.33905888 0.826338898389458
7.34082651 0.824932498389458
7.34259558 0.826722898389458
7.34436512 0.831878498389458
7.34614801 0.840299698389458
7.34793234 0.850946498389458
7.34971762 0.861455298389458
7.35152912 0.871976098389458
7.35332918 0.881192098389458
7.35514259 0.888797298389458
7.35696936 0.896105698389458
7.35879755 0.903736498389458
7.3606267 0.909456898389458
7.3624692 0.914406098389458
7.36431313 0.917626898389458
7.36617088 0.919480098389458
7.36802912 0.918677298389458
7.36990166 0.914109698389458
7.3717742 0.907038898389458
7.37366152 0.895144498389458
7.37554979 0.880001298389458
7.37745142 0.861418898389458
7.37935448 0.839597298389458
7.38125849 0.817605698389458
7.38317633 0.797641298389458
7.38509512 0.781432498389458
7.38702822 0.771845298389458
7.38896179 0.766490498389458
7.39090967 0.766027298389458
7.39285851 0.768138098389458
7.39482164 0.770842898389458
7.39678574 0.773538098389458
7.39876366 0.774594498389458
7.40072966 0.774488898389458
7.40272284 0.772729298389458
7.40471697 0.771340898389458
7.40671253 0.769790498389458
7.40872192 0.769047298389458
7.41073227 0.769333698389458
7.41274452 0.768212098389458
7.41476965 0.767330898389458
7.41681004 0.766344098389458
7.4188509 0.765652498389458
7.42089319 0.761911298389458
7.42294979 0.757824098389458
7.42500782 0.753031298389458
7.42707968 0.747419698389458
7.42915249 0.743430098389458
7.43122673 0.741341298389458
7.43331528 0.740738098389458
7.43541813 0.740488898389458
7.43750906 0.742057298389458
7.43962765 0.744987698389458
7.44173431 0.748673298389458
7.44385529 0.753472498389458
7.44599056 0.758341298389458
7.44812679 0.763103698389458
7.45026493 0.766317298389458
7.4524169 0.767318898389458
7.45457029 0.767228498389458
7.45673847 0.765692098389458
7.4589076 0.763914898389458
7.46107817 0.760614498389458
7.46326303 0.757794898389458
7.46546268 0.752834898389458
7.46765041 0.747025698389458
7.4698658 0.739228498389458
7.47206926 0.731914498389458
7.47428751 0.724094898389458
7.47650671 0.717481698389458
7.47874117 0.711390098389458
7.48098993 0.705940898389458
7.48322678 0.701266898389458
7.4854784 0.694606098389458
7.48774385 0.688362738389458
7.49001169 0.681494978389458
7.49228096 0.675755418389458
7.49455166 0.671118538389458
7.49685001 0.667788578389458
7.49913597 0.666216578389458
7.50143766 0.665882218389458
7.50374031 0.666499778389458
7.50605822 0.666812698389458
7.50837755 0.666077938389458
7.51071119 0.665334418389458
7.51303339 0.662860738389458
7.51538324 0.660831938389458
7.51773548 0.657794258389458
7.52008867 0.655260950389458
7.52244329 0.653267545189458
7.52481318 0.651155122389458
7.52718449 0.650619926389458
7.52957106 0.650159818389458
7.53195906 0.648430938389458
7.53436136 0.647449538389458
7.5367527 0.645263458389458
7.53917217 0.643324418389458
7.5415802 0.640323258389458
7.54400301 0.637851858389458
7.5464406 0.635752178389458
7.5488801 0.633069218389458
7.55132103 0.631907898389458
7.55376387 0.630277778389458
7.55622149 0.631027778389458
7.55869436 0.632181298389458
7.5611558 0.632322778389458
7.56364584 0.632695058389458
7.56612396 0.631954858389458
7.56861687 0.629882818389458
7.57111216 0.626978778389458
7.57362223 0.623240738389458
7.57613468 0.617494818389458
7.57864809 0.611814098389458
7.58117723 0.605746898389458
7.58370781 0.599682498389458
7.58625412 0.594403298389458
7.58878851 0.590947298389458
7.59135199 0.587739298389458
7.59390354 0.585049698389458
7.59647036 0.583040098389458
7.59905291 0.581114098389458
7.60162354 0.579488898389458
7.60422325 0.577235698389458
7.60681152 0.574689698389458
7.60941458 0.571375298389458
7.61202002 0.567395298389458
7.61464071 0.563814498389458
7.61726332 0.560797298389458
7.61988831 0.558917698389458
7.62251472 0.558248498389458
7.62517023 0.557015298389458
7.62781429 0.555803298389458
7.63047409 0.553969298389458
7.6331358 0.551034898389458
7.63579893 0.547863698389458
7.63847876 0.544114098389458
7.64116001 0.539413698389458
7.643857 0.535377698389458
7.64654207 0.531670898389458
7.64925671 0.528766098389458
7.6519599 0.526078098389458
7.65467882 0.523695698389458
7.65739965 0.521566898389458
7.66013622 0.519528098389458
7.66287518 0.517750898389458
7.66561604 0.515967298389458
7.66837263 0.514970898389458
7.67113113 0.513821298389458
7.67389202 0.513310098389458
7.67666912 0.512119298389458
7.67944813 0.511422898389458
7.68222904 0.509987698389458
7.68502617 0.507785298389458
7.6878252 0.505210498389458
7.6906271 0.502082898389458
7.69344425 0.498754098389458
7.69626379 0.495172898389458
7.69908524 0.494593698389458
7.70192337 0.490568098389458
7.70476389 0.487357298389458
7.70760584 0.484067298389458
7.71046448 0.480637298389458
7.71332502 0.476897698389458
7.71620226 0.473539298389458
7.71906757 0.469869298389458
7.72194862 0.466395698389458
7.72484684 0.463461298389458
7.72773218 0.461389698389458
7.73063517 0.458638498389458
7.73355389 0.456088898389458
7.73646069 0.454570498389458
7.7393837 0.451888898389458
7.7423234 0.449363698389458
7.74525118 0.446746498389458
7.74819613 0.444222498389458
7.75114298 0.441547298389458
7.75410652 0.439279298389458
7.75707197 0.437325698389458
7.76003981 0.434781298389458
7.7630105 0.431328898389458
7.76599693 0.428310098389458
7.7689867 0.424998098389458
7.77199316 0.421606498389458
7.77500105 0.418469698389458
7.77801228 0.415960898389458
7.78102589 0.413160898389458
7.78405571 0.410708498389458
7.78708792 0.408314098389458
7.79012299 0.405734098389458
7.79317522 0.402942898389458
7.79621506 0.399920098389458
7.79928637 0.398285298389458
7.80234575 0.396044898389458
7.80542183 0.394055698389458
7.80850029 0.391772898389458
7.81158161 0.390067298389458
7.81467962 0.387818898389458
7.81778097 0.385452898389458
7.82088423 0.382290098389458
7.82400465 0.380210098389458
7.82712746 0.377720498389458
7.83025312 0.375316898389458
7.83339596 0.372908498389458
7.83652687 0.370708098389458
7.83967447 0.368110098389458
7.84283972 0.365290898389458
7.84599257 0.363111298389458
7.84916353 0.360150898389458
7.85233593 0.357358498389458
7.85552645 0.354880098389458
7.85871983 0.352119698389458
7.86191511 0.348837298389458
7.86511374 0.345962098389458
7.86832952 0.342442498389458
7.87154818 0.340040898389458
7.87476921 0.337241698389458
7.87799311 0.334465698389458
7.88123417 0.331460098389458
7.88447857 0.329004498389458
7.88772535 0.326027298389458
7.89098978 0.322916098389458
7.89425755 0.319540498389458
7.89752769 0.316738498389458
7.9008007 0.314084098389458
7.90409088 0.311810098389458
7.90738392 0.309446098389458
7.91068029 0.307140898389458
7.91399431 0.304106098389458
7.91729593 0.301492098389458
7.92061567 0.298506898389458
7.92395306 0.296130098389458
7.92727852 0.293153298389458
7.9306221 0.290319698389458
7.93396759 0.288179698389458
7.93731737 0.285890498389458
7.94068384 0.283201698389458
7.94405365 0.280762098389458
7.94742632 0.278813298389458
7.95080233 0.275940498389458
7.95419645 0.273586098389458
7.95759249 0.270887298389458
7.96099281 0.268601698389458
7.96439552 0.266184898389458
7.96781635 0.263566898389458
7.97124052 0.261264098389458
7.97466707 0.258779698389458
7.97809696 0.256287698389458
7.98154497 0.253673298389458
7.98499632 0.251136498389458
7.98845053 0.248524498389458
7.99192333 0.246064498389458
7.99538374 0.243000498389458
7.99886274 0.240316498389458
8.00234413 0.237296498389458
8.00584507 0.235004498389458
8.00933361 0.232504498389458
8.01283932 0.230012498389458
8.01634979 0.227616498389458
8.01987839 0.225064498389458
8.02339363 0.222080498389458
8.0269289 0.219612498389458
8.03046703 0.216904498389458
8.03400803 0.214364498389458
8.03756714 0.211776498389458
8.04113007 0.208740498389458
8.04469585 0.205852498389458
8.04826546 0.203108498389458
8.05183792 0.199920498389458
8.05542946 0.197300498389458
8.05902481 0.194796498389458
8.06262207 0.191452498389458
8.06623936 0.188580498389458
8.06984425 0.186156498389458
8.07346725 0.182920498389458
8.07709408 0.180528498389458
8.08072472 0.177624498389458
8.08437443 0.175192498389458
8.08801079 0.172852498389458
8.09166622 0.170144498389458
8.09534168 0.167548498389458
8.09900475 0.164664498389458
8.10268593 0.162172498389458
8.10635567 0.160428498389458
8.11004448 0.158220498389458
8.11375237 0.155584498389458
8.11744785 0.152932498389458
8.12116241 0.150068498389458
8.12488079 0.147552498389458
8.12860298 0.145132498389458
8.13232803 0.142168498389458
8.13607311 0.139104498389458
8.13982105 0.136792498389458
8.14355659 0.134440498389458
8.14732838 0.131940498389458
8.15108681 0.129424498389458
8.15486526 0.126712498389458
8.15863132 0.123936498389458
8.16241646 0.121528498389458
8.16622162 0.118820498389458
8.17001438 0.116136498389458
8.17382622 0.113816498389458
8.17762661 0.111112498389458
8.18144608 0.108304498389458
8.18527031 0.105476498389458
8.18911266 0.102916498389458
8.19294357 0.100232498389458
8.19679356 0.0974764983894583
8.20064735 0.0947964983894583
8.20450592 0.0918764983894583
8.20838356 0.0887204983894583
8.2122488 0.0866364983894583
8.21613407 0.0835964983894583
8.22002316 0.0806604983894583
8.22391605 0.0781204983894583
8.22781181 0.0752724983894583
8.23172855 0.0727124983894583
8.23564911 0.0701444983894583
8.23955727 0.0672524983894583
8.24348545 0.0645684983894583
8.24743271 0.0621124983894584
8.25136852 0.0591364983894583
8.25532436 0.0568404983894583
8.25926781 0.0542844983894583
8.26323223 0.0516004983894583
8.26721573 0.0487284983894583
8.27118778 0.0462804983894583
8.2751627 0.0435484983894582
8.27915859 0.0409284983894583
8.2831583 0.0384084983894583
8.28716183 0.0361284983894583
8.29116917 0.0335084983894584
8.29519749 0.0306284983894583
8.29921341 0.0281524983894583
8.30324936 0.0252244983894583
8.30728912 0.0225844983894583
8.31133366 0.0201124983894584
8.315382 0.0170924983894583
8.31943417 0.0144364983894583
8.32350731 0.0116324983894583
8.32758427 0.00902449838945829
8.33166504 0.00640849838945829
8.33575058 0.00384049838945835
8.33983994 0.00111649838945826
8.34393311 -0.00127150161054175
8.34804726 -0.00401950161054163
8.35216618 -0.00691550161054169
8.35627174 -0.00932750161054168
8.36041546 -0.0118635016105417
8.36454678 -0.0149875016105417
8.36868191 -0.0176635016105417
8.37283802 -0.0202675016105417
8.37698174 -0.0227275016105416
8.38114548 -0.0255075016105417
8.38531494 -0.0278755016105417
8.38948822 -0.0304195016105417
8.39366531 -0.0334595016105417
8.39786434 -0.0361035016105417
8.40205002 -0.0388035016105417
8.40625763 -0.0414155016105417
8.4104681 -0.0438995016105417
8.4146843 -0.0466515016105417
8.4189043 -0.0490795016105417
8.42314625 -0.0518115016105417
8.42737484 -0.0546515016105417
8.43162537 -0.0572195016105416
8.43586254 -0.0599475016105417
8.44012165 -0.0628395016105417
8.44438553 -0.0653515016105417
8.44867039 -0.0681035016105417
8.45294285 -0.0709435016105417
8.45722008 -0.0734315016105417
8.46151829 -0.0759235016105417
8.46582127 -0.0787675016105417
8.47012806 -0.0814155016105417
8.47444057 -0.0839915016105417
8.4787569 -0.0865595016105416
8.48307705 -0.0896235016105416
8.48742008 -0.0921595016105417
8.49174976 -0.0945955016105417
8.49610138 -0.0972515016105417
8.50045872 -0.0998435016105416
8.50480175 -0.102287501610542
8.50918484 -0.105159501610542
8.51355457 -0.107935501610542
8.51792908 -0.110683501610542
8.52232647 -0.113435501610542
8.52671051 -0.115767501610542
8.53111649 -0.118399501610542
8.53552723 -0.121263501610542
8.53994274 -0.124015501610542
8.54436302 -0.126567501610542
8.54878807 -0.128851501610542
8.55321693 -0.131259501610542
8.55766964 -0.134259501610542
8.56210804 -0.136947501610542
8.56656933 -0.139703501610542
8.57103539 -0.142195501610542
8.57550621 -0.144707501610542
8.5799818 -0.147199501610542
8.58446217 -0.149699501610542
8.58894825 -0.152459501610542
8.59345531 -0.154903501610542
8.59794998 -0.157759501610542
8.60246754 -0.160291501610542
8.60698986 -0.162655501610542
8.61149979 -0.165463501610542
8.61603165 -0.168275501610542
8.62056828 -0.171131501610542
8.62512875 -0.173671501610542
8.62967491 -0.176155501610542
8.6342268 -0.178579501610542
8.63880062 -0.181339501610542
#
#

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 376 KiB

View File

@ -0,0 +1,103 @@
import sys
sys.path.insert(0,"../../../")
import collections
import os
import numpy as np
import matplotlib.pyplot as plt
import dispersiveXanes_utils as utils
import xppl37_spectra
import xanes_analyzeRun
import trx
import datastorage as ds
nice_colors = ["#1b9e77", "#d95f02", "#7570b3"]
nice_colors = "#1f78b4 #a6cee3 #b2df8a #33a02c".split()
gradual_colors = ['#014636', '#016c59', '#02818a', '#3690c0', '#67a9cf', '#a6bddb', '#d0d1e6']#, '#ece2f0']
def get_data(run,threshold=0.02,force=False):
if run == 80:
refCalibs=slice(1,None,2)
elif run == 84:
refCalibs=slice(None,None,2)
elif run == 76:
refCalibs=slice(None,None)
else:
refCalibs=slice(None,None,2)
fname = "../data/fig_fel_modes_run%04d.h5" % run
if not os.path.isfile(fname) or force:
r = xanes_analyzeRun.AnalyzeRun(run=run)
r.load()
E = r.E
calibs = list(r.results.keys())
calibs.sort()
calibs = calibs[refCalibs]
p1 = np.vstack( [r.results[c].p1 for c in calibs] )
p2 = np.vstack( [r.results[c].p2 for c in calibs] )
#temp = ds.DataStorage( E=E,p1=p1.astype(np.float16),p2=p2.astype(np.float16))
temp = ds.DataStorage( E=E,p1=p1,p2=p2)
_,_,Abs = xppl37_spectra.calcAbs( temp, threshold=0.02 )
temp.Abs = Abs #.astype(np.float16)
temp.info="Abs calculated with threshold = 0.02"
temp.save(fname)
data = ds.read(fname)
# nan is saved as -1 for masked arrays
for k in data.keys():
try:
data[k][data[k]==-1] =np.nan
except (TypeError,AttributeError):
pass
print("Run %d → nshots = %d"%(run,len(data.p1)))
p1,p2,Abs = xppl37_spectra.calcAbs( data, threshold=threshold )
data.Abs = Abs
return data
def fig_fel_modes(shots_per_run = slice(10,13),showAv=True,force=False,threshold=0.02,smootWidth=0.3):
runs = [28,39,54,76,80,84]
runs = [80,76,84]
#runs = [28,54,76,80,84]
figsize = [6,8]
fig,axes = plt.subplots( len(runs),2 , sharex=True, sharey=True,figsize=figsize)
#fig,axes = plt.subplots( 2,len(runs) , sharex=True, sharey='row')
#axes = axes.T
for run,ax in zip(runs,axes):
data = get_data(run,threshold=threshold,force=force)
E = data.E
s2 = data.p2[shots_per_run]
s1 = data.p1[shots_per_run]
norm = s2.max()*1.1
if showAv: ax[0].fill_between(E,0,data.p2.mean(0)/norm,color='#d95f0e',alpha=0.4)
for ispectrum,(spectrum1,spectrum2,a) in enumerate(zip(s1,s2,data.Abs)):
c = nice_colors[ispectrum]
ax[0].axhline(ispectrum,ls='--',lw=0.5,color=c)
# ax[1].axhline(ispectrum,ls='--',lw=0.5,color=c)
ax[0].plot(E,spectrum1/norm+ispectrum,lw=2,color=c)
ax[1].axhline(0.25+ispectrum,ls='--',lw=1,color=c)
# smooth does not work with nan's...
#if smootWidth > 0:
# a = xppl37_spectra.smoothSpectra(E,a,res=smootWidth)[0]
ax[1].plot(E,a+0.25+ispectrum,lw=2,color=c)
noise = np.nanstd(a)
ax[1].text(7135,0.4+ispectrum,"σ = %.2f"%noise)
ax[0].set_ylabel("Spectrum (a.u.) (run %d)"%run)
ax[1].set_ylabel("Absorption (run %d)"%run)
ax[0].grid(color="0.8",lw=0.5)
ax[1].grid(axis='x',color="0.8",lw=0.5)
tosave = np.vstack( (data.p2.mean(0)/norm,s2/norm) )
trx.utils.saveTxt("../data/fig_fel_modes_run%04d_spectra.txt"%run,E,tosave,info="E average_spectrum spectra")
trx.utils.saveTxt("../data/fig_fel_modes_run%04d_abs.txt"%run,E,data.Abs[shots_per_run],info="# threshold = %.2f\n# E Abs"%threshold)
axes[0,0].set_yticks(())
ax[0].set_xlim(7070,7180)
ax[0].set_ylim(-0.2,3.2)
axes[-1,0].set_xlabel("Energy (keV)")
axes[-1,1].set_xlabel("Energy (keV)")
#plt.subplots_adjust(left=0.07,right=0.95
plt.tight_layout()
plt.savefig("fig_fel_modes.png",transparent=True,dpi=300)
plt.savefig("fig_fel_modes.pdf",transparent=True)
if __name__ == "__main__": fig_fel_modes()

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 KiB

View File

@ -0,0 +1,144 @@
import sys
sys.path.insert(0,"../../../")
import collections
import os
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import gridspec
import dispersiveXanes_utils as utils
import xppl37_spectra
import xanes_analyzeRun
import mcutils as mc
import trx
import datastorage as ds
nice_colors = ["#1b9e77", "#d95f02", "#7570b3"]
nice_colors = "#1f78b4 #a6cee3 #b2df8a #33a02c".split()
gradual_colors = ['#014636', '#016c59', '#02818a', '#3690c0', '#67a9cf', '#a6bddb', '#d0d1e6']#, '#ece2f0']
def get_data(run=82,calib=1,threshold=0.02,force=False):
fname = "../data/fig_fe_xas_run%04d.h5" % run
if not os.path.isfile(fname) or force:
E,p1,p2,Abs=xppl37_spectra.calcAbsForRun(run,merge_calibs=True,threshold=threshold)
temp = ds.DataStorage( E=E,p1=p1,p2=p2,Abs=Abs)
temp.info="Abs calculated with threshold = %.3f" % threshold
temp.save(fname)
data = ds.read(fname)
# nan is saved as -1 for masked arrays
for k in data.keys():
try:
data[k][data[k]==-1] =np.nan
except TypeError:
pass
return data
def get_ref():
E,data=np.loadtxt("../data/Fe_ref.txt",unpack=True)
return ds.DataStorage(E=E*1e3,data=data/2.05+0.07)
def get_1b():
E,data=np.loadtxt("../data/Fe_1bunch.txt",unpack=True)
return ds.DataStorage(E=E*1e3,data=data/2.05+0.07)
def fig_fe_xas(run=82,shots = slice(100,105),showAv=True,force=False,threshold=0.02,smoothWidth=0.3):
ref = get_ref()
color_ss = '#08519c'
color_av = '#238b45'
color_av_all = '#d95f0e'
shifty = 1
data = get_data(run,force=force)
E = data.E;p1=data.p1;p2=data.p2;Abs=data.Abs
p1_sum = p1.sum(-1)
p1_av = np.nanmean(p1,axis=0)
p2_av = np.nanmean(p2,axis=0)
# somehow nanmedian screws up when array is too big ... so using nanmean
abs_av = np.nanmean(Abs,axis=0)
n = 2**np.arange(4)
av = np.nanmedian(Abs[:],0)
av = xppl37_spectra.smoothSpectra(E,av,res=smoothWidth)
for ni in n:
aa = np.nanmedian(Abs[:ni],0)
aa = xppl37_spectra.smoothSpectra(E,aa,res=smoothWidth)
print(ni,np.nanstd(aa-av))
p1 = p1[shots]; p2=p2[shots]; Abs = Abs[shots]
if smoothWidth > 0:
Abs = xppl37_spectra.smoothSpectra(E,Abs,res=smoothWidth)
idx = E< 7080
Abs[:,idx]=np.nan
#fig,ax = plt.subplots(1,3,sharex=True,sharey=False,squeeze=False,figsize=[6,4])
figure = plt.figure(figsize = [7,5])
gs = gridspec.GridSpec(1, 3, width_ratios=[1, 1, 1.5],)
ax = []
ax.append( plt.subplot(gs[0]) )
ax.append( plt.subplot(gs[1],sharex=ax[0],sharey=ax[0]) )
ax.append( plt.subplot(gs[2],sharex=ax[0]) )
#ax = ax[0]
normalization = np.nanmax( p1 )
to_save = []
for ishot,(s1,s2,a) in enumerate(zip(p1,p2,Abs)):
s1_norm = s1/normalization
s2_norm = s2/normalization
ax[0].axhline(ishot*shifty,ls='--',color="0.9")
ax[1].axhline(ishot*shifty,ls='--',color=color_ss)
if showAv:
ax[1].plot(E,np.nanmedian(Abs,0)+ishot*shifty,color=color_av_all,lw=1,zorder=10,alpha=0.8)
ax[0].plot(E,s1_norm+ishot*shifty,ls = '-' ,color='0.8',lw=2)
ax[0].plot(E,s2_norm+ishot*shifty,ls = '-' ,color='0.3',lw=2)
ax[1].plot(E,a+ishot*shifty,color=color_ss,lw=2)
#ax[1].plot(ref.E,ref.data+ishot*shifty,color=color_av_all,lw=2,zorder=100)
to_save.append(s1_norm)
to_save.append(s2_norm)
to_save.append(a)
ax[0].set_title("Run %s"%str(run))
ax[1].set_ylabel("Sample Absorption")
ax[0].set_ylabel("Normalized Spectra")
ax[2].plot(E,xppl37_spectra.smoothSpectra(E,Abs[-1],res=smoothWidth)[0],color=color_ss,label="1 shot LCLS")
ax[2].plot(E,xppl37_spectra.smoothSpectra(E,np.nanmedian(Abs,axis=0),res=smoothWidth)[0],color=color_av_all,label="5 shots LCLS")
ref = get_1b()
ax[2].plot(ref.E,ref.data-0.05,color=nice_colors[-2],label="1 shot ESRF")
ref = get_ref()
ax[2].plot(ref.E,ref.data-0.05,color=nice_colors[-1],label="ref ESRF")
ax[2].legend()
ref = get_1b()
rr = mc.interpolate(ref.E,ref.data,E)
to_save.insert(0,rr)
ref = get_ref()
rr = mc.interpolate(ref.E,ref.data,E)
to_save.insert(1,rr)
to_save.insert(2,xppl37_spectra.smoothSpectra(E,np.nanmedian(Abs,axis=0),res=smoothWidth)[0])
to_save = np.vstack(to_save)
info = "# threshold=%.2f; smoothWidth=%.2f eV" %(threshold,smoothWidth)
info += "\n#E esrf_1b esrf_ref abs_average_over_shots nshots x (spectro1 spectro2 abs)"
trx.utils.saveTxt("../data/fig_fe_xas_spectra_run%04d.txt"%run,E,to_save,info=info)
ax[0].set_xlabel("Energy (keV)")
ax[1].set_xlabel("Energy (keV)")
ax[2].set_xlabel("Energy (keV)")
ax[0].grid(axis='x',color="0.7",lw=0.5)
ax[1].grid(axis='x',color="0.7",lw=0.5)
ax[0].set_xlim(7070,7180)
ax[1].set_xlim(7070,7180)
ax[2].set_xlim(7090,7180)
ax[0].set_yticks( () )
ax[1].set_yticks( () )
ax[2].set_yticks( () )
ax[0].set_ylim(-0.1,len(Abs)+0.2)
ax[1].set_ylim(-0.1,len(Abs)+0.2)
ax[2].set_ylim(0,0.7)
ax[2].grid(color="0.7",lw=0.5)
plt.tight_layout()
plt.savefig("fig_fe_xas.png",transparent=True,dpi=300)
plt.savefig("fig_fe_xas.pdf",transparent=True)
#if __name__ == "__main__": fig_fe_xas()

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 346 KiB

View File

@ -0,0 +1,151 @@
import sys
sys.path.insert(0,"../../../")
import collections
import os
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import gridspec
import dispersiveXanes_utils as utils
import xppl37_spectra
import xanes_analyzeRun
import mcutils as mc
import trx
import datastorage as ds
nice_colors = ["#1b9e77", "#d95f02", "#7570b3"]
nice_colors = "#1f78b4 #a6cee3 #b2df8a #33a02c".split()
gradual_colors = ['#014636', '#016c59', '#02818a', '#3690c0', '#67a9cf', '#a6bddb', '#d0d1e6']#, '#ece2f0']
gradual_colors="#fec44f #fe9929 #ec7014 #cc4c02 #8c2d04".split()
def get_data(runs=(155,156),threshold=0.02,force=False):
run_hash = "_".join(map(str,runs))
fname = "../data/fig_fe_xas_runs_%s.h5" % run_hash
if not os.path.isfile(fname) or force:
E,p1,p2,Abs=xppl37_spectra.calcAbsForRun(runs,merge_calibs=True,threshold=threshold)
temp = ds.DataStorage( E=E,p1=p1,p2=p2,Abs=Abs)
temp.info="Abs calculated with threshold = %.3f" % threshold
temp.save(fname)
data = ds.read(fname)
# nan is saved as -1 for masked arrays
for k in data.keys():
try:
data[k][data[k]==-1] =np.nan
except TypeError:
pass
# for runs 155,156 the vernier stopped working after shots ~ 2000
if runs == (155,156):
data.p1=data.p1[:2000]
data.p2=data.p2[:2000]
data.Abs=data.Abs[:2000]
return data
def get_ref():
E,data=np.loadtxt("../data/Fe_ref.txt",unpack=True)
return ds.DataStorage(E=E*1e3,data=data/2.05+0.07)
def get_1b():
E,data=np.loadtxt("../data/Fe_1bunch.txt",unpack=True)
return ds.DataStorage(E=E*1e3,data=data/2.05+0.07)
def fig_fe_exas(run=(155,156),first=7,period=70,nSpectra=5,force=False,threshold=0.1,smoothWidth=1.0,i0_filter=0.1):
ref = get_ref()
color_ss = '#08519c'
color_av = '#238b45'
color_av_all = '#d95f0e'
shifty = 1
data = get_data(run,force=force)
E = data.E;p1=data.p1;p2=data.p2;Abs=data.Abs
E = (E-7100)*1.938+7133
p1_sum = p1.sum(-1)
if i0_filter is not None:
m = np.percentile(p1_sum,i0_filter*100)
idx = p1_sum>m
p1=p1[idx]
p2=p2[idx]
Abs=Abs[idx]
print(idx.sum(),idx.shape[0])
p1_av = np.nanmean(p1,axis=0)
p2_av = np.nanmean(p2,axis=0)
shots = slice(first,None,period)
p1 = p1[shots]; p2=p2[shots]; Abs = Abs[shots]
if smoothWidth > 0:
Abs = xppl37_spectra.smoothSpectra(E,Abs,res=smoothWidth)
figure = plt.figure(figsize = [8,5])
gs = gridspec.GridSpec(1, 3, width_ratios=[1, 1, 1.5],wspace=0.15,right=0.97,left=0.05)
ax = []
ax.append( plt.subplot(gs[0]) )
ax.append( plt.subplot(gs[1],sharex=ax[0],sharey=ax[0]) )
ax.append( plt.subplot(gs[2],sharex=ax[0]) )
#fig,ax = plt.subplots(1,3,sharex=True,sharey=True,squeeze=False,figsize=[6,8])
#ax = ax[0]
normalization = np.nanmax( p1[:nSpectra] )
to_save = []
ref = get_ref()
for ishot,(s1,s2,a) in enumerate(zip(p1[:nSpectra],p2[:nSpectra],Abs[:nSpectra])):
s1_norm = s1/normalization
s2_norm = s2/normalization
ax[0].axhline(ishot*shifty,ls='--',color="0.9")
ax[1].axhline(ishot*shifty,ls='--',color=color_ss)
ax[1].plot(E,np.nanmedian(Abs[:nSpectra],0)+ishot*shifty,color=color_av_all,lw=2,zorder=10,alpha=0.8)
ax[0].plot(E,s1_norm+ishot*shifty,ls = '-' ,color='0.8',lw=2)
ax[0].plot(E,s2_norm+ishot*shifty,ls = '-' ,color='0.3',lw=2)
ax[1].plot(E,a+ishot*shifty,color=color_ss,lw=2)
to_save.append(s1_norm)
to_save.append(s2_norm)
to_save.append(a)
ax[1].plot(ref.E,ref.data+ishot*shifty,color=nice_colors[-2],lw=2,zorder=100)
nmax = int(np.floor(np.log(len(Abs))/np.log(2)))+1
print(nmax)
n = 2**np.arange(nmax)
for i,ni in enumerate(n):
ax[2].plot(E,np.nanmedian(Abs[:ni],axis=0)+(len(n)-i)*0.2,color=gradual_colors[i],label = "%d shots"%ni)
to_save.insert(i,np.nanmedian(Abs[:ni],axis=0))
ax[2].plot(ref.E,ref.data,color=nice_colors[-2],lw=2,zorder=100,label="ref ESRF")
ax[2].legend()
ax[0].set_title("Run %s"%str(run))
ax[1].set_ylabel("Sample Absorption")
ax[2].set_ylabel("Sample Absorption")
ax[0].set_ylabel("Normalized Spectra")
to_save.insert(i+1,np.nanmedian(Abs[:nSpectra],axis=0))
ref = get_1b()
rr = mc.interpolate(ref.E,ref.data,E)
to_save.insert(0,rr)
ref = get_ref()
rr = mc.interpolate(ref.E,ref.data,E)
to_save.insert(1,rr)
to_save = np.vstack(to_save)
info = "# threshold=%.2f; smoothWidth=%.2f eV" %(threshold,smoothWidth)
info += "\n#E esrf_1b esrf_ref "+" ".join(["av_%d_shots"%ni for ni in n]) +" av_%d_shots " % nSpectra + "+ nshots x (spectro1 spectro2 abs)"
run_hash = "_".join(map(str,run))
trx.utils.saveTxt("../data/fig_fe_exas_spectra_runs_%s.txt"%run_hash,E,to_save,info=info)
ax[0].set_xlabel("Energy (keV)")
ax[1].set_xlabel("Energy (keV)")
ax[2].set_xlabel("Energy (keV)")
ax[0].grid(axis='x',color="0.7",lw=0.5)
ax[1].grid(axis='x',color="0.7",lw=0.5)
ax[2].grid(color="0.7",lw=0.5)
ax[0].set_xlim(7060,7300)
ax[0].set_yticks( () )
ax[1].set_yticks( () )
ax[2].set_yticks( () )
ax[0].set_ylim(-0.1,nSpectra+0.2)
ax[1].set_ylim(-0.1,nSpectra+0.2)
ax[2].set_ylim(-0.1,1.7)
#ax[2].grid(color="0.7",lw=0.5)
#plt.tight_layout()
plt.savefig("fig_fe_exas.png",transparent=True,dpi=300)
plt.savefig("fig_fe_exas.pdf",transparent=True)
#if __name__ == "__main__": fig_fe_xas()

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 KiB

View File

@ -0,0 +1,136 @@
import sys
sys.path.insert(0,"../../../")
import collections
import os
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import gridspec
import dispersiveXanes_utils as utils
import xppl37_spectra
import xanes_analyzeRun
import mcutils as mc
import trx
import datastorage as ds
nice_colors = ["#1b9e77", "#d95f02", "#7570b3"]
nice_colors = "#1f78b4 #a6cee3 #b2df8a #33a02c".split()
gradual_colors = ['#014636', '#016c59', '#02818a', '#3690c0', '#67a9cf', '#a6bddb', '#d0d1e6']#, '#ece2f0']
def get_data(run=127,threshold=0.05,force=False):
fname = "../data/fig_focusing_run%04d.h5" % run
if not os.path.isfile(fname) or force:
# this functions splits the run based on FOM
data=xppl37_spectra.calcSpectraForRun(run)
E = data.run.E
ref = ds.DataStorage(E=E, p1=data.p1[0],p2=data.p2[0] )
sample = ds.DataStorage(E=E, p1=data.p1[1],p2=data.p2[1] )
_,_,Abs = xppl37_spectra.calcAbs(ref,ref,threshold=threshold)
ref.Abs = Abs
_,_,Abs = xppl37_spectra.calcAbs(ref,sample,threshold=threshold)
sample.Abs = Abs
temp = ds.DataStorage( ref=ref,sample=sample)
temp.info="Abs calculated with threshold = %.3f" % threshold
temp.save(fname)
data = ds.read(fname)
ref = data.ref
sample = data.sample
_,_,Abs = xppl37_spectra.calcAbs(ref,ref,threshold=threshold)
ref.Abs = Abs
_,_,Abs = xppl37_spectra.calcAbs(ref,sample,threshold=threshold)
sample.Abs = Abs
data = ds.DataStorage( ref=ref,sample=sample)
data["threshold"]=threshold
return data
def get_ref():
E,data=np.loadtxt("../data/Fe_ref.txt",unpack=True)
return ds.DataStorage(E=E*1e3,data=data/2.05+0.07)
def get_1b():
E,data=np.loadtxt("../data/Fe_1bunch.txt",unpack=True)
return ds.DataStorage(E=E*1e3,data=data/2.05+0.07)
def fig_focusing(run=127,force=False,threshold=0.05,smoothWidth=0.3,i0_monitor=0.1):
ref = get_ref()
color_ss = '#08519c'
color_av = '#238b45'
color_av_all = '#d95f0e'
shifty = 1
data = get_data(run,force=force,threshold=threshold)
E = data.ref.E
shots = range(30,35)
figure = plt.figure(figsize = [7,5])
gs = gridspec.GridSpec(1, 2, width_ratios=[1, 1],)
ax = []
ax.append( plt.subplot(gs[0]) )
ax.append( plt.subplot(gs[1],sharex=ax[0],sharey=ax[0]) )
# ax.append( plt.subplot(gs[2],sharex=ax[0]) )
if i0_monitor is not None:
i0_ref = np.nanmean(data.ref.p1,axis=1)
idx = i0_ref>np.percentile(i0_ref,i0_monitor)
data.ref.Abs = data.ref.Abs[idx]
i0_ref = np.nanmean(data.sample.p1,axis=1)
idx = i0_ref>np.percentile(i0_ref,i0_monitor)
data.sample.Abs = data.sample.Abs[idx]
ref = data.ref.Abs[shots]
sam = data.sample.Abs[shots]
if smoothWidth > 0:
ref = xppl37_spectra.smoothSpectra(E,ref,res=smoothWidth)
sam = xppl37_spectra.smoothSpectra(E,sam,res=smoothWidth)
idx = E>7150
sam[:,idx]=np.nan
ref[:,idx]=np.nan
av_ref = np.nanmedian(ref,0)
av_sam = np.nanmedian(sam,0)
for ishot,shot in enumerate(shots):
ax[0].axhline(ishot*shifty,ls='--',color="0.9")
ax[1].axhline(ishot*shifty,ls='--',color="0.9")
ax[0].plot(E,av_ref+ishot*shifty,color=color_av_all,lw=1,zorder=10)
ax[1].plot(E,av_sam+ishot*shifty,color=color_av_all,lw=1,zorder=10)
ax[0].plot(E,ref[ishot]+ishot*shifty,ls = '-' ,color=color_ss,lw=2)
ax[0].text(7125,ishot+0.2,"σ = %.2f"%np.nanstd(ref[ishot]))
ax[1].plot(E,sam[ishot]+ishot*shifty,ls = '-' ,color=color_ss,lw=2)
#to_save.append(s1_norm)
#to_save.append(s2_norm)
#to_save.append(a)
ax[0].set_title("Run %s"%str(run))
ax[0].set_ylabel("No sample Absorption")
ax[1].set_ylabel("Sample Absorption")
ax[0].set_xlabel("Energy (keV)")
ax[1].set_xlabel("Energy (keV)")
ax[0].grid(axis='x',color="0.7",lw=0.5)
ax[1].grid(axis='x',color="0.7",lw=0.5)
ax[0].set_xlim(7080,7150)
ax[0].set_yticks( () )
ax[1].set_yticks( () )
ax[0].set_ylim(-0.3,len(ref)+0.2)
plt.tight_layout()
plt.savefig("fig_focusing.png",transparent=True,dpi=300)
plt.savefig("fig_focusing.pdf",transparent=True)
to_save = np.vstack( (E,np.nanmedian(ref,0),ref) )
info = "# threshold=%.2f; smoothWidth=%.2f eV" %(threshold,smoothWidth)
info += "\n#E abs_average_over_shots shots ..."
trx.utils.saveTxt("../data/fig_focusing_run%04d_ref.txt"%run,E,to_save,info=info)
to_save = np.vstack( (E,np.nanmedian(sam,0),sam) )
info = "# threshold=%.2f; smoothWidth=%.2f eV" %(threshold,smoothWidth)
info += "\n#E abs_average_over_shots shots ..."
trx.utils.saveTxt("../data/fig_focusing_run%04d_sam.txt"%run,E,to_save,info=info)
#if __name__ == "__main__": fig_fe_xas()