c 实现的归一化和反归一化处理函数

c 实现的归一化和反归一化处理函数

ID:11597115

大小:42.50 KB

页数:4页

时间:2018-07-12

c  实现的归一化和反归一化处理函数_第1页
c  实现的归一化和反归一化处理函数_第2页
c  实现的归一化和反归一化处理函数_第3页
c  实现的归一化和反归一化处理函数_第4页
资源描述:

《c 实现的归一化和反归一化处理函数》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、C++实现的归一化和反归一化处理函数///////////////////////////////////////////////////////////////////////////////////////////////////void__fastcallTModelManage::TranslateData(TModel*pModel,intId,double*Value,intFlag){//转换函数类型intiChgFunc;//节点对应的最大、最小值doubledMaxValue,dMinValue;//取节点配置信息:转换函数类型,最大值,最小值GetNodeCo

2、nfValue(pModel->ConfTable,Id,&iChgFunc,&dMaxValue,&dMinValue);if(Flag==1)//仿真时不取边界值,以避免仿真结果误差太大{if(*Value<=(dMinValue*1.005))*Value=dMinValue*1.005;if(*Value>=(dMaxValue*0.995))*Value=dMaxValue*0.995;}else{if(*Value<=dMinValue)*Value=dMinValue;if(*Value>=dMaxValue)*Value=dMaxValue;}//线性函数转换,转

3、换在0-1之内if(iChgFunc==0){*Value=(*Value-dMinValue)/(dMaxValue-dMinValue);}//用atan函数转换在0-1之内elseif(iChgFunc==2){*Value=atan(*Value)*2/M_PI;}//用log函数转换elseif(iChgFunc==1){if(*Value<=1)*Value=0;else*Value=log10(*Value);//用log10函数转换(缩小)if(dMaxValue>1)*Value=*Value/log10(dMaxValue);//转换为0-1之间}//不用转换

4、elseif(iChgFunc==3){*Value=*Value;}*Value=((0.5-0.001)/0.5)*(*Value)+0.001;//用线性函数把数据转换为0.001-0.0.9995之间}/////////////////////////////////////////////////////////////////////////////////////////////////////反数据转换,主要是针对仿真结果要反算回实际预测的值void__fastcallTModelManage::UnTranslateData(TModel*pModel,intI

5、d,double*Value,intFlag){//转换函数类型intiChgFunc;//节点对应的最大、最小值doubledMaxValue,dMinValue;//取节点配置信息:转换函数类型,最大值,最小值GetNodeConfValue(pModel->ConfTable,Id,&iChgFunc,&dMaxValue,&dMinValue);*Value=(((*Value)-0.001)*0.5)/(0.5-0.001);//对应于---->用线性函数把数据转换为0.001-0.0.9995之间//反线性函数转换if(iChgFunc==0){*Value=(*Va

6、lue)*(dMaxValue-dMinValue)+dMinValue;}//用tan函数转换elseif(iChgFunc==2){*Value=tan(*Value)*M_PI/2;}//用反log函数转换elseif(iChgFunc==1){*Value=pow(10,(*Value));//用反对数方式函数转换(放大)}elseif(iChgFunc==3){*Value=*Value;//不用转换}}归一化处理其实本身比较简单理解,就是要先把数据按一定规则处理在一个区间内,比如x1到x2之间(0到1或是-1到1之间):公式为:归一化后数据=x1+[(x2-x1)*(

7、归一化前数据-数据中的最小值)/(数据中的最大值-数据中的最小值)]盲孔优化分析序列分析序列1234567盲孔深度(mm)3.05.38873.55204.15024.26784.38154.2861盲孔直径(mm)32.032.74334.15433.70835.62135.90334.334盲孔处最大应力(MPa)445.33总687.44501.90550.90557.34598.01568.67总体积()0.2004E+070.19574E+070.19874E+070.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。