용융 및 유체는 자연 시스템에서 대량 수송의 유비쿼터스 벡터입니다. 우리는 이러한 시스템의 ab initio 분자 역학 시뮬레이션을 분석하기 위해 오픈 소스 패키지를 개발했습니다. 우리는 구조 (접합, 클러스터화, 화학 적 분석), 운송 (확산, 점도) 및 열역학 적 특성 (진동 스펙트럼)을 계산합니다.
우리는 유체의 ab initio 분자 역학 시뮬레이션에서 유래 결과를 분석하기 위해 파이썬 기반 오픈 소스 패키지를 개발했습니다. 이 패키지는 규산염 및 산화물 용융, 수성 유체 및 다양한 초임계 유체와 같은 천연 시스템의 응용 분야에 가장 적합합니다. 패키지는 파일 형식을 처리하고 결정예로 처리 두 개의 주요 라이브러리를 포함하는 파이썬 스크립트의 모음입니다. 모든 스크립트는 명령줄에서 실행됩니다. 우리는 원자 궤적과 보편적 인 분자 역학을 위해 서, UMD 파일에 저장되는 시뮬레이션의 관련 열역학 정보를 저장하는 단순화 된 형식을 제안한다. UMD 패키지를 사용하면 일련의 구조, 운송 및 열역학 적 특성을 계산할 수 있습니다. 결합 길이를 정의하고, 원자간 연결 매트릭스를 구축하고, 결국 화학적 표본을 결정합니다. 화학 종의 수명을 결정하는 것은 전체 통계 분석을 실행할 수 있습니다. 그런 다음 전용 스크립트는 원자뿐만 아니라 화학 종에 대한 평균 제곱 변위를 계산합니다. 원자 속도의 구현된 자기 상관 관계 분석은 확산 계수와 진동 스펙트럼을 산출합니다. 응력에 적용된 동일한 분석은 점도를 산출합니다. 이 패키지는 GitHub 웹 사이트를 통해 ERC IMPACT 프로젝트의 전용 페이지를 오픈 액세스 패키지로 사용할 수 있습니다.
유체 및 용융은 자연 환경에서 활성 화학 및 물리적 수송 벡터입니다. 원자 확산의 높은 비율은 화학 교류와 반응을 선호, 다양한 부력과 결합 낮은 점도 큰 질량 전송을 선호하고, 크리스탈 용융 밀도 관계는 행성 체 내부 레이어를 선호합니다. 주기적인 격자의 부재, 용융 상태에 도달하는 데 필요한 전형적인 고온, 담금질에 대한 어려움은 밀도, 확산 및 점도와 같은 일련의 명백한 특성의 실험적 결정을 매우 어렵게 만듭니다. 이러한 어려움으로 인해 대체 계산 메서드가 이 재료 클래스를 조사하기 위한 강력하고 유용한 도구를 만듭니다.
컴퓨팅 능력의 출현과 슈퍼컴퓨터의 가용성으로, 현재 비결정 분무 시스템, 몬테 카를로1 및 분자 역학(MD)1,2의 동적 상태를 연구하기 위해 두 가지 주요 수치 원자 시뮬레이션 기술이 사용됩니다. 몬테 카를로 시뮬레이션에서 구성 공간은 무작위로 샘플링됩니다. 모든 샘플링 관측이 서로 독립적이면 Monte Carlo 메서드는 병렬화로 선형 배율을 표시합니다. 결과의 품질은 난수 생성기의 품질과 샘플링의 대표성에 따라 달라집니다. 몬테 카를로 메서드는 샘플링이 서로 독립적인 경우 병렬화로 선형 배율을 표시합니다. 분자 역학(MD)에서 구성 공간은 시간 의존적 원자 궤적에 의해 샘플링된다. 지정된 구성에서 시작하여 원자 궤적은 뉴턴의 모션 방정식을 통합하여 계산됩니다. 원자간 힘은 모델 간 원자 적 잠재력 (고전 MD)을 사용하거나 첫 번째 원칙 방법 (ab initio 또는 첫 번째 원칙, MD)을 사용하여 계산할 수 있습니다. 결과의 품질은 궤적의 길이와 로컬 미니마에 끌리지 않는 능력에 따라 달라집니다.
분자 역학 시뮬레이션에는 시스템의 동적 거동과 관련된 다양한 정보가 포함되어 있습니다. 내부 에너지, 온도 및 압력과 같은 열역학 평균 특성은 계산하는 데 표준이 됩니다. 시뮬레이션의 출력 파일(들)에서 추출하고 평균화할 수 있는 반면 원자의 이동과 상호 관계와 직접적인 관련이 있는 수량은 원자 위치와 속도를 추출한 후 계산해야 합니다.
따라서 결과를 시각화하는 데 많은 노력이 전념했으며, 다양한 플랫폼에서 오픈 소스가 아닌 [Ovito3, VMD4, Vesta5, Travis6 등]에서 다양한 패키지를 사용할 수 있습니다. 이러한 모든 시각화 도구는 상호 원자 거리를 효율적으로 처리하므로 쌍 분포 함수및 확산 계수의 효율적인 계산을 허용합니다. 대규모 분자 역학 시뮬레이션을 수행하는 다양한 그룹은 시뮬레이션, 때로는 쉐어웨어 또는 커뮤니티에 대한 제한된 액세스의 다른 형태로 발생하는 다양한 다른 특성을 분석하는 독점 소프트웨어를 가지고 있으며 때로는 범위와 특정 패키지로 제한됩니다. 이러한 패키지 3,4,5,6,7 등에서 원자 결합, 기하학적 패턴 및 열역학에 대한 정보를 추출하는 정교한 알고리즘이 개발 및 구현됩니다.
여기서 우리는 분자 역학 시뮬레이션의 출력을 분석하기 위해 파이썬으로 작성된 오픈 소스 패키지인 UMD 패키지를 제안합니다. UMD 패키지를 사용하면 광범위한 구조적, 동적 및 열역학적 특성(그림 1)을 계산할 수 있습니다. 이 패키지는 GitHub 웹사이트(https://github.com/rcaracas/UMD_package)를 통해 제공되며 ERC IMPACT 프로젝트의 전용 페이지(http://moonimpact.eu/umd-package/)를 오픈 액세스 패키지로 사용할 수 있습니다.
보편적이고 쉽게 처리하기 위해, 우리의 접근 방식은 먼저 실제 분자 역학 실행의 출력 파일에서 열역학 상태 및 원자 궤적과 관련된 모든 정보를 추출하는 것입니다. 이 정보는 시뮬레이션이 실행된 원래 MD 패키지와 는 별개의 전용 파일에 저장됩니다. 유니버설 분자 역학을 의미하는 이러한 파일 "탯" 파일의 이름을 지정합니다. 이러한 방식으로, 우리의 UMD 패키지는 쉽게 적응의 최소 노력으로, 모든 소프트웨어와 AB 이니티오 그룹에 의해 사용할 수 있습니다. 현재 패키지를 사용하는 유일한 요구 사항은 아직 존재하지 않는 경우 특정 MD 소프트웨어의 출력에서 적절한 파서를 umd 파일 형식으로 작성하는 것입니다. 당분간, 우리는 VASP8 및 QBox9 패키지에 대한 이러한 파스터를 제공합니다.
그림 1: UMD 라이브러리의 순서도입니다.
물리적 특성은 파란색으로 되어 있으며 주요 Python 스크립트와 옵션은 빨간색입니다. 이 그림의 더 큰 버전을 보려면 여기를 클릭하십시오.
탯줄 파일은 ASCII 파일입니다. 일반적인 확장은 "탯.dat"이지만 필수는 아닙니다. 모든 분석 구성 요소는 실제 이름 확장에 관계없이 UMD 형식의 ASCII 파일을 읽을 수 있습니다. 그러나 여러 시뮬레이션에서 빠른 대규모 통계를 수행하도록 설계된 일부 자동 스크립트는 특히 탯.dat 확장이 있는 파일을 찾습니다. 각 물리적 특성은 한 줄로 표현됩니다. 모든 선은 키워드로 시작됩니다. 이러한 방식으로 형식은 매우 적응력이 뛰어나며 버전 전반에 걸쳐 가독성을 유지하면서 새로운 속성을 umd 파일에 추가할 수 있습니다. 토론에 사용되는 4.6 GPa 및 3000 K에서 파이롤라이트 시뮬레이션의 탯줄 파일의 처음 30선은 그림 2에 나와 있다.
그림 2: 4.6 GPa 및 3000 K에서 액체 파이롤라이트의 시뮬레이션을 설명하는 탯줄 파일의 시작입니다.
헤더다음에각 스냅숏에 대한 설명이 뒤따릅니다. 각 속성은 물리적 속성의 이름, 값 및 단위의 이름을 포함하는 한 줄로 작성되며 모두 공간으로 구분됩니다. 이 그림의 더 큰 버전을 보려면 여기를 클릭하십시오.
모든 탯줄 파일에는 원자, 전자 및 원자 유형의 수와 같은 시뮬레이션 셀의 함량을 설명하는 헤더와 유형, 화학 기호, 원자 전자 수 및 질량과 같은 각 원자에 대한 세부 정보가 포함되어 있습니다. 빈 선은 헤더의 끝을 표시하고 배드 파일의 주부와 분리합니다.
그런 다음 시뮬레이션의 각 단계가 상세합니다. 첫째, 즉각적인 열역학 파라미터는 각각 다른 선상에 각각 제공되며, 에너지, 응력, 동등한 유압, 밀도, 부피, 격자 매개변수 등(ii) 값 및 (iii) 단위와 같은 매개 변수의 이름을 지정합니다. 원자를 설명하는 테이블이 다음에 옵니다. 헤더 라인은 카르테시안 위치, 속도, 요금 및 장치와 같은 다양한 측정값을 제공합니다. 그런 다음 각 원자는 한 줄에 상세합니다. 세 개의 x, y, z 축에 해당하는 3개의 그룹으로, 항목은 감소된 위치, 시뮬레이션 셀로 접힌 카르테시안 위치, 카르테시안 위치(원자가 시뮬레이션 중에 여러 단위 셀을 통과할 수 있다는 사실을 적절히 고려함), 원자 속도 및 원자력입니다. 마지막 두 항목은 스칼라입니다: 충전 및 자기 순간.
두 개의 주요 라이브러리는 전체 패키지의 적절한 작동을 보장합니다. umd_process.py 라이브러리는 읽기 및 인쇄와 같은 탯줄 파일을 다룹니다. crystallography.py 라이브러리는 실제 원자 구조와 관련된 모든 정보를 다룹니다. crystallography.py 라이브러리의 기본 철학은 격자를 벡터 공간으로 취급하는 것입니다. 단위 셀 매개 변수와 방향은 기초 벡터를 나타냅니다. "Space"에는 일련의 스칼라 특성(특정 부피, 밀도, 온도 및 특정 수의 원자), 열역학 적 특성(내부 에너지, 압력, 열 용량 등), 일련의 텐서리얼 특성(응력 및 탄력)이 있습니다. 원자는 이 공간을 채웁니다. "격자" 클래스는 특정 볼륨, 밀도, 직접 적도 등에서 상호 격자를 얻는 등과 같은 몇 가지 짧은 계산과 함께이 앙상블을 정의합니다. "원자" 클래스는 원자를 정의합니다. 그들은 일련의 스칼라 속성 (이름, 기호, 질량, 전자 의 수 등)과 일련의 벡터 특성 (격자 클래스에 설명된 벡터 기준에 비해 공간의 위치 또는 보편적 인 카르테시안 좌표, 속도, 힘 등을 특징으로하는 위치)를 특징으로합니다. 이 두 클래스 외에도 crystallography.py 라이브러리에는 원자 거리 또는 셀 곱셈과 같은 다양한 테스트 및 계산을 수행하는 일련의 기능이 포함되어 있습니다. 요소의 주기적인 테이블도 사전으로 포함됩니다.
umd 패키지의 다양한 구성 요소는 여러 출력 파일을 작성합니다. 일반적으로 모든 ASCII 파일이며 모든 항목은 탭으로 구분되며 가능한 한 자명하게 만들어집니다. 예를 들어 물리적 속성과 단위를 항상 명확하게 나타냅니다. 탯.dat 파일은 이 규칙을 완전히 준수합니다.
1. 분자 역학 실행의 분석
참고: 패키지는 GitHub 웹사이트(https://github.com/rcaracas/UMD_package)를 통해 제공되며 ERC IMPACT 프로젝트의 전용 페이지(http://moonimpact.eu/umd-package/)를 오픈 액세스 패키지로 사용할 수 있습니다.
기 | 의미 | 그것을 사용하는 스크립트 | 기본 값 |
-h | 짧은 도움말 | 모두 | |
-f | UMD 파일 이름 | 모두 | |
-i | 폐기할 열화 단계 | 모두 | 0 |
-i | 상호 결합을 포함하는 입력 파일 | 표본 분석 | bonds.input |
-s | 주파수 샘플링 | msd, 추측 | 1 (모든 단계가 고려됩니다) |
-a | 원자 또는 음상 목록 | 표본 분석 | |
-c | 양이온 목록 | 표본 분석 | |
-l | 본드 길이 | 표본 분석 | 2 |
-t | 온도 | 진동, 희미학 | |
-v | 평균 제곱 변위 분석을 위한 궤적의 샘플링 창 폭의 불연속화 | msd | 20 |
-z | 평균 제곱 변위 분석을 위한 궤적의 샘플링 창의 시작 의 불연속화 | msd | 20 |
표 1: UMD 패키지에 사용되는 가장 일반적인 플래그와 가장 일반적인 의미입니다.
2. 구조 해석 수행
그림 3: 쌍 분포 기능의 결정.
(a) 한 종의 각 원자(예: 빨간색)에 대해 조정 종의 모든 원자(예: 회색 및/또는 빨간색)는 거리의 함수로 계산됩니다. (b) 이 단계에서 델타 함수의 컬렉션에 불과한 각 스냅숏에 대한 결과 거리 분포 그래프는 모든 원자와 모든 스냅샷에 걸쳐 평균화되고 이상적인 가스 분포에 의해 가중치를 적용하여 연속되는 쌍 분포 함수를 생성(c)한다. g(r) 의 첫 번째 최소값은 첫 번째 협응 구의 반지름이며, 나중에 계산 해석에서 사용된다. 이 그림의 더 큰 버전을 보려면 여기를 클릭하십시오.
3. 표본 분석 수행
그림 4: 원자 클러스터 식별.
조정 폴리히드라는 중원자 거리를 사용하여 정의됩니다. 지정된 반지름보다 작은 거리의 모든 원자는 접합된 것으로 간주됩니다. 여기서 임계값은 도 1에 정의된 첫 번째 협착 구(라이트 레드 원)에 해당합니다. 중합 및 따라서 화학 종은 결합 된 원자의 네트워크에서 얻어진다. 무한한 폴리머를 형성하는 다른 원자로부터 분리된 중앙 Red1Grey2 클러스터에 유의하십시오. 이 그림의 더 큰 버전을 보려면 여기를 클릭하십시오.
4. 확산 계수 계산
5. 시간 상관 관계 기능
6. 시뮬레이션에서 비롯된 열역학 적 매개 변수.
Pyrolite는 다중 구성 요소 규산용용(0.5Na2O 2CaO 1.5Al2O3 4FeO 30MgO 24SiO2)으로, 철기반 코어19를 제외한 지구 화학적 평균 또는 지구 전체의 구성을 가장 근사화하는 모델다. 초기 지구는 일련의 대규모 용융 사건에 의해 지배되었다20, 마지막 하나는 프로토 달 디스크에 대한 응축 후, 전체 행성을 침몰 했을 수 있습니다21. Pyrolite는 이러한 행성 규모의 마그마 바다의 구성에 가장 근사한 을 나타냅니다. 따라서 VASP 구현에서 ab initio 분자 역학 시뮬레이션에서 3,000\u20125,000 K 온도 범위및 0\u2012150 GPa 압력 범위에서 용융의 물리적 특성을 광범위하게 연구했습니다. 이러한 열역학 적 조건은 전적으로 지구에서 가장 극단적 인 마그마 해양 조건을 특성화합니다. 우리의 연구는 melts22의 전체 심층 분석을 위한 UMD 패키지를 성공적으로 사용하는 훌륭한 예입니다. 우리는 분포와 평균 결합 길이를 계산하고, 양이온 산소 조정의 변화를 추적하고, 다양한 조성물의 무정형 규산염에 대한 이전의 실험 및 계산 연구와 결과를 비교했습니다. 우리의 심층 분석은 표준 조정 번호를 기본 성분으로 분해하고, 용융시 이국적인 조정 폴리히드라의 존재를 설명하고, 모든 조정 폴리히드라의 수명을 추출하는 데 도움이되었습니다. 또한 궤적의 길이와 모델링된 시스템에 존재하는 원자의 수 의 관점에서 시뮬레이션에서 샘플링의 중요성을 설명했습니다. 사후 처리에 관해서는 UMD 분석은 이러한 요인과 독립적이지만 UMD 패키지에서 제공하는 결과를 해석할 때 고려해야 합니다. 여기서는 UMD 패키지를 사용하여 용융 용융 용융에 대한 응용 프로그램과 함께 용융의 몇 가지 특징을 추출하는 방법에 대한 몇 가지 예를 보여줍니다.
gofrs_umd.py 스크립트에서 얻은 Si-O 쌍 분포 함수는 g(r) 함수의 첫 번째 최소인 첫 번째 조정 구의 반경이 T = 3000 K 및 P = 4.6 GPa에서 약 2.5 개의 앙스트롬에 있음을 보여줍니다. g(r)의 최대 값은 1.635 Å에 있으며, 이는 굽힘 길이에 가장 가장 가까운 근사치입니다. 긴 꼬리는 온도 때문입니다. 이 제한을 Si-O 본드 거리로 사용하여, 분석 결과 최대 몇 피코초 동안 지속될 수 있는 SiO4 유닛이 용융(그림 5)을 지배한다는 것을 알 수 있습니다. Si2O7과 같은 디머와 Si3Ox 유닛과 같은 트리머의 존재에 의해 반사되는 부분 중합을 보여주는 용융의 중요한 부분이 있습니다. 그들의 해당 수명은 피코초의 순서입니다. 고차 폴리머는 모두 수명이 상당히 짧습니다.
그림 5: 시오 화학 종의 수명.
이 스펙션은 4.6 GPa 및 3000 K에서 다중 성분 용융에서 식별됩니다. 라벨은 SiO3, SiO4 및 SiO5 단조체 및 다양한 SixOy 폴리머를 표시합니다. 이 그림의 더 큰 버전을 보려면 여기를 클릭하십시오.
위의 -z 및 -v 플래그에 의해 정의된 수직 및 수평 단계의 다른 값은 MSD의 다양한 샘플링을 생성합니다(그림 6). z와 v의 큰 값조차도 경사면을 정의하기에 충분하므로 다른 원자의 확산 계수를 정의할 수 있습니다. z와 v의 큰 값으로 갈 때 후 처리에 대한 시간의 이득은 놀랍습니다. MSD는 시뮬레이션의 품질에 대한 매우 강력한 검증 기준을 제공합니다. MSD의 확산 부분이 충분히 길지 않은 경우 시뮬레이션이 너무 짧고 통계적 의미에서 유체 상태에 도달하지 못한다는 신호입니다. MSD의 확산 부분에 대한 최소 요구 사항은 시스템에 따라 다릅니다. 모든 원자가 유체10으로 간주되기 위해 용융 구조에서 적어도 한 번 은 자신의 부위를 변경하도록 요구할 수 있습니다. 행성 과학의 응용 프로그램과 훌륭한 예는 복잡한 규산염은 액체 라인11에 가깝거나 아래에 있는 고압에서 녹는 복잡한 예입니다. 주요 네트워크 형성 양이온인 Si 원자는 22개 이상의 picoseconds 후에 사이트를 전환합니다. 이 임계값보다 짧은 시뮬레이션은 가능한 구성 공간을 상당히 과소 샘플링할 수 있습니다. 그러나, 조정 된 음의, 즉 O 원자, 중앙 Si 원자보다 빠르게 이동, 그들은 Si의 느린 이동성의 일부를 보상 할 수 있습니다. 따라서 전체 시스템은 Si 변위에서만 가정하는 것보다 구성 공간의 샘플링을 더 잘 다룰 수 있습니다.
그림 6: 평균 사각형 변위(MSD).
MSD는 다중 성분 규산염 용융의 몇 가지 원자 유형에 대해 설명되어 있습니다. 다양한 수평 및 수직 단계, z 및 v가 있는 샘플링은 일관된 결과를 산출합니다. 솔리드 서클: -z 50 -v 50. 오픈 서클: -z 250 -v 500. 이 그림의 더 큰 버전을 보려면 여기를 클릭하십시오.
마지막으로, 원자 VAC 기능은 용융의 진동 스펙트럼을 산출합니다. 도 7 은 위와 동일한 압력 및 온도 조건에서 스펙트럼을 나타낸다. 우리는 Mg, Si 및 O 원자의 기여뿐만 아니라 총 가치를 나타냅니다. 0 주파수에서 용융의 확산 특성에 해당하는 스펙트럼의 유한 값이 있습니다. 진동 스펙트럼에서 열역학적 특성을 추출하려면 이 가스와 같은 확산 특성을 0에서 제거해야 하지만 더 높은 주파수에서 부패를 적절히 고려해야 합니다.
그림 7: 용융물의 진동 스펙트럼.
원자 속도-속도 자기 상관 기능의 Fourier 변환의 실제 부분은 진동 스펙트럼을 산출합니다. 여기서 스펙트럼은 다중 구성 요소 규산염 용융을 위해 계산됩니다. 유체는 0 주파수에서 제로 가스와 같은 확산 특성을 가지고 있습니다. 이 그림의 더 큰 버전을 보려면 여기를 클릭하십시오.
UMD 패키지는 ab initio 시뮬레이션을 통해 더 잘 작동하도록 설계되었으며, 스냅숏 수는 일반적으로 단위 셀당 수백 개의 원자가 있는 수만 개의 스냅숏으로 제한됩니다. 또한 후처리 실행이 충분한 활성 메모리 리소스를 가지고 있는 기계에 대해 더 큰 시뮬레이션을 견딜 수 있습니다. 이 코드는 계산할 수 있는 다양한 속성과 오픈 소스 라이선스로 구분합니다.
탯.dat 파일은 시뮬레이션 전체에서 변경되지 않은 파티클 수를 유지하는 앙상블에 적합합니다. UMD 패키지는 시뮬레이션 상자의 모양과 볼륨이 다른 계산에서 비롯된 파일을 읽을 수 있습니다. 이는 NVT 및 NPT와 같은 가장 일반적인 계산을 포함하며, 여기서 입자, N, 온도 T, 부피, V 및/또는 압력 P의 수가 일정하게 유지됩니다.
당분간 쌍 분포 기능뿐만 아니라 분석 스크립트와 같은 원자 간 거리를 추정하는 데 필요한 모든 스크립트는 축 사이의 각도가 90 °인 입방, 테트라고날 및 orthorhombic 셀에 대한 의미직기 단위 셀에 대해서만 작동합니다.
버전 2.0의 주요 개발 라인은 거리에 대한 직교 제한을 제거하고 개별 화학 결합을 분석하고, 원자 간 각도를 분석하고, 두 번째 조정 구를 구현하는 등 스펙션 스크립트에 대한 더 많은 기능을 추가하는 것입니다. 외부 협업의 도움으로 더 큰 시스템에서 더 빠른 분석을 위해 코드를 GPU에 이식하는 작업을 진행하고 있습니다.
저자는 공개 할 것이 없습니다.
이 작품은 유럽 연합 호라이즌 2020 연구 및 혁신 프로그램 (RC에 대한 보조금 계약 번호 681818 영향)에 따라 유럽 연구 위원회 (ERC)에 의해 지원되었으며, 딥 탄소 천문대의 극단적 인 물리 및 화학 이사회에 의해, 그리고 우수 자금 조달 계획의 센터를 통해 노르웨이연구위원회에 의해 프로젝트 번호 223272. 우리는 STl2816 시리즈 eDARI 컴퓨팅 보조금을 통해 GENCI 슈퍼 컴퓨터에 대한 액세스를 인정, PRACE RA4947 프로젝트를 통해 아이린 AMD 슈퍼 컴퓨터, UNINETT 시그마2 NN9697K를 통해 프램 슈퍼 컴퓨터. FS는 마리 Skłodowska-Curie 프로젝트 (보조금 계약 ABISSE No.750901)에 의해 지원되었다.
Name | Company | Catalog Number | Comments |
getopt library | open-source | ||
glob library | open-source | ||
matplotlib library | open-source | ||
numpy library | open-source | ||
os library | open-source | ||
Python software | The Python Software Foundation | Version 2 and 3 | open-source |
random library | open-source | ||
re library | open-source | ||
scipy library | open-source | ||
subprocess library | open-source | ||
sys library | open-source |
JoVE'article의 텍스트 или 그림을 다시 사용하시려면 허가 살펴보기
허가 살펴보기This article has been published
Video Coming Soon
Copyright © 2025 MyJoVE Corporation. 판권 소유