信号与系统2021春季课程小论文批改

Posted 卓晴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了信号与系统2021春季课程小论文批改相关的知识,希望对你有一定的参考价值。

简 介: 本文记录了对于2021年春季信号与系统分析课程的综合小论文的处理和分析的情况。

关键词 信号与系统期末成绩小论文

 

§01 论文基本情况


1、小论文要求

  1、目标与分数
  信号与系统课程内容理论性强,为了使得同学们能够将理论与实践相结合,培养研究和探索能力,提高学习兴趣,要求期末同学合作提交一份课程综合论文报告。

  根据提交报告书写研究内容、书写结果与格式、组内成员人数以及理论考试成绩档次等。在最终课程分数中占5%左右。

  综合论文报告是必须完成,每个同学可以根据自己的能力、学习状况合理安排相应的选题形式和内容。

  2、人员要求
  同学可以组成小组完成一份完整的论文报告,小组成员个数最多三个人,可以跨班级组成报告小组。

  注:对于CDIE班的要求是每个人各自完成各自的小论文。

  3、内容与形式要求

  A. 内容:报告内容中至少根据课程所包含的基本概念和理论、方法,由此所形成的论文报告。

  从内容形式上可以有以下三大类基本形式:

  • (1)应用类论文:就在平时生活中、科技活动中碰到的工程应用问题,应用到信号与系统课程中的基本原理和方法。论文反映了问题的提出、解决方案以及结果的分析等。可以通过软件仿真或者实物系统实验给出具体结果。
  • (2)综述类论文:在信号与系统学科领域中自主选择某一感兴趣的课题:可以是经典的问题,也可以是当前热门话题,通过阅读5到10篇相关论文,其中至少包括2篇综述性文章,完成对该课题的综述报告。综述报告内容反映了该研究话题的起源、关键(本质)问题以及未来的发展趋势。
  • (3)教学类:现在筹划新的一版信号与系统MOOC课程,准备采用微MOOC的形式,将知识点碎片化。每个知识点时长月6~7分钟。

  针对信号与系统课程中以及相关的知识点,策划微MOOC课程的讲解内容。讲解的形式采用APPLE格式:
  1. Ask Qustion :问题提出
  2. Principle Introduction :原理讲解
  3. Problem Analysis :问题分析
  4. Laboratory Demostration :实验展示
  5. Extension Discussion :延伸讨论

  4、提交时间:

  小论文提交时间在第18周星期日晚上12:00之前提交。通过网络学堂特定的小论文作业提交。

提醒:为了能够方便进行成绩的登录,一定要要求所有的论文提交需要书写上相应的学号

2、小论文提交情况总结

(1)CDIE班

● CDIE班小论文提交:
班级人数:9人
提交论文数量:8篇
缺省论文数量:1人

  缺省的论文是: 一位被信号与系统耽误了的漫画家

 

文附件 ※


1、成绩录入Python程序

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# HW.PY                        -- by Dr. ZhuoQing 2021-06-30
#
# Note:
#============================================================

from head import *
import inforsub

#------------------------------------------------------------
def dropfile2studentid():
    tspdropfile2pastetext()
    pastestr = clipboard.paste()
    strsect = pastestr.split('\\\\')

    for s in strsect[-1:0:-1]:
        if s.count('_') >0 :
            if s.split('_')[0].isdigit():
                return s.split('_')[0]
            if s.split('_')[0][0] == 'P':
                return s.split('_')[0]

    return "ERROR"

#------------------------------------------------------------
def setscore(idstr, score, paper):
    ret = inforsub.setexcelcellstring(inforsub.autofile, idstr, "分数", score)
    if ret >= 0:
        ret = inforsub.setexcelcellstring(inforsub.autofile, idstr, "论文名称", paper)
        return ret

    ret = inforsub.setexcelcellstring(inforsub.cdiefile, idstr, "分数", score)
    if ret >= 0:
        ret = inforsub.setexcelcellstring(inforsub.cdiefile, idstr, "论文名称", paper)
        return ret

    return ret

#------------------------------------------------------------
if __name__ == "__main__":
    idstr = dropfile2studentid()

    if idstr != "ERROR":
        iddim = [idstr]
    else: iddim = []

    score = "0"
    paper = "没有命名的论文"

    if len(sys.argv) > 1:
        if sys.argv[1].count('|') > 0:
            iddim = [s for s in sys.argv[1].split('|') if len(s) > 0]
        else:
            if len(sys.argv) > 2:
                iddim = [sys.argv[1]]
            else: score = sys.argv[1]

        if len(sys.argv) > 2:
            if sys.argv[2].replace('.', '').isdigit():
                score = sys.argv[2]
            else: paper = sys.argv[2]

        paper = ' '.join(sys.argv[3:])

    printff(iddim, score, paper)
    if len(iddim) == 0:
        printf("ERROR: No ID string.\\a")
        exit()

    #--------------------------------------------------------
    for s in iddim:
        ret = setscore(s, score, paper)
        if ret < 0:
            printf("Set ERROR:%s,%s,%s [%d]"%(s, score, paper, ret))
        else: printf("Set OK:%s,%s,%s"%(s, score, paper))

    printf("\\a")

#------------------------------------------------------------
#        END OF FILE : HW.PY
#============================================================

2、辅助EXCEL操作程序

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# INFORSUB.PY                  -- by Dr. ZhuoQing 2020-06-18
#
# Note:
#============================================================

from headm import *
import pandas as pd

#------------------------------------------------------------
autofile = tspstring2text('AUTO')
cdiefile = tspstring2text('CDIE')

#------------------------------------------------------------
def showexcel(filename):
    excelfile = pd.read_excel(filename, sheet_name="sheet1")
    listdata = excelfile.values.tolist()

    for id,l in enumerate(listdata):
        printff(id, l)

def showexcelinfor(filename, sid):
    excelfile = pd.read_excel(filename, sheet_name='sheet1')

    rowid = -1
    for id, content in excelfile.items():
        if id == '学号':
            content = [str(s) for s in content]
            if str(sid) in content:
                rowid = content.index(str(sid))
            break

    if rowid < 0:
        return rowid

    printf(excelfile.values.tolist()[rowid])
    return rowid

#------------------------------------------------------------
def setexcelcellstring(filename, sid, col, num):
    excelfile = pd.read_excel(filename, sheet_name='sheet1')

    rowid = -1
    for id, content in excelfile.items():
        if id == '学号':
            content = [str(s) for s in content]

            for idd,s in enumerate(content):
                if s.find(sid) >= 0:
                    rowid = idd
                    break

            if rowid >= 0: break

    if rowid < 0:
        return rowid

    excelfile[col] = excelfile[col].astype(str)
    excelfile.at[rowid, col] = num

    excelfile.to_excel(filename, sheet_name='sheet1', index=False)

    return rowid

#------------------------------------------------------------
def appendexcelcellstring(filename, sid, col, num):
    excelfile = pd.read_excel(filename, sheet_name='sheet1')

    rowid = -1
    for id, content in excelfile.items():
        if id == '学号':
            content = [str(s) for s in content]
            if str(sid) in content:
                rowid = content.index(str(sid))
            break

    if rowid < 0:
        return rowid

    printff(rowid, col)
    excelfile[col] = excelfile[col].astype(str)

    if excelfile.at[rowid, col] != 'nan':
        excelfile.at[rowid, col] = num + ', ' + excelfile.at[rowid, col]
    else: excelfile.at[rowid, col] = num

    if len(num) == 0: excelfile.at[rowid, col] = ''

    excelfile.to_excel(filename, sheet_name='sheet1', index=False)

    return rowid

#------------------------------------------------------------
def getexcelcellstring(filename, sid, col):
    excelfile = pd.read_excel(filename, sheet_name='sheet1')

    rowid = -1
    for id, content in excelfile.items():
        if id == '学号':
            content = [str(s) for s in content]
            if str(sid) in content:
                rowid = content.index(str(sid))
            break

    if rowid < 0:
        return rowid

#    printff(rowid, col)
#    excelfile[col] = excelfile[col].astype(str)
    return excelfile.at[rowid, col]

#------------------------------------------------------------
if __name__ == "__main__":
#    setexcelcellstring(tshfile, '2020210975', 'HW1', 88)
#    s = getexcelcellstring(tshfile, '2020210975', 'HW1')
#    printf(s)
#    showexcel(shzhfile)
    x=showexcelinfor(shzhfile, '2020280355')
    printf(x)

#------------------------------------------------------------
#        END OF FILE : INFORSUB.PY
#============================================================

以上是关于信号与系统2021春季课程小论文批改的主要内容,如果未能解决你的问题,请参考以下文章

信号与系统教学设计样例说明-2021春季学期

一位被信号与系统耽误了的漫画家

2021年春季学期-信号与系统-第十二次作业参考答案

2021年春季学期-信号与系统-第十一次作业参考答案

2021年春季学期-信号与系统-第十三次作业参考答案

信号与系统2021年期末考试命题