Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

A: Consider the F atom 2s orbitals of XeF 4 , which is a planar molecule. Determ

ID: 3602713 • Letter: A

Question

A:

Consider the F atom 2s orbitals of XeF4, which is a planar molecule. Determine how the SALCs for these orbitals transform.

Assume that the Xe-F bonds lie along the x and y axes. Therefore, the C2' and sigma(v) mirror planes contain x or y, whereas the C2" and sigma(d) mirror planes lie between x and y.

a1g

a2g

b1g

b2g

eg

a1u

a2u

b1u

b2u

eu

B:

Continuing with XeF4, consider the F atom 2py orbitals. These lie in the plane of the molecule, but are perpendicular to the Xe-F bonds. Determine how the resulting SALCs transform.

(If you are thinking of practice problems, can you do this problem for the px and py orbitals? In each case, can you identify the relevant orbitals on the Xe atom that are allowed by symmetry to interact with these SALCs?)

a1g

a2g

b1g

b2g

eg

a1u

a2u

b1u

b2u

eu

C:

For XeF4, the F atom 2px (i.e., lobes perpendicular to bonds and perpendicular to plane of molecule) give rise to SALCs with the following symmetries: a2u + eg + b2u

Which of the following Xe atomic orbitals are allowed by symmetry to interact with the SALCs derived from the F atom 2p orbitals?

5s

5px

5py

5pz

4dxy

4dxz

4dyz

4dx2-y2

4dz2

a.

a1g

b.

a2g

c.

b1g

d.

b2g

e.

eg

f.

a1u

g.

a2u

h.

b1u

i.

b2u

j.

eu

Explanation / Answer

Classroom.java

package org.university.hardware;

import org.university.software.Course;

import org.university.hardware.Department;

import java.util.ArrayList;

public class Classroom {

private String room;

private static ArrayList<Course> courses;

public Classroom() {

room = "Unknown";

courses = new ArrayList<Course>();

}

private int[] getTimeSlots()

{

int[] toReturn = new int[30];

int index = 0;

for (int i = 100; i <= 500; i += 100) {

for (int j = 1; j <= 6; j++) {

toReturn[index] = i + j;

index++;

}

}

return toReturn;

}

public void addCourse(Course aCourse)

{

boolean flag = false;

for (Course crs : courses) {

if (crs.compareSchedules(aCourse)) {

System.out.println(aCourse.getDepartment().getDepartmentName()

+ aCourse.getCourseNumber() + " conflicts with "

+ crs.getDepartment().getDepartmentName() + crs.getCourseNumber()

+ ". Conflicting time slot " + aCourse.getConflictSlots(crs).get(0)

+ ". " + aCourse.getDepartment().getDepartmentName()

+ aCourse.getCourseNumber() + " course cannot be added to "

+ room + "'s Schedule.");

flag = true;

break;

}

}

if (!flag)

{

courses.add(aCourse);

}

}

public void setRoomNumber(String newRoom)

{

room = newRoom;

}

public String getRoomNumber()

{

return room;

}

public void printSchedule() {

int[] timeSlots = getTimeSlots();

for (int time : timeSlots) {

String slot = "";

String className = "";

for (Course crs : courses) {

if (crs.getMeetingTime(time) != "") {

slot = crs.getMeetingTime(time);

className = crs.getDepartment().getDepartmentName()

+ crs.getCourseNumber() + " " + crs.getName();

break;

}

}

if (slot != "")

System.out.println(slot + " " + className);

}

}

}

Department.java

package org.university.hardware;

import org.university.software.Course;

import org.university.people.Student;

import org.university.people.Professor;

import org.university.people.Staff;

import java.util.ArrayList;

public class Department {

private String departmentName;

private static ArrayList<Course> Courses;

private static ArrayList<Student> Students;

private static ArrayList<Professor> Professors;

private static ArrayList<Staff> Staffers;

public Department()

{

departmentName = "unknown";

Courses = new ArrayList<Course>();

Students = new ArrayList<Student>();

Professors = new ArrayList<Professor>();

Staffers = new ArrayList<Staff>();

}

public String getDepartmentName()

{

return departmentName;

}

public void setDepartmentName(String adepartmentname)

{

departmentName = adepartmentname;

}

public void addStaff(Staff stf){

Staffers.add(stf);

if(stf.getDepartment() == null || stf.getDepartment() != this){

stf.setDepartment(this);

}

}

public ArrayList<Staff> getStaffList(){

return Staffers;

}

public void addProfessor(Professor prof){

Professors.add(prof);

if(prof.getDepartment() == null || prof.getDepartment() != this){

prof.setDepartment(this);

}

}

public ArrayList<Professor> getProfessorList(){

return Professors;

}

public void addStudent(Student student){

Students.add(student);

if(!student.getDepartment().equals(this))

student.setDepartment(this);

}

public ArrayList<Student> getStudentList(){

return Students;

}

public void addCourse(Course course){

Courses.add(course);

if(!course.getDepartment().equals(this))

course.setDepartment(this);

}

public ArrayList<Course> getCourseList(){

return Courses;

}

public void printStudentList(){

for(Student s : Students){

System.out.println(s.getName());

}

}

public void printProfessorList(){

for(Professor p : Professors){

System.out.println(p.getName());

}

}

public void printStaffList(){

for(Staff st : Staffers){

System.out.println(st.getName());

}

}

public void printCourseList(){

for(Course c : Courses){

System.out.println(c.getName() + c.getCourseNumber());

}

}

}

Employee.java

package org.university.people;

public abstract class Employee extends Person {

private double payRate;

public Employee() {

payRate = 0.0;

}

public double getPayRate()

{

return payRate;

}

public void setPayRate(double pr)

{

payRate = pr;

}

public void raise(double percent) {

payRate += (percent / 100.0) * payRate;

}

public abstract double earns();

}

Person.java

package org.university.people;

import java.util.ArrayList;
import org.university.software.Course;

public abstract class Person {
private String name;
private ArrayList<Course> courses;

public Person(){
courses = new ArrayList<Course>();
}

private int[] getTimeSlots(){
int[] toReturn = new int[30];
int index = 0;
for(int i = 100; i <= 500; i += 100){
for(int j = 1; j <= 6; j++){
toReturn[index] = i + j;
index++;
}
}
return toReturn;
}

public void setName(String newName){
name = newName;
}

public String getName(){
return name;
}

public ArrayList<Course> getCourses(){
return courses;
}

public boolean detectConflict(Course aCourse){
for(Course course : courses){
if(course.compareSchedules(aCourse)){
ArrayList<String> conflicts = course.getConflictSlots(aCourse);
for(String conflict : conflicts){
System.out.println(aCourse.getDepartment().getDepartmentName()
+ aCourse.getCourseNumber() + " course cannot be added to "
+ name + "'s Schedule. " + aCourse.getDepartment().getDepartmentName()
+ aCourse.getCourseNumber() + " conflicts with "
+ course.getDepartment().getDepartmentName()
+ course.getCourseNumber() + ". Conflicting time slot is "
+ conflict + ".");
}
return true;
}
}
return false;
}

public void printSchedule(){
for(int time : getTimeSlots())
for(Course crs : courses)
if(crs.getMeetingTime(time) != "")
System.out.println(crs.getMeetingTime(time)
+ " " + crs.getDepartment().getDepartmentName()
+ crs.getCourseNumber() + " " + crs.getName());
}

public abstract void addCourse(Course aCourse);
}

Professor.java

package org.university.people;

import org.university.hardware.Department;
import org.university.software.Course;

public class Professor extends Employee {
private Department dept;

public Professor(){
dept = null;
}

public void setDepartment(Department newDept){
dept = newDept;
}

public Department getDepartment(){
return dept;
}

@Override
public double earns() {
return 200 * super.getPayRate();
}

@Override
public void addCourse(Course aCourse) {
if(aCourse.getProfessor() != null){
System.out.println("The professor cannot be assigned to this course"
+ " because professor " + aCourse.getProfessor().getName()
+ " is already assigned to the course " + aCourse.getName() + ".");
}
else if(!detectConflict(aCourse)){
aCourse.setProfessor(this);
super.getCourses().add(aCourse);
}
}

}

Staff.java

package org.university.people;
import org.university.software.Course;
import org.university.hardware.Department;

public class Staff extends Employee {
private Department dept;
private double hoursWorked;

public Staff(){
hoursWorked = 0.0;
dept = null;
}

public void setMonthlyHours(double hours){
hoursWorked = hours;
}

public double getMonthlyHours(){
return hoursWorked;
}

public void setDepartment(Department dept){
this.dept = dept;
}

public Department getDepartment(){
return dept;
}

@Override
public double earns() {
return hoursWorked * super.getPayRate();
}

@Override
public void addCourse(Course aCourse) {
if(super.getCourses().size() > 0){
System.out.println(super.getCourses().get(0).getDepartment().getDepartmentName()
+ super.getCourses().get(0).getCourseNumber() + " is removed from "
+ super.getName() + "'s schedule(Staff can only take one class at a time). "
+ aCourse.getDepartment().getDepartmentName() + aCourse.getCourseNumber()
+ " has been added to " + super.getName() + "'s Schedule.");
super.getCourses().get(0).removeStudent(this);
super.getCourses().remove(0);
}
super.getCourses().add(aCourse);
aCourse.addStudent(this);
}

}
Student.java

package org.university.people;

import org.university.software.Course;
import org.university.hardware.Department;


public class Student extends Person {

private Department dept;
private int unitsCompleted;
private int totalUnitsNeeded;

public Student(){
dept = new Department();
unitsCompleted = 0;
totalUnitsNeeded = 0;
}

public void setCompletedUnits(int units){
unitsCompleted = units;
}

public int getUnitsCompleted(){
return unitsCompleted;
}

public int requiredToGraduate(){
return totalUnitsNeeded - unitsCompleted;
}

public void setRequiredCredits(int units){
totalUnitsNeeded = units;
}

public int getTotalUnits(){
return totalUnitsNeeded;
}

public void setDepartment(Department dept){
this.dept = dept;
if(!this.dept.getStudentList().contains(this)){
this.dept.addStudent(this);
}
}

public Department getDepartment(){
return dept;
}

public void addCourse(Course crs){
if(!detectConflict(crs)){
super.getCourses().add(crs);
if(!crs.getStudentRoster().contains(this))
crs.addStudent(this);
}
}

public void dropCourse(Course crs){
if(super.getCourses().contains(crs)){
super.getCourses().remove(crs);
if(crs.getStudentRoster().contains(this))
crs.removeStudent(this);
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote