EnglishFrenchSpanish

เรียกใช้เซิร์ฟเวอร์ | Ubuntu > | Fedora > |


ไอคอน Fav ของ OnWorks

funtable - ออนไลน์ในคลาวด์

เรียกใช้ funtable ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง funtable ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


funtable - คัดลอกแถวที่เลือกจากไฟล์ Funtools ไปยังตารางไบนารี FITS

เรื่องย่อ


สนุกได้ [-a] [-i⎪-z] [-m] [-s cols] [คอลัมน์]

OPTIONS


-a # ต่อท้ายไฟล์เอาต์พุตที่มีอยู่เป็นนามสกุลตาราง
-i # สำหรับข้อมูลภาพ สร้างเฉพาะคอลัมน์ X และ Y
-m # สำหรับตาราง ให้เขียนไฟล์แยกกันสำหรับแต่ละภูมิภาค
-s "col1 ... " # คอลัมน์ที่จะเรียงลำดับ
-z # สำหรับข้อมูลภาพ ส่งออกพิกเซลที่มีค่าเป็นศูนย์

DESCRIPTION


สนุกได้ เลือกแถวจากส่วนขยาย FITS ที่ระบุ (ตารางไบนารีเท่านั้น) ของ FITS
ไฟล์หรือจากไฟล์เหตุการณ์ดิบที่ไม่ใช่ FITS และเขียนแถวเหล่านั้นลงในตารางไบนารี FITS
ไฟล์. นอกจากนี้ยังจะสร้างตารางไบนารี FITS จากรูปภาพหรือไฟล์อาร์เรย์ดิบ

อาร์กิวเมนต์แรกของโปรแกรมระบุไฟล์ FITS ไฟล์เหตุการณ์ดิบ หรืออาร์เรย์ดิบ
ไฟล์. หากระบุ "stdin" ข้อมูลจะถูกอ่านจากอินพุตมาตรฐาน ใช้ Funtools
เครื่องหมายวงเล็บเพื่อระบุส่วนขยายและตัวกรอง FITS อาร์กิวเมนต์ที่สองคือ
ไฟล์เอาต์พุต FITS หากระบุ "stdout" ตารางไบนารี FITS จะถูกเขียนไปที่
เอาต์พุตมาตรฐาน ตามค่าเริ่มต้น คอลัมน์ทั้งหมดของไฟล์อินพุตจะถูกคัดลอกไปยังไฟล์เอาต์พุต
คอลัมน์ที่เลือกสามารถแสดงผลได้โดยใช้อาร์กิวเมนต์ที่สามที่เป็นทางเลือกในรูปแบบ:

"คอลัมน์1 คอลัมน์1 ... คอลัมน์N"

พื้นที่ปลูก สนุกได้ โดยทั่วไปโปรแกรมจะใช้เพื่อเลือกแถวจากตารางไบนารี FIT โดยใช้ Table
ตัวกรองและ/หรือตัวกรองพื้นที่เชิงพื้นที่ ตัวอย่างเช่น คุณสามารถคัดลอกเฉพาะแถวที่เลือก (และ
เอาต์พุตเฉพาะคอลัมน์ที่เลือก) โดยดำเนินการในคำสั่งเช่น:

[sh] funtable "test.ev[pha==1&&pi==10]" stdout "xy pi pha" ⎪ fundisp stdin
XY ผาปี่
------- ------- ------- ---------
1 10 1 10
1 10 1 10
1 10 1 10
1 10 1 10
1 10 1 10
1 10 1 10
1 10 1 10
1 10 1 10
1 10 1 10
1 10 1 10

คอลัมน์พิเศษ $REGION สามารถระบุให้เขียนรหัสภูมิภาคของแต่ละแถวได้:

[sh $] funtable "test.ev[time-(int)time>=.99&&annulus(0 0 0 10 n=3)]" stdout 'xy เวลา $REGION' ⎪ fundisp stdin
เขตเวลา XY
-------- -------- --------------------- ----------
5 -6 40.99000000 3
4 -5 59.99000000 2
-1 0 154.99000000 1
-2 1 168.99000000 1
-3 2 183.99000000 2
-4 3 199.99000000 2
-5 4 216.99000000 2
-6 5 234.99000000 3
-7 6 253.99000000 3

เฉพาะแถวที่มีเวลาเศษส่วนที่เหมาะสมและตำแหน่งอยู่ใน
สามปีถูกเขียน

คอลัมน์สามารถแยกออกจากการแสดงผลได้โดยใช้เครื่องหมายลบก่อนคอลัมน์:

[sh $] funtable "test.ev[time-(int)time>=.99]" stdout "-time" ⎪ fundisp stdin
XY PHA PI DX DY
-------- -------- -------- ---------- ----------- ----- ------
5 -6 5 -6 5.50 -6.50
4 -5 4 -5 4.50 -5.50
-1 0 -1 0 -1.50 0.50
-2 1 -2 1 -2.50 1.50
-3 2 -3 2 -3.50 2.50
-4 3 -4 3 -4.50 3.50
-5 4 -5 4 -5.50 4.50
-6 5 -6 5 -6.50 5.50
-7 6 -7 6 -7.50 6.50

เขียนคอลัมน์ทั้งหมดยกเว้นคอลัมน์เวลา

โดยทั่วไป กฎสำหรับการเปิดใช้งานและปิดใช้งานคอลัมน์คือ:

· หากระบุเฉพาะคอลัมน์ที่ยกเว้น คอลัมน์ทั้งหมดยกเว้นคอลัมน์ที่แยกจะ
ถูกเปิดใช้งาน

· หากระบุเฉพาะคอลัมน์ คอลัมน์ที่ระบุเท่านั้นที่เปิดใช้งาน

· หากมีการระบุคอลัมน์ที่รวมและไม่รวมไว้ ให้ทั้งหมดยกเว้นยกเว้น
คอลัมน์จะเปิดใช้งาน กรณีสุดท้ายนี้มีความคลุมเครือและกฎเกณฑ์เป็นไปโดยพลการ

นอกจากการระบุชื่อคอลัมน์อย่างชัดเจนแล้ว สัญลักษณ์พิเศษ + และ - เป็นไปได้
ใช้เพื่อเปิดใช้งานและปิดใช้งาน ทั้งหมด คอลัมน์ สิ่งนี้มีประโยชน์หากคุณต้องการเปิดใช้งาน
คอลัมน์ $REGION พร้อมกับคอลัมน์อื่นๆ ทั้งหมด ตามกฎแล้ว ไวยากรณ์ "$REGION"
เปิดใช้งานเฉพาะคอลัมน์ภูมิภาคและปิดใช้งานส่วนที่เหลือ ใช้ "+ $REGION" เพื่อเปิดใช้งาน
คอลัมน์ทั้งหมดและคอลัมน์ภูมิภาค

โดยปกติ เฉพาะตารางที่เลือกเท่านั้นที่จะถูกคัดลอกไปยังไฟล์เอาต์พุต ในตารางไบนารีของ FITS
บางครั้งขอแนะนำให้คัดลอกส่วนขยาย FITS อื่น ๆ ทั้งหมดไปยังไฟล์เอาต์พุตเป็น
ดี. ซึ่งสามารถทำได้โดยการต่อท้ายเครื่องหมาย '+' กับชื่อของส่วนขยายในอินพุต
ชื่อไฟล์. ตัวอย่างเช่น คำสั่งแรกด้านล่างคัดลอกเฉพาะตาราง EVENT ในขณะที่
คำสั่งที่สองคัดลอกส่วนขยายอื่น ๆ ด้วย:

[sh] funtable "/proj/rd/data/snr.ev[EVENTS]" events.ev
[sh] funtable "/proj/rd/data/snr.ev[EVENTS+]" eventsandmore.ev

หากไฟล์อินพุตเป็นไฟล์รูปภาพหรือไฟล์อาร์เรย์ดิบ สนุกได้ จะสร้างFITS
ตารางไบนารีจากค่าพิกเซลในภาพ โปรดทราบว่าไม่สามารถระบุได้
คอลัมน์ที่จะส่งออก (โดยใช้อาร์กิวเมนต์บรรทัดคำสั่ง 3) มีสองวิธีในการ
สร้างตารางไบนารีดังกล่าวจากรูปภาพ โดยค่าเริ่มต้น ตาราง 3 คอลัมน์จะถูกสร้างขึ้น โดยที่
คอลัมน์คือ "X", "Y" และ "VALUE" สำหรับแต่ละพิกเซลในภาพ แถวเดียว (เหตุการณ์)
ถูกสร้างขึ้นด้วยคอลัมน์ "X" และ "Y" ที่กำหนดค่า dim1 และ dim2 ของรูปภาพ
พิกเซลตามลำดับและคอลัมน์ "VALUE" กำหนดค่าของพิกเซล ด้วยการเรียงลำดับของ
โต๊ะวิ่ง คนขี้ขลาด ในคอลัมน์ "VALUE" จะให้ผลลัพธ์เหมือนกับการรัน คนขี้ขลาด
บนภาพต้นฉบับ

ถ้า -i ("แต่ละแถว") มีการระบุสวิตช์ จากนั้นเฉพาะคอลัมน์ "X" และ "Y" เท่านั้น
สร้างขึ้น ในกรณีนี้ ค่าพิกเซลบวกแต่ละค่าในรูปภาพจะสร้าง n แถว (เหตุการณ์)
โดยที่ n เท่ากับค่าจำนวนเต็มของพิกเซลนั้น (บวก 0.5 สำหรับจุดลอยตัว
ข้อมูล). ส่งผลกับ, -i ประมาณสร้างแถวของตารางที่น่าจะเป็น
ถูกรวมเข้ากับภาพที่ป้อนเข้า (แน่นอน นี่เป็นเพียงเรื่องที่ถูกต้องเท่านั้น เนื่องจาก
ผลลัพธ์ x,y ตำแหน่งเป็นจำนวนเต็ม)

ถ้า -s [col1 col2 ... คอลัมน์] มีการระบุสวิตช์ ("sort") แถวเอาต์พุตของไบนารี
ตารางจะถูกจัดเรียงโดยใช้คอลัมน์ที่ระบุเป็นคีย์การจัดเรียง คีย์การจัดเรียงต้องเป็น
คอลัมน์สเกลาร์และต้องเป็นส่วนหนึ่งของไฟล์เอาต์พุตด้วย (เช่น คุณไม่สามารถเรียงลำดับในคอลัมน์
แต่ไม่รวมไว้ในเอาต์พุต) สถานที่นี้ใช้ _เรียงลำดับ โปรแกรม (รวมอยู่ใน
funtools) ซึ่งต้องสามารถเข้าถึงได้ผ่านเส้นทางของคุณ

สำหรับตารางไบนารี the -m ("หลายไฟล์") สวิตช์จะสร้างไฟล์แยกต่างหากสำหรับแต่ละไฟล์
ขอบเขตในข้อกำหนดตัวกรอง เช่น แต่ละไฟล์มีเฉพาะแถวจากภูมิภาคนั้น
แถวที่ผ่านตัวกรองแต่ไม่อยู่ในขอบเขตใดๆ จะถูกจัดเก็บไว้ในไฟล์แยกต่างหาก

ชื่อไฟล์เอาต์พุตแยกต่างหากที่สร้างโดย -m สวิตช์ถูกผลิตโดยอัตโนมัติจาก
ไฟล์เอาต์พุตรูทที่มี ID ภูมิภาคของภูมิภาคที่เกี่ยวข้อง (โปรดทราบว่าภูมิภาค
รหัสเริ่มต้นที่ 1 เพื่อให้ชื่อไฟล์ที่เชื่อมโยงกับ id 0 มีแถวที่ผ่าน
กรองแต่ไม่อยู่ในขอบเขตใดๆ) ชื่อไฟล์เอาต์พุตจะถูกสร้างขึ้นดังนี้:

· ข้อมูลจำเพาะ $n สามารถใช้ที่ใดก็ได้ในชื่อไฟล์รูท (อ้างอิงถึง . อย่างเหมาะสม
ปกป้องจากเปลือก) และจะถูกขยายเป็นหมายเลขรหัสของที่เกี่ยวข้อง
ภาค. ตัวอย่างเช่น:

funtable -m input.fits'[cir(512,512,1);cir(520,520,1)...]' 'foo.goo_$n.fits'

จะสร้างไฟล์ชื่อ foo.goo_0.fits (สำหรับแถวที่ไม่ได้อยู่ในภูมิภาคใดแต่ยังคงผ่าน
ตัวกรอง), foo.goo_1.fits (แถวในรหัสภูมิภาค #1, ภูมิภาคแรก), foo.goo_2.fits
(แถวในรหัสภูมิภาค #2) เป็นต้น โปรดทราบว่าจำเป็นต้องมีเครื่องหมายคำพูดเดี่ยวในรูทเอาต์พุต
เพื่อป้องกัน '$' จากเชลล์

· หากไม่ได้ระบุ $n ไว้ รหัสภูมิภาคจะถูกวางไว้หน้าจุดแรก (.) ใน
ชื่อไฟล์ ดังนั้น:

funtable -m input.fits'[cir(512,512,1);cir(520,520,1)...]' foo.evt.fits

จะสร้างไฟล์ชื่อ foo0.evt.fits (สำหรับแถวที่ไม่ได้อยู่ในภูมิภาคใด ๆ แต่ยังคงผ่าน
ตัวกรอง), foo1.evt.fits (แถวในรหัสภูมิภาค #1), foo2.evt.fits (แถวในรหัสภูมิภาค
#2) เป็นต้น

· หากไม่มีการระบุจุดในชื่อไฟล์เอาต์พุตรูท รหัสภูมิภาคจะเป็น
ต่อท้ายชื่อไฟล์ ดังนั้น:

funtable -m input.fits'[cir(512,512,1);cir(520,520,1)...]' 'foo_evt'

จะสร้างไฟล์ชื่อ foo_evt0 (สำหรับแถวที่ไม่ได้อยู่ในภูมิภาคใดแต่ยังคงส่งไฟล์
ตัวกรอง), foo_evt1 (แถวในรหัสภูมิภาค #1), foo_evt2 (แถวในรหัสภูมิภาค #2) เป็นต้น

กลไกไฟล์หลายไฟล์เป็นวิธีง่ายๆ ในการสร้างไฟล์แหล่งข้อมูลแต่ละไฟล์
ผ่านข้อมูลเพียงครั้งเดียว

โดยค่าเริ่มต้น ไฟล์ FITS ใหม่จะถูกสร้างขึ้นและตารางไบนารีจะถูกเขียนไปที่ไฟล์แรก
ส่วนขยาย. ถ้า -a (ผนวก) สวิตช์ถูกระบุ ตารางจะถูกผนวกเข้ากับที่มีอยู่
FITS เป็นนามสกุล BINTABLE โปรดทราบว่าไฟล์เอาต์พุต FITS ต้องมีอยู่แล้ว

ถ้า -z (ค่าพิกเซล "ศูนย์") ถูกระบุและ -i ไม่ได้ระบุ จากนั้น พิกเซล
การมีค่าเป็นศูนย์จะถูกส่งออกโดยที่คอลัมน์ "VALUE" ตั้งค่าเป็นศูนย์ เห็นได้ชัดว่าสิ่งนี้
สวิตช์ไม่สมเหตุสมผลเมื่อส่งออกแต่ละเหตุการณ์

ใช้ funtable ออนไลน์โดยใช้บริการ onworks.net


Ad


Ad