/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Alignment/MuonAlignmentAlgorithms/src/ReadPGInfo.cc
396 строк
21 KB
Rao Atif
Alignment/MuonAlignmentAlgorithms: fix static analyzer warnings
04 июн 2026, 14:22
04 июн 2026, 14:22
9921549
Код
Авторство
О чём код?
#include "Alignment/MuonAlignmentAlgorithms/interface/ReadPGInfo.h" /* static char mapping[][2][20] = { {"351010100300001", "351010100300001"}, {"351010100300002", "351010100300002"}, {"351010100300003", "351010100400003"}, {"351010100300004", "351010100400004"}, {"351010100300005", "351010100300005"}, {"351010100300006", "351010100400006"}, {"351010100300024", "351010100300024"}, {"351010100300027", "351010100400027"}, {"351010100300039", "351010100300039"}, {"351010100300040", "351010100400040"}, {"351010100300041", "351010100400041"}, {"351010100300042", "351010100400042"}, {"351010100300043", "351010100400043"}, {"351010100300045", "351010100300045"}, {"351010100300054", "351010100400054"}, {"351010100300055", "351010100400055"}, {"351010100300056", "351010100300056"}, {"351010100300057", "351010100300057"}, {"351010100300058", "351010100300058"}, {"351010100300059", "351010100300059"}, {"351010100300060", "351010100400060"}, {"351010100300061", "351010100300061"}, {"351010100300062", "351010100300062"}, {"351010100300063", "351010100400063"}, {"351010100300064", "351010100400064"}, {"351010100300065", "351010100300065"}, {"351010100300066", "351010100400066"}, {"351010100300068", "351010100300068"}, {"351010100300073", "351010100300073"}, {"351010100300074", "351010100400074"}, {"351010100100007", "351010100100007"}, {"351010100100008", "351010100200008"}, {"351010100100009", "351010100100009"}, {"351010100100010", "351010100200010"}, {"351010100100011", "351010100100011"}, {"351010100100012", "351010100100012"}, {"351010100100013", "351010100200013"}, {"351010100100014", "351010100100014"}, {"351010100100015", "351010100200015"}, {"351010100100016", "351010100100016"}, {"351010100100017", "351010100100017"}, {"351010100100018", "351010100100018"}, {"351010100100019", "351010100200019"}, {"351010100100020", "351010100200020"}, {"351010100100021", "351010100100021"}, {"351010100100022", "351010100200022"}, {"351010100100023", "351010100100023"}, {"351010100100025", "351010100200025"}, {"351010100100028", "351010100200028"}, {"351010100100035", "351010100100035"}, {"351010100100037", "351010100200037"}, {"351010100100038", "351010100100038"}, {"351010100100044", "351010100200044"}, {"351010100100053", "351010100200053"}, {"351010100100067", "351010100100067"}, {"351010100100069", "351010100200069"}, {"351010100100070", "351010100200070"}, {"351010100100072", "351010100100072"}, {"351010101500051", "351010101300051"}, {"351010101500052", "351010101500052"}, {"351010103500029", "351010103500029"}, {"351010103500030", "351010103500030"}, {"351010103500031", "351010103600031"}, {"351010103500032", "351010103600032"}, {"351010103500033", "351010103600033"}, {"351010103500046", "351010103600046"}, {"351010103500047", "351010103500047"}, {"351010103500048", "351010103500048"}, {"351010103500049", "351010103600049"}, {"351010103500050", "351010103500050"}, {"351010103500075", "351010103600075"}, {"351030101700054", "351030101700054"}, {"351030101900053", "351030101900053"}, {"351030100700009", "351030100800009"}, {"351030100700010", "351030100700010"}, {"351030100700011", "351030100700011"}, {"351030100700013", "351030100700013"}, {"351030100700016", "351030100700016"}, {"351030100700028", "351030100700028"}, {"351030100700042", "351030100700042"}, {"351030100700043", "351030100700043"}, {"351030100700060", "351030100800060"}, {"351030100700065", "351030100700065"}, {"351030100700067", "351030100700067"}, {"351030100700068", "351030100700068"}, {"351030100700069", "351030100700069"}, {"351030100700072", "351030100800072"}, {"351030100700073", "351030100800073"}, {"351030100700074", "351030100800074"}, {"351030100800012", "351030100800012"}, {"351030100800014", "351030100700014"}, {"351030100800015", "351030100800015"}, {"351030100800027", "351030100800027"}, {"351030100800041", "351030100800041"}, {"351030100800044", "351030100800044"}, {"351030100800051", "351030100800051"}, {"351030100800059", "351030100800059"}, {"351030100800062", "351030100800062"}, {"351030100800066", "351030100800066"}, {"351030100800070", "351030100800070"}, {"351030100800071", "351030100800071"}, {"351030100500001", "351030100500001"}, {"351030100500002", "351030100500002"}, {"351030100500004", "351030100500004"}, {"351030100500005", "351030100500005"}, {"351030100500006", "351030100600006"}, {"351030100500007", "351030100500007"}, {"351030100500017", "351030100500017"}, {"351030100500019", "351030100500019"}, {"351030100500021", "351030100500021"}, {"351030100500023", "351030100500023"}, {"351030100500025", "351030100500025"}, {"351030100500039", "351030100500039"}, {"351030100500040", "351030100500040"}, {"351030100500063", "351030100600063"}, {"351030100500064", "351030100600064"}, {"351030100600003", "351030100600003"}, {"351030100600008", "351030100600008"}, {"351030100600018", "351030100600018"}, {"351030100600020", "351030100600020"}, {"351030100600022", "351030100600022"}, {"351030100600024", "351030100600024"}, {"351030100600026", "351030100600026"}, {"351030100600035", "351030100600035"}, {"351030100600036", "351030100600036"}, {"351030100600049", "351030100600049"}, {"351030103700033", "351030103700033"}, {"351030103800032", "351030103800032"}, {"351030103800034", "351030103800034"}, {"351030103800057", "351030103800057"}, {"351030103900058", "351030103700058"}, {"351030103700056", "351030103900056"}, {"351030103900031", "351030103900031"}, {"351030104000029", "351030104000029"}, {"351030104000030", "351030104000030"}, {"351030104000055", "351030104000055"}, {"35102010xx00008", "351020101000008"}, {"35102010xx00009", "351020101200009"}, {"35102010yy00001", "351020101200001"}, {"35102010yy00002", "351020100900002"}, {"35102010yy00003", "351020101200003"}, {"35102010yy00004", "351020101200004"}, {"35102010yy00005", "351020101100005"}, {"35102010yy00006", "351020101000006"}, {"35102010yy00007", "351020101100007"}, {"35102010yy00010", "351020100900010"}, {"35102010yy00011", "351020101100011"}, {"35102010yy00012", "351020101000012"}, {"35102010yy00013", "351020101100013"}, {"35102010yy00014", "351020100900014"}, {"35102010yy00015", "351020101200015"}, {"35102010yy00017", "351020101100017"}, {"35102010yy00018", "351020101000018"}, {"35102010yy00020", "351020101000020"}, {"35102010yy00021", "351020101200021"}, {"35102010yy00022", "351020100900022"}, {"35102010yy00023", "351020101200023"}, {"35102010yy00024", "351020100900024"}, {"35102010yy00025", "351020101100025"}, {"35102010yy00026", "351020101000026"}, {"35102010yy00027", "351020101100027"}, {"35102010yy00028", "351020100900028"}, {"35102010yy00029", "351020101200029"}, {"35102010yy00030", "351020100900030"}, {"35102010yy00031", "351020101100031"}, {"35102010yy00032", "351020101000032"}, {"35102010yy00033", "351020101200033"}, {"35102010yy00034", "351020100900034"}, {"35102010yy00035", "351020101100035"}, {"35102010yy00036", "351020101000036"}, {"35102010yy00037", "351020101200037"}, {"35102010yy00038", "351020100900038"}, {"35102010yy00039", "351020101200039"}, {"35102010yy00040", "351020100900040"}, {"35102010yy00041", "351020101100041"}, {"35102010yy00042", "351020101000042"}, {"35102010yy00043", "351020101200043"}, {"35102010yy00044", "351020101000044"}, {"35102010yy00045", "351020101100045"}, {"35102010yy00046", "351020100900046"}, {"35102010yy00047", "351020101100047"}, {"35102010yy00048", "351020100900048"}, {"35102010yy00049", "351020101200049"}, {"35102010yy00050", "351020101000050"}, {"35102010yy00051", "351020101100051"}, {"35102010yy00052", "351020100900052"}, {"35102010yy00053", "351020101200053"}, {"35102010yy00055", "351020101200055"}, {"35102010yy00056", "351020101000056"}, {"35102010yy00057", "351020101100057"}, {"35102010yy00058", "351020101000058"}, {"35102010yy00059", "351020101200059"}, {"35102010yy00060", "351020100900060"}, {"351040102500003", "351040102500003"}, {"351040102500006", "351040102500006"}, {"351040102500015", "351040102700015"}, {"351040102500016", "351040102500016"}, {"351040102500021", "351040102500021"}, {"351040102500023", "351040102500023"}, {"351040102500025", "351040102500025"}, {"351040102600004", "351040102600004"}, {"351040102600008", "351040102600008"}, {"351040102600010", "351040102600010"}, {"351040102600011", "351040102600011"}, {"351040102600014", "351040102600014"}, {"351040102600018", "351040102600018"}, {"351040102600019", "351040102600019"}, {"351040102600028", "351040102600028"}, {"351040102600030", "351040102600030"}, {"351040102700002", "351040102700002"}, {"351040102700005", "351040102700005"}, {"351040102700013", "351040102700013"}, {"351040102700020", "351040102700020"}, {"351040102700026", "351040102700026"}, {"351040102700027", "351040102700027"}, {"351040102700031", "351040102700031"}, {"351040102800001", "351040102800001"}, {"351040102800007", "351040102800007"}, {"351040102800009", "351040102800009"}, {"351040102800012", "351040102800012"}, {"351040102800017", "351040102800017"}, {"351040102800022", "351040102800022"}, {"351040102800024", "351040102800024"}, {"351040102800029", "351040102800029"}, {"351040103100004", "351040103100004"}, {"351040103100006", "351040103100006"}, {"351040103100009", "351040103000009"}, {"351040103100010", "351040103100010"}, {"351040103200001", "351040103200001"}, {"351040103200008", "351040103200008"}, {"351040103300003", "351040103300003"}, {"351040103300005", "351040103300005"}, {"351040103400002", "351040103400002"}, {"351040103400007", "351040103400007"}, {"351040104100001", "351040104100001"}}; */ static const char chambers[TOTALCHAMBERS][20] = { "351010100100009", "351010100100016", "351010100100014", "351010100100017", "351010100100011", "351010100100038", "351010100100035", "351010100100023", "351010100100036", "351010100100072", "351010100200013", "351010100200015", "351010100200020", "351010100200019", "351010100200010", "351010100200025", "351010100200037", "351010100200028", "351010100200034", "351010100200022", "351010100200070", "351010100300002", "351010100300061", "351030100500025", "351030100500019", "351030100500017", "351030100500021", "351030100500023", "351030100500038", "351030100500039", "351030100500047", "351030100500040", "351030100500001", "351030100600020", "351030100600026", "351030100600006", "351030100600024", "351030100600022", "351030100600018", "351030100600036", "351030100600035", "351030100600049", "351030100600046", "351030100600048", "351030100700014", "351030100710065", "351030100800009", "351020100900010", "351020100900014", "351020100900028", "351020100900030", "351020100900024", "351020100900022", "351020100900034", "351020100900040", "351020100900046", "351020101000018", "351020101000016", "351020101000008", "351020101000006", "351020101000012", "351020101000004", "351020101000032", "351020101000020", "351020101000026", "351020101000042", "351020101200001", "351010101300051", "351030101700054", "351020102100002", "351040102500003", "351040102500006", "351040102600004", "351040102600010", "351040102600030", "351040102700002", "351040102700005", "351040102700031", "351040102800001", "351040102800007", "351020103000004", "351020103000003", "351020103000009", "351040103100004", "351040103200001", "351040103300003", "351040103400002", "351010103600075", "351030103700033", "351030103800034", "351030103900031", "351030104000030", "351020104200001", "351020104200002", "351010100100018", "351010100100012", "351010100100007", "351010100100021", "351010100100067", "351010100200008", "351010100200053", "351010100200044", "351010100200069", "351010100200071", "351010100300005", "351010100300001", "351010100300024", "351010100300039", "351010100300045", "351010100300042", "351010100300056", "351010100300058", "351010100300059", "351010100300062", "351010100300065", "351010100300068", "351010100300073", "351010100300057", "351010100400003", "351010100400004", "351010100400006", "351010100400027", "351010100400026", "351010100400043", "351010100400041", "351010100400040", "351010100400055", "351010100400064", "351010100400060", "351010100400063", "351010100400054", "351010100400066", "351010100400074", "351030100500007", "351030100500005", "351030100500002", "351030100500004", "351030100500045", "351030100600008", "351030100600037", "351030100600003", "351030100600064", "351030100600063", "351030100700016", "351030100700028", "351030100700013", "351030100700010", "351030100700011", "351030100700042", "351030100700043", "351030100700050", "351030100700052", "351030100700061", "351030100700067", "351030100700068", "351030100700069", "351030100700065", "351030100800015", "351030100800027", "351030100800012", "351030100800041", "351030100800044", "351030100800051", "351030100800059", "351030100800060", "351030100800062", "351030100800066", "351030100800072", "351030100800073", "351030100800071", "351030100800074", "351030100800070", "351020100900002", "351020100900038", "351020100900048", "351020100900052", "351020100900060", "351020101000044", "351020101000036", "351020101000050", "351020101000056", "351020101000058", "351020101100005", "351020101100007", "351020101100011", "351020101100017", "351020101100013", "351020101100025", "351020101100027", "351020101100031", "351020101100035", "351020101100041", "351020101100045", "351020101100047", "351020101100051", "351020101100057", "351020101200009", "351020101200003", "351020101200021", "351020101200015", "351020101200023", "351020101200019", "351020101200033", "351020101200029", "351020101200037", "351020101200039", "351020101200049", "351020101200053", "351020101200055", "351020101200043", "351020101200059", "351010101500052", "351030101900053", "351020102300001", "351040102500016", "351040102500023", "351040102500021", "351040102500025", "351040102600008", "351040102600011", "351040102600014", "351040102600018", "351040102600019", "351040102600028", "351040102700013", "351040102700015", "351040102700026", "351040102700020", "351040102700027", "351040102800009", "351040102800012", "351040102800017", "351040102800024", "351040102800022", "351040102800029", "351020102900002", "351020102900001", "351020102900005", "351020102900006", "351020103000008", "351020103000007", "351040103100006", "351040103100010", "351040103200008", "351040103300005", "351040103300009", "351040103400007", "351010103500030", "351010103500029", "351010103500048", "351010103500050", "351010103500047", "351010103600031", "351010103600032", "351010103600033", "351010103600049", "351010103600046", "351030103700058", "351030103800032", "351030103800057", "351030103900056", "351030104000029", "351030104000055", "351040104100001"}; static const int position[TOTALCHAMBERS][3] = { {2, 3, 1}, {2, 5, 1}, {2, 9, 1}, {2, 11, 1}, {1, 2, 1}, {1, 6, 1}, {1, 12, 1}, {1, 10, 1}, {1, 8, 1}, {0, 0, 0}, {2, 6, 1}, {2, 10, 1}, {2, 12, 1}, {1, 5, 1}, {2, 8, 1}, {1, 11, 1}, {1, 3, 1}, {2, 2, 1}, {2, 4, 1}, {1, 9, 1}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {1, 8, 2}, {2, 5, 2}, {2, 11, 2}, {1, 12, 2}, {2, 9, 2}, {1, 6, 2}, {1, 2, 2}, {2, 3, 2}, {1, 10, 2}, {0, 0, 0}, {1, 9, 2}, {2, 12, 2}, {0, 0, 0}, {2, 10, 2}, {2, 8, 2}, {1, 11, 2}, {1, 5, 2}, {1, 3, 2}, {2, 6, 2}, {2, 2, 2}, {2, 4, 2}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {1, 10, 3}, {2, 5, 3}, {1, 6, 3}, {2, 3, 3}, {2, 11, 3}, {1, 2, 3}, {2, 9, 3}, {1, 8, 3}, {1, 12, 3}, {2, 2, 3}, {2, 12, 3}, {2, 8, 3}, {1, 5, 3}, {2, 10, 3}, {2, 6, 3}, {2, 4, 3}, {1, 11, 3}, {1, 9, 3}, {1, 3, 3}, {0, 0, 0}, {1, 4, 1}, {1, 4, 2}, {1, 4, 3}, {2, 5, 4}, {1, 6, 4}, {2, 6, 4}, {1, 5, 4}, {0, 0, 0}, {2, 3, 4}, {1, 2, 4}, {0, 0, 0}, {2, 2, 4}, {1, 3, 4}, {2, 4, 4}, {2, 13, 4}, {0, 0, 0}, {1, 8, 4}, {2, 8, 4}, {1, 12, 4}, {2, 12, 4}, {0, 0, 0}, {1, 10, 4}, {2, 10, 4}, {1, 14, 4}, {2, 14, 4}, {1, 13, 4}, {1, 4, 4}, {2, 7, 1}, {0, 11, 1}, {2, 1, 1}, {0, 3, 1}, {0, 7, 1}, {0, 2, 1}, {0, 10, 1}, {0, 6, 1}, {1, 1, 1}, {1, 7, 1}, {0, 4, 1}, {-2, 8, 1}, {0, 8, 1}, {0, 12, 1}, {-1, 11, 1}, {-2, 10, 1}, {-1, 9, 1}, {-2, 2, 1}, {-1, 5, 1}, {-2, 4, 1}, {-2, 6, 1}, {-1, 1, 1}, {-1, 7, 1}, {-2, 12, 1}, {-1, 6, 1}, {-1, 4, 1}, {-1, 2, 1}, {-1, 8, 1}, {-2, 9, 1}, {-1, 10, 1}, {-2, 11, 1}, {-1, 12, 1}, {0, 9, 1}, {0, 5, 1}, {-2, 7, 1}, {-2, 5, 1}, {-2, 3, 1}, {0, 1, 1}, {-2, 1, 1}, {0, 3, 2}, {0, 7, 2}, {2, 7, 2}, {2, 1, 2}, {0, 11, 2}, {0, 2, 2}, {0, 10, 2}, {0, 6, 2}, {1, 7, 2}, {1, 1, 2}, {0, 4, 2}, {-1, 11, 2}, {-2, 10, 2}, {-1, 5, 2}, {-2, 8, 2}, {0, 8, 2}, {0, 12, 2}, {-1, 9, 2}, {-2, 12, 2}, {-2, 2, 2}, {-2, 6, 2}, {-1, 1, 2}, {-1, 7, 2}, {-2, 4, 2}, {-1, 10, 2}, {-2, 11, 2}, {-1, 2, 2}, {0, 5, 2}, {0, 9, 2}, {-1, 8, 2}, {-1, 4, 2}, {-1, 12, 2}, {-1, 6, 2}, {-2, 5, 2}, {-2, 1, 2}, {-2, 7, 2}, {-2, 3, 2}, {0, 1, 2}, {-2, 9, 2}, {2, 1, 3}, {0, 3, 3}, {0, 11, 3}, {2, 7, 3}, {0, 7, 3}, {0, 10, 3}, {0, 2, 3}, {0, 6, 3}, {1, 1, 3}, {1, 7, 3}, {-1, 5, 3}, {-2, 8, 3}, {-1, 9, 3}, {0, 4, 3}, {-1, 1, 3}, {0, 8, 3}, {-2, 10, 3}, {-1, 11, 3}, {0, 12, 3}, {-2, 12, 3}, {-2, 2, 3}, {-2, 4, 3}, {-2, 6, 3}, {-1, 7, 3}, {-1, 8, 3}, {-1, 4, 3}, {-1, 2, 3}, {-1, 6, 3}, {0, 5, 3}, {-1, 12, 3}, {-1, 10, 3}, {-2, 11, 3}, {0, 9, 3}, {-2, 9, 3}, {-2, 5, 3}, {0, 1, 3}, {-2, 1, 3}, {-2, 3, 3}, {-2, 7, 3}, {-1, 3, 1}, {-1, 3, 2}, {-1, 3, 3}, {2, 7, 4}, {-2, 2, 4}, {0, 7, 4}, {-1, 1, 4}, {-2, 3, 4}, {0, 6, 4}, {-1, 2, 4}, {1, 7, 4}, {0, 1, 4}, {-2, 1, 4}, {0, 3, 4}, {2, 1, 4}, {-2, 6, 4}, {-1, 5, 4}, {-1, 7, 4}, {0, 2, 4}, {0, 5, 4}, {1, 1, 4}, {-2, 5, 4}, {-1, 6, 4}, {-2, 7, 4}, {0, 13, 4}, {0, 4, 4}, {-2, 13, 4}, {-2, 4, 4}, {-1, 13, 4}, {-1, 4, 4}, {0, 12, 4}, {-2, 12, 4}, {-1, 12, 4}, {0, 8, 4}, {-2, 8, 4}, {-1, 8, 4}, {2, 11, 4}, {2, 9, 4}, {-1, 11, 4}, {0, 11, 4}, {-1, 9, 4}, {-2, 9, 4}, {1, 9, 4}, {1, 11, 4}, {-2, 11, 4}, {0, 9, 4}, {-2, 14, 4}, {0, 10, 4}, {-1, 14, 4}, {-2, 10, 4}, {0, 14, 4}, {-1, 10, 4}, {-1, 3, 4}}; ReadPGInfo::ReadPGInfo(const char *name) { TDirectory *dirSave = gDirectory; rootFile = new TFile(name); dirSave->cd(); } ReadPGInfo::~ReadPGInfo() { delete rootFile; } const char *ReadPGInfo::getId(int wheel, int station, int sector) { for (int counter = 0; counter < TOTALCHAMBERS; ++counter) { if (wheel == position[counter][0] && sector == position[counter][1] && station == position[counter][2]) return chambers[counter]; } return nullptr; } TMatrixD ReadPGInfo::giveR(int wheel, int station, int sector) { TMatrixD *empty = new TMatrixD(0, 0); const char *id = getId(wheel, station, sector); if (id == nullptr) return *empty; TDirectoryFile *myDir = (TDirectoryFile *)rootFile->Get(id); TDirectoryFile *myR = (TDirectoryFile *)myDir->Get("R"); TMatrixD *R = (TMatrixD *)myR->Get("matrix"); return *R; } TMatrixD ReadPGInfo::giveQCCal(int wheel, int station, int sector) { TMatrixD *mat = new TMatrixD(0, 0); TMatrixD qc = giveQC(wheel, station, sector); if (qc.GetNrows() == 0) return *mat; mat->ResizeTo(12, 2); int maxCount = 12; if (station == 4) maxCount = 8; for (int c = 0; c < maxCount; ++c) { float error; if (qc(c, 1) == 0 || qc(c, 3) == 0) { (*mat)(c, 0) = (qc(c, 0) + qc(c, 2)) / 2.0; (*mat)(c, 1) = 500; } else { error = 1.0 / (1.0 / (qc(c, 1) * qc(c, 1)) + 1.0 / (qc(c, 3) * qc(c, 3))); (*mat)(c, 0) = (qc(c, 0) / (qc(c, 1) * qc(c, 1)) + qc(c, 2) / (qc(c, 3) * qc(c, 3))) * error; (*mat)(c, 1) = TMath::Sqrt(error); } } return *mat; } TMatrixD ReadPGInfo::giveQC(int wheel, int station, int sector) { TMatrixD *empty = new TMatrixD(0, 0); const char *id = getId(wheel, station, sector); if (id == nullptr) return *empty; TDirectoryFile *myDir = (TDirectoryFile *)rootFile->Get(id); TDirectoryFile *myQC = (TDirectoryFile *)myDir->Get("QCW"); TMatrixD *QC; if (myQC == nullptr) { QC = new TMatrixD(0, 0); } else { QC = (TMatrixD *)myQC->Get("matrix"); } return *QC; } TMatrixD ReadPGInfo::giveSurvey(int wheel, int station, int sector) { TMatrixD *empty = new TMatrixD(0, 0); const char *id = getId(wheel, station, sector); if (id == nullptr) return *empty; TDirectoryFile *myDir = (TDirectoryFile *)rootFile->Get(id); TDirectoryFile *mySur = (TDirectoryFile *)myDir->Get("Survey"); TMatrixD *Survey = (TMatrixD *)mySur->Get("matrix_layer"); return *Survey; }