Work page에서는 workflow를 담은 개별 페이지인 work들을 관리할 수 있습니다.
Work는 연구 노트와 같은 방식으로 사용할 수 있습니다. 하나의 work는 하나의 시뮬레이션 연구를 위한 모든 모듈을 포함합니다. 계산을 실행하기 위해 MatSQ 서버에 제출하는 단일 명령인 Job과는 다른 개념으로, 한 Work에는 여러 개의 계산 작업 (job)이 포함될 수 있습니다.
Work 페이지에서는 구조 모델링부터 DFT 시뮬레이션 결과의 시각화 (후처리)에 이르기까지, 재료 시뮬레이션, 전자 구조 계산, 분자 동역학의 모든 과정을 간단하게 수행할 수 있습니다. 현재 사용 가능한 프로그램은 DFT 소프트웨어인 Quantum Espresso (QE), GAMESS, MD 소프트웨어인 LAMMPS, 열역학 계산 패키지인 Open calphad입니다.
다음 'Workflow template'을 따라 모듈을 추가하여 원하는 계산 결과를 얻기 위한 work를 구성할 수 있습니다. 혹은 'New Work' 아이콘을 클릭하여 자유롭게 'workflow'를 구성할 수 있습니다. 직접 모듈을 추가하며 당신의 연구에 꼭 맞는 'workflow'를 만들어 보십시오.
MatSQ는 시뮬레이션 연구를 수행하는 데 필요한 여러 기능들을 쉽게 사용할 수 있도록, 기능들을 분리하여 모듈화하였습니다. 모듈은 독립적으로 사용할 수 있는 모듈과 다른 모듈에 연결하여야만 사용이 가능한 모듈이 있습니다. 모듈의 종류는 다음과 같습니다.
기본적으로 workflow는 Structure builder에 구조를 업로드 또는 제작 후 Simulation 모듈을 추가하여 Simulation을 수행한 다음, Analyzer 모듈을 추가하여 결과를 그래픽으로 확인하는 순서로 진행됩니다. 각각의 모듈에 대한 자세한 정보는 Modules 를 참고하십시오.
Work page 하단에서 Module 추가를 위한 메뉴 바인 모듈 셀렉터를 보실 수 있습니다. 원하는 모듈을 선택하여 추가하십시오. Simulation과 Analyzer에 속하는 모듈은 다른 모듈에 연결하여 사용해야 합니다. 연결에 관한 정보는 다음 모듈 사용 문서를 참고하십시오.
'연결 (Connect)'은 MatSQ에서 workflow를 구성할 때 가장 중요한 부분입니다. 기본적으로, 하나의 workflow는 블록을 조립하듯이 여러 모듈을 조립하여 만들 수 있습니다. 연결은 어떠한 모듈에 있는 정보를 새로운 모듈 (혹은 버튼을 클릭한 해당 모듈) 로 가져온다는 의미이며, 특히 Simulation과 Analyzer에 속하는 모듈을 사용하기 위해 필수적인 기능입니다. 다음 단계를 따라 두 모듈을 연결할 수 있습니다.
수많은 모듈 중 원하는 모듈만을 표시하기 위한 기능입니다. 버튼을 통해 New work 생성 시 기본으로 추가될 모듈을 변경할 수도 있습니다.
단위 변환기를 통해 에너지, 길이 단위를 변환할 수 있습니다.
'Simulation' 모듈에서 Input script 설정을 완료했다면 작업을 제출할 준비가 된 것입니다. Input script 설정에 관해서는 Modules 카테고리의 각 항목을 참조하십시오.
'Resource'는 'On-demand Instance', 'Spot Instance' 옵션 중 선택할 수 있습니다. (Spot Instance $0.25/cpu·시간, On-demand Instance $0.5/cpu·시간)
'PPN' 은 병렬 컴퓨팅을 위한 core (cpu) 개수를 의미하며, 하나의 node에서 최대 48개까지 이용할 수 있습니다. 이때, 차감되는 크레딧은 core의 개수에 비례합니다. ($0.25/cpu·hour)
'Node type' 은 'Computing', 'High memory' 옵션 중 선택할 수 있습니다. 'High memory' 옵션을 선택하면 사용되는 ram의 크기가 두 배 증가하기 때문에, hybrid functional, phonon 계산 등에 적합합니다. 계산 속도는 다소 감소할 수 있습니다.
'Job name' 에 해당 계산 작업의 이름을 적으십시오. 다른 job과 구분되는 이름을 붙이면 해당 계산을 다른 계산과 혼동하지 않을 수 있습니다.
'Version' 에서는 해당 시뮬레이션 모듈을 통해 사용할 프로그램 (Quantum Espresso 등)의 버전을 선택할 수 있습니다.
작업 완료 후 이메일을 통한 알림을 받기를 원하는 경우, 'Finish Notice' 체크박스에 체크하십시오.
버튼을 클릭하면 클라우드 서버로 작업이 제출됩니다. 상단 내비게이션 바의 ▶ 아이콘을 클릭하여 대시보드를 열면 다음 그림과 같이 작업의 진행 상황을 확인할 수 있습니다. 필요한 경우, 작업을 중단시킬 수 있습니다. 종료된 작업은 리스트에서 제거됩니다.
이때, 계산 수행 중 크레딧이 부족할 경우 진행 중인 작업은 일시정지됩니다. 일시정지된 작업은 최대 1 주 안에 재시작하지 않으면 중단됩니다. 크레딧 충전에 관해서는 크레딧 충전 문서를 참고하십시오.
작업을 제출할 때마다 인스턴스 유형(Spot/On-Demand)을 선택할 수 있으며, On-Demand Instances를 선택하면 소모되는 총 CPU 시간과 크레딧량은 Spot Instances를 선택할 때의 두 배가 됩니다.
Template은 계산에 익숙치 않은 사용자를 위해 준비된 workflow입니다.
여러 workflow에 대한 template이 준비되어 있으니 얻고자 하는 데이터에 알맞은 template을 선택해 주십시오.
단계를 따라 진행하시면 결과를 쉽고 빠르게 얻을 수 있는 좋은 가이드가 될 것입니다.
이 템플릿을 따라 시스템의 DFT 에너지를 얻으십시오. 다음 단계로 구성되어 있습니다.
시스템의 Density of states (DOS)를 얻기 위해 다음 절차를 따를 수 있습니다.
이 template은 charge density difference calculation 계산을 더 쉽게 수행할 수 있도록 만들어졌습니다. Charge density difference 계산을 위해서는 두 개의 charge density 계산이 선행되어야 합니다.
Band structure를 계산하기 위해서는 여러 단계의 계산을 거쳐야 합니다. 먼저 기본 DFT calculation을 진행한 다음 (PWscf: scf), eigenvalue를 re-ordering하는 계산을 수행하고 (PWscf: bands), band-related property들을 계산해야 합니다 ('Band Structure' tab). 다음 단계를 수행하여 Band structure를 계산할 수 있습니다.
Work 페이지에서는 구조 모델링부터 DFT 시뮬레이션 결과의 시각화 (후처리)에 이르기까지, 재료 시뮬레이션, 전자 구조 계산, 분자 동역학의 모든 과정을 간단하게 수행할 수 있습니다. 현재 사용 가능한 프로그램은 DFT 소프트웨어인 Quantum Espresso (QE), GAMESS, MD 소프트웨어인 LAMMPS, 열역학 계산 패키지인 Open calphad입니다.
다음 'Workflow template'을 따라 모듈을 추가하여 원하는 계산 결과를 얻기 위한 work를 구성할 수 있습니다. 혹은 'New Work' 아이콘을 클릭하여 자유롭게 'workflow'를 구성할 수 있습니다. 직접 모듈을 추가하며 당신의 연구에 꼭 맞는 'workflow'를 만들어 보십시오.
MatSQ는 시뮬레이션 연구를 수행하는 데 필요한 여러 기능들을 쉽게 사용할 수 있도록, 기능들을 분리하여 모듈화하였습니다. 모듈은 독립적으로 사용할 수 있는 모듈과 다른 모듈에 연결하여야만 사용이 가능한 모듈이 있습니다. 모듈의 종류는 다음과 같습니다.
시뮬레이션을 수행할 구조를 만들거나 확인, 수정하기 위한 모듈입니다. | |
시뮬레이션 설정 (DFT/MD/Phase diagram input script와 병렬컴퓨팅 옵션)을 위해 사용되는 모듈입니다. MatSQ에서는 Quantum Espresso와 GAMESS, LAMMPS, Open Calphad의 설정을 쉽게 할 수 있는 GUI를 제공하고 있습니다. Calphad를 제외한 모듈은 Modeling 모듈 또는 작업이 완료된 기존 Simulation 모듈에 연결하여 사용하여야 합니다. | |
Analyzer 모듈은 시뮬레이션 결과를 시각화하기 위한 모듈입니다. Analyzer 모듈은 Simulation 모듈에 연결하여 사용하여야 합니다. | |
편의성을 위한 모듈입니다. 연구 중 정보를 기록하거나, 간편한 계산을 할 수 있는 Memo 모듈이 있습니다. |
기본적으로 workflow는 Structure builder에 구조를 업로드 또는 제작 후 Simulation 모듈을 추가하여 Simulation을 수행한 다음, Analyzer 모듈을 추가하여 결과를 그래픽으로 확인하는 순서로 진행됩니다. 각각의 모듈에 대한 자세한 정보는 Modules 를 참고하십시오.
Work page 하단에서 Module 추가를 위한 메뉴 바인 모듈 셀렉터를 보실 수 있습니다. 원하는 모듈을 선택하여 추가하십시오. Simulation과 Analyzer에 속하는 모듈은 다른 모듈에 연결하여 사용해야 합니다. 연결에 관한 정보는 다음 모듈 사용 문서를 참고하십시오.
'연결 (Connect)'은 MatSQ에서 workflow를 구성할 때 가장 중요한 부분입니다. 기본적으로, 하나의 workflow는 블록을 조립하듯이 여러 모듈을 조립하여 만들 수 있습니다. 연결은 어떠한 모듈에 있는 정보를 새로운 모듈 (혹은 버튼을 클릭한 해당 모듈) 로 가져온다는 의미이며, 특히 Simulation과 Analyzer에 속하는 모듈을 사용하기 위해 필수적인 기능입니다. 다음 단계를 따라 두 모듈을 연결할 수 있습니다.
- Module Selector에서 모듈을 선택하여 추가합니다.
- 연결 가능한 모듈의 개수를 확인합니다.
- 연결은 두 가지 방식으로 진행할 수 있습니다. 첫째로, 우측에 표시되는 내비게이션 바에서 썸네일 이미지를 클릭하면 해당 모듈과 연결할 수 있습니다. 이때 연결이 불가능한 모듈은 흐린 색으로 표시됩니다.
- 연결에 성공하였다면 우측 사이드바의 썸네일에 컬러바가 표시되며, 모듈이 활성화되어 사용할 수 있습니다.
▎▎ 현재 선택된 모듈
▎▎ 선택된 모듈에 연결된 모듈
▎▎ 선택된 모듈과 간접적으로 연결된 모듈 (파란 컬러바 모듈에 연결된 모듈)
둘째로, 연결 메시지를 끄고 연결하고자 하는 모듈의 아무 부분이나 누르십시오.
만일 연결 모드를 종료하고 싶다면 ESC키를 누르십시오. 버튼을 클릭하면 연결을 다시 시도할 수 있습니다.
모듈 이름 설정 | 모듈 이름을 클릭하면 이름을 수정할 수 있습니다. |
도움말 | 버튼을 눌러 관련 도움말 문서를 확인하십시오. |
이동 | 우측 사이드바에서 해당 모듈의 썸네일을 드래그&드롭 하여 모듈의 위치를 이동시킬 수 있습니다. |
접기 | 모듈 이름 옆의 ▲ 버튼을 눌러 모듈을 접어 스크롤바를 줄일 수 있습니다. |
Simple memo | 'Simple memo' 기능을 이용해 모듈에 간단한 정보를 적어 보십시오. |
Connect module | 이 아이콘을 누르고, 연결하고자 하는 모듈의 아무 곳이나 클릭하면 두 모듈이 연결됩니다. |
모듈 제거 | 모듈을 지우려면 이 버튼을 누르십시오. 만일 이 작업을 취소하고 싶다면 페이지를 새로고침하여 마지막으로 저장된 상태를 불러오십시오. |
수많은 모듈 중 원하는 모듈만을 표시하기 위한 기능입니다. 버튼을 통해 New work 생성 시 기본으로 추가될 모듈을 변경할 수도 있습니다.
단위 변환기를 통해 에너지, 길이 단위를 변환할 수 있습니다.
'Simulation' 모듈에서 Input script 설정을 완료했다면 작업을 제출할 준비가 된 것입니다. Input script 설정에 관해서는 Modules 카테고리의 각 항목을 참조하십시오.
'Resource'는 'On-demand Instance', 'Spot Instance' 옵션 중 선택할 수 있습니다. (Spot Instance $0.25/cpu·시간, On-demand Instance $0.5/cpu·시간)
'PPN' 은 병렬 컴퓨팅을 위한 core (cpu) 개수를 의미하며, 하나의 node에서 최대 48개까지 이용할 수 있습니다. 이때, 차감되는 크레딧은 core의 개수에 비례합니다. ($0.25/cpu·hour)
'Node type' 은 'Computing', 'High memory' 옵션 중 선택할 수 있습니다. 'High memory' 옵션을 선택하면 사용되는 ram의 크기가 두 배 증가하기 때문에, hybrid functional, phonon 계산 등에 적합합니다. 계산 속도는 다소 감소할 수 있습니다.
'Job name' 에 해당 계산 작업의 이름을 적으십시오. 다른 job과 구분되는 이름을 붙이면 해당 계산을 다른 계산과 혼동하지 않을 수 있습니다.
'Version' 에서는 해당 시뮬레이션 모듈을 통해 사용할 프로그램 (Quantum Espresso 등)의 버전을 선택할 수 있습니다.
작업 완료 후 이메일을 통한 알림을 받기를 원하는 경우, 'Finish Notice' 체크박스에 체크하십시오.
버튼을 클릭하면 클라우드 서버로 작업이 제출됩니다. 상단 내비게이션 바의 ▶ 아이콘을 클릭하여 대시보드를 열면 다음 그림과 같이 작업의 진행 상황을 확인할 수 있습니다. 필요한 경우, 작업을 중단시킬 수 있습니다. 종료된 작업은 리스트에서 제거됩니다.
이때, 계산 수행 중 크레딧이 부족할 경우 진행 중인 작업은 일시정지됩니다. 일시정지된 작업은 최대 1 주 안에 재시작하지 않으면 중단됩니다. 크레딧 충전에 관해서는 크레딧 충전 문서를 참고하십시오.
작업을 제출할 때마다 인스턴스 유형(Spot/On-Demand)을 선택할 수 있으며, On-Demand Instances를 선택하면 소모되는 총 CPU 시간과 크레딧량은 Spot Instances를 선택할 때의 두 배가 됩니다.
Template은 계산에 익숙치 않은 사용자를 위해 준비된 workflow입니다.
여러 workflow에 대한 template이 준비되어 있으니 얻고자 하는 데이터에 알맞은 template을 선택해 주십시오.
단계를 따라 진행하시면 결과를 쉽고 빠르게 얻을 수 있는 좋은 가이드가 될 것입니다.
이 템플릿을 따라 시스템의 DFT 에너지를 얻으십시오. 다음 단계로 구성되어 있습니다.
- Structrue builder 모듈에서 에너지 데이터를 얻고자 하는 구조를 모델링하십시오.
- 모델링을 마치면, Quantum Espresso 모듈을 추가하고 Structure builder에 연결하십시오.
- Quantum Espresso 모듈의 질문에 대답하여 초기 조건 input parameter을 선택한 후 작업 이름 Job name을 설정하고 버튼을 클릭하여 작업을 제출하십시오.
- 계산이 끝나면 'Update' 버튼을 눌러
- Energy module을 추가하고 Quantum Espresso 모듈에 연결하면 계산한 model의 에너지를 확인할 수 있습니다.
시스템의 Density of states (DOS)를 얻기 위해 다음 절차를 따를 수 있습니다.
- Structrue builder 모듈에서 DOS 데이터를 얻고자 하는 구조를 모델링하십시오.
- 모델링을 마친 뒤 Quantum Espresso 모듈을 추가하고 1번의 Structure builder에 연결하십시오.
- Quantum Espresso 모듈의 질문에 대답하여 초기 조건 input parameter을 선택하십시오. 'Data to get' 질문에서 DOS를 선택하면 'DOS' solver 탭이 추가됩니다.
- 작업 이름 Job name을 설정하고 버튼을 클릭하여 작업을 제출하십시오.
- 계산이 끝나면 'Update' 버튼을 눌러
- DOS module을 추가하고 Quantum Espresso 모듈에 연결한 뒤, 원자와 오비탈을 선택하고 Add 버튼을 누르면 DOS 데이터를 확인할 수 있습니다.
이 template은 charge density difference calculation 계산을 더 쉽게 수행할 수 있도록 만들어졌습니다. Charge density difference 계산을 위해서는 두 개의 charge density 계산이 선행되어야 합니다.
- Sturcture builder 모듈에서 첫 번째 구조를 만들어 주십시오.
- Quantum Espresso 모듈의 질문에 대답하여 초기 조건 input parameter을 선택하십시오. 'Data to get' 질문에서 Charge Density를 선택하면 'Charge Denstiy' solver 탭이 추가됩니다. Charge Density 탭에서 계산하고자 하는 데이터를 선택하십시오.
- 작업 이름 Job name을 설정하고 버튼을 클릭하여 작업을 제출하십시오.
- 계산이 끝나면 'Update' 버튼을 눌러
- Charge Density 모듈을 추가하고 Quantum Espresso 모듈에 연결하여 Charge Density가 잘 계산되었는지 확인하십시오.
- Sturcture builder 모듈에서 두 번째 구조를 만들어 주십시오.
- Quantum Espresso 모듈의 질문에 대답하여 초기 조건 input parameter을 선택하십시오. 'Data to get' 질문에서 Charge Density를 선택하고 Charge Denstiy 탭에서 2번에서와 같은 데이터를 선택하십시오.
- 작업 이름 Job name을 설정하고 버튼을 클릭하여 작업을 제출하십시오.
- 계산이 끝나면 'Update' 버튼을 눌러
- 5번에서 추가한 Charge Density 모듈을 두 번째 Quantum Espresso 모듈에 연결하여 두 번째 Charge density를 그려 주십시오.
- 이제 charge density difference를 그릴 수 있습니다. Diff를 클릭하면 ρ A - ρ B 가 계산됩니다. 설정 창에서 isovalue와 color bar scale, 표면 색상, 단면 color type을 바꿀 수 있습니다.
Band structure를 계산하기 위해서는 여러 단계의 계산을 거쳐야 합니다. 먼저 기본 DFT calculation을 진행한 다음 (PWscf: scf), eigenvalue를 re-ordering하는 계산을 수행하고 (PWscf: bands), band-related property들을 계산해야 합니다 ('Band Structure' tab). 다음 단계를 수행하여 Band structure를 계산할 수 있습니다.
- Sturcture builder 모듈에서 Band structrue를 얻고자 하는 구조를 모델링하십시오.
- 모듈 셀렉터에서 Quantum Espresso 모듈을 추가한 다음, Quantum Espresso 모듈의 질문에 대답하여 초기 조건 input parameter을 선택하십시오.
- 작업 이름 Job name을 설정하고 버튼을 클릭하여 작업을 제출하십시오.
- 모듈 셀렉터에서 새 Quantum Espresso 모듈을 추가한 다음, Step 2의 Quantum Espresso 모듈을 클릭하여 연결하십시오. 새 Quantum Espresso 모듈에서 calculation type을 bands로 변경하고, k-point를 설정하십시오.
- 'Band Structure' solver 탭이 자동으로 추가되었을 것입니다. 만일 Spin polarization을 고려했을 경우, spin up/down에 대해 탭을 따로 추가해야 합니다. + 버튼을 눌러 Band structure를 그리기 위한 solver를 추가하십시오.
- 작업 이름 Job name을 설정하고 버튼을 클릭하여 작업을 제출하십시오.
- 이제 Band structure가 계산되었습니다. Band structure 모듈을 추가하여 Band Structure를 그려 보십시오.
ID | 해당 work가 갖는 고유한 값입니다. Job ID와는 다른 값입니다. |
Name | 해당 work의 이름입니다. |
Formula | 해당 work page의 structure builder에 있는 구조를 간단히 보여줍니다. |
Updated | 마지막으로 저장된 시각을 보여줍니다. |
Modules | 해당 work에 있는 모듈의 종류를 나타냅니다. |
Clone | 해당 work를 복제하여 새로운 work를 생성합니다. |
Delete | 해당 work를 제거합니다. Work를 제거해도 계산 데이터는 Data 페이지에서 확인할 수 있습니다. |