이 블로그 검색

2023년 8월 8일 화요일

2023 국제물리올림피아드(IPhO) 한국대표단 종합 1위 달성을 축하합니다.

 https://www.kps.or.kr/content/community/post_view.php?bt=2&post_id=3197

주 내용은 위 기사를 참고합니다. 


2023년 제 53회 국제 물리올림피아드(IPhO)에서 한국 대표단 학생 5명 전원이 금메달을 받았다고 합니다. 

이번 대회는 일본이 주최국이며, 7월 10일 월요일 부터 17일 월요일까지, 도쿄의 올림픽기념청소년 센터에서 이루어졌으며, 

구체적인 순위는 다음과 같습니다. 

https://ipho2023.jp/en/results-of-the-ipho2023-contest/


8등, 9등, 12등, 16등 17등이며 모두 금메달을 받았습니다. 37명까지 금메달을 받았으므로 매우 안정적인 성적을 받았음을 알 수 있습니다. 

13등인 미국 대표 Evan Kim Jr.도 한국계로 보입니다. 미국대표들 가운데 대부분은 중국계라서 한번씩 체크를 해봅니다. 취미 생활에 한국식 BBQ섭취가 있네요. 

각 학생의 성적을 보면, 이론은 28점에서 29.9까지 나옵니다.  그리고 모든 학생의 실험 성적은 10.3-11.9로 분포합니다.   이론문제는 한국학생 기준으로 난이도가 낮게 책정된 것으로 보입니다. 

이 난이도가 낮다는 말은 올림피아드를 준비하는 학생기준이며, 본인이 교수나 박사과정 석사과정이어도 어렵습니다. 저들만의 리그임을 기억합시다. 물론 IPhO나 APhO경험이 있는 사람이라면 할만했겠지요. 

실험문제는 어렵게 책정된 것으로 보입니다. 국제대회에 중국의 기치를 내걸기 위해서 박통시절 수준의 지원이 가능한 공산 독재국가의 소속이다보니, 중국 학생들은 이곳에 올인이 가능합니다. (우리 대한민국은 엘리트 교육을 혐오해하며, 대학 진학이라는 인생의 계급 선별식에서 미리 이탈하는 것을 용납하지 않기 때문에 올인할 수 없습니다. )

비교대상으로 삼지 않고 본다면 Fan Collin 미국학생이 실험에 대단한 재능을 가진 특별한 학생인 것으로 보입니다. 

다만 올해 대회 실험문제가 어떤 문제인지는 아직 보지 않아서 정확히는 말씀 드리기 어렵습니다만, 일단 컴퓨터 시뮬레이션 실험문제가 아니면 실험기구 구성하는데서부터 시간을 많이 잡아먹습니다. 

절대적인 난도라는게 존재한다면, 보편적으로 IPhO의 실험의 난도가 결코 이론보다 높지는 않습니다. 다만 많은 학생들이 실험을 경험하기 매우 어렵기 때문에  올해 성적을 보자면 만점에 가까운 이론과 달리 80%정도 선에서 그치는 게 정상입니다. 참고로 이론 20점 이상인 친구들은 물리 학부 3학년 정도의 수준을 30점에 가까운 학생들은 박사과정 수준의 지식을 가졌습니다. (지식 + 숙련된 문제풀이 능력)

올해도 참으로 대단한 학생들이 많이 배출 되었습니다. 정치적인 이유로 국명이 거세된 러시아 친구들도 5금으로 좋은 성과를 낸게 눈에 띕니다. 

중국친구들은 작년 다른 나라 학생들이 , 합산36점에서 시작할 때도, 45점을 받고 다 40점대 점수를 받더니 다른 나라 학생들이 41점부터 시작 할 때도 똑같네요. 난도와 상관 없이 일정한 결과를 낸다는건 시험대비해서 기출문제를 만드는 국가기관이 있는 걸까요. 참으로 무서운 국가입니다. 

매년 전세계 난다기는 애들 400명 가까이 모아서 그 중에서 20등안에 5명을 올리는 대한민국의 인재들이 물리가 너무 쉽다보니 또 진로문제로  의대와 공대로 많이들 넘어갑니다. 6년짜리지만 3년 반까지 줄일 수 있는 학석사 코스 같은 걸 만들어서 지식을 안정화 시키고 물리 기반의 인재들을 다른데 보내야 의대에서도 공대에서도 물리를 가지고 많은 일을 할 수 있지 않을까 생각합니다. 뭐... 다른 곳으로 안 보낼 수는 없으니까요.

과학영재고등학교도 결국은 고등학교니까요. 고등학교에서 얻은 지식은 그 사람의 상식이 된다고 생각합니다. 상식은 삶을 풍요롭게 하지만, 직업, 직장으로 가져가는  그 사람의 기술과 특기는 되지 않는다고 생각합니다. 고등학교를 입시의 지나가는 과정으로 생각하는 것은 과고 학생들이나 부모님들이나 다르지 않았던 걸로 저는 판단합니다. 

 시간을 아낄 수 있는 다양한 제도가 필요합니다.   간판 위주의 대한민국 사회가 쉽게 변할 것 같지는 않으니, 뭐 방법이 없네요. 의전원 같은 제도들의 목적이 다양한 경험을 가진 의료인을 키우는데 있는 것 같았습니다만, 사실 상, 패자 부활전으로 변형되었죠. 그리고 대한민국 사회는 2수 3수 4수는 용납하지만 패자 부활전은 극도로 혐오하는지 이런 제도들이 사라지네요. 

뭐 베스트는 의대를 안가도 잘 먹고 잘 사는 길이 있어야 하는 것이지만, 베스트는 감히 상상도 못하겠습니다. 뭐 서울대 전기전자공학부는 학생들에게는 이 길이 되는 것 같기는 합니다만 물리는 그런 취급을 받지 못하네요. 너무 좋아해서 오는 애들만 오게 되는데 방법이 필요하겠습니다. 

2023년 8월 7일 월요일

요즘 난리인 상온 초전도체 이야기를 좀 해볼까...

https://www.youtube.com/watch?v=1o7B_xzhI7Y



김범준 교수님은 기존 물리학적 관점에서 최대한 조심스럽게 이 문제를 다루셨는데 이 영상을 보다보니, 관련 내용들을 좀 알아볼 필요가 있다는 생각이 들었다. 


찾아보니, 1993년 과학동아에 고려대 화학과 최동식 교수님의 인터뷰가 있어 보게되었다. 

주 내용은 BCS이론이 주류가 되고 노벨상까지 타고나서 나머지 이론이 다 죽었는데, 고온초전도 설명 못하는데 물질 나왔으니까 쿠퍼의 페어 이론이 틀렸다는 것.

그래서 쿠퍼페어와는 다른 방식으로 엔트로피가 낮아야 하므로 집단 진동이론을 들었고, 자기와 같은 결론을 내린 사람이 또있으며, 1970년대 폴란드의 갈라스비치와 그 스승인 소련의 보골리보프(보골리우프라고 기사에 써있으나 보골리 보프 'B'BGKY 방정식의 첫번째 B )이며, 자기는 그 이론의 재발견이 아니라 한단계 더 나아갔다고 하면서 많은 이야기를 썼는데... 

그 다음에는 공돌이 마인드로 연구하겠다는 이야기와 끝에는 정치적인 이야기가 적혀있다. 부정적으로 보인다. 



음. 내가 공부하지 않은 부분에 대해서는 더 이야기할 수 있는 부분은 없고 단순히 권위에 기대어 쉽게 생각해보면

긍정적으로 볼 점은, 보골리보프 교수님과 같은 방향성이라면 이론을 살펴볼 필요가 있겠다. 근데, 이론은 지금 연구그룹이 서로 갈라져서 쏟아낸 논문마다 제각각 인거보면... 이 오랜 시간이 지나고서도 정리가 안되고 있는 것 같으니 오히려 70년대 동구권 논문에서 다시 시작하거나 그 후속 논문쪽을 추적하는게 낫지 않을까... 

부정적으로 보는 것은 마지막에 같이 연구할 만한 사람 리스트 가운데 


이번 연구 발표를 한 그룹에 속한 사람이  "논문 및 특허의 저자로 수록된 이석배김지훈, 권영완, 오근호, 김현탁, 그리고 퀀텀에너지연구소 구성원인 임성연, 안수민" 등 중복인 사람이 없다는 것이다. 
음 LK-99가 99년도에 나왔다고 하는데, 6년간 무슨 일이 있었길래 저 많은 사람들과의 관계가 끊어졌을까? 






그래도 초전도체면 좋겠다. 초전도 자석을 쓰는 NMR실험실을 많이 놀러갔는데, 실험기구의 규모가 어마어마하다. 상당 부분이 초전도 자석의 온도유지를 위한 액체헬륨 기구이다. 일단 근처에 한사람이라도 행복해지면 좋은게 아닐까... 뭐 자기부상열차는 어차피 어지러워서 못탈거 같은니... 저항 작은거라도 잘 활용하게 이거 진짜였으면 좋겠다. 

번역:면도 비누 만드는 방법.

https://ko.cubanfoodla.com/how-make-shaving-soap

도구

  • 파이렉스 컨테이너(?)
  • 소스 냄비
  • 목재 또는 스댕 숟가락
  • 스틱블렌더

준비물품 (괄호는 내가 위키찾아 넣은 내용이다.)

  • 4-1 / 2 온스 잿물
  • 12 온스 증류수
  • 11 온스 팜유(단단하고 거품 잘나는 고급 비누용 기름 대체제는 라드 등이다.)
  • 9-1 / 2 온스 코코넛 오일(보습 염증방지 윤활 등)
  • 6-1 / 2 온스. 아주까리(피마자) 기름 (공업용 윤활 등에 쓰임)
  • 3-1 / 4 온스 시어 버터 (보습 피부재생 등)
  • 1-1 / 2 온스 oilve 오일(향 등을 이유로 넣는 듯 하다 이유 모르겠음)
  • 벤토나이트 점토 1 큰술
  • 세라믹 머그 또는 플라스틱 라이닝 트레이 (형상틀)

오일 32온스 ( 900g물보다 밀도가 가벼움 0.9로 계산)
증류수 12온스 ( 340g)
잿물 4.5 온스  (130g그냥 1로 계산 후 10자리서 올림 ) 
벤토나이트 점토 15ml ( 대략 40g (꾹 눌러담지 않아 깍음))

전체 오일 비율은 대략 64%

과정

  • 오일, 잿물, 벤토나이트 점토를 혼합하여 거품면도의 질감이 나오게 한다. 

  1. 재료를 준비한다.
  2. 파이렉스 용기에 잿물과 증류수를 섞는다. 200도까지 올리며 섞는다.  기름을 준비할 때 까지 110에서 120도까지 식힌다.
  3. 저열로 모든 오일을 냄비에서 가열하여 120도 까지 데운 혼합유를 만든다.
  4. 오일과 잿물을 110-120도 사이일 때 천천히 섞어 담는다. 
  5. 블렌더를 사용하여 비누가 불투명하게 섞일 때까지 혼합한다. 분무를 하면 비누 표면에 흔적이 남는다고 한다.
  6. 벤토나이트 점토를 추가한다. 
  7. 몰드에 붙는다. 
  8. 사용하기까지 건조하고 시원한 곳에 숙성한다. 

짧은글: 어라... 루비(루비온웨일즈)가 이렇게... 마켓쉐어가 떨어지네...

 

한번씩 perl을 잘쓰고 싶다는 생각도 들고 perl로 뭔가를 하면 잊어먹지 않을까라는 생각에.


문서도 찾기 힘든 perl catalyst 웹서버를 한번씩 연습을 해본다. 



갑자기 큰 궁금증이 생겨 웹에 web framework usage라고 검색을 하니, 각 웹프레임워크의 순위가 나온다. 

https://www.statista.com/statistics/1124699/worldwide-developer-survey-most-used-frameworks-web/

언어에 기반한 랭킹도 아니고 상당히 복잡하다. 일단 Node.js React. jQuery 순이다. 


jQuery는 웹프레임워크랑은 거리가 먼  것으로 알고 있는데, 3위까지 올라온건 자바스크립트 제국에 성장과 관련이 있을 것으로 보인다. 


Python Django 가 12%정도로 10위 정도의 순위에 머물렀다.  여기서 부터 뭔가 이상함을 느꼈다. 


예전에 루비온웨일즈 판일때 특이한 것을 좋아하는 내가, 도서관에 신청한 교재가 바로 Django였기 때문이다. (python3가 처음 나올 때도 건대 도서관에 책을 신청함)

그런데 여기까지 오는데 루비온웨일즈가 없다. 루비온 웨일즈는 좀더 아래에 7위 정도 차이가 나는 5.5%의 마켓쉐어를 가지고 있었다.


아... 이런 이게 무슨일인지... 그렇게 세상을 뒤흔들던 루비온웨일즈가 몰락중이라니, 그러면... 루비언어도 그냥 죽어가고 있는 것과 다를 바가 없을텐데... 

참 이 세상은 너무 복잡하고, 트렌드 따라가기 너무 힘들다 


그래도 쓸모없어도 나는 펄을 한다.

2023년 8월 1일 화요일

LTE modem은 왜 직접 sim이랑 연결되어 있는거지...

 스마트 카드 리더기가 있어서,  단순히 pciexpress to mini pci 아답터만 있으면 컴퓨터에서 사용가능할거라고 생각하면서 방법을 찾아 보았으나... 


그것은 불가능한 것으로 판별되었다. 


lte나 3g 모뎀들을 보면, mini pci 또는 m.2카드를 어떤 기판에 있는 슬롯에 꼽고 sim 카드를 꽂은 후, USB나 다른 pci기반 슬롯에 꼽는 것을 볼 수 있다. 


아무리 찾아도 뭔가가 안나오다가 어딘지는 기억이 안나지만, reddit인가에서 스펙상 모뎀과 sim카드가 연결이 되어 있다는 글을 보았다. 

새로운 사실을 알았으니 새로운 키워드로 구글링을 해도 안나왔다. 

결국에는 어쩔 수 없이, lte 모뎀에 들어가는 칩에 대한 스펙 명세서를 보았다. 


해당 PDF에서 발췌해온 목차이다.  다음은 회로도이다. 


그렇다 USIM카드는 PC나 폰과 직접 통신하는 것이 아닌, 모뎀과 직접 통신을 하고 있던 것이다. 

음 그러면, EAP-SIM 같은 wifi용 인증은 어떻게 하는지 모르겠다만, 중간 중계를 거쳐서 심카드도 PC와 연결이 되어있는게 아닐까 생각이 든다. 

그렇다면 다음과 같은 모양의 제품을 사용하여 usb를 슬롯을 뽑으면 어떨까라는 생각이 든다. 


뒷면에는 sim slot이 달려있다. 아무리 찾아도 저 USB Signal이라고 적힌 부분이 설명이 없다. 
근데 흠... 그냥 5g 말고는 대부분 lte modem 칩들이 usb도 지원해서 빈pci 슬롯 자리를 usb로 연결하는 것일 수도 있을 것이라서 아니긴 할 것이다. 근데 그러려면, 저렇게 생긴 4pin(인지 5pin인지)에서 컴퓨터 내부 9핀 usb단자에 연결하는게 있어야 할텐데, 그런 요상한 케이블은 본적이 없는데. 과연 무엇일까..

난 그냥... sim카드를 신용카드 크기로 그대로 넣었다 빼면서 전화카드처럼 인터넷 쓰는 상황을 만들고 싶을 뿐인데 방법이 안나온다. 

2023년 7월 29일 토요일

코로나가 바꾼 대한민국(학교보건법 시행령 23조) -보건교사

 학교 양호선생님(요즘말로 보건선생님)과 관련해서, 군대 의무병처럼 특수한 장소에서만 따로 작동하는 의료법으로 돌아가는건지 궁금해서 알아보았다.

(군대에서는 군 자동차면허증과 군판사 군검사와 같이 군특수 면허가 존재함)


알아보니 양호선생님이 되기 위해서는 간호사 자격이 필수이다. 옛날에는 아니였는지 보건교사의 직무에 (23조 3항 타) "간호사 면허를 가진 사람만 해당한다"라는  글이 남아 있다.

http://www.koci.co.kr/base/m3/smenu2/menu15.php


한국자격검정(koci)에서 말하길 보건교사 자격을 얻기 위해서는 간호사 국가고시에 합격해야한다. 


이건 아무래도 보건교사를 만들 때 간호사 수효가 부족해서 군검사처럼 학교에서 10년 복무(?)하면 간호사 자격을 주는 제도였거나, 아니면 교사자격을 취득후 간호사 자격을 박탈 당한 사람을 위한 흔적일 수도 있겠다. 찾아보면 분명 어쩌다 저런 찌거기가 남아있느지 알 수 있겠지만, 이 분야로 갈 생각이 있는게 아니므로 더 이상 찾아볼 필요가 없다.


사실 의사도 양호선생님이 될 수 있을까 검색해서 찾아본 일이다. 최근들어 2021년 12월 28일 개정된 학교보건법 15조에 따라 학교에는 학교의사 및 학교 약사를 두게 되어있다. 


내가 생각하는 것처럼, 의사가 양호선생님을 하는 것은 아니고 인근 학교에서 자문을 하는 학교의사 및 학교약사를 위촉하도록 법이 강제하는 내용이었다. 


이 과정에서 재미난건 의사가 양호선생님이 될 수 있는지에 대해 궁금해하는 사람이 넷상에 3명이나 있다는 것이다. 구글링을 해보라.


학교보건법15조를 읽다보니 다른 법을 읽어야만 이해할 수 있는 부분이 있다. 

제 14조인데 다음과 같다. 

 제14조의2(감염병 예방접종의 시행) 시장ㆍ군수 또는 구청장이 「감염병의 예방 및 관리에 관한 법률」 제24조 및 제25조에 따라 학교의 학생 또는 교직원에게 감염병의 필수 또는 임시 예방접종을 할 때에는 그 학교의 학교의사 또는 보건교사(간호사 면허를 가진 보건교사로 한정한다. 이하 같다)를 접종요원으로 위촉하여 그들로 하여금 접종하게 할 수 있다. 이 경우 보건교사에 대하여는 「의료법」 제27조제1항을 적용하지 아니한다. <개정 2009. 12. 29., 2017. 11. 28., 2018. 3. 27.>

[전문개정 2007. 12. 14.]
[제목개정 2009. 12. 29.]


간호사 면허를 가진 보건교사로 한정한다라고 되어 있지만, 의료법 제 27조제1항은 면허 없는 사람의 의료행위를 할 수 있는 면제 조항이 있는 부분이다. 

뭐 더 찾아봐야 했을 거 같기는 한데, 아무래도 예전에는 간호사면허 없이 양호선생님을 할 수 있었던 것 같다. 뭐 간호사 면허 제한만 없으면야, 아버지, 어머니가 이사장이면 의사까지 하고도 학교 양호선생님 하는 괴짜는 존재했지 않을까 생각한다. 나가서 돈버는거보다, 학교 자체가 더 큰 재산일 거고 나중에 이사장을 물려받으려면 학교를 좀 알아야했을테니 그렇지 않을까.



이거 보면서 생각보다 법이 상당히 누더기라는 것을 알게 된다. 뭐 국회의원들이 법을 내거나 개정하면 상임위에서 다듬는다고 하더니, 만날 싸움만 하는건지 흔적이 다 남아 있다. 아니 법무부 직원들이나 국회 직원들이 이런 뭔가 역설적인 부분들을 찾지 못하는 것인가 ???의문이 들기도 한다. 


뭐 결론이다. 

결론

  1. 예전에는 간호사 면허없이 양호선생님이 될 수 있었다. 그리고 제한된 의료행위를 할 수 있도록 법이 보장했다.(라고 추측) 지금은 간호사 면허가 필요하다. 
  2. 2021년 학교에는 상주하는 보건선생님의 숫자만큼, 학교의사 학교약사를 위촉해야 한다고 법이 개정되었다. 
  3. 언급하지 않았지만 이와 관련해서 학교보건법에 감염병 관련해서 많은 항목이 작성되었다. 
코로나가 학교를 바꾸고 있다.



2023년 4월 6일 목요일

베링거 당하고 있는 베링거.

베링거만은 아니고... 

심지어  uphoria umc-202 타이틀도 달고... 자기 Senmi audio로 ...택갈이까지... 


2023년 4월 3일 월요일

인터넷에 올라온 순대국밥집 가격표와 국민총소득을 함께 그려보았다.

일단 순대국 가격은 매우 합리적이다. 국가의 성장과 함께 같이 성장해왔다. 

국밥 가격이 지나치가 쌌던 것일까... 

일단 국민 총소득 자료 통계청 자료 받아다가 놨으니 이런 이슈가 있을 때 커뮤니티에 올려야겠다. 

500원 1000원 단위로 가격을 올려서 그렇지, 나름 가격 대응을 잘 해나가고 있는 것 같고, 

최저임금으로 고용이 아니라 일당제 아줌마나 가족 경영체계면 지금도 수익을 내는데는 문제가 없어보인다. 

아마 근래에 들어서 국밥 한끼가 든든하다는 이야기가 나온건, 그냥 2010년대부터 진짜로 싸서 그랬던게 아닌가 싶다. 그냥 경제수준에 맞는 음식이었는데, 2010년부터 상대적으로 서민의 음식이 되었다. 






80대부터 2010년에 이르기까지 경제성장과 함께 가격이 올랐으며, 1980년 이전에는, 국가의 성장이 개인의 성장에 못미친게 맞는지... 가격이 지나치게 싼 것 같다. 뭐... 머리카락 팔고 인재 팔아가지고 GDP올라봐야 개인들 삶이 얼마나 나아졌을까... 

2023년 4월 1일 토요일

Homm3 모드(MOD) 조각 개발 기획서. - 임프(패밀리어) 자기 희생 특기., 데빌-강제희생

{0x59F63B, (long)MovingMonsters8, H_LONG}, // sacrifice select whom to revieve
{0x59F65A, (long)MovingMonsters9, H_LONG}, // sacrifice select whom to kill
이미 있다. option 759 - Devils sacrificing.erm
을 참조하면 되겠고, 임프만 어떻게 하면 되려나.
SOD3.2와 WOG의 해당 커맨드 주소를 알게되어 기획 가능.

임프는 자기를 희생해서 우리편을 살릴 수 있음. 
패밀리어는 자기를 희생해서 우리편을 살릴 수 있음(
    차이점이 필요함.
    1. 패밀리어만 가능하게 한다. 
    2. 우리편을 살리는데 필요한만큼만 희생한다. 
    3. 부활 불가능하지만 시체를 남긴다. (!!) 핏로드와 연계 가능 최종목표는 여기로하자.
당장은 해당 기능은 불가능하므로 2번을 가능하도록 코딩을 하자.
ERM에 해당 명령은 존재하지만 살짝 고쳐야하므로, c/c++를 좀 만져야함. 
필요한만큼의 희생은 부활마법에서 잃은 체력을 계산할 수 있음.
그 다음 필요한 패밀리어의 수를 계산할 수 있음. 
이 방법을 쓰면 부활 불가능을 위해서, 초기 전투시 시작 유닛의 숫자 부분을 고치는 코드가 필요함!!

데빌특기 우리편 강제희생.- 
임프 특기랑 결국은 같은 방향. 인퍼노 최하층 1레벨은 알아서 희생하는 역할, 7레벨은 남을 희생시켜서라도 자기가 오래사는 역할!!로 해서 희생마법의 두 특징을 나누어서 사용가능하게 하는게 목표. 
최고의 이기주의를 방향으로하고, 기본체력이 작으므로, 행동스택을 잃지 않고 희생시킨 후, 원래대로 전투를 가능하게하거나, 
우리편에 데빌이 있으면, 다른 유닛들한테 그런특기가 가능한 것 처럼 바꾸는 방향도 가능.


WOG관련 코드에서 __newcallers가 어떤 구조인지 알아야함. 
첫번째가 주소인것 같으나 offset이 있을 수 있음. 두번째는 리턴(&함수이름)의 형태로 보임 하지만 정확치 않음, 3번째는 함수형태를 말하는듯함. H_CALL5는 5개 변수를 받는 STDCALL또는 FASTCALL일 것. 
그러면 H_LONG은 무엇일까? LONG하나를 받는 함수일 것인가. 아 롱점프인듯하다. 
LJMP니까 절대 주소가 맞고, HOTA도 같은 위치일 수 있겠음.  같은위치 맞는듯.
Long jump로 이름없는 함수로 뛰는데 이름없는 함수는 ghidra에서도 네이밍을 해주기까 까다로움.
코맨트를 열심히 달아놔야 할 것으로 보임.
졸업준비로 바빠서 기획서만 쓰고 마침.

2023년 2월 24일 금요일

beamer로 presentation 하기.

 


Beamer 작성법

latex code  preamble에  다음을 추가합니다. 

\usepackage{pgfpages}
\setbeameroption{show notes}
\setbeameroption{show notes on second screen=right}

위처럼 작성하면, PDF파일 오른쪽에 노트가 붙어서 나옵니다. 



3:4면 3:8로 나옵니다. 보통은 bottom으로 해서 handout으로 준비하는데 사용한다고 볼 수 있습니다. 

파일 준비는 끝났습니다. 

뷰어 

이제 이걸 어떻게 볼지가 중요합니다. 해당하는 application은 또 누군가 만들어 놨습니다. 

pdf-presenter-console  ->>(fork)->> pdfpc 

위 프로그램을 사용하면 쉽게 presentation이 가능합니다. 



가로 화면과 새로 화면이 섞여서 이상하게 보이긴 하는데 오른쪽 화면이 청중용 2/3왼 쪽이 발표자용이다. 현재 페이지 다음장, 그리고 노트가 표시되고, 이전화면도 볼 수 있다. 

pdf-presenter-console --notes=right main_with_note.pdf

 이 툴을 사용하면 남은시간 쉽게 표시할 수 있다. 

상황이 여의치 않을 때는 web을 이용할 수 있는데, 

https://beamerviewer.pacien.org/

이 링크를 이용하면 간단하게 사용가능하다. 





파일을 선택하면, 다음처럼 두개의 창을 띄울 수 있다. 


원하는 대로 배치해서 사용하면 되겠다. 

2023년 2월 15일 수요일

Xournalpp 에서 수식에 색상 넣는법.. 의외로 간단.

 

자세히 latex sample 파일을 보면,

%%XPP_TEXT_COLOR%% 라는 데이터를 얻어서, 색상이 있는 수식을 출력 한다고 한다.

선을 그리다가, 빨간 수식을 넣고 싶어서 누르면, 해당하는 값이 나오지 않는다. 

그래서, 버그라고 생각하고, git 레포지토리를 고치고 이상한 짓거리를 많이 한 후 한가지를 알아냈다.



아... TEXT_COLOR니까 text box object를 누르고 색상을 바꾼후, 수식을 쓰면 색상이 올바로 나온다.

이 과정중에 cpp의 멋짐을 또보게 된다. 


\definecolor{colorname}{HTML}{6hexcode_color}

 s << std::hex << std::fill(0) << std::setw(6) <<std::right << colorClass;


colorClass {

.....char transparent,red,green,blue;

    operator int32_t() {

        re = (transparent  << 24) | (red << 16) | (green <<8)| (blue)   ) ;

    }

}

   

6hexcode_color  = s.rawtext(); 와 같은 식의... 출력...

c방식의 사고방식이 머리에 차있어서 이런거 볼 때마다 너무 멋짐.


2023년 1월 10일 화요일

던전앤드래곤 쉐도우오브미스타라 법사찌르기 랜덤 데미지 공식.

 Reference[1] 

https://dammit.typepad.com/blog/2011/01/ddsom-critical-hits-random-numbers.html



위 블로그에서 법사찌르기 랜덤데미지를 찾았다.


법사의 강공력은 다른 캐릭터처럼 1.5배의 데미지를 주는것이 아닌, 1도트의 데미지만 주다가 한번씩 엄청난 데미지가 주어진다.

사실 이 문제에 관심을 가진 것은 아니고, ddsom의 무기 공격력 테이블이나, 각 캐릭터별 레벨명 공격력 변경값 같은걸 찾으려고 ddsom + offset +memory  로 검색을 하다가 나온 것이다. 

일단 더 많은 정보는 없었고, 히트박스 관련글이 있었으나 이 부분은 관심이 없다. 



위 블로그 주인장은, 적 유닛의 체력값의 주소를 기억하고 해당 주소값의 데이터를 변경하는 함수 콜을 추적한 것으로 보인다. 


사실 내가 필요 한게 저 메모리주소리스트 들인데 설명을 위한거 말고는 없어서 아쉽다. 


Register A0는 player base 0xff75de(for Player 1) 이고 A1은 공격대상의 베이스라고 한다. (0xFFBA1E for boses) 라고 하는데 무슨 소리인지 잘모르겠다. 저기 있는 메모리 값을 저 레지스터로 읽어온다는 것이겠지.

(저 부분의 코드가 호출 될 때 레지스터에 저게 올라가 있다는건지... )

$19a88.l 이라는 서브루틴은  D0에 2바이트 랜덤넘버를 심는 서브루틴이라고 한다. 
랜덤함수는 알면 게임의 랜덤성을 이용하는데 모두 접근 할 수 있어 좋다. 

작은 바이트의 반만 사용한다라고 써놓고는 나중에는 또 다른 반바이트를 써서 좋 1바이트를 쓴다.

$3ec0와 $3ed4는 테이블 룩업을 하는거라는데 잘 모르겠다. 

아래에 테이블 룩업을 테이블로 표시해놨는데 

그냥 이건 그대로 가져왔다. 


Table Ref[1]

random number
D0 at $3EBE
D4 at $3EC4random number
D0 at $3ED2
D4 at $3ED8
0x0 - 0xA0xFFn/a
0xB - 0xC0x000x0 - 0x50x02
0x6 - 0xF0xFF
0xD - 0xE0x100x0 - 0x30x01
0x4 - 0xF0xFF
0xF0x200x0 - 0x10x00
0x2 - 0xF0xFF



3EBE의 하프바이트를 통해서 3ec4의 값을 설정 하는데 내부 계산을 위해쓰이는거 같고,
다음 D0 at $3ED2의 테이블 룩업을 통해   0,1,2 값을 얻고 그 외에는 1도트 데미지를 주게하고,

0,1,2값을 얻었을 때는 적의 전체HP에다가 저 숫자를 shift-right-bit? 연산을 한다. 

그 결과 다음과 같은 결과를 얻는다. 

full damage1/16 x 2/161/1280.78%
1/2 damage2/16 x 4/164/1283.13%
1/4 damage2/16 x 6/166/1284.69%
1 point damage128/128 - 1/128 - 4/128 - 6/128117/12891.5%


의외로 8.5%의 확률로 빅데미지가 들어간다. 10번 때려서 1/4이상 데미지를 줄 수 있다면 딱히 찌르는데 목적을 둘 필요는 없다. (그냥 콤보용) 여럿이 할 수록 적의 체력이 많아지므로 보스잡는데는는 역시 확실하다. 

음 나중에 테스트로 랜덤함수 결과 나오는 부분을 건드리면, 저게 잘 적용되는지 확인할 수 있을거로 보이지만 지금 당장은 이거할 여유가 없다. 

이어서 뭐 이소리 저소리 있는데  적의 체력은 최대 1000 까지인데, 최대데미지 99제한 코드가 7바이트 연산으로 처리되어서, 100-127일 때만 99로 줄어들고 나머지는 정상적용이라고 한다. 

또 rng 서브루틴의 대한 말도 있는데, 랜덤함수는 여러군데서 호출되므로 임의로 조작할수는 없다고 한다.



2022년 12월 2일 금요일

Libreoffice Calc에서 Libreoffice base로 또는 SQL로 데이터 넣는 방법.

복사해서 붙여넣기로 하면서 에러가 나는 경우가 몇번 있었어서, Sql query 만들어서 하는 방법을 택하였다. SQL query를 만들 때 가장 문제는 문자형의 경우는 "" 로 싸거나, ''로 싸거나 하는 경우가 많다는거다, 그래서 필요한 함수를 먼더 만들어야한다.
도구 >> 매크로 >> edit 매크로
다음과 같은 Basic 함수를 만들어주자.
function dquoted(Optional x)
  Dim iRow As Integer
  Dim iCol As Integer
  DIM resultString As String 
  resultString = ""
 
  If NOT IsMissing(x) Then
    If NOT IsArray(x) Then
resultString =  Chr(34) & x &Chr(34)
Else
      For iRow = LBound(x, 1) To UBound(x, 1)
        For iCol = LBound(x, 2) To UBound(x, 2)
          resultString = resultString &", "  & Chr(34) & x(iRow,iCol) &Chr(34)
        Next
      Next
    End If
  End If
  dquoted = resultString
end function
여러칼럼의 문자 칼럼이 있다면, 쓸 수 있도록 해주었다. 그 다음 부터야 간단하다. 앞 셀에는 insert into tablename ( 를 넣고, 다음 칼럼이 숫자면 그냥 =해당 데이터로 그대로 복사해준다. 문자열로 이루어진 칼럼은 위 함수를 사용해서 =dquoted( 해당 문자열 또는 문자열 어레이) 를 해준다. 이런 식의 반복 후 마지막 데이터 칼럼 뒤에 ); 을 넣어준다. 그 다음에 =concat( insert into 셀부터 ); 까지 선택 그 다음쿼리를 다 선택후 끌어내려서 채우기를 한 후, concat 셀을 모두 선택한 후, base에 가서 sql 명령어 넣기를 하면 자료가 들어간다.

가장 많이 본 글