AB Initio 구조 진화 (MAISE) 기능을위한 모듈
* 주간 상호 작용에 대한 신경망 기반 설명
* 진화 최적화
* 구조 분석
1. 일반 정보
2. 다운로드 및 설치
3. 입력
4. 예
5. 입력 태그 설정 설정
Maise는 개발되었습니다
Alexey kolmogorov [email protected]
Samad Hajinazar [email protected]
Ernesto Sandoval [email protected]
현재 버전 2.9는 Linux 플랫폼에서 작동하며 원자 구조 모델링, 최적화 및 분석을위한 3 가지 모듈을 결합합니다.
1 NN (Neural Network) 모듈은 NN 모델을 구축, 테스트 및 사용하여 밀도 기능 이론 계산에 비해 낮은 계산 비용으로 거의 AB 이니시오 정확도와 동기 간 상호 작용을 설명합니다.
NN 모델을 사용하여 구조 검색을 가속화하는 주요 목표를 사용하면 모듈의 주요 기능은 주어진 구조를 완화하는 것입니다. NN 응용 프로그램과 비교를 단순화하기 위해 VASP 소프트웨어에 사용 된 것과 입력 및 출력 파일 형식을 면밀히 일치 시켰습니다. 'Models/'디렉토리에서 이용 가능한 이전에 매개 변수화 된 NN 모델이 결정 성 및/또는 나노 구조화 된 재료에 대해 생성되고 광범위하게 테스트되었습니다. NNS의 첫 번째 실제 응용은 새로운 합성 MG-CA 및 M-SN 합금의 예측뿐만 아니라보다 안정적인 Cu-PD-AG 및 Au 나노 입자의 확인을 포함한다 [4,5].
사용자는 비교적 작은 구조에 대한 밀도 기능 이론 (DFT) 총 에너지 및 원자력 데이터에 대해 일반적으로 훈련되는 MAISE를 사용하여 자체 NN 모델을 만들 수 있습니다. 관련 및 다양한 구성의 생성은 출판 된 작업에 자세히 설명 된 '진화 샘플링'프로토콜과 별도로 수행됩니다 [6]. 이 코드는 여러 요소를 가진 화학 시스템을위한 강력한 NNS를 구축하는 방법에 대한 고유 한 기능 인 '계층화 된 훈련'을 소개합니다 [6]. NN 모델은 계층 적 방식으로, 먼저 요소, 바이너리 등을 위해 개발되므로 주기율표에서 확장 블록에 대한 재사용 가능한 라이브러리를 생성 할 수 있습니다.
2 구현 된 진화 알고리즘 (EA)은 주어진 화학 조성에서지면 상태 구성을 효율적으로 식별 할 수있게한다. 우리의 연구에 따르면 EA는 실험 구조 입력이 없을 때 큰 구조를 다루는 데 특히 유리하다는 것을 보여 주었다 [7,8].
검색은 3D 벌크 결정, 2D 필름 및 0D 나노 입자에 대해 수행 될 수 있습니다. 구조의 모집단은 사전 정보에 따라 무작위로 또는 사전 정의 될 수 있습니다. 필수 작업은 이전 세대의 두 부모 구조를 기반으로 새로운 구성이 생성되고 부모 구조가 무작위로 왜곡 될 때 '돌연변이'가 생성 될 때 필수 작업은 '크로스 오버'입니다. 0D 나노 입자의 경우, 우리는 지정된 크기 범위에서 클러스터의 효율적인 동시 최적화를 허용하는 다중 정보 진화 알고리즘을 도입했습니다 [4].
3 분석 기능에는 방사형 분포 함수 (RDF)에 기초한 구조의 비교, 우주 그룹의 결정 및 외부 SPGLIB 패키지가있는 Wyckoff 위치 등이 포함됩니다. 특히 RDF 기반 구조 도트 제품은 EA 검색에서 중복 구조를 제거하고 발견 된 저에너지 구조 풀에서 다른 구성을 선택합니다.
[1] https://pubs.rsc.org/en/content/articlelanding/2018/cp/cp05314f# !divabstract
[2] https://www.nature.com/articles/s41524-022-00825-4
[3] https://pubs.rsc.org/en/content/articlelanding/2023/cp/d3cp02817h/unauth
[4] https://pubs.rsc.org/en/content/articlelanding/2019/cp/c9cp00837c# !divabstract
[5] https://pubs.acs.org/doi/10.1021/acs.jpcc.9b08517
[6] https://journals.aps.org/prb/abstract/10.1103/physrevb.95.014114
[7] https://journals.aps.org/prl/abstract/10.1103/physrevlett.109.075501
[8] https://journals.aps.org/prb/abstract/10.1103/physrevb.98.085131
MAISE의 소스 코드는 실행을 통해 CommandLine에서 얻을 수 있습니다.
git clone git://github.com/maise-guide/maise.git
또는
git clone https://github.com/maise-guide/maise.git
또는
wget -O master.zip https://github.com/maise-guide/maise/archive/master.zip unzip master.zip
1 전체 컴파일에 ' -jobs를 만들기 '를 사용하십시오. 재 컴파일을 위해 '청소'를 사용하여 객체 파일을 제거하거나 객체 파일과 외부 라이브러리를 제거하려면 '클리닝'을 제거하십시오.
2 Maise 컴파일 중에 '-Jobs Make'는 2019 년 2 월 2 일 필요한 두 가지 외부 라이브러리가 필요한지 확인합니다. 그렇지 않은 경우 자동으로 ./ext-dep로 다운로드하고 대부분의 시스템에서 ./lib에 설치됩니다.
3 GSL 또는 SPGLIB 설치가 자동으로 완료되지 않은 경우 수동으로 컴파일하고 (i) libgslcblas.a 및 libsymspg.a를 './lib'하위 디렉토리에 복사하십시오. (ii) 'spglib.h'헤더는 './lib/include'하위 디렉토리; 및 (iii) 모든 GSL 헤더는 './lib/include/gsl'하위 디렉토리로 들어갑니다.
4 A 'Check'스크립트는 코드의 올바른 기능을 보장하기 위해 MAISE 실행 파일을 컴파일 한 후 실행할 수있는 './test/'디렉토리에서 사용할 수 있습니다. 이 스크립트는 데이터를 구문 분석하고 신경망을 훈련하며 결정 구조를 평가할 때 코드의 성능을 자동으로 확인합니다. 컴파일이 정상이면 '확인'스크립트가 출력됩니다. 그렇지 않으면 오류 로그에 문제에 대한 추가 정보가 제공됩니다.
코드는 Linux 플랫폼에서 광범위하게 테스트되었습니다. 다른 플랫폼에서 패키지의 설치 및 성능에 대한 사용자의 피드백에 감사드립니다.
시뮬레이션을 정의하는 기본 입력 파일은 작업 설정과 함께 '설정', NN 매개 변수가있는 '모델'및 VASP 형식의 원자 구조 매개 변수가있는 'POSCAR'입니다. NN 개발의 구문 분석 단계에서 원자 환경을 NN 입력으로 변환하려면 Bearler-Parrinello 대칭 함수를 지정하는 '기본'파일이 필요합니다.
EVOS | NNET | 셀 | |||||
찾다 | 시험 | 구문 분석 | 기차 | 시험 | Simul | 시험 | |
설정 | + | + | + | + | + | + | |
모델 | +* | +# | +# | ||||
기초 | + | $ | |||||
spg | + | + | |||||
GSL | + | + | |||||
* 계층화 된 훈련의 경우 개별 모델을 제공해야합니다. 구문 분석 디렉토리에 저장된 $ '기본'은 훈련이 끝날 때 '모델'에 추가됩니다. # '모델'은 훈련이 끝나면 끝에 '기본'이 있습니다. |
구조 검사 및 조작 기능은 깃발로 Maise를 호출하여 실행됩니다.
maise -flag
깃발 | 깃발 설명 |
---|---|
남성 | 사용 가능한 플래그 목록을 출력하십시오 |
RDF | POSCAR의 RDF를 계산하고 플롯하십시오 |
CXC | RDF를 사용하여 POSCAR0 및 POSCAR1 용 도트 제품을 계산합니다 |
CMP | RDF, 우주 그룹 및 POSCAR0 및 POSCAR1의 부피 비교 |
spg | poscar를 str.cif, conv, prim으로 변환하십시오 |
cif | str.cif를 Conv and Prim으로 변환하십시오 |
어둑한 | POSCAR가 주기적인지 (3) 또는 비 병리 (0)인지 확인하십시오. |
vol | 결정 또는 나노 구조에 대한 원자 당 부피를 계산합니다 |
썩음 | 관성 순간의 고유 벡터를 따라 나노 입자를 회전시킵니다 |
움직임 | 일정한 이동으로 원 방향을 따라 원자를 움직입니다 |
상자 | 나노 입자의 상자 크기를 재설정하십시오 |
한모금 | NA X NB X NC가 지정한 슈퍼 셀 만들기 |
eig | 포논 고유 모드를 따라 POSCAR의 단위 셀을 이동하십시오 |
주문 | 종별 원자를 주문하십시오 |
밖으로 | VASP에서 MD 또는 휴식 궤적에서 스냅 샷을 추출하십시오 |
디렉토리 '예제/'에는 단위 셀 분석 및 조작, 데이터를 구문 분석, 신경망을 훈련, 신경망 모델을 사용하여 구조 시뮬레이션, 신경 네트워크 모델을위한 진화 적 검색, 분자 역학 실행 및 포논 계산을위한 Maise 작업 샘플이 있습니다. Eash 예제에는 readme 파일, 특정 작업에 대한 관련 태그 만있는 설정 파일 및 비교를위한 출력 파일이 있습니다.
메인 작업 유형 선택기
구조-발전
메인 EVOS
EVOS 운영
교차/돌연변이
분자 역학
종 관련 종
I/O
일반 모델
신경망 모델
신경망 교육
구문 분석
세포 이완
Jobt
nmax mmax
코드 dene kmsh lbox ndim nitr nnjb npop rand runt seed sitr tini
Blob Chop Invs Mate Mute Pack Plnt Refl Rube Swap Tetr
ACS ADST ELPS LCRS LDST MCRS SCRS SDST
CPLT CPLP ICMP DELT MOVI NSTP MDTP TMAX TMIN TSTP
ASPC NSPC TSPC
Cout Data Depo Eval OTPT WDIR
ncmp nngt nnnn nnnu nsym
fmrk lreg ntrn ntst tefs npar
Emax fmax fmin vmax vmin mmax
Etol mint mitr pgpa rlxt 시간
꼬리표 | 설명 |
---|---|
Jobt | 구조 분석 (00) 플래그, 진화 검색 (10) 실행 (11) 소프트 출구 (12) 하드 출구 (13) 분석, 세포 시뮬레이션 (20) 이완 (21) 분자 역학 (22) 포논 계산, 포논 계산, 데이터 구문 분석 (30) NN 교육을위한 입력 준비, NN 교육 (40) 전체 교육 (41) 계층화 된 훈련 |
암호 | 사용중인 코드 유형. (0) MAISE-INT (1) VASP-EXT (2) MAISE-EXT |
NPAR | 병렬 NN 훈련 또는 셀 시뮬레이션을위한 코어 수 |
박하 | 신경망 훈련 및 셀 최적화를위한 Optimizer 알고리즘. (GSL 최소화 유형 (0) BFGS2 (1) CG-FR (2) CG-PR (3) 가장 가파른 하강 |
미트 | 최적화 단계의 최대 수; NN 훈련 또는 셀 최적화 단계에 대해 원하는 정확도에 도달하지 않은 경우 |
rlxt | 셀 최적화 유형 (2) 힘 만 (3) 전체 셀 (7) 부피 (ISIF in VASP) |
에톨 | 훈련 또는 셀 최적화 수렴에 대한 오류 허용 오차 |
TEFS | 훈련 목표 값 (0) E (1) EF (2) ES (3) EFS (4) 장난감 |
FMRK | EF 또는 EFS 교육에 사용하기 위해 구문 분석 할 원자의 일부 |
쿠프 | 셀 평가 및 최적화에서 Outcar 파일의 출력 유형 |
nmax | 단위 셀의 최대 원자 수 |
mmax | 컷오프 반경 내 최대 이웃 수 |
NSPC | 진화 적 검색, 데이터 구문 분석 및 신경망 교육을위한 요소 유형의 수. |
TSPC | NSPC 태그로 지정된 요소의 원자 수 |
ASPC | 진화 적 검색을위한 각 요소의 원자 수 |
nsym | "기본"파일을 사용하여 데이터를 구문 분석 할 수있는 Bekler-Parrinello 대칭 기능의 수 |
NCMP | 신경망의 입력 벡터의 길이 |
ntrn | 신경망 Trainin에 사용되는 구조 수 (음수 평균 백분율) |
ntst | 신경망 테스트에 사용되는 구조 수 (음수 평균 백분율) |
nnnn | 신경망의 숨겨진 층 수 (입력 벡터 및 출력 뉴런은 포함되지 않음) |
nnnu | 숨겨진 층의 뉴런 수 |
nngt | 숨겨진 층의 뉴런에 대한 활성화 기능 유형 (0) 선형 (1) TANH |
Emax | 가장 낮은 에너지 구조 의이 부분 만 구문 분석하십시오. 0에서 1까지 |
fmax | 이 값보다 큰 힘으로 데이터를 구문 분석하지 않습니다. |
vmin | 이 값보다 부피/원자가 작은 것으로 데이터를 구문 분석하지 않습니다. |
vmax | 이 값보다 큰 부피/원자로 데이터를 구문 분석하지 않습니다. |
ndim | 진화 적 검색 및 세포 최적화에서 단위 셀의 치수 (3) 결정 (2) 필름 (0) 입자 |
lbox | Angs에서 진화 적 검색에서 입자를 생성하기위한 박스 치수 (결정에 대한 무시) |
NPOP | 진화 적 검색에서 인구 규모 |
sitr | 진화 적 검색에서 반복 시작 (0) 임의 또는 지정된 구조에서 시작 |
니트 | 진화 적 검색의 반복 횟수 (SITR보다 커야 함) |
Tini | sitr = 0 일 때 진화론 검색 시작 유형 |
시간 | 진화 적 검색 및 세포 최적화에서 세포 이완을위한 최대 시간 |
PGPA | GPA의 압력 |
모래톱 | 수영장에서 진화 적 검색에서 생성 된 별개의 구조를 저장/이 에너지/원자 (EV/Atom) 창 내에있는 경우. |
kmsh | VASP-EVOS에 사용되는 K- 메쉬 밀도. 제안 된 값 : S/C의 경우 0.30, 금속의 경우 0.05 |
씨앗 | Evolutionary Search (0)에서 임의의 숫자 생성기에 대한 시드 시작 (0)은 시드 (+) 종자 값으로 시간을 사용합니다. |
랜드 | 데이터 세트의 구문 분석을위한 시드 시작. (0) 시간을 종자로 사용 (+) 종자 값 (-) 무작위 화 없음 : 구조는 목록 순서로 구문 분석됩니다. |
Tmin | MD의 최소 온도 (k) |
tmax | MD의 최대 온도 (k) |
TSTP | MD의 온도 단계 (k)는 tmin에서 tmax에서 실행 중입니다. |
델트 | MD의 시간 단계 |
NSTP | MD에서 온도 당 단계 수 |
cplt | MD 실행을위한 코-호버 온도 조절기의 커플 링 상수. 제안 : 25.0 |
cplp | MD 실행을 위해 Brendsen Barostat의 커플 링 상수. 제안 : 100.0 |
ICMP | MD 실행에 대한 Brendsen Barostat의 등온 압축성 (1/gpa) |
Movi | MD 실행 중에 구조 스냅 샷이 저장되는 단계 수 |
MDTP | MD 런 유형 (10) NVE (20) NVT : NOS-HOOVER (30) NPT : NOS-HOOVER 및 BRENDSEN (40) ISOBARIC (11,21,31,41) POSCAR 파일에서 읽은 속도로 실행됩니다. |
데포 | DFT 데이터 세트로가는 경로 |
데이터 | 구문 분석 된 데이터의 위치는 훈련을 위해 구문 분석하거나 읽습니다 (구문 분석 중에 덮어 쓸 것임) |
OTPT | 교육 프로세스에 모델 매개 변수를 저장하기위한 디렉토리 |
평가 | 모델 테스트 데이터를위한 디렉토리 |
WDIR | 진화론 검색, MD 실행 등의 작업 디렉토리 |
테트 | 테트리스 작동을 사용하여 무작위로 생성 된 구조의 일부. 0에서 1까지 |
plnt | 씨앗에서 생성 된 구조의 일부. 0에서 1까지 |
팩 | 폐쇄 팩 구조에서 생성 된 구조의 일부. 0에서 1까지 |
얼룩 | 구조의 일부는 블로브 모양을 사용하여 무작위로 생성됩니다. 0에서 1까지 |
친구 | 각 부모로부터 두 개의 반쪽을 사용하여 크로스 오버에 의해 생성 된 구조의 분율. 0에서 1까지 |
교환 | 부모의 코어와 쉘을 사용하여 크로스 오버에 의해 생성 된 구조의 일부. 0에서 1까지 |
루베 | Rubik 's Cube 작동에 의해 생성 된 구조의 일부. 0에서 1까지 |
반사 | 반사를 통한 대칭화에 의해 생성 된 구조의 일부. 0에서 1까지 |
inv | 역전을 통한 대칭화에 의해 생성 된 구조의 분획. 0에서 1까지 |
촙 | 면을 만들기 위해 도마에 의해 생성 된 구조의 일부. 0에서 1까지 |
무음 | 구조에 대한 무작위 왜곡에 의해 생성 된 구조의 분획. 0에서 1까지 |
MCRS | 크로스 오버에서 0.50 돌연변이 속도 |
SCRS | 0.00 크로스 오버 : 스와핑 속도 |
LCRS | 0.00 크로스 오버 : 격자 벡터에 대한 돌연변이 강도 |
ACRS | 0.10 교차 : 원자 위치에 대한 돌연변이 강도 |
SDST | 0.00 왜곡 : 스와핑 속도 |
ldst | 0.00 왜곡 : 격자 벡터의 돌연변이 강도 |
adst | 0.20 왜곡 : 원자 위치에 대한 돌연변이 강도 |
엘프 | 0.30 무작위 : 나노 입자 타원 |