Skip to main content

Công cụ biên tập phân tử

Người học có thể sử dụng trình biên tập phân tử để học cách tạo ra phân tử. Trình chỉnh sửa phân tử cho phép người học vẽ các phân tử tuân theo các quy tắc hình thành liên kết cộng hóa trị và điện tích chính thức, ngay cả khi các phân tử đó là không thể về mặt hóa học, không ổn định hoặc không tồn tại trong các hệ thống sống. Trình biên tập phân tử cảnh báo người học nếu họ cố gắng gửi một cấu trúc không thể về mặt hóa học.

Trình biên tập phân tử kết hợp hai công cụ: trình biên tập phân tử JSME được tạo bởi Peter Erl và Bruno Bienfait, và JSmol, trình xem phân tử dựa trên JavaScript từ Jmol. (Bạn không cần tải xuống một trong hai công cụ này – Studio sử dụng chúng tự động.) Để biết thêm thông tin về trình chỉnh sửa phân tử JSME, hãy xem Trình chỉnh sửa phân tử JSME. Để biết thêm thông tin về JSmol, hãy xem JSmol.

mceclip0.png

Tạo trình soạn thảo phân tử

Để tạo một trình soạn thảo phân tử, bạn cần các tệp sau.

  • MoleculeAnswer.png
  • MoleculeEditor_HTML.png
  • dopamine.mol

Để tải xuống tất cả các tệp này, vui lòng liên hệ [email protected]

Ghi chú

Phân tử xuất hiện khi công cụ bắt đầu là phân tử dopamine. Để sử dụng một phân tử khác, hãy tải xuống tệp .mol ​​cho phân tử đó từ danh sách các phân tử trên trang web BioTopics. Sau đó, tải tệp .mol ​​lên trang Tệp & Tải lên cho khóa học của bạn trong __Elite Learning Studio và thay đổi “dopamine.mol” trong mã ví dụ thành tên tệp .mol ​​của bạn

Để tạo trình chỉnh sửa phân tử xuất hiện trong hình trên, bạn cần một thành phần HTML theo sau là một thành phần sự cố.

  1. Tải tất cả các tệp được liệt kê ở trên lên trang Tệp & Tải lên trong khóa học của bạn.
  2. Tạo thành phần HTML.
  • Trong đơn vị mà bạn muốn tạo sự cố, hãy bấm HTML trong Thêm thành phần mới , sau đó bấm HTML.
  • Trong thành phần xuất hiện, nhấp vào Chỉnh sửa.
  • Trong trình chỉnh sửa thành phần, hãy dán mã thành phần HTML từ bên dưới.
  • Thực hiện bất kỳ thay đổi nào bạn muốn, sau đó bấm Lưu.
  1. Tạo thành phần vấn đề.
  • Trong thành phần HTML, bấm Vấn đề trong Thêm Thành phần Mới , sau đó bấm Vấn đề Nâng cao Trống.
  • Trong thành phần xuất hiện, nhấp vào Chỉnh sửa.
  • Trong trình chỉnh sửa thành phần, hãy dán mã thành phần sự cố từ bên dưới.
  • Nhấp vào để Lưu.

Mã biên tập phân tử

Để tạo trình soạn thảo phân tử, bạn cần một thành phần HTML và một thành phần vấn đề.

Mã thành phần HTML

    <h3>Molecule Editor</h3>
<p>The molecule editor makes creating and visualizing molecules easy. A chemistry professor may have you build and submit a molecule as part of an exercise.</p>
<div>
<script type="text/javascript">// <![CDATA[
function toggle2(showHideDiv, switchTextDiv) {
var ele = document.getElementById(showHideDiv);
var text = document.getElementById(switchTextDiv);
if(ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "+ open";
}
else {
ele.style.display = "block";
text.innerHTML = "- close";
}
}
// ]]></script>
</div>
<div>
<style type="text/css"></style>
</div>
<div id="headerDiv">
<div id="titleText">Using the Molecule Editor<a id="myHeader" href="javascript:toggle2('myContent','myHeader');">+ open </a></div>
</div>
<div id="contentDiv">
<div id="myContent" style="display: none;">
<p>In this problem you will edit a molecule using the molecular drawing program shown below:</p>
<img alt="" src="/static/MoleculeEditor_HTML.png" /></div>
</div>
<p>&nbsp;</p>
<div id="headerDiv">
<div id="titleText">Are the molecules I've drawn chemically possible?<a id="IntroductionHeader" href="javascript:toggle2('IntroductionContent','IntroductionHeader');">+ open </a></div>
</div>
<div id="contentDiv">
<div id="IntroductionContent" style="display: none;">
<p>The chemical editor you are using ensures that the structures you draw are correct in one very narrow sense, that they follow the rules for covalent bond formation and formal charge. However, there are many structures that follow these rules that are chemically impossible, unstable, do not exist in living systems, or are beyond the scope of this course. The editor will let you draw them because, in contrast to the rules of formal charge, these properties cannot be easily and reliably predicted from structures.</p>
<p>If you submit a structure that includes atoms that are not possible or are beyond the scope of this course, the software will warn you specifically about these parts of your structure and you will be allowed to edit your structure and re-submit. Submitting an improper structure will not count as one of your tries. In general, you should try to use only the atoms most commonly cited in this course: C, H, N, O, P, and S. If you want to learn about formal charge, you can play around with other atoms and unusual configurations and look at the structures that result.</p>
</div>
</div>
<div id="ap_listener_added">&nbsp;</div>

Mã thành phần sự cố

    <problem>
<p>The dopamine molecule, as shown, cannot make ionic bonds. Edit the dopamine molecule so it can make ionic bonds.</p>
<p>When you are ready, select Submit. If you need to start over, select Reset.</p>
<script type="loncapa/python">
def check1(expect, ans):
import json
mol_info = json.loads(ans)["info"]
return any(res == "Can Make Ionic Bonds" for res in mol_info)
</script>
<customresponse cfn="check1">
<editamoleculeinput file="/static/dopamine.mol">
</editamoleculeinput>
</customresponse>
<solution>
<img src="/static/MoleculeAnswer.png"/>
</solution>
</problem>

Vấn đề 2

    <problem>
<p>The dopamine molecule, as shown, cannot make strong hydrogen bonds. Edit the dopamine molecule so that it can make strong hydrogen bonds.</p>
<script type="loncapa/python">
def grader_1(expect, ans):
import json
mol_info = json.loads(ans)["info"]
return any(res == "Cannot Make Strong Hydrogen Bonds" for res in mol_info)
</script>
<customresponse cfn="grader_1">
<editamoleculeinput file="/static/dopamine.mol">
</editamoleculeinput>
</customresponse>
</problem>

Vấn đề 3

    <problem>
<p>The dopamine molecule has an intermediate hydrophobicity. Edit the dopamine molecule so that it is more hydrophobic.</p>
<script type="loncapa/python">
def grader_2(expect, ans):
import json
mol_info = json.loads(ans)["info"]

hydrophobicity_index_str=mol_info[0]
hydrophobicity_index=float(hydrophobicity_index_str[23:])
return hydrophobicity_index &gt; .490
</script>
<customresponse cfn="grader_2">
<editamoleculeinput file="/static/dopamine.mol">
</editamoleculeinput>
</customresponse>
</problem>