前言第1章概述1.1宽带无线移动通信系统的发展1.2功率放大器线性化技术简介1.2.1国内外研究现状1.2.2本书的创新性工作1.3本书结构安排第2章功率放大器数学模型2.1功率放大器非线性效应分析2.2非线性效应基带等效分析2.3无记忆功率放大器典型模型2.3.1Saleh模型2.3.2Rapp模型2.3.3多项式模型2.4宽带功率放大器记忆效应分析2.5有记忆功率放大器模型2.5.1Volterra模型2.5.2多项式模型2.5.3Wiener模型2.5.4Hammerstein模型2.5.5并行Hammerstein模型2.5.6神经网络模型2.6本章小结第3章功率放大器非线性对传输信号的影响3.1非线性的时域及频域分析3.1.1谐波失真3.1.2互调失真3.1.3交调失真3.1.4AM/AM和AM/PM畸变3.2功率放大器非线性对多载波信号功率谱的影响3.2.1无记忆模型功率谱的解析表达3.2.2有记忆模型功率谱的解析表达3.2.3仿真及分析3.3功率放大器非线性对多载波信号符号率的影响3.3.1误符号率的解析表达3.3.2仿真及分析3.4功率放大器非线性评价指标3.4.1分贝压缩点功率3.4.2三阶互调系数3.4.3三阶截断点3.4.4交调系数3.4.5输入及输出回退3.4.6系统性能总损耗3.5本章小结第4章宽带功率放大器预失真技术简介4.1数字预失真技术综述4.2预失真技术基本原理4.3非自适应性预失真技术4.3.1方案概述4.3.2特性曲线的测量4.4射频自适应预失真技术4.5中频自适应预失真技术4.6基带自适应数字预失真技术4.7本章小结第5章宽带功率放大器预失真估计结构5.1直接学习结构5.2间接学习结构5.2.1基于IDLA的新算法5.2.2仿真及分析5.3本章小结第6章基于查询表的数字预失真6.1查询表预失真方法综述6.1.1查询表形式6.1.2查询表的指针方式6.1.3查询表地址索引方式6.1.4查询表自适应算法6.1.5查询表预失真方法的不足6.2无记忆查询表预失真方法6.2.1常规查询表预失真算法6.2.2改进的查询表预失真方法6.3有记忆查询表预失真方法6.3.1一维查询表预失真方法6.3.2二维查询表预失真方法6.4本章小结第7章基于多项式的数字预失真7.1多项式预失真方法综述7.1.1多项式模型7.1.2多项式自适应算法7.1.3多项式预失真方法的不足7.2多项式形式的选择7.2.1预失真多项式形式7.2.2正交多项式模型7.3无记忆多项式预失真方法7.3.1分段无记忆多项式预失真方法7.3.2直接学习结构递推系数估计方法7.3.3间接学习结构系数估计方法7.3.4正交多项式预失真方法7.3.5动态系数多项式预失真方法7.4有记忆多项式预失真方法7.4.1分段有记忆多项式预失真方法7.4.2归一化最小均方系数估计方法7.4.3广义归一化梯度下降系数估计方法7.4.4广义记忆多项式预失真方法7.4.5分数阶记忆多项式预失真方法7.4.6Hammerstein预失真方法7.5本章小结第8章宽带功率放大器预失真方案设计8.1数字预失真系统设计8.2反馈环路延迟估计8.2.1常规环路延迟估计方法8.2.2提出的环路延迟估计方法8.2.3仿真分析8.3PAPR降低技术与预失真8.3.1问题引出8.3.2PAPR降低技术8.3.3限幅对OFDM信号预失真性能的影响8.3.4PAPR降低技术与PA线性化的内在联系8.4宽带功率放大器的有效阶估计8.5关于硬件实现8.5.1非自适应预失真硬件实现8.5.2自适应数字预失真硬件实现8.6宽带功率放大器预失真新理论与技术8.6.1功率放大器预失真新理论8.6.2功率放大器预失真新技术8.7本章小结参考文献附录A符号表附录B缩略语
2023/12/19 1:19:29 18.5MB 预失真
1
这是维护版本。
处理早期的连接错误,例如在连接和EHLO状态期间出现421。
切换到CI的Github操作为mail(),sendmail和qmail传输生成调试输出。
启用与SMTP相同的机制:setSMTPDebug>0使mail()和sendmail传输与SMTP一样设置信封发件人,即使用From设置为,仅回退到sendmail_fromphp.ini设置如果未设置从。
如果未显式设置发件人并且未配置php.ini,这可以避免mail()函数的错误。
这是次要的功能更改,因此会增加次要版本号。
扩展parseAddresses以解码编码的名称,改进测试
2023/12/4 4:14:05 124KB PHPMailer6.3.0 PHP发mail PHP群发、
1
androidstudio自定义标题栏,自定义回退按钮事件,自定义右侧显示文字还是图片,自定义右侧点击事件
1
该资源是用VS2017实现的推箱子小游戏。
总共设置了60个关卡。
实现的功能还有选关。
重置关卡。
回退等等。
还有游戏的音效部分。
2023/9/20 0:35:57 40.35MB VS2017 推箱子小游戏
1
OSWorkflow是opensymphony组织开发的一个工作流引擎,目前的版本是2.8。
OSWorkflow用纯Java语言编写,并且开放源代码。
它最大的特点就是极其的灵活。
它面向的人群是具有技术背景的软件开发人员。
OSWorkflow不提倡用可视化工具定义流程。
用户可以根据自己的实际需求,来设计出完全符合自身业务逻辑的系统,而并不需要使用复杂的代码去实现。
换句话说OSWorkflow让我们真正解放了,使得我们从底层的代码堆中爬了出来,轻松地用一套通用的引擎机制去实现各种业务流程。
OSWorkflow提供我们所有工作流OSWorkflow开发指南Version1.0October15,2007Somanyopensourceprojects.WhynotOpenyourDocuments?中可能用到的元素例如:步骤(step)、条件(conditions)、循环(loops)、分支(spilts)、合并(joins)、角色(roles)、函数(function)等等。
首先我们来谈谈步骤:步骤是工作流中很重要的概念。
如果我们把工作流比喻成一条从起点站驶向终点站的公共汽车路线,那么步骤就相当于汽车站台。
而汽车有的正在排队等候进站,有的还没有进站,有的刚出站,这样就形成了所谓的“已完成”、“正在处理”、“已添加至处理队列”、“未处理”等状态。
另外一个重要的概念就是动作,动作就是工作流中每一步骤中"需要处理的事情",每一个动作执行完毕以后都有一个结果。
公共汽车停站下客就好比一个动作,动作完成以后,开向下一站,或者加油,或者返程等等就是一个结果。
当然,实际上的工作流远比这辆汽车来的复杂,它涉及到的结果还包括原地踏步停留在同一步骤,或者是流转到另外的步骤中去,或者是流转到一个分支中去,或者汇集到一个合并中等。
如果动作被设置成为auto,那么只要触发器满足条件或者有来自外部的事件工作流便可自动执行。
在许多流程中,如果遇到并行处理某些事情,这就是分支。
分支一般是指并行处理多件事情而没有先后顺序。
若有一条分支进行了回退处理,整个流程都将回退。
与之相对的,合并就是把几条符合条件的分支聚合起来,使得事情变成"殊途同归"。
这也是非常常见的流程,同时也是最复杂的一种流程。
在步骤、动作和结果中都提供了函数功能,函数按执行的先后时机可分为pre-functions和post-functions。
顾名思义,pre-functions就是在事情发生之前执行的,而post-functions就是在事情发生以后执行的。
验证器是用来验证用户输入的数据是否合法的。
它也可以被应用在步骤,动作或结果中。
动作的执行结果可以是有条件的(conditional)也可以是无条件的(unconditional)。
对于有条件结果,可以允许有多个条件。
引擎将首先检查是否有满足的条件,它会逐一进行检查,直到符合的条件被找到才能执行。
如果没有一个条件被满足,那么最终引擎将产生无条件结果。
在每个步骤中调用工作流的人被称之为调用者(caller),而每个步骤都也会有一个所有者(owner),以代表在当前步骤中负责执行动作的角色或用户。
当前用户在执行当前步骤的时候,这些步骤被保留在当前表中(current),而一旦步骤被执行完毕,引擎会马上将这个当前步骤从当前表中移到历史表中(history)。
5OSWorkfow的高级特性有发送邮件,注册器功能,通用动作和全局动作,触发器和定时器等等,以下会一一讲解。
2023/8/8 23:12:50 624KB OSWorkflow-开发指南
1
介绍文章:https://blog.csdn.net/qq_19244927/article/details/114386243大概实现原理:将每一次实施过的召唤以及数据留存到undo回退队列中,当实施undo操作时候掏出队列数据举行实施就可,若是削减操作,undo时则实施删除了操作,若是删除了操作,undo时则实施削减操作,每一次实施完后放入redo队列中,用于下一次的redo。
2023/5/15 1:43:58 57KB Java 源码
1
1.游戏后玩家轮番掷骰子,轮番走棋,直到游戏中有一个玩家结束游戏。
要求:利用鼠标进行走棋(能区分多个玩家旗子);
正确识别胜利和失败,正确判断走棋正确与否,是否引起游戏结束;
2.玩家用鼠标点击骰子图标之后,再点击棋盘上某个棋盘上自己的飞机进行走棋,玩家轮番走棋,如果有玩家投到6则重新又这个玩家走棋。
3游戏细则(1)起飞:只有当骰子掷出6点时,飞机起飞。
(2)到达:飞机到达终点时,回退多余点数。
(3)跳跃:飞机飞到同色方块时跳跃到下一个同色方;
如果下一个同色方块连接快速通道,则飞过快速通道。
(4)撞机:飞机停的方块中有敌机停留,敌机被撞回停机场。
(5)迭机:两架或多架飞机走到同一格时,重叠在一起称为迭机;
① 我方飞机正好停留在敌方上头,所有飞机回飞机场;
② 我方骰子为6时且与敌方飞机距离为小于6时,我方飞机停留在敌机上头,下次投骰子后直接走我方这辆飞机;
③ 我方骰子不为6时且与敌机距离小于6时,我方需倒退剩余点数;
(6)胜利:有一架飞机飞到终点胜利,游戏结束。
2023/2/15 23:40:57 8.48MB C++ MFC 飞行棋
1
1、用IjkPlayer/MediaPlayer+TextureView封装,可切换IjkPlayer、MediaPlayer.2、支持本地和网络视频播放.3、完美切换小窗口、全屏,横竖屏切换,可在RecyclerView中无缝全屏.4、手势滑动调理播放进度、亮度、声音.5、支持清晰度切换.6、可自定义控制界面.7、对时间和电量进行监听8、实现沉浸式状态栏9、支持普通视频的播放和m3u8、rtmp直播视频的播放10、易接入弹幕功能11、支持回退暂停,进入页面继续播放
2020/7/22 6:09:42 40.86MB 播放器 Player VideoPlayer 横竖屏
1
模仿数据链路层的gobackn协议/*该协议是搭载ack的回退n步协议*/#include#include"protocol.h"#definemax_seq7#defineflag126#defineESC100#definewait_time2700 //发送计时器等待的时间#defineack_wait_time280staticintphl_ready=0;unsignedcharbuf[max_seq+1][270];unsignedcharack[8];//发送空的ack帧unsignedcharin_buf[600],last_buf[520];//接收时的缓冲区;去掉冗余之后的缓冲区,为防备因误码两帧合并为一帧而定义了很大一个数组intnbuffered=0;//发送的帧数intbuf_size[max_seq+1];//记下以发送各帧的帧长intnext_frame_to_send=0;intframe_in_phl=0;//用于成帧intframe_expected=0;intack_expected=0;intbetween(inta,intb,intc){ if(((a<=b)&&(b<c))||((c<a)&&(a<=b))||((b<c)&&(c<a))) return1; elsereturn0;}//判断帧尾,防止出现误判escescflag为数据的情况intend_flag(intin_len){ intcount=0; inti; if(in_len=0;i--)//记录flag前的esc数目 count++; returncount%2;//若flag前的esc为偶数,则为帧尾}//成帧函数--数据帧voidsend_frame(char*my_buf,intlen){ intn; buf[frame_in_phl][0]=(frame_expected+max_seq)%(max_seq+1); //ack buf[frame_in_phl][1]=frame_in_phl; //发送帧的帧号 for(n=0;n<len;n++) buf[frame_in_phl][n+2]=my_buf[n]; //将处理过的新帧赋值到缓冲区中 len=len+2; *(unsignedint*)(buf[frame_in_phl]+len)=crc32(buf[frame_in_phl],len); //在原始帧的基础上加检验和 buf_size[frame_in_phl]=len+4; //记录当前帧的长度,包括3个帧头,4个检验和 nbuffered=nbuffered+1; //缓冲区占用数加一 frame_in_phl=(frame_in_phl+1)%(max_seq+1);}//成帧函数--ack帧voidsend_ack() //ack帧的处理{ ack[0]=(frame_expected+max_seq)%(max_seq+1); ack[1]=max_seq+10; //ack帧的序号位,使ack[1]==frame_expected恒不成立 *(unsignedint*)(ack+2)=crc32(ack,2); //在原始帧的基础上加检验和}//主函数intmain(intargc,char**argv){intevent,arg,n,m,i,j,len=0,in_len=0; unsignedcharmy_buf[260]; intphl_wait=0;//在物理层中还没有被发送的帧protocol_init(argc,argv);enable_network_layer();for(;;){event=wait_for_event(&arg);switch(event){caseNETWORK_LAYER_READY:
2019/7/26 21:18:43 425KB go back n gobackn
1
最近有不少小伙伴遇到难题了,在Win10系统安装我们的设备驱动以后,打开程序还是显示“未发现NFC设备”这个时候,我们可以打开设备管理-端口,看看驱动能否已经出现感叹号了!,那要怎么解决呢?1、首先我们选择这个驱动,右键选择属性,找到驱动程序2、回退驱动程序,弹出来选择“上一版本似乎更可靠”,选择之后,机器会提示让你重启,先暂时不重启3、我们打开电脑属性,选择高级系统设置4、选择硬件,点击设备安装设置5、选择否,然后保存更改以上步骤都操作完成以后,重启电脑开机,这个时候再看设备管理器端口,感叹号已经消失了,打开主程序也显示发现NFC设备了
2015/4/6 18:05:26 252KB 一体式PN532新版CH340【
1
共 26 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡