GPU 가속 핵자 자기 SANS 분석 도구 NuMagSANS
초록
NuMagSANS는 핵자와 자기 산란 길이밀도 및 자화 분포를 입력으로 받아 2차원 SANS 단면과 상관함수를 GPU로 빠르게 계산하는 오픈소스 패키지이다. 약 100개의 응답 함수, 전방향 샘플 회전, MuMax3와의 연동, 형태‑상호작용 분리 기능을 제공한다.
상세 분석
NuMagSANS는 현대 SANS 실험에서 요구되는 복합 구조와 복잡한 자기 텍스처를 정량적으로 해석하기 위해 설계되었다. 핵자 산란 길이밀도 N(r)와 자화 벡터 M(r)을 실공간에서 직접 입력받아 푸리에 변환을 수행하고, 이를 기반으로 핵자, 자기, 핵자‑자기 간섭, 그리고 편광‑분해된 교차단면을 계산한다. 핵심은 NVIDIA GPU의 대규모 병렬 연산을 활용한 CUDA 구현으로, 전통적인 CPU 기반 코드에 비해 10‑100배 이상의 속도 향상을 달성한다. 특히 2차원 q‑공간에서의 푸리에 합산을 블록‑와프 단위로 최적화하여 메모리 전송 오버헤드를 최소화하고, 대용량 격자(예: 512³)에서도 실시간 수준의 계산이 가능하다.
프로그램은 100여 개에 달하는 응답 함수를 라이브러리화했으며, 이는 비편광, POLARIS, SANSPOL, 방사형 평균 등 다양한 실험 조건에 맞춰 자동 선택된다. 사용자는 ˆP 벡터를 지정해 외부 가이드 필드 방향을 정의하고, 샘플 회전을 Euler 각도로 제어함으로써 전방향 각도 의존성을 탐색할 수 있다. 또한 MuMax3와 같은 마이크로자기 시뮬레이터와의 직접 연동을 지원해, 시뮬레이션된 스핀 구성에서 바로 SANS 패턴을 생성한다. 이는 스키머, 나노입자, 도메인 월 등 복합 자성 물질의 형태‑상호작용 분석에 큰 장점을 제공한다.
핵자‑자기 간섭 항(dΣ_NM/dΩ)은 e_N·e_Q 형태로 구현돼, 핵자와 자기 산란이 동시에 기여하는 경우에도 정확히 분리해준다. 특히 스키머 격자와 같이 Bragg 피크와 개별 입자 형태인자를 동시에 고려해야 하는 경우, NuMagSANS는 형태 인자와 구조 인자를 독립적으로 추출하는 프레임워크를 제공한다.
오픈소스 배포는 MIT 라이선스로 GitHub에 공개돼, 소스 코드 컴파일 시 nvcc만 필요하고 외부 의존성이 거의 없으며, Linux·macOS·Windows를 모두 지원한다. 벤치마크 데이터셋은 Zenodo에 제공돼 재현성을 확보한다. 현재 제한점은 핵자 스핀 의존 산란을 다루지 않으며, 고정밀 실험에서는 스핀 누설 보정이 필요하지만, Pol‑Corr·GRASP와 같은 외부 툴과 연계해 보정이 가능하도록 설계돼 있다. 전반적으로 NuMagSANS는 복합 자성 시스템의 SANS 해석을 가속화하고, 사용자 정의 입력과 풍부한 분석 옵션을 통해 연구 생산성을 크게 향상시킨다.
댓글 및 학술 토론
Loading comments...
의견 남기기