Lacos

Introduction


 

LACOS 패키지

희소 CE 모델을 구성하기 위해 L0 최적화 및 볼록 L1 알고리즘을 이용할 수 있습니다. 또한, 다양한 반복 작업들을 자동화했습니다. LACOS는 모델링의 계산-집약적 부분을 처리하기 위해 C 모듈과 함께 Python으로 작성했습니다. 패키지의 다양한 구성 요소들와 이들 간의 흐름이 위 그림에 나타나 있으며, 아래에서 간략하게 설명합니다. 
 
PyClex
파이썬 클러스터 확장의 약어인 PyClex는 DFTrunner에서 생성한 데이터베이스에서 클러스터 확장을 수행합니다. 이 코드는 다중사이트, 다중요소 고용체에 사용할 수 있습니다. "최고의” 클러스터 세트 {α}는 모델 선택 기법을 사용하여 얻습니다. 구체적으로, 선형 방정식 E = ΦJ는 미결정 상태의 M <N 을 해결하며, 여기서 MxN은 행렬 Φ의 크기이고; 행렬 Φ는 간섭이 적도록 구성됩니다. 모델 선택을 위해 PyClex에서 실행된 다양한 알고리즘은 크게 세 가지 범주로 분류됩니다.

  • 발견적 기법 : 유전 알고리즘 (GA), 희소 모델 선택을 위해 수정된 GA
  • "탐욕"알고리즘을 사용하는 근사 L0 최적화: 직교매칭퍼슛(OMP), CoSaMP, 반복적 경성 임계복원(IHT) 및 그 변형.
  • 희소 모델 선택을 위한 L1-최적화: LASSO, Split-Bregman 방법, 볼록 최적화(cvxpy 사용), ISTA / FISTA
  • 혼합 규범 L2 / Lq - 블록 희소 특징 선택을 위한 최적화: 반복적 재계산 최소제곱법(IRLS) 알고리즘 - 다중성분 재료에 사용됩니다.

CPyMonC
이는 유한 온도 시뮬레이션을 수행하기위한 Monte Carlo 코드입니다 (이름은 C-Python Monte Carlo에서 유래). PyClex의 "최고” {α} 및 Jα가 이 코드에 대한 입력입니다. Monte Carlo 시뮬레이션은 재료 시스템의 유한-T 구성에 대한 액세스를 제공하므로, 다양한 열역학적 양을 계산할 수 있게 해줍니다.  코어 Monte Carlo 루프를 처리하는 코드의 C 함수는 OpenMP를 사용하여 병렬화됩니다.

LACOS 패키지는 현재 벌크 시스템을 목표로 하고 있으며, 향후 표면을 포함해서, 촉매, 재료의 전기화학, 표면-근처 합금 등으로 클러스터를 확장할 것으로 예상됩니다. 패키지와 자체 개발한 모델링 플랫폼 CINEMAS의 통합은 앞으로 몇 년 안에 진행될 것입니다.
www.ikst.res.in/mahesh는 LACOS 패키지의 개발자입니다.

 

References

  1. Mahesh Chandran, Multiscale abinitio simulation of Ni-based alloys: Real-space distribution of atoms in γ+γ' phase,
    Journal : Computational Materials Science 108, 192 (2015). Access Journal Site
  2. M. A. Davenport,M. F. Duarte, Y. C. Eldar, G. Kutyniok, in Compressed Sensing: Theory and Applications, Cambridge University Press, Cambridge (2012). To book site