窓に穴を開けないアンテナをRBNで評価する。

苦労して張った穴を開けないアンテナ、音響受信では海外まで届くことを確認できたが、定量的に確認したい。CQは嫌なので今回初めてリバースビーコンネットワーク(RBN)を使った。

RBNを使うには全くやってないCWを打つことになるから、エレキーを使うためにハイモンドのMK-706を調達。苦労して何度か送信していたらRBNに反映されてきた。今回拾われたのは次の局。各局とも17~30dB以上のSNRを確保。

JQ1BVI 東京都立川市
JH7CSU/1 東京都世田谷区
JN1ILK 山梨県甲府市
JJ2VLY 静岡県裾野市
JA4ZRK 広島県福山市

住所を地理院地図でマッピング。

国内だと本州の南側には到達している様子。海外は無理かな。相手の受信機がコードをきちんとデコードできないと受信したことにはならないから、途切れ途切れでも聞こえればよいWebSDRの音響受信のほうがやっぱり粘れる。

いちおう機械受信できる程度のCWは送れているらしい。

Officeの更新ができない (VL版で)

うちは逸般的な誤家庭だからMSボリュームライセンス契約でOffice永続版を使っている。

今のバージョンはOffice 2019 Professional Plus。最新版2021より、ひとつ前のバージョンになるがサポート期限は2025年10月14日で、まだまだ使える。というかOffice 2016 ProPlusにSAまで付けたものを計算づく2016年ごろに買ったものだから使える間はきっちり使い倒したい。まだサブスクリプションのOffice365は使いたくない。

Office365は高すぎる。Office365はユーザーライセンスで日本国内では家庭内でも1人1ライセンスが必要。ネットにはOffice365 Familyなら家族5人で共有!などとリテラシー皆無で意識レベルの高い記事も見かけるが、西海岸で買ういつもの正規品は日本で使うとただの違法ソフトなんで自分だけは賢く得しようなんて考えないように。遵法精神を持つ善良な市民が、就学時~平均寿命の70年間を家族4人で使うとしたら正規の料金は今のところ12,984円×4人×70年=3,635,520円。高すぎる。一般的な家庭では欲に目がくらんだ外資企業にこんなにも費用を払うことを黙って受け入れているのだろうか。ボリュームライセンスの永続版ならマシンライセンスだから、家族共用のPC1台で使うなら1ライセンスだけで済むし、よく使う1人はもう1台に入れることもできる。これを1家族が70年間使うとしたら、Officeのサポート期間が7年だから70年で10回買うことになる。1ライセンス約70,000円×10回=700,000円。一般的な家庭でOffice365の最新機能をごりごり使う必要は無いわけで、それならマシンライセンスで永続版を使うほうが圧倒的に安い。恐るべしユーザーライセンスのサブスクリプション、まさに朝三暮四! ちなみに、アマゾンとかで売ってる一般向け永続版は、2台入れられるのに1ユーザーライセンスなんで要注意。

想像の上では、たぶんそういうことになる。


ところで、メインPCのOfficeの更新ができていないことに今日ようやく気付いた。以前のVL版OfficeはMSI形式だったからWindows Updateで自動的に更新されていたが、Office2019から一般向けと同じクイック実行形式に変更されてOfficeアプリ内から更新を実行する必要がある。Officeの更新はメニューでファイル→アカウント→更新オプション→今すぐ更新 でできるはずなのに、メインPCではなぜかエラーコード 30182-27 (3) とか出て失敗する。

メッセージでしばらくしてからやり直せと指示されたからバカ正直に何日も待ったのに一向に改善しない。メッセージ内にある詳細なヘルプへのリンクで情報を得ようとしたが、いつも通り訳の分からない内容。

Office の更新プログラムのエラーを修正する – Microsoft

なんで、”[ファイル]、[ アカウント]、[更新オプション] 一覧の [今すぐ更新] から更新プログラムをインストールするときにエラーが表示される場合” に対する回答が、”[ファイル] メニューの [アカウント] をクリック … [更新オプション] のドロップダウン リストにある [今すぐ更新] をクリック” になるのか問い詰めたい、小一時間問い詰めたい。今は再帰プログラミングをしたい気分じゃない。

問い詰めたところで時間の無駄だから、こうやったら更新できたという答えだけメモ。


このエラー30182-27 (3)は、インストール時にOffice 展開ツール (ODT)を使ってローカルに置いたインストールセットでインストールを完了しており、そのインストールセットが更新しようとした時点で見つからないと言っている。だから、ローカルのインストールセットか、Office 365 CDNを参照するODTでインストールを再度実行すれば最新版に更新される。

ODTでC2R版をインストールされたVL版Officeは、ODTのインストールセットを更新してからクライアントOfficeの更新を実行せよ、というのが正攻法。ただ、一般企業と違って逸般家庭のストレージには限りがあるためインストールセットはインストール後に削除している。


参考:買い切りOffice 2019 (VL版)を使ってみた。

今回やった手順。

1.ODTをダウンロード。すでに持ってたらそれでも良い。

2.ODTを実行して展開。すでに展開してあればそれでも良い。

3.展開して得られたファイルにあるサンプルのXMLをインストールしている環境に合わせて編集。

configuration-Office2019Enterprise.xml

<Configuration>
  <Add OfficeClientEdition="64" Channel="PerpetualVL2019">
    <Product ID="ProPlus2019Volume">
      <Language ID="ja-jp" />
    </Product>
  </Add>
</Configuration>

XML編集のポイント
・製品名、ビット数(32/64)、言語(ja-jpとか)が合っていれば、インストール時の状態とは異なっていても良い。
・ローカルのインストールセットの保存場所を指定しなければOffice 365 CDN(インターネット)から直接ダウンロードする。(この動作を使う)


4.管理者モードのコマンドプロンプトでODTのsetup.exeを実行。

setup /configure configuration-Office2019Enterprise.xml


5.終わったらOfficeアプリ内のバージョン情報で更新を確認する。

更新完了。バージョン情報内の更新ボタンは出番が無い。

参考:
Office 2016 C2R および Office 2019 の更新履歴 – Microsoft

付帯保険が選択式になった。

海外も国内も旅行なんてほとんど行かないからクレジットカードの付帯保険って意味ないなあと思っていたら、タイムリーなメールが届いた。

選べる無料保険

他のカード会社でも1~2年程度無料サンプルな保険の案内がたまに来るが、それを本サービスとして展開するってことなのかな。今使っているのは100万円修行(笑)中の三井住友カードゴールド(NL)で、選べる保険の内容を確認してみる。

初期設定・国内旅行傷害保険 ※海外旅行傷害保険は割愛
傷害死亡・後遺障害 最高2,000万円
※利用付帯。ゴールドは入院保険、通院保険無し。


選択1・日常生活安心プラン(個人賠償責任保険)
個人賠償責任危険補償 最高20万円 ※免責金額あり
傷害後遺障害等級第1~7級限定補償 5万円 ※傷害後遺障害保険金額×約款所定の保険金支払割合(100~42%)
※自動付帯。ゴールドは死亡保障無し。


選択2・ケガ安心プラン(入院保険(交通事故限定))
傷害入院補償(支払限度日数:60日) 1,000円/日 →最大6万円
傷害入院一時金補償 1万円
※自動付帯。交通事故限定。


選択3・持ち物安心プラン(携行品損害保険)
携行品損害補償(免責3,000円) 最大3万円
※自動付帯。ゴールドは受託物賠償責任補償無し。


参考・お買物安心保険(動産総合保険)※切り離し不可
補償限度額 300万円 ※自己負担額 1事故につき3,000円
※利用付帯。対象期間 200日間。


初期設定以外の3プランが選択可能。自動付帯なのでカードの利用とは無関係に利用できるのが良い。保険金額や適用範囲を見ると「日常生活安心プラン」かな。「ケガ安心プラン」は車の保険の特約なんかでカバーできるかもしれない。「持ち物安心プラン」は携行品損害保険とうたっているが対象外のものが多くて微妙。ケガ安心、と 持ち物安心、は保険金額が少なくてあってもなくてもどうでもいい気がする。プラチナカードだと、持ち物安心の携行品損害補償が最高25万円のように、いずれのプランももう少し良い保険金が出る。

補償対象とならない主な「携行品」より抜粋
自転車… およびこれらの付属品、携帯電話・PHS・ポケットベル等の携帯式通信機器・ノート型パソコン・その他の携帯式パソコン・ワープロ・タブレット端末・ウェアラブル端末等の携帯式電子事務機器およびこれらの付属品、… コンタクトレンズ、眼鏡、補聴器、漁具…

携帯はキャリア契約にオプションの補償サービスでなんとかするとして、パソコンもタブレットもダメだとなると、なかなかきびしい。これ以外でよく持ち歩く高価なものは自分の場合デジカメ、ギャラリースコープ(単眼鏡)くらいかな。唯一ありえそうなのは次の項目。乗車券を無くしたのは20年ほど前に一度だけ。鶴橋~京橋のJRきっぷを無くした。免責3000円あるんでこの保険ではカバーできない。地味に通貨も保証されるから2万円を入れた1万円のサイフをよく無くすタイプの人は良いかも。

乗車券等、定期券、通貨および小切手は補償の対象となります。


一度変更すると翌月1日から1年間変更できないので海外・国内旅行保険付きの他のカードを持ったうえでプランを変更するのが良さそう。

C++/STLでDFT、IDFTしてみる。

C++/STLでモダンに複素DFT、IDFTを実装。なんか、もやもやしていたけどすっきりした。やってみたら簡単だった。


#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>

#include <iostream>
#include <complex>
#include <cmath>	// sqrt, sin, cos
#include <iomanip>	// setprecision

const double pi = 3.1415926535897931f;

const int length = 32;

// initialize array
template <class T> 
void inita(std::complex<T> *data, int length) {
	for(int i=0; i<length; i++) {
		data[i] = std::complex<T>(0.5f+std::sin(2*pi*i/length+4), std::cos(4*2*pi*i/length));
		//data[i] = std::complex<double>(2, 3);
	}
}

// display array
template <class T>
void dispa(std::complex<T> *data, int length) {
	for(int i=0; i<length; i++) {
		std::wcout << i << L":" << std::fixed << std::setprecision(5) << data[i] << L" " << abs(data[i]) << std::endl;
	}
}

// deep copy
template <class T>
void copya(std::complex<T> *data, int length, std::complex<T> *dest) {
	for(int i=0; i<length; i++) {
		dest[i] = data[i];
	}
}

// DFT
template <class T>
void worka(std::complex<T> *data, int length, std::complex<T> *res) {
	for(int j=0; j<length; j++) {
		res[j] = std::complex<T>(0.0f, 0.0f);
		for(int i=0; i<length; i++) {
			res[j] += exp(std::complex<T>(0,  2*pi*i*j/length)) * data[i];
		}
	}
}

// IDFT
template <class T>
void workb(std::complex<T> *data, int length, std::complex<T> *res) {
	for(int j=0; j<length; j++) {
		res[j] = std::complex<T>(0.0f, 0.0f);
		for(int i=0; i<length; i++) {
			res[j] += exp(std::complex<T>(0, -2*pi*i*j/length)) * data[i];
		}
		res[j] /= length;
	}
}

void main(void) {
	_CrtSetReportMode(_CRT_WARN,  _CRTDBG_MODE_FILE);
	_CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG);
	_CrtSetReportFile(_CRT_WARN,  _CRTDBG_FILE_STDERR);
	_CrtSetReportFile(_CRT_ERROR, _CRTDBG_FILE_STDERR);
	//#define d_new new(_NORMAL_BLOCK, __FILE__, __LINE__)

	using atype = double;
	std::complex<atype> *data, *res;
	data = new std::complex<atype>[length];
	res  = new std::complex<atype>[length];
	
	std::wcout << L"-- orig --" << std::endl;
	inita(data, length);
	dispa(data, length);
	
	std::wcout << L"-- DFT --" << std::endl;
	worka(data, length, res);
	copya(res, length, data);
	dispa(data, length);
	
	std::wcout << L"-- IDFT --" << std::endl;
	workb(data, length, res);
	dispa(res, length);

	delete [] data;
	delete [] res;
	
	_CrtDumpMemoryLeaks();

	return;
}

ビルドはVC++で cl /EHa complex.cpp

十数年前に学校で履修してわけがわからないまま単位取得したテイラー展開フーリエ展開ラプラス変換、それと線形代数の行列・逆行列はすべて関連しているんだと、なぜか未明に気づいてはっとした。数学が得意な人からしたら当たり前じゃんてなるだろうが、数学が嫌いな人からしたらそれぞれは離散的で結びつかない。こういうことはもっと早く教えてほしかった。ウィキペディアの説明ではとても理解できない。



忘れないうちにコードのメモ。

main()内の_CrtSetReportModeあたりはCランタイム組み込みのメモリリーク検出デバッグ機能の有効化。最後の _CrtDumpMemoryLeaks();を実行するときに開放されていないメモリがあれば警告してくる。#define d_newを有効にしてヒープのnewをd_newに変更すればどこでメモリリークしたか表示する。

using atype = のところで全体の精度を指定する。どうせfloatかdoubleしか指定しないが、一応テンプレート対応てことで。Old C Styleのtypedef ~ と同じ。length = の指定で長さは任意に変更できる。FFTではないのでn^2長さでなくても構わない。

inita()で初期データを作成する。サンプルはY=0.5+SIN(2πt+4) + COS(4*2πt) i のオフセットのある実数部正弦波+虚数部余弦波のツートーン。

worka()、workb()がDFT、IDFTのメイン処理。同じデータ長の実数部と虚数部で90度位相差がある二つの正弦波を0倍(DC)~N-1倍の振動数まで順に掛け合わせる。DFTとIDFTは掛け合わせる振動の向きが正負逆になる。オイラーの公式で実数と虚数に分離してSIN、COSの組み合わせで計算すると逆行列になる。

プログラミング書籍なら翔泳社の通販『SEshop』

修行の進捗。

三井住友カード ゴールド(NL)3月中ほどから使い始めて1か月半経った。4月26日で1回目の引落としが成功して与信枠が回復。クレカ管理に初回引落としの確認は必須。

作った後でウェブサイトやユーチューブとかでこのカードが割と人気(であることにしたい※)と知る。11か月間で100万円を使えば年額5,500円の手数料が永年無料になる特典があり、SMBCの方針が変わらない限り銀行系ゴールドカードを永年(永久ではない期間)無料で持てる。あと毎年100万円使うと10000ポイント還元される特典も得られる(通常ポイントと合わせて1.5%還元)。これを100万円修行などと称して小賢しい攻略法をブロガーやユーチューバーらがバ〇の一つ覚えみたいに紹介している。生活費で100万使うのってそんなに大変かな。

※この内容を考えているときはアフィリエイトに三井住友カードナンバーレスの案件が上がっていたのに、今見たら終了しているのか該当無しになっていた。三井住友カードのにはアフィ仲介のページがあるけど、現時点では終了ってことなんだろう。そのうち三井住友カード(NL)の紹介案件は減っていくんじゃないかな。こうやって「今人気の」カードは加入者を増やしていくのだって社会の構造を理解した。ユーチューバーやカード紹介比較サイトの教祖様はこうやって収益を得ていくのか。注:このエントリにアフィリンクは含まない。

それらの経典を見るとアマゾンギフト、Kyash、Revolutなどに1年以内に100万円分チャージしてから、各決済サービスの有効期間内に使いつつポイントも稼ぐ、というのが基本らしい。ポイ活というのも兼ねているんだろう。いかに金を使わずに100万円使ったように見せかけるか、というのが戦略らしい。

正直、面倒だよ!!

それにこれは無駄遣いの前借りであって、その年度に100万円を実質的に消費できてない。次の年度は分散チャージした繰越し分を消費しつつ、さらにこのカードでも100万円消費しないと1.5%還元は得られないわけで、そもそも100万円使うのが苦しくてこの策を施したのだからボーナスポイント無しの還元率0.5%止まりになる可能性が高い。そこまで無理してなくても、単純に決済を集約して毎年度100万円前後使って1.5%還元を継続的に獲得するほうが良い気がする。SBIネット証券の積み立て投信の還元1%のためだけにこのカードを保持したいのならとにかく、使いきれない100万円を苦労して電子マネーに変換する必要は無い。クレカの教祖様の教えに従ってクレカを渡り歩いてると貧乏暇無しになりそう。

自分の場合は3月、4月に車検、車の修理費、税金で出費が多くて、1か月半で既に56万円使っている。来月は多重課税の疑いがある自動車税3.5万円、5月~翌1月の間で高騰するガソリン代計13万円、10人に1人はかけていない車の任意保険6万円、値段が上がって量が減り続けるお昼代9万円が固定費で必要になるし、さらに5月にも車の修理で2万円。これだけで89万円になる見込み。100万円まであと11万円。月あたりなら1.2万円程度だけど、数万円の機材を数回買って終了になりそう。

クレカの教祖様らが「ハードルは高い、修行始めます!!」なんていちいち宣言するのかかよく分からない(←たぶんPV稼ぎ)が、やっぱり普通に使えば何の問題も無かった。修行を勧めるユーチューバーは信者視聴者が都会住みで低年式の車など持ってなくて、クレカで100万円使うのも苦労するんだろうという暗黙の前提があるのかな。だいぶ低く見られてない? それに都会住みで車を持たない賃貸住まいなら家賃と水道光熱費をクレカ支払いにできれば、ほぼ解脱する。

こういうのは人によって出入りが違うから自分の場合は、という例でしかない。でも、普通に生活していれば100万円という額は割と簡単に出て行ってしまうもの。修行とかいうほどたいしたものではなかったけど、いくつかの徳を得ることはできた。

お徳1.年会費無料のゴールドカードが得られそう。
お徳2.出費を見直す機会になった。
3.ポイントバックだけでも1年で2~3万円ぶん返ってきそう。※
お徳4.今人気のクレカの仕組み、貸金今どきの闇金の仕組みを理解した。

※初回キャンペーン キャッシュバック上限10000P、GooglePayキャンペーン上限1000P、100万円達成時10000P、100万円達成で通常ポイント5000Pで初年度26000Pは確定。これに還元率増加の店舗利用4000P程度でトータル30000Pの見通し。同様に2年目以降100万円達成+通常ポイントで15000P、これに還元率増加の店舗利用やSBIネット証券積立、何等かのキャンペーンを考慮すると20000P前後にはなるはず。

その他に得た徳として、キャッシュカードのコンタクトレス決済 – VISAタッチは便利だったこと。ネットの意見を見ているとFeliCa系の決済手段よりNFCのコンタクトレス決済は遅くていらいらするという意見を見て、iDを設定しようかと考えたが、「与信を開始したらマイバッグに品物を入れはじめる」という術を修行で会得したから、これからはWAONやEdyやPaypayをやめてVISAタッチだけでいいやってなった。

NFCのコンタクトレス決済のフロー

1.レジのテーブルに商品を置く。
2.店員が読み取り中にマイバックを解く。店員に「クレジットカードで」と伝える。日本国内なのにイキっ〇〇コンタクトレスなどと口走ってはいけない
3.カードの読み取りが完了したらカードをしまう。与信の完了は待たない。
4.素早く品物をマイバッグに入れる(5~10秒)。入れ終わる前後に与信完了。
5.レシートを受け取る。
6.Go home !

これが楽天EdyとかWAONだと、

1.レジのテーブルに商品を置く。
2.店員が読み取り中にマイバックを解く。特にiDとEdyは弁別しがたいので活舌よく発声する。
3.FeliCaの決済を完了(1秒)。
4.品物をマイバックに入れはじめる。店員がレシートを受け取れと圧をかけてくる。
5.レシートを受け取る。後ろの客が早く替われと圧をかけてくる。
6.逃げるように退店。

NFCのコンタクトレス決済だと読み取り後はカードをリーダーから外しても与信問い合わせは継続するので、読み取り音がしたらカードをしまって品物をマイバッグにいれはじめることができる。与信完了まで待っているのはもったいない。



いろいろ考えていたら「三井住友カード プラチナプリファード」も視野に入るかなって見栄っ張りな考えがよぎった。

・年会費33,000円で、1%還元で100万円ごとに10000Pだから単純な損益分岐点は200万円(40000P、年会費-7,000円)。

・年会費だけ見ると、無料化したゴールドNLで100万円ちょうど(15000P、年会費-15,000円、1.5%還元)に対して、プラチナプリファードは280万円(48000P、年会費-15,000円、0.54%還元)使ったところが境目。

・ただしゴールドNLはボーナスポイントは最大100万円まで。プラチナプリファードは400万円までボーナスポイントが出るからそこまでは還元率が上がる。最大の400万円では80000P、年会費-47,000円、1.1175%。

200万円は消費してそうだからプラチナ持つという見栄だけなら叶えられるとしても、たぶん300万円は車でも買わない限り達しない。それに審査が通るかも疑わしい。やっぱり無料化ゴールドNLが自分にとっては身の丈に合ってるってなった。